reserve a, b, d1, d2, d3, d4 for Int-Location,
  A, B for Data-Location,
  f, f1, f2, f3 for FinSeq-Location,
  il, i1, i2 for Nat,
  L for Nat,
  I for Instruction of SCM+FSA,
  s,s1,s2 for State of SCM+FSA,
  T for InsType of the InstructionsF of SCM+FSA,
  k for Nat;
reserve J,K for Element of Segm 13,
  b,b1,c,c1 for Element of SCM-Data-Loc,
  f,f1 for Element of SCM+FSA-Data*-Loc;
reserve a, b, d1, d2, d3, d4 for Int-Location,
  A, B for Data-Location,
  f, f1,
  f2, f3 for FinSeq-Location;

theorem Th39:
  SUCC(il,SCM+FSA) = {il, il + 1}
proof
  set X = the set of all
 NIC(I, il) \ JUMP I where I is Element of the InstructionsF of
  SCM+FSA;
  set N = {il, il + 1};
  now
    let x be object;
    hereby
      assume x in union X;
      then consider Y being set such that
A1:   x in Y and
A2:   Y in X by TARSKI:def 4;
      consider i being Element of the InstructionsF of SCM+FSA such that
A3:   Y = NIC(i, il) \ JUMP i by A2;
      per cases by SCMFSA_2:93;
      suppose
        i = [0,{},{}];
        then x in {il} \ JUMP halt SCM+FSA
        by A1,A3,AMISTD_1:2;
        then x = il by TARSKI:def 1;
        hence x in N by TARSKI:def 2;
      end;
      suppose
        ex a,b st i = a:=b;
        then consider a, b such that
A4:     i = a:=b;
        x in {il + 1} \ JUMP (a:=b) by A1,A3,A4,AMISTD_1:12;
        then x = il + 1 by TARSKI:def 1;
        hence x in N by TARSKI:def 2;
      end;
      suppose
        ex a,b st i = AddTo(a,b);
        then consider a, b such that
A5:     i = AddTo(a,b);
        x in {il + 1} \ JUMP AddTo(a,b) by A1,A3,A5,AMISTD_1:12;
        then x = il + 1 by TARSKI:def 1;
        hence x in N by TARSKI:def 2;
      end;
      suppose
        ex a,b st i = SubFrom(a,b);
        then consider a, b such that
A6:     i = SubFrom(a,b);
        x in {il + 1} \ JUMP SubFrom(a,b) by A1,A3,A6,AMISTD_1:12;
        then x = il + 1 by TARSKI:def 1;
        hence x in N by TARSKI:def 2;
      end;
      suppose
        ex a,b st i = MultBy(a,b);
        then consider a, b such that
A7:     i = MultBy(a,b);
        x in {il + 1} \ JUMP MultBy(a,b) by A1,A3,A7,AMISTD_1:12;
        then x = il + 1 by TARSKI:def 1;
        hence x in N by TARSKI:def 2;
      end;
      suppose
        ex a,b st i = Divide(a,b);
        then consider a, b such that
A8:     i = Divide(a,b);
        x in {il + 1} \ JUMP Divide(a,b) by A1,A3,A8,AMISTD_1:12;
        then x = il + 1 by TARSKI:def 1;
        hence x in N by TARSKI:def 2;
      end;
      suppose
        ex i1 st i = goto i1;
        then consider i1 such that
A9:     i = goto i1;
        x in {i1} \ JUMP i by A1,A3,A9,Th33;
        then x in {i1} \ {i1} by A9,Th34;
        hence x in N by XBOOLE_1:37;
      end;
      suppose
        ex i1,a st i = a=0_goto i1;
        then consider i1, a such that
A10:    i = a=0_goto i1;
A11:    NIC(i, il) = {i1, il + 1} by A10,Th35;
        x in NIC(i, il) by A1,A3,XBOOLE_0:def 5;
        then
A12:    x = i1 or x = il + 1 by A11,TARSKI:def 2;
        x in NIC(i, il) \ {i1} by A1,A3,A10,Th36;
        then not x in {i1} by XBOOLE_0:def 5;
        hence x in N by A12,TARSKI:def 1,def 2;
      end;
      suppose
        ex i1,a st i = a>0_goto i1;
        then consider i1, a such that
A13:    i = a>0_goto i1;
A14:    NIC(i, il) = {i1, il + 1} by A13,Th37;
        x in NIC(i, il) by A1,A3,XBOOLE_0:def 5;
        then
A15:    x = i1 or x = il + 1 by A14,TARSKI:def 2;
        x in NIC(i, il) \ {i1} by A1,A3,A13,Th38;
        then not x in {i1} by XBOOLE_0:def 5;
        hence x in N by A15,TARSKI:def 1,def 2;
      end;
      suppose
        ex a,b,f st i = b:=(f,a);
        then consider a, b, f such that
A16:    i = b:=(f,a);
        x in {il + 1} \ JUMP (b:=(f,a)) by A1,A3,A16,AMISTD_1:12;
        then x = il + 1 by TARSKI:def 1;
        hence x in N by TARSKI:def 2;
      end;
      suppose
        ex a,b,f st i = (f,a):=b;
        then consider a, b, f such that
A17:    i = (f,a):=b;
        x in {il + 1} \ JUMP ((f,a):=b) by A1,A3,A17,AMISTD_1:12;
        then x = il + 1 by TARSKI:def 1;
        hence x in N by TARSKI:def 2;
      end;
      suppose
        ex a,f st i = a:=len f;
        then consider a, f such that
A18:    i = a:=len f;
        x in {il + 1} \ JUMP (a:=len f) by A1,A3,A18,AMISTD_1:12;
        then x = il + 1 by TARSKI:def 1;
        hence x in N by TARSKI:def 2;
      end;
      suppose
        ex a,f st i = f:=<0,...,0>a;
        then consider a, f such that
A19:    i = f:=<0,...,0>a;
        x in {il + 1} \ JUMP (f:=<0,...,0>a) by A1,A3,A19,AMISTD_1:12;
        then x = il + 1 by TARSKI:def 1;
        hence x in N by TARSKI:def 2;
      end;
    end;
    assume
A20: x in {il, il + 1};
    per cases by A20,TARSKI:def 2;
    suppose
A21:  x = il;
      set i = halt SCM+FSA;
      NIC(i, il) \ JUMP i = {il} by AMISTD_1:2;
      then
A22:  {il} in X;
      x in {il} by A21,TARSKI:def 1;
      hence x in union X by A22,TARSKI:def 4;
    end;
    suppose
A23:  x = il + 1;
      set a = the Int-Location;
      set i = AddTo(a,a);
      NIC(i, il) \ JUMP i = {il + 1} by AMISTD_1:12;
      then
A24:  {il + 1} in X;
      x in {il + 1} by A23,TARSKI:def 1;
      hence x in union X by A24,TARSKI:def 4;
    end;
  end;
  hence thesis by TARSKI:2;
end;
