let P be the Instructions of SCM+FSA -valued ManySortedSet of NAT ; for s being State of SCM+FSA
for I being keeping_0 Program of SCM+FSA st I is_halting_on Initialized s,P holds
( (IExec (I,P,s)) . (intloc 0) = 1 & ( for k being Element of NAT holds (Comput ((P +* I),((Initialized s) +* (Initialize I)),k)) . (intloc 0) = 1 ) )
set a = intloc 0;
let s be State of SCM+FSA; for I being keeping_0 Program of SCM+FSA st I is_halting_on Initialized s,P holds
( (IExec (I,P,s)) . (intloc 0) = 1 & ( for k being Element of NAT holds (Comput ((P +* I),((Initialized s) +* (Initialize I)),k)) . (intloc 0) = 1 ) )
set D = Data-Locations SCM+FSA;
set A = NAT ;
let I be keeping_0 Program of SCM+FSA; ( I is_halting_on Initialized s,P implies ( (IExec (I,P,s)) . (intloc 0) = 1 & ( for k being Element of NAT holds (Comput ((P +* I),((Initialized s) +* (Initialize I)),k)) . (intloc 0) = 1 ) ) )
set s0 = Initialized s;
set s1 = (Initialized s) +* (Initialize I);
set P1 = P +* I;
A1:
I c= P +* I
by FUNCT_4:26;
A2:
ProgramPart I = I
by RELAT_1:209;
A3:
Initialize I c= (Initialized s) +* (Initialize I)
by FUNCT_4:26;
A4:
DataPart (Initialized s) = DataPart ((Initialized s) +* (Initialize I))
by SCMFSA8A:11;
not intloc 0 in NAT
by SCMFSA_2:84;
then
not intloc 0 in (dom s) /\ NAT
by XBOOLE_0:def 4;
then A6:
not intloc 0 in dom (s | NAT)
by RELAT_1:90;
assume
I is_halting_on Initialized s,P
; ( (IExec (I,P,s)) . (intloc 0) = 1 & ( for k being Element of NAT holds (Comput ((P +* I),((Initialized s) +* (Initialize I)),k)) . (intloc 0) = 1 ) )
then A7:
P +* I halts_on (Initialized s) +* (Initialize I)
by SCMFSA7B:def 8, A2;
s +* (Initialized I) = (Initialized s) +* (Initialize I)
by SCMFSA8A:13;
hence (IExec (I,P,s)) . (intloc 0) =
((Result ((P +* I),((Initialized s) +* (Initialize I)))) +* (s | NAT)) . (intloc 0)
.=
(Result ((P +* I),((Initialized s) +* (Initialize I)))) . (intloc 0)
by A6, FUNCT_4:12
.=
(Comput ((P +* I),((Initialized s) +* (Initialize I)),(LifeSpan ((P +* I),((Initialized s) +* (Initialize I)))))) . (intloc 0)
by A7, EXTPRO_1:23
.=
1
by A5
;
for k being Element of NAT holds (Comput ((P +* I),((Initialized s) +* (Initialize I)),k)) . (intloc 0) = 1
let k be Element of NAT ; (Comput ((P +* I),((Initialized s) +* (Initialize I)),k)) . (intloc 0) = 1
thus
(Comput ((P +* I),((Initialized s) +* (Initialize I)),k)) . (intloc 0) = 1
by A5; verum