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 Th107:
  for E1 be Enumeration of F1,E2 be Enumeration of F2 st
    card F1 = card F2 & len f <= len g holds
  doms (SignGenOp(f,A,F1)*E1) c= doms (SignGenOp(g,A,F2)*E2)
proof
  let E1 be Enumeration of F1,E2 be Enumeration of F2 such that
A1: card F1= card F2 & len f <= len g;
A2: len (SignGenOp(g,A,F2)*E2) = len E2 = card F2 &
    len (SignGenOp(f,A,F1)*E1) = len E1 = card F1 by CARD_1:def 7;
A3: dom (SignGenOp(f,A,F1)*E1) = dom (SignGenOp(g,A,F2)*E2)
    by A1,A2,FINSEQ_3:29;
  let x such that
A4:x in doms (SignGenOp(f,A,F1)*E1);
  reconsider x as FinSequence by A4;
A5: len x = len (SignGenOp(g,A,F2)*E2) by A2,Th47,A4,A1;
  for i st i in dom x holds x.i in dom ((SignGenOp(g,A,F2)*E2).i)
  proof
    let i such that
A6:   i in dom x;
A7:   x.i in dom ((SignGenOp(f,A,F1)*E1).i) by A6,A4,Th47;
    (SignGenOp(f,A,F1)*E1).i<>{} by A6,A4,Th47;
    then i in dom (SignGenOp(f,A,F1)*E1) by FUNCT_1:def 2;
    then (SignGenOp(g,A,F2) * E2).i = SignGen(g,A,E2.i) &
      (SignGenOp(f,A,F1) * E1).i = SignGen(f,A,E1.i) by A3,Th80;
    then len ((SignGenOp(g,A,F2) * E2).i) = len g &
    len ((SignGenOp(f,A,F1) * E1).i) = len f by CARD_1:def 7;
    then dom ((SignGenOp(f,A,F1) * E1).i) c= dom ((SignGenOp(g,A,F2) * E2).i)
      by A1,FINSEQ_3:30;
    hence thesis by A7;
  end;
  hence thesis by A5,Th47;
end;
