let c be Int-Location ; :: thesis: for i being Instruction of SCM+FSA
for s being State of SCM+FSA st not c in UsedIntLoc i holds
(Exec (i,s)) . c = s . c

let i be Instruction of SCM+FSA; :: thesis: for s being State of SCM+FSA st not c in UsedIntLoc i holds
(Exec (i,s)) . c = s . c

let s be State of SCM+FSA; :: thesis: ( not c in UsedIntLoc i implies (Exec (i,s)) . c = s . c )
assume A1: not c in UsedIntLoc i ; :: thesis: (Exec (i,s)) . c = s . c
A2: ( not InsCode i <= 9 + 1 or InsCode i <= 8 + 1 or InsCode i = 10 ) by NAT_1:8;
A3: ( not InsCode i <= 10 + 1 or InsCode i <= 10 or InsCode i = 11 ) by NAT_1:8;
A4: InsCode i <= 11 + 1 by SCMFSA_2:35;
per cases ( InsCode i = 0 or InsCode i = 1 or InsCode i = 2 or InsCode i = 3 or InsCode i = 4 or InsCode i = 5 or InsCode i = 6 or InsCode i = 7 or InsCode i = 8 or InsCode i = 9 or InsCode i = 10 or InsCode i = 11 or InsCode i = 12 ) by A4, A3, A2, NAT_1:8, NAT_1:33;
suppose InsCode i = 0 ; :: thesis: (Exec (i,s)) . c = s . c
end;
suppose InsCode i = 1 ; :: thesis: (Exec (i,s)) . c = s . c
then consider a, b being Int-Location such that
A5: i = a := b by SCMFSA_2:54;
UsedIntLoc i = {a,b} by A5, Th18;
then c <> a by A1, TARSKI:def 2;
hence (Exec (i,s)) . c = s . c by A5, SCMFSA_2:89; :: thesis: verum
end;
suppose InsCode i = 2 ; :: thesis: (Exec (i,s)) . c = s . c
then consider a, b being Int-Location such that
A6: i = AddTo (a,b) by SCMFSA_2:55;
UsedIntLoc i = {a,b} by A6, Th18;
then c <> a by A1, TARSKI:def 2;
hence (Exec (i,s)) . c = s . c by A6, SCMFSA_2:90; :: thesis: verum
end;
suppose InsCode i = 3 ; :: thesis: (Exec (i,s)) . c = s . c
then consider a, b being Int-Location such that
A7: i = SubFrom (a,b) by SCMFSA_2:56;
UsedIntLoc i = {a,b} by A7, Th18;
then c <> a by A1, TARSKI:def 2;
hence (Exec (i,s)) . c = s . c by A7, SCMFSA_2:91; :: thesis: verum
end;
suppose InsCode i = 4 ; :: thesis: (Exec (i,s)) . c = s . c
then consider a, b being Int-Location such that
A8: i = MultBy (a,b) by SCMFSA_2:57;
UsedIntLoc i = {a,b} by A8, Th18;
then c <> a by A1, TARSKI:def 2;
hence (Exec (i,s)) . c = s . c by A8, SCMFSA_2:92; :: thesis: verum
end;
suppose InsCode i = 5 ; :: thesis: (Exec (i,s)) . c = s . c
then consider a, b being Int-Location such that
A9: i = Divide (a,b) by SCMFSA_2:58;
UsedIntLoc i = {a,b} by A9, Th18;
then ( c <> a & c <> b ) by A1, TARSKI:def 2;
hence (Exec (i,s)) . c = s . c by A9, SCMFSA_2:93; :: thesis: verum
end;
suppose InsCode i = 6 ; :: thesis: (Exec (i,s)) . c = s . c
then ex l being Element of NAT st i = goto l by SCMFSA_2:59;
hence (Exec (i,s)) . c = s . c by SCMFSA_2:95; :: thesis: verum
end;
suppose InsCode i = 7 ; :: thesis: (Exec (i,s)) . c = s . c
then ex l being Element of NAT ex a being Int-Location st i = a =0_goto l by SCMFSA_2:60;
hence (Exec (i,s)) . c = s . c by SCMFSA_2:96; :: thesis: verum
end;
suppose InsCode i = 8 ; :: thesis: (Exec (i,s)) . c = s . c
then ex l being Element of NAT ex a being Int-Location st i = a >0_goto l by SCMFSA_2:61;
hence (Exec (i,s)) . c = s . c by SCMFSA_2:97; :: thesis: verum
end;
suppose InsCode i = 9 ; :: thesis: (Exec (i,s)) . c = s . c
then consider a, b being Int-Location , f being FinSeq-Location such that
A10: i = b := (f,a) by SCMFSA_2:62;
UsedIntLoc i = {a,b} by A10, Th21;
then c <> b by A1, TARSKI:def 2;
hence (Exec (i,s)) . c = s . c by A10, SCMFSA_2:98; :: thesis: verum
end;
suppose InsCode i = 10 ; :: thesis: (Exec (i,s)) . c = s . c
then ex a, b being Int-Location ex f being FinSeq-Location st i = (f,a) := b by SCMFSA_2:63;
hence (Exec (i,s)) . c = s . c by SCMFSA_2:99; :: thesis: verum
end;
suppose InsCode i = 11 ; :: thesis: (Exec (i,s)) . c = s . c
then consider a being Int-Location , f being FinSeq-Location such that
A11: i = a :=len f by SCMFSA_2:64;
UsedIntLoc i = {a} by A11, Th22;
then c <> a by A1, TARSKI:def 1;
hence (Exec (i,s)) . c = s . c by A11, SCMFSA_2:100; :: thesis: verum
end;
suppose InsCode i = 12 ; :: thesis: (Exec (i,s)) . c = s . c
end;
end;