let f be Function; for n, m being Element of NAT holds (iter f,n) * (iter f,m) = iter f,(n + m)
let n, m be Element of NAT ; (iter f,n) * (iter f,m) = iter f,(n + m)
defpred S1[ Element of NAT ] means (iter f,n) * (iter f,$1) = iter f,(n + $1);
A1:
for k being Element of NAT st S1[k] holds
S1[k + 1]
proof
let k be
Element of
NAT ;
( S1[k] implies S1[k + 1] )
assume A2:
(iter f,n) * (iter f,k) = iter f,
(n + k)
;
S1[k + 1]
thus (iter f,n) * (iter f,(k + 1)) =
(iter f,n) * ((iter f,k) * f)
by Th71
.=
((iter f,n) * (iter f,k)) * f
by RELAT_1:55
.=
iter f,
((n + k) + 1)
by A2, Th71
.=
iter f,
(n + (k + 1))
;
verum
end;
(iter f,n) * (iter f,0 ) =
(iter f,n) * (id ((dom f) \/ (rng f)))
by Th70
.=
iter f,(n + 0 )
by Th77
;
then A3:
S1[ 0 ]
;
for k being Element of NAT holds S1[k]
from NAT_1:sch 1(A3, A1);
hence
(iter f,n) * (iter f,m) = iter f,(n + m)
; verum