let a, b be Data-Location ; for s being State of SCM holds
( (Exec (MultBy a,b),s) . (IC SCM ) = succ (IC s) & (Exec (MultBy a,b),s) . a = (s . a) * (s . b) & ( for c being Data-Location st c <> a holds
(Exec (MultBy a,b),s) . c = s . c ) )
let s be State of SCM ; ( (Exec (MultBy a,b),s) . (IC SCM ) = succ (IC s) & (Exec (MultBy a,b),s) . a = (s . a) * (s . b) & ( for c being Data-Location st c <> a holds
(Exec (MultBy a,b),s) . c = s . c ) )
reconsider S = s as SCM-State by PBOOLE:155;
reconsider mk = a, ml = b as Element of SCM-Data-Loc by Def2;
reconsider I = MultBy a,b as Element of SCM-Instr ;
set S1 = SCM-Chg S,(I address_1 ),((S . (I address_1 )) * (S . (I address_2 )));
reconsider i = 4 as Element of Segm 9 by NAT_1:45;
A1:
I = [i,<*mk,ml*>]
;
then A2:
I address_1 = mk
by AMI_2:23;
A3:
I address_2 = ml
by A1, AMI_2:23;
A4: Exec (MultBy a,b),s =
SCM-Exec-Res I,S
by AMI_2:def 17
.=
SCM-Chg (SCM-Chg S,(I address_1 ),((S . (I address_1 )) * (S . (I address_2 )))),(succ (IC S))
by A1, AMI_2:def 16
;
hence
(Exec (MultBy a,b),s) . (IC SCM ) = succ (IC s)
by Th4, AMI_2:16; ( (Exec (MultBy a,b),s) . a = (s . a) * (s . b) & ( for c being Data-Location 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 )))) . mk
by A4, AMI_2:17
.=
(s . a) * (s . b)
by A2, A3, AMI_2:20
; for c being Data-Location st c <> a holds
(Exec (MultBy a,b),s) . c = s . c
let c be Data-Location ; ( c <> a implies (Exec (MultBy a,b),s) . c = s . c )
reconsider mn = c as Element of SCM-Data-Loc by Def2;
assume A5:
c <> a
; (Exec (MultBy a,b),s) . c = s . c
thus (Exec (MultBy a,b),s) . c =
(SCM-Chg S,(I address_1 ),((S . (I address_1 )) * (S . (I address_2 )))) . mn
by A4, AMI_2:17
.=
s . c
by A2, A5, AMI_2:21
; verum