reserve C for non empty set;
reserve GF for Field,
        V for VectSp of GF,
        v,u for Element of V,
        W for Subset of V;
reserve f,f1,f2,f3 for PartFunc of C,V;
reserve F,G for Field,
        V for VectSp of F,
        W for VectSp of G;
reserve f,f1,f2 for Function of V, W;
reserve x,h for Element of V;
reserve r,r1,r2 for Element of G;
reserve n,m,k for Nat;

theorem
  f is constant implies for x holds fdif(f,h).(n+1)/.x = 0.W
proof
  assume
A1: f is constant;
A2: for x holds f/.(x+h) - f/.x = 0.W
  proof
    let x;
    x + h in the carrier of V; then
A3: x + h in dom f by FUNCT_2:def 1;
    x in the carrier of V;
    then x in dom f by FUNCT_2:def 1;
    then f/.x = f/.(x+h) by A1,A3,FUNCT_1:def 10;
    hence thesis by RLVECT_1:15;
  end;
  for x holds fdif(f,h).(n+1)/.x = 0.W
  proof
    defpred X[Nat] means for x holds fdif(f,h).($1+1)/.x = 0.W;
A4: for k st X[k] holds X[k+1]
    proof
      let k;
      assume
A5:   for x holds fdif(f,h).(k+1)/.x = 0.W;
      let x;
A6:   fdif(f,h).(k+1)/.(x+h) = 0.W by A5;
      reconsider fdk = fdif(f,h).(k+1) as Function of V,W by Th2;
      (fdif(f,h).(k+2))/.x = (fdif(f,h).(k+1+1))/.x
      .= fD(fdif(f,h).(k+1),h)/.x by Def6
      .= fdk/.(x+h) - fdk/.x by Th3
      .= 0.W - 0.W by A5,A6
      .= 0.W by RLVECT_1:15;
      hence thesis;
    end;
A8: X[0]
    proof
      let x;
      thus fdif(f,h).(0+1)/.x = fD(fdif(f,h).0,h)/.x by Def6
      .= fD(f,h)/.x by Def6
      .= f/.(x+h) - f/.x by Th3
      .= 0.W by A2;
    end;
    for n holds X[n] from NAT_1:sch 2(A8,A4);
    hence thesis;
  end;
  hence thesis;
end;
