reserve a,b,n for Element of NAT;

theorem
  for a,b,k,n being Element of NAT holds GenFib(GenFib(a,b,k),GenFib(a,b
  ,k+1),n) = GenFib(a,b,n+k)
proof
  let a,b,k,n be Element of NAT;
  defpred P[Nat] means GenFib(GenFib(a,b,k),GenFib(a,b,k+1),$1)=GenFib(a,b,$1+
  k);
A1: P[1] by Th32;
A2: for i being Nat st P[i] & P[i+1] holds P[i+2]
  proof
    let i be Nat;
    assume ( P[i])& P[i+1];
    then
    GenFib(GenFib(a,b,k),GenFib(a,b,k+1),i+2) =GenFib(a,b,i+k)+GenFib(a,b,
    (i+k)+1) by Th34
      .=GenFib(a,b,(i+k)+2) by Th34
      .=GenFib(a,b,(i+2)+k);
    hence thesis;
  end;
A3: P[0] by Th32;
  for k being Nat holds P[k] from FIB_NUM:sch 1 (A3, A1, A2);
  hence thesis;
end;
