let P be the Instructions of SCM+FSA -valued ManySortedSet of NAT ; for s being State of SCM+FSA
for I being Program of SCM+FSA
for a being read-write Int-Location st I is_closed_onInit s,P & I is_halting_onInit s,P & s . a > 0 holds
( IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),((LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3))) = 0 & ( for k being Element of NAT st k <= (LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3 holds
IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),k)) in dom (while>0 (a,I)) ) )
let s be State of SCM+FSA; for I being Program of SCM+FSA
for a being read-write Int-Location st I is_closed_onInit s,P & I is_halting_onInit s,P & s . a > 0 holds
( IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),((LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3))) = 0 & ( for k being Element of NAT st k <= (LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3 holds
IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),k)) in dom (while>0 (a,I)) ) )
let I be Program of SCM+FSA; for a being read-write Int-Location st I is_closed_onInit s,P & I is_halting_onInit s,P & s . a > 0 holds
( IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),((LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3))) = 0 & ( for k being Element of NAT st k <= (LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3 holds
IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),k)) in dom (while>0 (a,I)) ) )
let a be read-write Int-Location ; ( I is_closed_onInit s,P & I is_halting_onInit s,P & s . a > 0 implies ( IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),((LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3))) = 0 & ( for k being Element of NAT st k <= (LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3 holds
IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),k)) in dom (while>0 (a,I)) ) ) )
set s0 = Initialized s;
set sw = s +* (Initialize ((intloc 0) .--> 1));
set Pw = P +* (while>0 (a,I));
set sI = s +* (Initialize ((intloc 0) .--> 1));
set PI = P +* I;
set s0I = Initialize (Initialized s);
set s0w = (Initialized s) +* (Start-At (0,SCM+FSA));
A1:
s +* (Initialize ((intloc 0) .--> 1)) = Initialize (Initialized s)
by SCMFSA8A:13;
assume
I is_closed_onInit s,P
; ( not I is_halting_onInit s,P or not s . a > 0 or ( IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),((LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3))) = 0 & ( for k being Element of NAT st k <= (LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3 holds
IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),k)) in dom (while>0 (a,I)) ) ) )
then A3:
I is_closed_on Initialized s,P
by SCM_HALT:40;
assume
I is_halting_onInit s,P
; ( not s . a > 0 or ( IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),((LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3))) = 0 & ( for k being Element of NAT st k <= (LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3 holds
IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),k)) in dom (while>0 (a,I)) ) ) )
then A4:
I is_halting_on Initialized s,P
by SCM_HALT:41;
assume
s . a > 0
; ( IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),((LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3))) = 0 & ( for k being Element of NAT st k <= (LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3 holds
IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),k)) in dom (while>0 (a,I)) ) )
then A5:
(Initialized s) . a > 0
by SCMFSA6C:3;
hence
IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),((LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3))) = 0
by A3, A4, A1, SCMFSA_9:47; for k being Element of NAT st k <= (LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3 holds
IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),k)) in dom (while>0 (a,I))
thus
for k being Element of NAT st k <= (LifeSpan ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) + 3 holds
IC (Comput ((P +* (while>0 (a,I))),(s +* (Initialize ((intloc 0) .--> 1))),k)) in dom (while>0 (a,I))
by A3, A4, A5, A1, SCMFSA_9:47; verum