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 Th83:
  for E be Enumeration of F st
    (B is having_a_unity or len f >= 1) & 1+len f in meet F
  holds
    B "**" (SignGenOp(f^<*d*>,B,F)*E) =
      B[:](B "**" SignGenOp(f,B,F)*E,(the_inverseOp_wrt B).d)
proof
  let E be Enumeration of F such that
A1: B is having_a_unity or len f >= 1 and
A2: 1+len f in meet F;
  set fd=f^<*d*>,C=SignGenOp(f,B,F), Cd=SignGenOp(fd,B,F),
    I=the_inverseOp_wrt B;
  len (Cd*E) = len E =len (C*E) by CARD_1:def 7;
  then
A3: dom (Cd*E) = dom E = dom (C*E) by FINSEQ_3:30;
A4: dom (B"**"(Cd*E)) = dom (Cd*E) by FUNCT_2:def 1;
  for x st x in dom (C*E) holds (B[:](B "**" C*E,I.d)).x =(B"**"(Cd*E)).x
  proof
    let x such that
A5:   x in dom (C*E);
    E.x in rng E=F by A5,A3,FUNCT_1:def 3,RLAFFIN3:def 1;
    then
A6:   1+len f in E.x by A2,SETFAM_1:def 1;
A7:   fd.(len f+1)= d & fd|len f= f & len fd = len f+1 by FINSEQ_2:16;
A8:  dom (B[:](B "**" C*E,I.d)) = dom (C*E) by FUNCT_2:def 1;
A9:  len SignGen(f,B,E.x) = len f by CARD_1:def 7;
A10:  (C*E).x = SignGen(f,B,E.x) by A5,Th80;
    (Cd*E).x = SignGen(fd,B,E.x) by A5,A3,Th80;
    hence (B"**"(Cd*E)).x = B"**" SignGen(fd,B,E.x) by A3,A5,Def10
      .= B"**" (SignGen(f,B,E.x)^<*I.d*>) by A7,Th73,A6
      .= B.(B"**" SignGen(f,B,E.x),I.d) by A9,A1,FINSOP_1:4
      .= B.((B"**"(C*E)).x,I.d) by A10,A5,Def10
      .= (B[:](B"**"(C*E),I.d)).x by A5,A8,FUNCOP_1:27;
  end;
  hence thesis by FUNCT_2:def 1,A3,A4;
end;
