let R be Ring; :: thesis: for il being Nat holds SUCC (il,(SCM R)) = {il,(il + 1)}

let il be Nat; :: thesis: SUCC (il,(SCM R)) = {il,(il + 1)}

set X = { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } ;

set N = {il,(il + 1)};

let il be Nat; :: thesis: SUCC (il,(SCM R)) = {il,(il + 1)}

set X = { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } ;

set N = {il,(il + 1)};

now :: thesis: for x being object holds

( ( x in union { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } implies x in {il,(il + 1)} ) & ( x in {il,(il + 1)} implies x in union { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } ) )

hence
SUCC (il,(SCM R)) = {il,(il + 1)}
by TARSKI:2; :: thesis: verum( ( x in union { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } implies x in {il,(il + 1)} ) & ( x in {il,(il + 1)} implies x in union { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } ) )

let x be object ; :: thesis: ( ( x in union { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } implies x in {il,(il + 1)} ) & ( x in {il,(il + 1)} implies b_{1} in union { ((NIC (b_{2},il)) \ (JUMP b_{2})) where I is Element of the InstructionsF of (SCM R) : verum } ) )

_{1} in union { ((NIC (b_{2},il)) \ (JUMP b_{2})) where I is Element of the InstructionsF of (SCM R) : verum }

end;hereby :: thesis: ( x in {il,(il + 1)} implies b_{1} in union { ((NIC (b_{2},il)) \ (JUMP b_{2})) where I is Element of the InstructionsF of (SCM R) : verum } )

assume A13:
x in {il,(il + 1)}
; :: thesis: bassume
x in union { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum }
; :: thesis: x in {il,(il + 1)}

then consider Y being set such that

A1: x in Y and

A2: Y in { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } by TARSKI:def 4;

consider i being Element of the InstructionsF of (SCM R) such that

A3: Y = (NIC (i,il)) \ (JUMP i) by A2;

end;then consider Y being set such that

A1: x in Y and

A2: Y in { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } by TARSKI:def 4;

consider i being Element of the InstructionsF of (SCM R) such that

A3: Y = (NIC (i,il)) \ (JUMP i) by A2;

per cases
( i = [0,{},{}] or ex a, b being Data-Location of R st i = a := b or ex a, b being Data-Location of R st i = AddTo (a,b) or ex a, b being Data-Location of R st i = SubFrom (a,b) or ex a, b being Data-Location of R st i = MultBy (a,b) or ex i1 being Nat st i = goto (i1,R) or ex a being Data-Location of R ex i1 being Nat st i = a =0_goto i1 or ex a being Data-Location of R ex r being Element of R st i = a := r )
by SCMRING2:7;

end;

suppose
i = [0,{},{}]
; :: thesis: x in {il,(il + 1)}

then
i = halt (SCM R)
;

then x in {il} \ (JUMP (halt (SCM R))) by A1, A3, AMISTD_1:2;

then x = il by TARSKI:def 1;

hence x in {il,(il + 1)} by TARSKI:def 2; :: thesis: verum

end;then x in {il} \ (JUMP (halt (SCM R))) by A1, A3, AMISTD_1:2;

then x = il by TARSKI:def 1;

hence x in {il,(il + 1)} by TARSKI:def 2; :: thesis: verum

suppose
ex a, b being Data-Location of R st i = a := b
; :: thesis: x in {il,(il + 1)}

then consider a, b being Data-Location of R 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 {il,(il + 1)} by TARSKI:def 2; :: thesis: verum

end;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 {il,(il + 1)} by TARSKI:def 2; :: thesis: verum

suppose
ex a, b being Data-Location of R st i = AddTo (a,b)
; :: thesis: x in {il,(il + 1)}

then consider a, b being Data-Location of R 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 {il,(il + 1)} by TARSKI:def 2; :: thesis: verum

end;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 {il,(il + 1)} by TARSKI:def 2; :: thesis: verum

suppose
ex a, b being Data-Location of R st i = SubFrom (a,b)
; :: thesis: x in {il,(il + 1)}

then consider a, b being Data-Location of R 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 {il,(il + 1)} by TARSKI:def 2; :: thesis: verum

end;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 {il,(il + 1)} by TARSKI:def 2; :: thesis: verum

suppose
ex a, b being Data-Location of R st i = MultBy (a,b)
; :: thesis: x in {il,(il + 1)}

then consider a, b being Data-Location of R 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 {il,(il + 1)} by TARSKI:def 2; :: thesis: verum

end;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 {il,(il + 1)} by TARSKI:def 2; :: thesis: verum

suppose
ex i1 being Nat st i = goto (i1,R)
; :: thesis: x in {il,(il + 1)}

then consider i1 being Nat such that

A8: i = goto (i1,R) ;

