reserve i,j,n,k,m for Nat,
     a,b,x,y,z for object,
     F,G for FinSequence-yielding FinSequence,
     f,g,p,q for FinSequence,
     X,Y for set,
     D for non empty set;
reserve
  B,A,M for BinOp of D,
  F,G for D* -valued FinSequence,
  f for FinSequence of D,
  d,d1,d2 for Element of D;
reserve
  F,G for non-empty non empty FinSequence of D*,
  f for non empty FinSequence of D;
reserve f,g for FinSequence of D,
        a,b,c for set,
        F,F1,F2 for finite set;

theorem Th85:
  for E be Enumeration of F st
    (B is having_a_unity or len f >= 1) & B is associative &
     not 1+len f in union F & 2+len f in meet F
  holds
    B "**" (SignGenOp(f^<*d1*>^<*d2*>,B,F)*E)
      = B"**" (SignGenOp(f^<*B.(d1,(the_inverseOp_wrt B).d2)*>,B,F)*E)
proof
  let E be Enumeration of F such that
A1:  (B is having_a_unity or len f >= 1) and
A2:  B is associative and
A3:  not 1+len f in union F & 2+len f in meet F;
A4:  len (f^<*d1*>) = 1+len f by FINSEQ_2:16;
  then 1+len (f^<*d1*>) in meet F by A3;
  hence B "**" (SignGenOp(f^<*d1*>^<*d2*>,B,F)*E)
    = B[:](B "**" SignGenOp(f^<*d1*>,B,F)*E,(the_inverseOp_wrt B).d2)
      by NAT_1:11,Th83,A4
   .= B[:](B[:](B "**" SignGenOp(f,B,F)*E,d1),(the_inverseOp_wrt B).d2)
      by A1,Th82,A3
   .= B[:](B "**" SignGenOp(f,B,F)*E,B.(d1,(the_inverseOp_wrt B).d2))
      by A2,FUNCOP_1:63
   .= B"**" (SignGenOp(f^<*B.(d1,(the_inverseOp_wrt B).d2)*>,B,F)*E)
     by A1,Th82,A3;
end;
