let s be State of SCM+FSA; for p being Instruction-Sequence of SCM+FSA
for a being Int-Location
for I being Program of SCM+FSA st s . (intloc 0) = 1 holds
((StepTimes (a,I,p,s)) . 0) | ((UsedIntLoc I) \/ FinSeq-Locations) = s | ((UsedIntLoc I) \/ FinSeq-Locations)
let p be Instruction-Sequence of SCM+FSA; for a being Int-Location
for I being Program of SCM+FSA st s . (intloc 0) = 1 holds
((StepTimes (a,I,p,s)) . 0) | ((UsedIntLoc I) \/ FinSeq-Locations) = s | ((UsedIntLoc I) \/ FinSeq-Locations)
let a be Int-Location ; for I being Program of SCM+FSA st s . (intloc 0) = 1 holds
((StepTimes (a,I,p,s)) . 0) | ((UsedIntLoc I) \/ FinSeq-Locations) = s | ((UsedIntLoc I) \/ FinSeq-Locations)
let I be Program of SCM+FSA; ( s . (intloc 0) = 1 implies ((StepTimes (a,I,p,s)) . 0) | ((UsedIntLoc I) \/ FinSeq-Locations) = s | ((UsedIntLoc I) \/ FinSeq-Locations) )
set ST = StepTimes (a,I,p,s);
set au = 1 -stRWNotIn ({a} \/ (UsedIntLoc I));
set Is = Initialized s;
set UILI = UsedIntLoc I;
assume
s . (intloc 0) = 1
; ((StepTimes (a,I,p,s)) . 0) | ((UsedIntLoc I) \/ FinSeq-Locations) = s | ((UsedIntLoc I) \/ FinSeq-Locations)
then A1:
DataPart (Initialized s) = DataPart s
by SCMFSA8C:7;
A2:
now let x be
Int-Location ;
( x in UsedIntLoc I implies ((StepTimes (a,I,p,s)) . 0) . x = s . x )A3:
not 1
-stRWNotIn ({a} \/ (UsedIntLoc I)) in {a} \/ (UsedIntLoc I)
by SFMASTR1:20;
assume
x in UsedIntLoc I
;
((StepTimes (a,I,p,s)) . 0) . x = s . xthen A4:
1
-stRWNotIn ({a} \/ (UsedIntLoc I)) <> x
by A3, XBOOLE_0:def 3;
thus ((StepTimes (a,I,p,s)) . 0) . x =
(Exec (((1 -stRWNotIn ({a} \/ (UsedIntLoc I))) := a),(Initialized s))) . x
by SCMFSA_9:def 5
.=
(Initialized s) . x
by A4, SCMFSA_2:63
.=
s . x
by A1, SCMFSA6A:7
;
verum end;
hence
((StepTimes (a,I,p,s)) . 0) | ((UsedIntLoc I) \/ FinSeq-Locations) = s | ((UsedIntLoc I) \/ FinSeq-Locations)
by A2, Th7; verum