reserve i,j,k,n,m for Nat,
        X for set,
        b,s for bag of X,
        x for object;
reserve O for Ordinal,
        R for right_zeroed add-associative right_complementable
          right_unital distributive non trivial doubleLoopStr,
        p for Polynomial of O, R;
reserve O for Ordinal,
        R for right_zeroed add-associative right_complementable
             right_unital distributive non trivial doubleLoopStr,
        p for Polynomial of O, R;

theorem Th57:
  for L be doubleLoopStr
    for f,e be FinSequence, x be object,E be set st
    len f = len e & not x in E holds
      SgnMembershipNumber(f^<*x*>,L,e^<*E*>) = SgnMembershipNumber(f,L,e)
proof
  let L be doubleLoopStr;
  let f,e be FinSequence, x be object,E be set such that
  A1:len e = len f and A2:not x in E;
  set fx= f^<*x*>, eX=e^<*E*>;
  set X1 = {x where x is Element of dom fx: x in dom fx & fx.x in eX.x};
  set X = {x where x is Element of dom f: x in dom f & f.x in e.x};
A3: dom f = dom e by A1,FINSEQ_3:29;
  X c= dom f
  proof
    let a be object;assume a in X;
    then ex x be Element of dom f st x=a & x in dom f & f.x in e.x;
    hence thesis;
  end;
  then reconsider X as finite set;
A4: X=X1
  proof
    thus X c= X1
    proof
      let a be object;
      assume a in X;
      then consider x be Element of dom f such that
A5:   x=a & x in dom f & f.x in e.x;
      reconsider x as Nat;
A6:   dom f c= dom fx by FINSEQ_1:26;
      eX.x = e.x & fx.x = f.x by A5,A3,FINSEQ_1:def 7;
      hence thesis by A6,A5;
    end;
    let a be object;
    assume a in X1;
    then consider y be Element of dom fx such that
A7: y=a & y in dom fx & fx.y in eX.y;
    reconsider y as Nat;
    len <*x*> =1 by FINSEQ_1:39;
    then
A8: len fx = len f+1 by FINSEQ_1:22;
    per cases;
    suppose y = len f+1;
      hence thesis by A7,A2,A1;
    end;
    suppose
A9:   y <> len f+1;
      y <= len f+1 by A8,FINSEQ_3:25;
      then y < len f+1 by A9,XXREAL_0:1;
      then 1<= y <= len f by NAT_1:13,FINSEQ_3:25;
      then
A10:y in dom f by FINSEQ_3:25;
      then fx.y = f.y & eX.y = e.y by A3,FINSEQ_1:def 7;
      hence thesis by A7,A10;
    end;
  end;
  then reconsider X1 as finite set;
  per cases;
  suppose card X is even;
    then SgnMembershipNumber(f,L,e) = 1.L
      = SgnMembershipNumber(fx,L,eX) by Def9,A4;
    hence thesis;
  end;
  suppose card X is odd;
    then SgnMembershipNumber(f,L,e) = - 1.L
      = SgnMembershipNumber(fx,L,eX) by Def9,A4;
    hence thesis;
  end;
end;
