reconsider ss = s as Element of product the Object-Kind of SCM+FSA by PBOOLE:155;
consider f being Function of NAT ,(product the Object-Kind of SCM+FSA ) such that
W1: f . 0 = ss and
W2: for i being Nat holds f . (i + 1) = H2(i,f . i) from NAT_1:sch 12();
take f ; :: thesis: ( f . 0 = s & ( for i being Nat holds f . (i + 1) = Comput (ProgramPart ((f . i) +* (Initialized (while>0 a,I)))),((f . i) +* (Initialized (while>0 a,I))),((LifeSpan (ProgramPart ((f . i) +* (Initialized I))),((f . i) +* (Initialized I))) + 3) ) )
thus f . 0 = s by W1; :: thesis: for i being Nat holds f . (i + 1) = Comput (ProgramPart ((f . i) +* (Initialized (while>0 a,I)))),((f . i) +* (Initialized (while>0 a,I))),((LifeSpan (ProgramPart ((f . i) +* (Initialized I))),((f . i) +* (Initialized I))) + 3)
let i be Nat; :: thesis: f . (i + 1) = Comput (ProgramPart ((f . i) +* (Initialized (while>0 a,I)))),((f . i) +* (Initialized (while>0 a,I))),((LifeSpan (ProgramPart ((f . i) +* (Initialized I))),((f . i) +* (Initialized I))) + 3)
f . (i + 1) = H2(i,f . i) by W2;
hence f . (i + 1) = Comput (ProgramPart ((f . i) +* (Initialized (while>0 a,I)))),((f . i) +* (Initialized (while>0 a,I))),((LifeSpan (ProgramPart ((f . i) +* (Initialized I))),((f . i) +* (Initialized I))) + 3) ; :: thesis: verum