let it1, it2 be Element of Fin Int-Locations; ( ( InsCode i in {1,2,3,4,5} & ex a, b being Int-Location st
( ( i = a := b or i = AddTo (a,b) or i = SubFrom (a,b) or i = MultBy (a,b) or i = Divide (a,b) ) & it1 = {a,b} ) & ex a, b being Int-Location st
( ( i = a := b or i = AddTo (a,b) or i = SubFrom (a,b) or i = MultBy (a,b) or i = Divide (a,b) ) & it2 = {a,b} ) implies it1 = it2 ) & ( ( InsCode i = 7 or InsCode i = 8 ) & ex a being Int-Location ex l being Nat st
( ( i = a =0_goto l or i = a >0_goto l ) & it1 = {a} ) & ex a being Int-Location ex l being Nat st
( ( i = a =0_goto l or i = a >0_goto l ) & it2 = {a} ) implies it1 = it2 ) & ( ( InsCode i = 9 or InsCode i = 10 ) & ex a, b being Int-Location ex f being FinSeq-Location st
( ( i = b := (f,a) or i = (f,a) := b ) & it1 = {a,b} ) & ex a, b being Int-Location ex f being FinSeq-Location st
( ( i = b := (f,a) or i = (f,a) := b ) & it2 = {a,b} ) implies it1 = it2 ) & ( ( InsCode i = 11 or InsCode i = 12 ) & ex a being Int-Location ex f being FinSeq-Location st
( ( i = a :=len f or i = f :=<0,...,0> a ) & it1 = {a} ) & ex a being Int-Location ex f being FinSeq-Location st
( ( i = a :=len f or i = f :=<0,...,0> a ) & it2 = {a} ) implies it1 = it2 ) & ( InsCode i in {1,2,3,4,5} or InsCode i = 7 or InsCode i = 8 or InsCode i = 9 or InsCode i = 10 or InsCode i = 11 or InsCode i = 12 or not it1 = {} or not it2 = {} or it1 = it2 ) )
hereby ( ( ( InsCode i = 7 or InsCode i = 8 ) & ex a being Int-Location ex l being Nat st
( ( i = a =0_goto l or i = a >0_goto l ) & it1 = {a} ) & ex a being Int-Location ex l being Nat st
( ( i = a =0_goto l or i = a >0_goto l ) & it2 = {a} ) implies it1 = it2 ) & ( ( InsCode i = 9 or InsCode i = 10 ) & ex a, b being Int-Location ex f being FinSeq-Location st
( ( i = b := (f,a) or i = (f,a) := b ) & it1 = {a,b} ) & ex a, b being Int-Location ex f being FinSeq-Location st
( ( i = b := (f,a) or i = (f,a) := b ) & it2 = {a,b} ) implies it1 = it2 ) & ( ( InsCode i = 11 or InsCode i = 12 ) & ex a being Int-Location ex f being FinSeq-Location st
( ( i = a :=len f or i = f :=<0,...,0> a ) & it1 = {a} ) & ex a being Int-Location ex f being FinSeq-Location st
( ( i = a :=len f or i = f :=<0,...,0> a ) & it2 = {a} ) implies it1 = it2 ) & ( InsCode i in {1,2,3,4,5} or InsCode i = 7 or InsCode i = 8 or InsCode i = 9 or InsCode i = 10 or InsCode i = 11 or InsCode i = 12 or not it1 = {} or not it2 = {} or it1 = it2 ) )
assume
InsCode i in {1,2,3,4,5}
;
( ex a1, b1 being Int-Location st
( ( i = a1 := b1 or i = AddTo (a1,b1) or i = SubFrom (a1,b1) or i = MultBy (a1,b1) or i = Divide (a1,b1) ) & it1 = {a1,b1} ) & ex a2, b2 being Int-Location st
( ( i = a2 := b2 or i = AddTo (a2,b2) or i = SubFrom (a2,b2) or i = MultBy (a2,b2) or i = Divide (a2,b2) ) & it2 = {a2,b2} ) implies it1 = it2 )given a1,
b1 being
Int-Location such that A5:
(
i = a1 := b1 or
i = AddTo (
a1,
b1) or
i = SubFrom (
a1,
b1) or
i = MultBy (
a1,
b1) or
i = Divide (
a1,
b1) )
and A6:
it1 = {a1,b1}
;
( ex a2, b2 being Int-Location st
( ( i = a2 := b2 or i = AddTo (a2,b2) or i = SubFrom (a2,b2) or i = MultBy (a2,b2) or i = Divide (a2,b2) ) & it2 = {a2,b2} ) implies it1 = it2 )given a2,
b2 being
Int-Location such that A7:
(
i = a2 := b2 or
i = AddTo (
a2,
b2) or
i = SubFrom (
a2,
b2) or
i = MultBy (
a2,
b2) or
i = Divide (
a2,
b2) )
and A8:
it2 = {a2,b2}
;
it1 = it2A9:
( (
i = AddTo (
a1,
b1) or
i = AddTo (
a2,
b2) ) implies
InsCode i = 2 )
by SCMFSA_2:19;
A10:
( (
i = Divide (
a1,
b1) or
i = Divide (
a2,
b2) ) implies
InsCode i = 5 )
by SCMFSA_2:22;
A11:
( (
i = MultBy (
a1,
b1) or
i = MultBy (
a2,
b2) ) implies
InsCode i = 4 )
by SCMFSA_2:21;
A12:
( (
i = SubFrom (
a1,
b1) or
i = SubFrom (
a2,
b2) ) implies
InsCode i = 3 )
by SCMFSA_2:20;
per cases
( ( i = a1 := b1 & i = a2 := b2 ) or ( i = AddTo (a1,b1) & i = AddTo (a2,b2) ) or ( i = SubFrom (a1,b1) & i = SubFrom (a2,b2) ) or ( i = MultBy (a1,b1) & i = MultBy (a2,b2) ) or ( i = Divide (a1,b1) & i = Divide (a2,b2) ) )
by A5, A7, A9, A12, A11, A10, SCMFSA_2:18;
end;
end;
hereby ( ( ( InsCode i = 9 or InsCode i = 10 ) & ex a, b being Int-Location ex f being FinSeq-Location st
( ( i = b := (f,a) or i = (f,a) := b ) & it1 = {a,b} ) & ex a, b being Int-Location ex f being FinSeq-Location st
( ( i = b := (f,a) or i = (f,a) := b ) & it2 = {a,b} ) implies it1 = it2 ) & ( ( InsCode i = 11 or InsCode i = 12 ) & ex a being Int-Location ex f being FinSeq-Location st
( ( i = a :=len f or i = f :=<0,...,0> a ) & it1 = {a} ) & ex a being Int-Location ex f being FinSeq-Location st
( ( i = a :=len f or i = f :=<0,...,0> a ) & it2 = {a} ) implies it1 = it2 ) & ( InsCode i in {1,2,3,4,5} or InsCode i = 7 or InsCode i = 8 or InsCode i = 9 or InsCode i = 10 or InsCode i = 11 or InsCode i = 12 or not it1 = {} or not it2 = {} or it1 = it2 ) )
end;
hereby ( ( ( InsCode i = 11 or InsCode i = 12 ) & ex a being Int-Location ex f being FinSeq-Location st
( ( i = a :=len f or i = f :=<0,...,0> a ) & it1 = {a} ) & ex a being Int-Location ex f being FinSeq-Location st
( ( i = a :=len f or i = f :=<0,...,0> a ) & it2 = {a} ) implies it1 = it2 ) & ( InsCode i in {1,2,3,4,5} or InsCode i = 7 or InsCode i = 8 or InsCode i = 9 or InsCode i = 10 or InsCode i = 11 or InsCode i = 12 or not it1 = {} or not it2 = {} or it1 = it2 ) )
assume
(
InsCode i = 9 or
InsCode i = 10 )
;
( ex a1, b1 being Int-Location ex f1 being FinSeq-Location st
( ( i = b1 := (f1,a1) or i = (f1,a1) := b1 ) & it1 = {a1,b1} ) & ex a2, b2 being Int-Location ex f2 being FinSeq-Location st
( ( i = b2 := (f2,a2) or i = (f2,a2) := b2 ) & it2 = {a2,b2} ) implies it1 = it2 )given a1,
b1 being
Int-Location,
f1 being
FinSeq-Location such that A23:
(
i = b1 := (
f1,
a1) or
i = (
f1,
a1)
:= b1 )
and A24:
it1 = {a1,b1}
;
( ex a2, b2 being Int-Location ex f2 being FinSeq-Location st
( ( i = b2 := (f2,a2) or i = (f2,a2) := b2 ) & it2 = {a2,b2} ) implies it1 = it2 )given a2,
b2 being
Int-Location,
f2 being
FinSeq-Location such that A25:
(
i = b2 := (
f2,
a2) or
i = (
f2,
a2)
:= b2 )
and A26:
it2 = {a2,b2}
;
it1 = it2A27:
( (
i = (
f1,
a1)
:= b1 or
i = (
f2,
a2)
:= b2 ) implies
InsCode i = 10 )
by SCMFSA_2:27;
per cases
( ( i = b1 := (f1,a1) & i = b2 := (f2,a2) ) or ( i = (f1,a1) := b1 & i = (f2,a2) := b2 ) )
by A23, A25, A27, SCMFSA_2:26;
suppose A28:
(
i = b1 := (
f1,
a1) &
i = b2 := (
f2,
a2) )
;
it1 = it2end; suppose A29:
(
i = (
f1,
a1)
:= b1 &
i = (
f2,
a2)
:= b2 )
;
it1 = it2end; end;
end;
hereby ( InsCode i in {1,2,3,4,5} or InsCode i = 7 or InsCode i = 8 or InsCode i = 9 or InsCode i = 10 or InsCode i = 11 or InsCode i = 12 or not it1 = {} or not it2 = {} or it1 = it2 )
assume
(
InsCode i = 11 or
InsCode i = 12 )
;
( ex a1 being Int-Location ex f1 being FinSeq-Location st
( ( i = a1 :=len f1 or i = f1 :=<0,...,0> a1 ) & it1 = {a1} ) & ex a2 being Int-Location ex f2 being FinSeq-Location st
( ( i = a2 :=len f2 or i = f2 :=<0,...,0> a2 ) & it2 = {a2} ) implies it1 = it2 )given a1 being
Int-Location,
f1 being
FinSeq-Location such that A30:
(
i = a1 :=len f1 or
i = f1 :=<0,...,0> a1 )
and A31:
it1 = {a1}
;
( ex a2 being Int-Location ex f2 being FinSeq-Location st
( ( i = a2 :=len f2 or i = f2 :=<0,...,0> a2 ) & it2 = {a2} ) implies it1 = it2 )given a2 being
Int-Location,
f2 being
FinSeq-Location such that A32:
(
i = a2 :=len f2 or
i = f2 :=<0,...,0> a2 )
and A33:
it2 = {a2}
;
it1 = it2A34:
( (
i = f1 :=<0,...,0> a1 or
i = f2 :=<0,...,0> a2 ) implies
InsCode i = 12 )
by SCMFSA_2:29;
end;
thus
( InsCode i in {1,2,3,4,5} or InsCode i = 7 or InsCode i = 8 or InsCode i = 9 or InsCode i = 10 or InsCode i = 11 or InsCode i = 12 or not it1 = {} or not it2 = {} or it1 = it2 )
; verum