let P be the Instructions of SCM+FSA -valued ManySortedSet of NAT ; :: thesis: 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; :: thesis: 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; :: thesis: ( 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;
A5: now
let k be Element of NAT ; :: thesis: (Comput ((P +* I),((Initialized s) +* (Initialize I)),k)) . (intloc 0) = 1
thus (Comput ((P +* I),((Initialized s) +* (Initialize I)),k)) . (intloc 0) = ((Initialized s) +* (Initialize I)) . (intloc 0) by A3, SCMFSA6B:def 4, A1
.= (Initialized s) . (intloc 0) by A4, SCMFSA6A:38
.= 1 by SCMFSA6C:3 ; :: thesis: verum
end;
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 ; :: thesis: ( (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 ;
:: thesis: for k being Element of NAT holds (Comput ((P +* I),((Initialized s) +* (Initialize I)),k)) . (intloc 0) = 1
let k be Element of NAT ; :: thesis: (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; :: thesis: verum