let g be FinSeq-Location ; for c being Int-Location
for s being State of SCM+FSA holds
( (Exec ((g :=<0,...,0> c),s)) . (IC ) = (IC s) + 1 & ex k being Nat st
( k = |.(s . c).| & (Exec ((g :=<0,...,0> c),s)) . g = k |-> 0 ) & ( for b being Int-Location holds (Exec ((g :=<0,...,0> c),s)) . b = s . b ) & ( for f being FinSeq-Location st f <> g holds
(Exec ((g :=<0,...,0> c),s)) . f = s . f ) )
let c be Int-Location; for s being State of SCM+FSA holds
( (Exec ((g :=<0,...,0> c),s)) . (IC ) = (IC s) + 1 & ex k being Nat st
( k = |.(s . c).| & (Exec ((g :=<0,...,0> c),s)) . g = k |-> 0 ) & ( for b being Int-Location holds (Exec ((g :=<0,...,0> c),s)) . b = s . b ) & ( for f being FinSeq-Location st f <> g holds
(Exec ((g :=<0,...,0> c),s)) . f = s . f ) )
let s be State of SCM+FSA; ( (Exec ((g :=<0,...,0> c),s)) . (IC ) = (IC s) + 1 & ex k being Nat st
( k = |.(s . c).| & (Exec ((g :=<0,...,0> c),s)) . g = k |-> 0 ) & ( for b being Int-Location holds (Exec ((g :=<0,...,0> c),s)) . b = s . b ) & ( for f being FinSeq-Location st f <> g holds
(Exec ((g :=<0,...,0> c),s)) . f = s . f ) )
reconsider p = g as Element of SCM+FSA-Data*-Loc by Def3;
reconsider ml = c as Element of SCM-Data-Loc by AMI_2:def 16;
reconsider I = g :=<0,...,0> c as Element of SCM+FSA-Instr ;
reconsider S = s as SCM+FSA-State by CARD_3:107;
reconsider J = 12 as Element of Segm 13 by NAT_1:44;
InsCode I = 12
;
then consider F being FinSequence of INT , k being Nat such that
A1:
k = |.(S . (I int_addr3)).|
and
A2:
F = k |-> 0
and
A3:
SCM+FSA-Exec-Res (I,S) = SCM+FSA-Chg ((SCM+FSA-Chg (S,(I coll_addr2),F)),((IC S) + 1))
by SCMFSA_1:def 16;
set S1 = SCM+FSA-Chg (S,(I coll_addr2),F);
A4:
Exec ((g :=<0,...,0> c),s) = SCM+FSA-Chg ((SCM+FSA-Chg (S,(I coll_addr2),F)),((IC S) + 1))
by A3, SCMFSA_1:def 17;
hence
(Exec ((g :=<0,...,0> c),s)) . (IC ) = (IC s) + 1
by Th1, SCMFSA_1:19; ( ex k being Nat st
( k = |.(s . c).| & (Exec ((g :=<0,...,0> c),s)) . g = k |-> 0 ) & ( for b being Int-Location holds (Exec ((g :=<0,...,0> c),s)) . b = s . b ) & ( for f being FinSeq-Location st f <> g holds
(Exec ((g :=<0,...,0> c),s)) . f = s . f ) )
A5:
( I = [J,{},<*ml,p*>] & I `3_3 = <*ml,p*> )
;
then A6:
I coll_addr2 = p
by SCMFSA_I:def 8;
hereby ( ( for b being Int-Location holds (Exec ((g :=<0,...,0> c),s)) . b = s . b ) & ( for f being FinSeq-Location st f <> g holds
(Exec ((g :=<0,...,0> c),s)) . f = s . f ) )
reconsider k =
k as
Nat ;
take k =
k;
( k = |.(s . c).| & (Exec ((g :=<0,...,0> c),s)) . g = k |-> 0 )thus
k = |.(s . c).|
by A5, A1, SCMFSA_I:def 7;
(Exec ((g :=<0,...,0> c),s)) . g = k |-> 0thus (Exec ((g :=<0,...,0> c),s)) . g =
(SCM+FSA-Chg (S,(I coll_addr2),F)) . p
by A4, SCMFSA_1:21
.=
k |-> 0
by A2, A6, SCMFSA_1:27
;
verum
end;
let f be FinSeq-Location ; ( f <> g implies (Exec ((g :=<0,...,0> c),s)) . f = s . f )
assume A7:
f <> g
; (Exec ((g :=<0,...,0> c),s)) . f = s . f
reconsider q = f as Element of SCM+FSA-Data*-Loc by Def3;
thus (Exec ((g :=<0,...,0> c),s)) . f =
(SCM+FSA-Chg (S,(I coll_addr2),F)) . q
by A4, SCMFSA_1:21
.=
s . f
by A6, A7, SCMFSA_1:28
; verum