let R be good Ring; :: thesis: for a, b being Data-Location of R
for s being State of (SCM R) holds
( (Exec (MultBy a,b),s) . (IC (SCM R)) = Next & (Exec (MultBy a,b),s) . a = (s . a) * (s . b) & ( for c being Data-Location of R st c <> a holds
(Exec (MultBy a,b),s) . c = s . c ) )
let a, b be Data-Location of R; :: thesis: for s being State of (SCM R) holds
( (Exec (MultBy a,b),s) . (IC (SCM R)) = Next & (Exec (MultBy a,b),s) . a = (s . a) * (s . b) & ( for c being Data-Location of R st c <> a holds
(Exec (MultBy a,b),s) . c = s . c ) )
let s be State of (SCM R); :: thesis: ( (Exec (MultBy a,b),s) . (IC (SCM R)) = Next & (Exec (MultBy a,b),s) . a = (s . a) * (s . b) & ( for c being Data-Location of R st c <> a holds
(Exec (MultBy a,b),s) . c = s . c ) )
reconsider I = MultBy a,b as Element of SCM-Instr R by Def1;
reconsider S = s as SCM-State of R by Def1;
set S1 = SCM-Chg S,(I address_1 ),((S . (I address_1 )) * (S . (I address_2 )));
reconsider i = 4 as Element of Segm 8 by GR_CY_1:10;
A1:
I = [i,<*a,b*>]
;
A2:
IC s = IC S
by Def1;
A3:
( a is Element of SCM-Data-Loc & b is Element of SCM-Data-Loc )
by Th1;
A4: Exec (MultBy a,b),s =
SCM-Exec-Res I,S
by Th12
.=
SCM-Chg (SCM-Chg S,(I address_1 ),((S . (I address_1 )) * (S . (I address_2 )))),(succ (IC S))
by A3, SCMRING1:def 14
;
A5:
( I address_1 = a & I address_2 = b )
by A1, A3, SCMRING1:17;
thus (Exec (MultBy a,b),s) . (IC (SCM R)) =
(Exec (MultBy a,b),s) . NAT
by Def1
.=
Next
by A2, A4, SCMRING1:10
; :: thesis: ( (Exec (MultBy a,b),s) . a = (s . a) * (s . b) & ( for c being Data-Location of R st c <> a holds
(Exec (MultBy a,b),s) . c = s . c ) )
thus (Exec (MultBy a,b),s) . a =
(SCM-Chg S,(I address_1 ),((S . (I address_1 )) * (S . (I address_2 )))) . a
by A3, A4, SCMRING1:11
.=
(s . a) * (s . b)
by A5, SCMRING1:14
; :: thesis: for c being Data-Location of R st c <> a holds
(Exec (MultBy a,b),s) . c = s . c
let c be Data-Location of R; :: thesis: ( c <> a implies (Exec (MultBy a,b),s) . c = s . c )
assume A6:
c <> a
; :: thesis: (Exec (MultBy a,b),s) . c = s . c
A7:
c is Element of SCM-Data-Loc
by Th1;
hence (Exec (MultBy a,b),s) . c =
(SCM-Chg S,(I address_1 ),((S . (I address_1 )) * (S . (I address_2 )))) . c
by A4, SCMRING1:11
.=
s . c
by A5, A6, A7, SCMRING1:15
;
:: thesis: verum