reserve x,y,z, X,Y,Z for set,
  n for Element of NAT;
reserve A for set,
  D for non empty set,
  a,b,c,l,r for Element of D,
  o,o9 for BinOp of D,
  f,g,h for Function of A,D;
reserve G for non empty multMagma;
reserve A for non empty set,
  a for Element of A,
  p for FinSequence of A,
  m1,m2 for Multiset of A;

theorem Th35:
  x <> y implies dom ({x}|`(p^<*y*>)) = dom ({x}|`p)
proof
  assume
A1: x <> y;
  thus dom ({x}|`(p^<*y*>)) c= dom ({x}|`p)
  proof
    let a be object;
A2: len <*y*> = 1 by FINSEQ_1:40;
A3: Seg len p = dom p by FINSEQ_1:def 3;
    assume
A4: a in dom ({x}|`(p^<*y*>));
    then
A5: a in dom (p^<*y*>) by FUNCT_1:54;
    then a in Seg (len p+len <*y*>) by FINSEQ_1:def 7;
    then a in Seg len p \/ {len p+1} by A2,FINSEQ_1:9;
    then
A6: a in dom p or a in {len p+1} by A3,XBOOLE_0:def 3;
A7: (p^<*y*>).a in {x} by A4,FUNCT_1:54;
    reconsider a as Element of NAT by A5;
A8: (p^<*y*>).(len p+1) = y & not y in {x} by A1,FINSEQ_1:42,TARSKI:def 1;
    then (p^<*y*>).a = p.a by A7,A6,FINSEQ_1:def 7,TARSKI:def 1;
    hence thesis by A7,A6,A8,FUNCT_1:54,TARSKI:def 1;
  end;
  let a be object;
  assume
A9: a in dom ({x}|`p);
  then
A10: a in dom p by FUNCT_1:54;
  len <*y*> = 1 by FINSEQ_1:40;
  then
A11: dom (p^<*y*>) = Seg (len p+1) by FINSEQ_1:def 7;
  Seg len p = dom p & Seg (len p+1) = Seg len p \/ {len p+1} by FINSEQ_1:9
,def 3;
  then
A12: a in dom (p^<*y*>) by A10,A11,XBOOLE_0:def 3;
A13: p.a in {x} by A9,FUNCT_1:54;
  reconsider a as Element of NAT by A9;
  (p^<*y*>).a = p.a by A10,FINSEQ_1:def 7;
  hence thesis by A13,A12,FUNCT_1:54;
end;
