reserve x,y,z for set;
reserve f,f1,f2,f3 for FinSequence,
  p,p1,p2,p3 for set,
  i,k for Nat;
reserve D for non empty set,
  p,p1,p2,p3 for Element of D,
  f,f1,f2 for FinSequence of D;

theorem Th59:
  p in rng f & p..f > k implies (f/^k)-:p = (f-:p)/^k
proof
  assume that
A1: p in rng f and
A2: p..f > k;
A3: p in rng(f/^k) by A1,A2,Th57;
  p..f = k + p..(f/^k) by A1,A2,Th56;
  then
A4: len((f/^k)-:p) = p..f - k by A3,FINSEQ_5:42
    .= len(f-:p) - k by A1,FINSEQ_5:42;
A5: now
    let m be Nat;
A6: m+k >= m by NAT_1:11;
    reconsider M=m as Nat;
    assume
A7: m in dom((f/^k)-:p);
    then m <= len(f-:p) - k by A4,FINSEQ_3:25;
    then
A8: m+k <= len(f-:p) by XREAL_1:19;
    1 <= m by A7,FINSEQ_3:25;
    then 1 <= m+k by A6,XXREAL_0:2;
    then
A9: M+k in dom(f-:p) by A8,FINSEQ_3:25;
    len((f/^k)-:p) = p..(f/^k) by A3,FINSEQ_5:42;
    then
A10: m in Seg(p..(f/^k)) by A7,FINSEQ_1:def 3;
    (f/^k)-:p = (f/^k)|(p..(f/^k)) by FINSEQ_5:def 1;
    then
A11: dom((f/^k)-:p) c= dom(f/^k) by FINSEQ_5:18;
    len(f-:p) = p..f by A1,FINSEQ_5:42;
    then
A12: m+k in Seg(p..f) by A9,FINSEQ_1:def 3;
    thus ((f/^k)-:p).m = ((f/^k)-:p)/.m by A7,PARTFUN1:def 6
      .= (f/^k)/.m by A3,A10,FINSEQ_5:43
      .= f/.(m+k) by A7,A11,FINSEQ_5:27
      .= (f-:p)/.(M+k) by A1,A12,FINSEQ_5:43
      .= (f-:p).(m+k) by A9,PARTFUN1:def 6;
  end;
  k <= len(f-:p) by A1,A2,FINSEQ_5:42;
  hence thesis by A4,A5,RFINSEQ:def 1;
end;
