reserve x for set,
  D for non empty set,
  k, n for Nat,
  z for Nat;
reserve
  N for with_zero set,
  S for IC-Ins-separated non empty
          with_non-empty_values AMI-Struct over N,
  i for Element of the InstructionsF of S,
  l, l1, l2, l3 for Nat,
  s for State of S;
reserve ss for Element of product the_Values_of S;
reserve T for standard IC-Ins-separated non empty
     with_non-empty_values AMI-Struct over N;

theorem Th12:
  for S being IC-Ins-separated non empty with_non-empty_values
         AMI-Struct over N,
      il being Nat, i being Instruction of S st i is sequential
       holds NIC(i,il) = {il + 1}
proof
  let S be IC-Ins-separated
   non empty with_non-empty_values AMI-Struct over N,
     il be Nat, i be
  Instruction of S such that
A1: for s being State of S holds Exec(i, s).IC S = IC s + 1;
  now
    let x be object;
A2: now
     reconsider ll = il as Element of NAT by ORDINAL1:def 12;
      reconsider il1 = ll as Element of Values IC S by MEMSTR_0:def 6;
      set I = i;
      set t = the  State of S, P = the Instruction-Sequence of S;
      assume
A3:   x = il+1;
      reconsider u = t+*(IC S,il1) as
       Element of product the_Values_of S by CARD_3:107;
      ll in NAT;
      then
A4:     il in dom P by PARTFUN1:def 2;
A5:   (P+*(il,i))/.ll = (P+*(il,i)).ll by PBOOLE:143
         .= i by A4,FUNCT_7:31;
      IC S in dom t by MEMSTR_0:2;
      then
A6:   IC u = il by FUNCT_7:31;
      then IC Following(P+*(il,i),u) = il + 1 by A1,A5;
      hence x in {IC Exec(i,ss)
       where ss is Element of product the_Values_of S
        : IC ss = il} by A3,A6,A5;
    end;
    now
      assume x in {IC Exec(i,ss)
       where ss is Element of product the_Values_of S : IC ss = il};
      then ex s being Element of product the_Values_of S
       st x = IC Exec(i,s) & IC s = il;
      hence x = il + 1 by A1;
    end;
    hence
    x in {il+1} iff x in {IC Exec(i,ss)
       where ss is Element of product the_Values_of S
     : IC ss = il } by A2,TARSKI:def 1;
  end;
  hence thesis by TARSKI:2;
end;
