let s be State of SCM+FSA ; :: thesis: for I being Program of SCM+FSA
for a being read-write Int-Location st I is_closed_onInit s & I is_halting_onInit s & s . a > 0 holds
for k being Element of NAT st k <= (LifeSpan (s +* (Initialized I))) + 3 holds
IC (Comput (ProgramPart (s +* (Initialized (while>0 a,I)))),(s +* (Initialized (while>0 a,I))),k) in dom (while>0 a,I)

let I be Program of SCM+FSA ; :: thesis: for a being read-write Int-Location st I is_closed_onInit s & I is_halting_onInit s & s . a > 0 holds
for k being Element of NAT st k <= (LifeSpan (s +* (Initialized I))) + 3 holds
IC (Comput (ProgramPart (s +* (Initialized (while>0 a,I)))),(s +* (Initialized (while>0 a,I))),k) in dom (while>0 a,I)

let a be read-write Int-Location ; :: thesis: ( I is_closed_onInit s & I is_halting_onInit s & s . a > 0 implies for k being Element of NAT st k <= (LifeSpan (s +* (Initialized I))) + 3 holds
IC (Comput (ProgramPart (s +* (Initialized (while>0 a,I)))),(s +* (Initialized (while>0 a,I))),k) in dom (while>0 a,I) )

set s0 = Initialize s;
set IA = I +* (Start-At 0 ,SCM+FSA );
assume A1: I is_closed_onInit s ; :: thesis: ( not I is_halting_onInit s or not s . a > 0 or for k being Element of NAT st k <= (LifeSpan (s +* (Initialized I))) + 3 holds
IC (Comput (ProgramPart (s +* (Initialized (while>0 a,I)))),(s +* (Initialized (while>0 a,I))),k) in dom (while>0 a,I) )

now end;
then A2: I is_closed_on Initialize s by SCMFSA7B:def 7;
assume I is_halting_onInit s ; :: thesis: ( not s . a > 0 or for k being Element of NAT st k <= (LifeSpan (s +* (Initialized I))) + 3 holds
IC (Comput (ProgramPart (s +* (Initialized (while>0 a,I)))),(s +* (Initialized (while>0 a,I))),k) in dom (while>0 a,I) )

then X: ProgramPart (s +* (Initialized I)) halts_on s +* (Initialized I) by SCM_HALT:def 5;
s +* (Initialized I) = (Initialize s) +* (I +* (Start-At 0 ,SCM+FSA )) by SCMFSA8A:13;
then ProgramPart ((Initialize s) +* (I +* (Start-At 0 ,SCM+FSA ))) halts_on (Initialize s) +* (I +* (Start-At 0 ,SCM+FSA )) by X;
then A3: I is_halting_on Initialize s by SCMFSA7B:def 8;
assume s . a > 0 ; :: thesis: for k being Element of NAT st k <= (LifeSpan (s +* (Initialized I))) + 3 holds
IC (Comput (ProgramPart (s +* (Initialized (while>0 a,I)))),(s +* (Initialized (while>0 a,I))),k) in dom (while>0 a,I)

then A4: (Initialize s) . a > 0 by SCMFSA6C:3;
hereby :: thesis: verum end;