let s be State of SCM+FSA; for I being Program of SCM+FSA st I is_halting_on Initialized s holds
for a being Int-Location holds (IExec (I,s)) . a = (Comput ((ProgramPart ((Initialized s) +* (I +* (Start-At (0,SCM+FSA))))),((Initialized s) +* (I +* (Start-At (0,SCM+FSA)))),(LifeSpan ((ProgramPart ((Initialized s) +* (I +* (Start-At (0,SCM+FSA))))),((Initialized s) +* (I +* (Start-At (0,SCM+FSA)))))))) . a
let I be Program of SCM+FSA; ( I is_halting_on Initialized s implies for a being Int-Location holds (IExec (I,s)) . a = (Comput ((ProgramPart ((Initialized s) +* (I +* (Start-At (0,SCM+FSA))))),((Initialized s) +* (I +* (Start-At (0,SCM+FSA)))),(LifeSpan ((ProgramPart ((Initialized s) +* (I +* (Start-At (0,SCM+FSA))))),((Initialized s) +* (I +* (Start-At (0,SCM+FSA)))))))) . a )
set s0 = Initialized s;
set s1 = (Initialized s) +* (I +* (Start-At (0,SCM+FSA)));
set A = NAT ;
assume
I is_halting_on Initialized s
; for a being Int-Location holds (IExec (I,s)) . a = (Comput ((ProgramPart ((Initialized s) +* (I +* (Start-At (0,SCM+FSA))))),((Initialized s) +* (I +* (Start-At (0,SCM+FSA)))),(LifeSpan ((ProgramPart ((Initialized s) +* (I +* (Start-At (0,SCM+FSA))))),((Initialized s) +* (I +* (Start-At (0,SCM+FSA)))))))) . a
then A1:
ProgramPart ((Initialized s) +* (I +* (Start-At (0,SCM+FSA)))) halts_on (Initialized s) +* (I +* (Start-At (0,SCM+FSA)))
by SCMFSA7B:def 8;
hereby verum
let a be
Int-Location ;
(IExec (I,s)) . a = (Comput ((ProgramPart ((Initialized s) +* (I +* (Start-At (0,SCM+FSA))))),((Initialized s) +* (I +* (Start-At (0,SCM+FSA)))),(LifeSpan ((ProgramPart ((Initialized s) +* (I +* (Start-At (0,SCM+FSA))))),((Initialized s) +* (I +* (Start-At (0,SCM+FSA)))))))) . a
not
a in NAT
by SCMFSA_2:84;
then
not
a in (dom s) /\ NAT
by XBOOLE_0:def 4;
then A2:
not
a in dom (s | NAT)
by RELAT_1:90;
s +* (Initialized I) = (Initialized s) +* (I +* (Start-At (0,SCM+FSA)))
by SCMFSA8A:13;
hence (IExec (I,s)) . a =
((Result ((ProgramPart ((Initialized s) +* (I +* (Start-At (0,SCM+FSA))))),((Initialized s) +* (I +* (Start-At (0,SCM+FSA)))))) +* (s | NAT)) . a
by SCMFSA6B:def 1
.=
(Result ((ProgramPart ((Initialized s) +* (I +* (Start-At (0,SCM+FSA))))),((Initialized s) +* (I +* (Start-At (0,SCM+FSA)))))) . a
by A2, FUNCT_4:12
.=
(Comput ((ProgramPart ((Initialized s) +* (I +* (Start-At (0,SCM+FSA))))),((Initialized s) +* (I +* (Start-At (0,SCM+FSA)))),(LifeSpan ((ProgramPart ((Initialized s) +* (I +* (Start-At (0,SCM+FSA))))),((Initialized s) +* (I +* (Start-At (0,SCM+FSA)))))))) . a
by A1, EXTPRO_1:23
;
verum
end;