reserve i,j,k,n for Nat;
reserve D for non empty set,
  p for Element of D,
  f,g for FinSequence of D;

theorem
  f is one-to-one & not p in rng f implies Ins(f,n,p) is one-to-one
proof
  assume that
A1: f is one-to-one and
A2: not p in rng f;
  now
    let x be object;
    assume
A3: x in rng(f/^n);
    rng(f/^n) c= rng f by Th33;
    then x in rng f by A3;
    then not x in {p} by A2,TARSKI:def 1;
    then
A4: not x in rng<*p*> by FINSEQ_1:38;
    rng(f|n) misses rng(f/^n) by A1,Th34;
    then not x in rng(f|n) by A3,XBOOLE_0:3;
    then not x in rng(f|n) \/ rng<*p*> by A4,XBOOLE_0:def 3;
    hence not x in rng((f|n) ^ <*p*>) by FINSEQ_1:31;
  end;
  then
A5: rng((f|n) ^ <*p*>) misses rng(f/^n) by XBOOLE_0:3;
  now
    let x be object;
    assume x in rng<*p*>;
    then x in {p} by FINSEQ_1:38;
    then
A6: not x in rng f by A2,TARSKI:def 1;
    rng(f|n) c= rng f by Th19;
    hence not x in rng(f|n) by A6;
  end;
  then <*p*> is one-to-one & rng(f|n) misses rng<*p*> by FINSEQ_3:93,XBOOLE_0:3
;
  then (f|n) ^ <*p*> is one-to-one by A1,FINSEQ_3:91;
  hence thesis by A1,A5,FINSEQ_3:91;
end;
