reserve D for non empty set,
  f for FinSequence of D,
  p, p1, p2, p3, q for Element of D,
  i, j, k, l, n for Nat;

theorem Th11:
  1 <= i & i < j & j <= len f implies Replace(Replace(f, j, q), i, p) =
    (f|(i-'1))^<*p*>^(f/^i)|(j-'i-'1)^<*q*>^(f/^j)
proof
  assume that
A1: 1 <= i and
A2: i < j and
A3: j <= len f;
  set fp = f|(j-'1);
A4: j -'1 <= j by NAT_D:35;
  1 + i <= j by A2,INT_1:7;
  then i <= j -' 1 by NAT_D:55;
  then
A5: i <= len fp by A3,A4,FINSEQ_1:59,XXREAL_0:2;
  set Q = f/^j;
  set F = Replace(f,j,q);
A6: 1 <= j by A1,A2,XXREAL_0:2;
  set fj = <*q*>;
  set P = fp^fj;
A7: len P = len fp + len fj by FINSEQ_1:22
    .= len fp + 1 by FINSEQ_1:39
    .= j -'1 + 1 by A3,A4,FINSEQ_1:59,XXREAL_0:2
    .= j by A1,A2,XREAL_1:235,XXREAL_0:2;
A8: i -'1 < j -'1 by A1,A2,NAT_D:56;
  then
A9: i-'1 <= len fp by A3,A4,FINSEQ_1:59,XXREAL_0:2;
  i <= len f by A2,A3,XXREAL_0:2;
  then i <= len F by FUNCT_7:97;
  then Replace(F,i,p) = (F|(i-'1))^<*p*>^(F/^i) by A1,Def1
    .= (F|(i-'1))^<*p*>^((P^Q)/^i) by A3,A6,Def1
    .= (F|(i-'1))^<*p*>^((P/^i)^Q) by A2,A7,GENEALG1:1
    .= (F|(i-'1))^<*p*>^(((fp/^i)^fj)^Q) by A5,GENEALG1:1
    .= (F|(i-'1))^<*p*>^((((f/^i)|((j-'1)-'i))^fj)^Q) by FINSEQ_5:80
    .= (F|(i-'1))^<*p*>^(((f/^i)|((j-'1)-'i))^fj)^Q by FINSEQ_1:32
    .= (F|(i-'1))^<*p*>^((f/^i)|((j-'1)-'i))^fj^Q by FINSEQ_1:32
    .= ((P^Q)|(i-'1))^<*p*>^(f/^i)|((j-'1)-'i)^fj^Q by A3,A6,Def1
    .= (P|(i-'1))^<*p*>^(f/^i)|((j-'1)-'i)^fj^Q by A2,A7,FINSEQ_5:22,NAT_D:44
    .= (fp|(i-'1))^<*p*>^(f/^i)|((j-'1)-'i)^fj^Q by A9,FINSEQ_5:22
    .= (f|(i-'1))^<*p*>^(f/^i)|((j-'1)-'i)^fj^Q by A8,FINSEQ_5:77
    .= (f|(i-'1))^<*p*>^(f/^i)|(j-'i-'1)^<*q*>^Q by Lm1;
  hence thesis;
end;
