reserve I for Element of Segm 8,
  S for non empty 1-sorted,
  t for Element of S,
  x for set,
  k for Element of NAT;
 reserve R for Ring, T for InsType of SCM-Instr R;
reserve R for Ring,
  r for Element of R,
  a, b, c, d1, d2 for Data-Location of R,
  i1 for Nat;
reserve s for State of SCM R;

theorem Th16:
  (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 = IC s + 1) & Exec(a =0_goto i1,
  s).c = s.c
proof
A1: the_Values_of SCM R = (SCM-VAL R)*SCM-OK by Lm1;
  reconsider S = s as SCM-State of R by A1,CARD_3:107;
  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:44;
A2: a is Element of Data-Locations SCM & i1 is Element of NAT
     by Th1, ORDINAL1:def 12;
A3: Exec(a =0_goto i1, s) = SCM-Exec-Res(I,S) by Th10
    .= SCM-Chg(S,IFEQ(S.(I cond_address),0.R,I cjump_address,IC S + 1)) by A2,
AMI_3:27,SCMRING1:def 14;
A4: I = [i,<*i1*>,<*a*>];
  thus s.a = 0.R implies Exec(a =0_goto i1, s).IC SCM R = i1
  proof
    assume s.a = 0.R;
    then
A5: S.(I cond_address)=0.R by A4,A2,AMI_3:27,SCMRINGI:3;
    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,IC S + 1) by A3,
SCMRING1:7
      .= I cjump_address by A5,FUNCOP_1:def 8
      .= i1 by A4,A2,AMI_3:27,SCMRINGI:3;
  end;
A6: IC s = IC S by Def1;
  thus s.a <> 0.R implies Exec(a =0_goto i1, s).IC SCM R = IC s + 1
  proof
    assume s.a <> 0.R;
    then
A7: S.(I cond_address) <> 0.R by A4,A2,AMI_3:27,SCMRINGI:3;
    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,IC S + 1) by A3,
SCMRING1:7
      .= IC s + 1 by A6,A7,FUNCOP_1:def 8;
  end;
  c is Element of Data-Locations SCM by Th1;
  hence thesis by A3,AMI_3:27,SCMRING1:8;
end;
