let P be Instruction-Sequence of SCM+FSA; for s being State of SCM+FSA holds IExec ((Stop SCM+FSA),P,s) = Initialized s
let s be State of SCM+FSA; IExec ((Stop SCM+FSA),P,s) = Initialized s
set D = Data-Locations ;
set s1 = Initialize (Initialized s);
set P1 = P +* (Stop SCM+FSA);
A1:
Stop SCM+FSA c= P +* (Stop SCM+FSA)
by FUNCT_4:25;
A2:
Initialize (Initialized s) = Comput ((P +* (Stop SCM+FSA)),(Initialize (Initialized s)),0)
;
A3:
(P +* (Stop SCM+FSA)) /. (IC (Initialize (Initialized s))) = (P +* (Stop SCM+FSA)) . (IC (Initialize (Initialized s)))
by PBOOLE:143;
A4:
0 in dom (Stop SCM+FSA)
by COMPOS_1:3;
A5:
s +* (Initialize ((intloc 0) .--> 1)) = Initialize (Initialized s)
by MEMSTR_0:44;
A6: CurInstr ((P +* (Stop SCM+FSA)),(Initialize (Initialized s))) =
(P +* (Stop SCM+FSA)) . 0
by A3, MEMSTR_0:28
.=
(Stop SCM+FSA) . 0
by A4, A1, GRFUNC_1:2
;
then
P +* (Stop SCM+FSA) halts_on Initialize (Initialized s)
by A2, EXTPRO_1:29;
then A7:
IExec ((Stop SCM+FSA),P,s) = Initialize (Initialized s)
by A5, A6, A2, EXTPRO_1:def 9;
then A8: DataPart (IExec ((Stop SCM+FSA),P,s)) =
DataPart (Initialize (Initialized s))
.=
DataPart (Initialized s)
by MEMSTR_0:79
;
hereby verum
A9:
now for x being object st x in dom (IExec ((Stop SCM+FSA),P,s)) holds
(IExec ((Stop SCM+FSA),P,s)) . x = (Initialized s) . xlet x be
object ;
( x in dom (IExec ((Stop SCM+FSA),P,s)) implies (IExec ((Stop SCM+FSA),P,s)) . b1 = (Initialized s) . b1 )assume A10:
x in dom (IExec ((Stop SCM+FSA),P,s))
;
(IExec ((Stop SCM+FSA),P,s)) . b1 = (Initialized s) . b1per cases
( x is Int-Location or x is FinSeq-Location or x = IC )
by A10, SCMFSA_M:1;
suppose A13:
x = IC
;
(IExec ((Stop SCM+FSA),P,s)) . b1 = (Initialized s) . b1then
x in {(IC )}
by TARSKI:def 1;
then A14:
x in dom (Start-At (0,SCM+FSA))
;
thus (IExec ((Stop SCM+FSA),P,s)) . x =
(Initialize (Initialized s)) . (IC )
by A7, A13
.=
(Start-At (0,SCM+FSA)) . (IC )
by A13, A14, FUNCT_4:13
.=
((s +* ((intloc 0) .--> 1)) +* (Start-At (0,SCM+FSA))) . x
by A13, A14, FUNCT_4:13
.=
(s +* (Initialize ((intloc 0) .--> 1))) . x
by FUNCT_4:14
.=
(Initialized s) . x
;
verum end; end; end; dom (IExec ((Stop SCM+FSA),P,s)) =
the
carrier of
SCM+FSA
by PARTFUN1:def 2
.=
dom (Initialized s)
by PARTFUN1:def 2
;
hence
IExec (
(Stop SCM+FSA),
P,
s)
= Initialized s
by A9, FUNCT_1:2;
verum
end;