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