x in {i1} \ (JUMP i) by A1, A3, A8, Th29;

then x in {i1} \ {i1} by A8, Th30;

hence x in {il,(il + 1)} by XBOOLE_1:37; :: thesis: verum

end;A8: i = goto (i1,R) ;

x in {i1} \ (JUMP i) by A1, A3, A8, Th29;

then x in {i1} \ {i1} by A8, Th30;

hence x in {il,(il + 1)} by XBOOLE_1:37; :: thesis: verum

suppose
ex a being Data-Location of R ex i1 being Nat st i = a =0_goto i1
; :: thesis: x in {il,(il + 1)}

then consider a being Data-Location of R, i1 being Nat such that

A9: i = a =0_goto i1 ;

A10: NIC (i,il) c= {i1,(il + 1)} by A9, Th31;

x in NIC (i,il) by A1, A3, XBOOLE_0:def 5;

then A11: ( x = i1 or x = il + 1 ) by A10, TARSKI:def 2;

x in (NIC (i,il)) \ {i1} by A1, A3, A9, Th33;

then not x in {i1} by XBOOLE_0:def 5;

hence x in {il,(il + 1)} by A11, TARSKI:def 1, TARSKI:def 2; :: thesis: verum

end;A9: i = a =0_goto i1 ;

A10: NIC (i,il) c= {i1,(il + 1)} by A9, Th31;

x in NIC (i,il) by A1, A3, XBOOLE_0:def 5;

then A11: ( x = i1 or x = il + 1 ) by A10, TARSKI:def 2;

x in (NIC (i,il)) \ {i1} by A1, A3, A9, Th33;

then not x in {i1} by XBOOLE_0:def 5;

hence x in {il,(il + 1)} by A11, TARSKI:def 1, TARSKI:def 2; :: thesis: verum

suppose
ex a being Data-Location of R ex r being Element of R st i = a := r
; :: thesis: x in {il,(il + 1)}

then consider a being Data-Location of R, r being Element of R such that

A12: i = a := r ;

x in {(il + 1)} \ (JUMP (a := r)) by A1, A3, A12, AMISTD_1:12;

then x = il + 1 by TARSKI:def 1;

hence x in {il,(il + 1)} by TARSKI:def 2; :: thesis: verum

end;A12: i = a := r ;

x in {(il + 1)} \ (JUMP (a := r)) by A1, A3, A12, AMISTD_1:12;

then x = il + 1 by TARSKI:def 1;

hence x in {il,(il + 1)} by TARSKI:def 2; :: thesis: verum

per cases
( x = il or x = il + 1 )
by A13, TARSKI:def 2;

end;

suppose A14:
x = il
; :: thesis: b_{1} in union { ((NIC (b_{2},il)) \ (JUMP b_{2})) where I is Element of the InstructionsF of (SCM R) : verum }

set i = halt (SCM R);

(NIC ((halt (SCM R)),il)) \ (JUMP (halt (SCM R))) = {il} by AMISTD_1:2;

then A15: {il} in { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } ;

x in {il} by A14, TARSKI:def 1;

hence x in union { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } by A15, TARSKI:def 4; :: thesis: verum

end;(NIC ((halt (SCM R)),il)) \ (JUMP (halt (SCM R))) = {il} by AMISTD_1:2;

then A15: {il} in { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } ;

x in {il} by A14, TARSKI:def 1;

hence x in union { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } by A15, TARSKI:def 4; :: thesis: verum

suppose A16:
x = il + 1
; :: thesis: b_{1} in union { ((NIC (b_{2},il)) \ (JUMP b_{2})) where I is Element of the InstructionsF of (SCM R) : verum }

set a = the Data-Location of R;

set i = AddTo ( the Data-Location of R, the Data-Location of R);

(NIC ((AddTo ( the Data-Location of R, the Data-Location of R)),il)) \ (JUMP (AddTo ( the Data-Location of R, the Data-Location of R))) = {(il + 1)} by AMISTD_1:12;

then A17: {(il + 1)} in { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } ;

x in {(il + 1)} by A16, TARSKI:def 1;

hence x in union { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } by A17, TARSKI:def 4; :: thesis: verum

end;set i = AddTo ( the Data-Location of R, the Data-Location of R);

(NIC ((AddTo ( the Data-Location of R, the Data-Location of R)),il)) \ (JUMP (AddTo ( the Data-Location of R, the Data-Location of R))) = {(il + 1)} by AMISTD_1:12;

then A17: {(il + 1)} in { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } ;

x in {(il + 1)} by A16, TARSKI:def 1;

hence x in union { ((NIC (I,il)) \ (JUMP I)) where I is Element of the InstructionsF of (SCM R) : verum } by A17, TARSKI:def 4; :: thesis: verum