let R be good Ring; :: thesis: for r being Element of R
for a being Data-Location of R
for s being State of (SCM R) holds
( (Exec ((a := r),s)) . (IC (SCM R)) = succ (IC s) & (Exec ((a := r),s)) . a = r & ( for c being Data-Location of R st c <> a holds
(Exec ((a := r),s)) . c = s . c ) )

let r be Element of R; :: thesis: for a being Data-Location of R
for s being State of (SCM R) holds
( (Exec ((a := r),s)) . (IC (SCM R)) = succ (IC s) & (Exec ((a := r),s)) . a = r & ( for c being Data-Location of R st c <> a holds
(Exec ((a := r),s)) . c = s . c ) )

let a be Data-Location of R; :: thesis: for s being State of (SCM R) holds
( (Exec ((a := r),s)) . (IC (SCM R)) = succ (IC s) & (Exec ((a := r),s)) . a = r & ( for c being Data-Location of R st c <> a holds
(Exec ((a := r),s)) . c = s . c ) )

let s be State of (SCM R); :: thesis: ( (Exec ((a := r),s)) . (IC (SCM R)) = succ (IC s) & (Exec ((a := r),s)) . a = r & ( for c being Data-Location of R st c <> a holds
(Exec ((a := r),s)) . c = s . c ) )

A1: a is Element of Data-Locations SCM by Th1;
Y: the Object-Kind of (SCM R) = SCM-OK R by Def1;
reconsider S = s as SCM-State of R by Y, PBOOLE:155;
reconsider I = a := r as Element of SCM-Instr R by Def1;
set S1 = SCM-Chg (S,(I const_address),(I const_value));
reconsider i = 5 as Element of Segm 8 by NAT_1:45;
A2: IC s = IC S by Def1;
A3: I = [i,{},<*a,r*>] ;
then A4: I const_address = a by A1, AMI_3:72, SCMRING1:20;
A5: I const_value = r by A3, A1, AMI_3:72, SCMRING1:20;
A6: Exec ((a := r),s) = SCM-Exec-Res (I,S) by Th12
.= SCM-Chg ((SCM-Chg (S,(I const_address),(I const_value))),(succ (IC S))) by A1, AMI_3:72, SCMRING1:def 14 ;
thus (Exec ((a := r),s)) . (IC (SCM R)) = (Exec ((a := r),s)) . NAT by Def1
.= succ (IC s) by A2, A6, SCMRING1:10 ; :: thesis: ( (Exec ((a := r),s)) . a = r & ( for c being Data-Location of R st c <> a holds
(Exec ((a := r),s)) . c = s . c ) )

thus (Exec ((a := r),s)) . a = (SCM-Chg (S,(I const_address),(I const_value))) . a by A1, A6, AMI_3:72, SCMRING1:11
.= r by A4, A5, SCMRING1:14 ; :: thesis: for c being Data-Location of R st c <> a holds
(Exec ((a := r),s)) . c = s . c

let c be Data-Location of R; :: thesis: ( c <> a implies (Exec ((a := r),s)) . c = s . c )
assume A7: c <> a ; :: thesis: (Exec ((a := r),s)) . c = s . c
A8: c is Element of Data-Locations SCM by Th1;
hence (Exec ((a := r),s)) . c = (SCM-Chg (S,(I const_address),(I const_value))) . c by A6, AMI_3:72, SCMRING1:11
.= s . c by A4, A7, A8, AMI_3:72, SCMRING1:15 ;
:: thesis: verum