let s be State of SCM+FSA ; for a being read-write Int-Location
for cc, bb being Int-Location
for I being Program of SCM+FSA st a <> cc holds
((StepForUp a,bb,cc,I,s) . 0 ) . cc = s . cc
let a be read-write Int-Location ; for cc, bb being Int-Location
for I being Program of SCM+FSA st a <> cc holds
((StepForUp a,bb,cc,I,s) . 0 ) . cc = s . cc
let cc, bb be Int-Location ; for I being Program of SCM+FSA st a <> cc holds
((StepForUp a,bb,cc,I,s) . 0 ) . cc = s . cc
let I be Program of SCM+FSA ; ( a <> cc implies ((StepForUp a,bb,cc,I,s) . 0 ) . cc = s . cc )
set aux = 1 -stRWNotIn ({a,bb,cc} \/ (UsedIntLoc I));
set S = (s +* (1 -stRWNotIn ({a,bb,cc} \/ (UsedIntLoc I))),(((s . cc) - (s . bb)) + 1)) +* a,(s . bb);
cc in {a,bb,cc}
by ENUMSET1:def 1;
then
cc in {a,bb,cc} \/ (UsedIntLoc I)
by XBOOLE_0:def 3;
then A1:
cc <> 1 -stRWNotIn ({a,bb,cc} \/ (UsedIntLoc I))
by SFMASTR1:21;
assume
a <> cc
; ((StepForUp a,bb,cc,I,s) . 0 ) . cc = s . cc
then ((s +* (1 -stRWNotIn ({a,bb,cc} \/ (UsedIntLoc I))),(((s . cc) - (s . bb)) + 1)) +* a,(s . bb)) . cc =
(s +* (1 -stRWNotIn ({a,bb,cc} \/ (UsedIntLoc I))),(((s . cc) - (s . bb)) + 1)) . cc
by FUNCT_7:34
.=
s . cc
by A1, FUNCT_7:34
;
hence
((StepForUp a,bb,cc,I,s) . 0 ) . cc = s . cc
by SCMFSA_9:def 5; verum