let p be Instruction-Sequence of SCM+FSA; for s being State of SCM+FSA
for a being read-write Int-Location
for I being Program of SCM+FSA
for k being Element of NAT st ( ( I is_halting_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I)) & I is_closed_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I)) ) or I is parahalting ) & ((StepWhile=0 (a,I,p,s)) . k) . a = 0 & ((StepWhile=0 (a,I,p,s)) . k) . (intloc 0) = 1 holds
DataPart ((StepWhile=0 (a,I,p,s)) . (k + 1)) = DataPart (IExec (I,(p +* (while=0 (a,I))),((StepWhile=0 (a,I,p,s)) . k)))
let s be State of SCM+FSA; for a being read-write Int-Location
for I being Program of SCM+FSA
for k being Element of NAT st ( ( I is_halting_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I)) & I is_closed_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I)) ) or I is parahalting ) & ((StepWhile=0 (a,I,p,s)) . k) . a = 0 & ((StepWhile=0 (a,I,p,s)) . k) . (intloc 0) = 1 holds
DataPart ((StepWhile=0 (a,I,p,s)) . (k + 1)) = DataPart (IExec (I,(p +* (while=0 (a,I))),((StepWhile=0 (a,I,p,s)) . k)))
let a be read-write Int-Location ; for I being Program of SCM+FSA
for k being Element of NAT st ( ( I is_halting_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I)) & I is_closed_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I)) ) or I is parahalting ) & ((StepWhile=0 (a,I,p,s)) . k) . a = 0 & ((StepWhile=0 (a,I,p,s)) . k) . (intloc 0) = 1 holds
DataPart ((StepWhile=0 (a,I,p,s)) . (k + 1)) = DataPart (IExec (I,(p +* (while=0 (a,I))),((StepWhile=0 (a,I,p,s)) . k)))
let I be Program of SCM+FSA; for k being Element of NAT st ( ( I is_halting_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I)) & I is_closed_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I)) ) or I is parahalting ) & ((StepWhile=0 (a,I,p,s)) . k) . a = 0 & ((StepWhile=0 (a,I,p,s)) . k) . (intloc 0) = 1 holds
DataPart ((StepWhile=0 (a,I,p,s)) . (k + 1)) = DataPart (IExec (I,(p +* (while=0 (a,I))),((StepWhile=0 (a,I,p,s)) . k)))
let k be Element of NAT ; ( ( ( I is_halting_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I)) & I is_closed_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I)) ) or I is parahalting ) & ((StepWhile=0 (a,I,p,s)) . k) . a = 0 & ((StepWhile=0 (a,I,p,s)) . k) . (intloc 0) = 1 implies DataPart ((StepWhile=0 (a,I,p,s)) . (k + 1)) = DataPart (IExec (I,(p +* (while=0 (a,I))),((StepWhile=0 (a,I,p,s)) . k))) )
set Ins = NAT ;
assume that
A1:
( ( I is_halting_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I)) & I is_closed_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I)) ) or I is parahalting )
and
A2:
((StepWhile=0 (a,I,p,s)) . k) . a = 0
and
A3:
((StepWhile=0 (a,I,p,s)) . k) . (intloc 0) = 1
; DataPart ((StepWhile=0 (a,I,p,s)) . (k + 1)) = DataPart (IExec (I,(p +* (while=0 (a,I))),((StepWhile=0 (a,I,p,s)) . k)))
set ISWk = Initialized ((StepWhile=0 (a,I,p,s)) . k);
set SW = StepWhile=0 (a,I,p,s);
set PW = p +* (while=0 (a,I));
set SWkI = Initialized ((StepWhile=0 (a,I,p,s)) . k);
set PWI = (p +* (while=0 (a,I))) +* I;
A5:
(p +* (while=0 (a,I))) +* (while=0 (a,I)) = p +* (while=0 (a,I))
by FUNCT_4:93;
DataPart (Initialized ((StepWhile=0 (a,I,p,s)) . k)) = DataPart ((StepWhile=0 (a,I,p,s)) . k)
by A3, SCMFSA8C:7;
then A6:
( I is_closed_on (StepWhile=0 (a,I,p,s)) . k,p +* (while=0 (a,I)) & I is_halting_on (StepWhile=0 (a,I,p,s)) . k,p +* (while=0 (a,I)) )
by A1, SCMFSA7B:18, SCMFSA7B:19, SCMFSA8B:5;
I is_halting_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I))
by A1, SCMFSA7B:19;
then A7:
I is_halting_on Initialized ((StepWhile=0 (a,I,p,s)) . k),p +* (while=0 (a,I))
;
Initialized ((StepWhile=0 (a,I,p,s)) . k) = Initialize (Initialized ((StepWhile=0 (a,I,p,s)) . k))
by MEMSTR_0:44;
then A9:
(p +* (while=0 (a,I))) +* I halts_on Initialized ((StepWhile=0 (a,I,p,s)) . k)
by A7, SCMFSA7B:def 7;
A10:
(p +* (while=0 (a,I))) +* I halts_on Initialized ((StepWhile=0 (a,I,p,s)) . k)
by A9;
set SWkIS = Initialize ((StepWhile=0 (a,I,p,s)) . k);
set PWIS = (p +* (while=0 (a,I))) +* I;
A13:
Initialized ((StepWhile=0 (a,I,p,s)) . k) = Initialize ((StepWhile=0 (a,I,p,s)) . k)
by A3, SCMFSA8C:4;
A14:
(StepWhile=0 (a,I,p,s)) . (k + 1) = Comput (((p +* (while=0 (a,I))) +* (while=0 (a,I))),(Initialize ((StepWhile=0 (a,I,p,s)) . k)),((LifeSpan (((p +* (while=0 (a,I))) +* I),(Initialize ((StepWhile=0 (a,I,p,s)) . k)))) + 3))
by A5, SCMFSA_9:def 4;
A15: DataPart (IExec (I,(p +* (while=0 (a,I))),((StepWhile=0 (a,I,p,s)) . k))) =
DataPart (Result (((p +* (while=0 (a,I))) +* I),(Initialized ((StepWhile=0 (a,I,p,s)) . k))))
by SCMFSA6B:def 1
.=
DataPart (Result (((p +* (while=0 (a,I))) +* I),(Initialized ((StepWhile=0 (a,I,p,s)) . k))))
.=
DataPart (Comput (((p +* (while=0 (a,I))) +* I),(Initialize ((StepWhile=0 (a,I,p,s)) . k)),(LifeSpan (((p +* (while=0 (a,I))) +* I),(Initialize ((StepWhile=0 (a,I,p,s)) . k))))))
by A13, A10, EXTPRO_1:23
;
thus DataPart ((StepWhile=0 (a,I,p,s)) . (k + 1)) =
DataPart (Comput (((p +* (while=0 (a,I))) +* I),(Initialize ((StepWhile=0 (a,I,p,s)) . k)),(LifeSpan (((p +* (while=0 (a,I))) +* I),(Initialize ((StepWhile=0 (a,I,p,s)) . k))))))
by A2, A6, Th23, A14
.=
DataPart (IExec (I,(p +* (while=0 (a,I))),((StepWhile=0 (a,I,p,s)) . k)))
by A15
; verum