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

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

let i1 be Element of NAT ; :: thesis: for s being State of (SCM R) holds
( ( s . a = 0. R implies (Exec ((a =0_goto i1),s)) . (IC (SCM R)) = i1 ) & ( s . a <> 0. R implies (Exec ((a =0_goto i1),s)) . (IC (SCM R)) = succ (IC s) ) & (Exec ((a =0_goto i1),s)) . c = s . c )

let s be State of (SCM R); :: thesis: ( ( s . a = 0. R implies (Exec ((a =0_goto i1),s)) . (IC (SCM R)) = i1 ) & ( s . a <> 0. R implies (Exec ((a =0_goto i1),s)) . (IC (SCM R)) = succ (IC s) ) & (Exec ((a =0_goto i1),s)) . c = s . c )
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 =0_goto i1 as Element of SCM-Instr R by Def1;
reconsider i = 7 as Element of Segm 8 by NAT_1:45;
A1: ( a is Element of Data-Locations SCM & i1 is Element of NAT ) by Th1;
A2: Exec ((a =0_goto i1),s) = SCM-Exec-Res (I,S) by Th12
.= SCM-Chg (S,(IFEQ ((S . (I cond_address)),(0. R),(I cjump_address),(succ (IC S))))) by A1, AMI_3:72, SCMRING1:def 14 ;
A3: I = [i,<*i1*>,<*a*>] ;
thus ( s . a = 0. R implies (Exec ((a =0_goto i1),s)) . (IC (SCM R)) = i1 ) :: thesis: ( ( s . a <> 0. R implies (Exec ((a =0_goto i1),s)) . (IC (SCM R)) = succ (IC s) ) & (Exec ((a =0_goto i1),s)) . c = s . c )
proof
assume s . a = 0. R ; :: thesis: (Exec ((a =0_goto i1),s)) . (IC (SCM R)) = i1
then A4: S . (I cond_address) = 0. R by A3, A1, AMI_3:72, SCMRING1:19;
thus (Exec ((a =0_goto i1),s)) . (IC (SCM R)) = (Exec ((a =0_goto i1),s)) . NAT by Def1
.= IFEQ ((S . (I cond_address)),(0. R),(I cjump_address),(succ (IC S))) by A2, SCMRING1:10
.= I cjump_address by A4, FUNCOP_1:def 8
.= i1 by A3, A1, AMI_3:72, SCMRING1:19 ; :: thesis: verum
end;
A5: IC s = IC S by Def1;
thus ( s . a <> 0. R implies (Exec ((a =0_goto i1),s)) . (IC (SCM R)) = succ (IC s) ) :: thesis: (Exec ((a =0_goto i1),s)) . c = s . c
proof
assume s . a <> 0. R ; :: thesis: (Exec ((a =0_goto i1),s)) . (IC (SCM R)) = succ (IC s)
then A6: S . (I cond_address) <> 0. R by A3, A1, AMI_3:72, SCMRING1:19;
thus (Exec ((a =0_goto i1),s)) . (IC (SCM R)) = (Exec ((a =0_goto i1),s)) . NAT by Def1
.= IFEQ ((S . (I cond_address)),(0. R),(I cjump_address),(succ (IC S))) by A2, SCMRING1:10
.= succ (IC s) by A5, A6, FUNCOP_1:def 8 ; :: thesis: verum
end;
c is Element of Data-Locations SCM by Th1;
hence (Exec ((a =0_goto i1),s)) . c = s . c by A2, AMI_3:72, SCMRING1:11; :: thesis: verum