let s be State of SCM+FSA; for P being the Instructions of SCM+FSA -valued ManySortedSet of NAT
for I being parahalting Program of SCM+FSA
for a being read-write Int-Location st not a in UsedIntLoc I holds
(IExec (I,P,s)) . a = s . a
let P be the Instructions of SCM+FSA -valued ManySortedSet of NAT ; for I being parahalting Program of SCM+FSA
for a being read-write Int-Location st not a in UsedIntLoc I holds
(IExec (I,P,s)) . a = s . a
let I be parahalting Program of SCM+FSA; for a being read-write Int-Location st not a in UsedIntLoc I holds
(IExec (I,P,s)) . a = s . a
let a be read-write Int-Location ; ( not a in UsedIntLoc I implies (IExec (I,P,s)) . a = s . a )
assume A1:
not a in UsedIntLoc I
; (IExec (I,P,s)) . a = s . a
A2:
I c= P +* I
by FUNCT_4:26;
Initialize ((intloc 0) .--> 1) c= s +* (Initialize ((intloc 0) .--> 1))
by FUNCT_4:26;
then
P +* I halts_on s +* (Initialize ((intloc 0) .--> 1))
by Th19, A2;
then consider n being Element of NAT such that
A3:
Result ((P +* I),(s +* (Initialize ((intloc 0) .--> 1)))) = Comput ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))),n)
and
CurInstr ((P +* I),(Result ((P +* I),(s +* (Initialize ((intloc 0) .--> 1)))))) = halt SCM+FSA
by EXTPRO_1:def 8;
Initialize ((intloc 0) .--> 1) c= Initialized I
by FUNCT_4:26;
then
dom (Initialize ((intloc 0) .--> 1)) c= dom (Initialized I)
by RELAT_1:25;
then A4:
not a in dom (Initialize ((intloc 0) .--> 1))
by SCMFSA6A:48;
dom (ProgramPart s) = NAT
by COMPOS_1:34;
then
not a in dom (s | NAT)
by SCMFSA_2:84;
then A5:
(IExec (I,P,s)) . a = (Result ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))))) . a
by FUNCT_4:12;
uu:
Initialize ((intloc 0) .--> 1) c= s +* (Initialize ((intloc 0) .--> 1))
by FUNCT_4:26;
Start-At (0,SCM+FSA) c= Initialize ((intloc 0) .--> 1)
by FUNCT_4:26;
then A6:
Start-At (0,SCM+FSA) c= s +* (Initialize ((intloc 0) .--> 1))
by uu, XBOOLE_1:1;
for m being Element of NAT st m < n holds
IC (Comput ((P +* I),(s +* (Initialize ((intloc 0) .--> 1))),m)) in dom I
by A6, Def2, FUNCT_4:26;
hence (IExec (I,P,s)) . a =
(s +* (Initialize ((intloc 0) .--> 1))) . a
by A1, A5, A3, A6, FUNCT_4:26, SF_MASTR:69
.=
s . a
by A4, FUNCT_4:12
;
verum