IC SCMPDS in {(IC SCMPDS)}
by TARSKI:def 1;
then A1:
IC SCMPDS in SCM-Data-Loc \/ {(IC SCMPDS)}
by XBOOLE_0:def 3;
let s1, s2 be State of SCMPDS; ( s1 | (SCM-Data-Loc \/ {(IC SCMPDS)}) = s2 | (SCM-Data-Loc \/ {(IC SCMPDS)}) implies for l being Instruction of SCMPDS holds (Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) )
assume A2:
s1 | (SCM-Data-Loc \/ {(IC SCMPDS)}) = s2 | (SCM-Data-Loc \/ {(IC SCMPDS)})
; for l being Instruction of SCMPDS holds (Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
A3:
DataPart s1 = DataPart s2
by A2, RELAT_1:188, SCMPDS_2:100, XBOOLE_1:7;
A4:
SCM-Data-Loc \/ {(IC SCMPDS)} c= the carrier of SCMPDS
by AMI_3:4, XBOOLE_1:7;
then
SCM-Data-Loc \/ {(IC SCMPDS)} c= dom s2
by PARTFUN1:def 4;
then A5:
IC SCMPDS in dom (s2 | (SCM-Data-Loc \/ {(IC SCMPDS)}))
by A1, RELAT_1:91;
SCM-Data-Loc \/ {(IC SCMPDS)} c= dom s1
by A4, PARTFUN1:def 4;
then
IC SCMPDS in dom (s1 | (SCM-Data-Loc \/ {(IC SCMPDS)}))
by A1, RELAT_1:91;
then A6: IC s1 =
(s2 | (SCM-Data-Loc \/ {(IC SCMPDS)})) . (IC SCMPDS)
by A2, FUNCT_1:70
.=
IC s2
by A5, FUNCT_1:70
;
let l be Instruction of SCMPDS; (Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
A7:
dom (Exec (l,s1)) = the carrier of SCMPDS
by PARTFUN1:def 4;
then A8:
dom (Exec (l,s1)) = dom (Exec (l,s2))
by PARTFUN1:def 4;
dom (Exec (l,s2)) = the carrier of SCMPDS
by PARTFUN1:def 4;
then A9:
dom (DataPart (Exec (l,s2))) = SCM-Data-Loc
by RELAT_1:91, SCMPDS_2:100;
A10:
dom (DataPart (Exec (l,s1))) = SCM-Data-Loc
by A7, RELAT_1:91, SCMPDS_2:100;
per cases
( InsCode l = 0 or InsCode l = 1 or InsCode l = 2 or InsCode l = 3 or InsCode l = 4 or InsCode l = 5 or InsCode l = 6 or InsCode l = 7 or InsCode l = 8 or InsCode l = 9 or InsCode l = 10 or InsCode l = 11 or InsCode l = 12 or InsCode l = 13 )
by NAT_1:38, SCMPDS_2:15;
suppose
InsCode l = 0
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider k1 being
Integer such that A11:
l = goto k1
by SCMPDS_2:35;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A12:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider a =
x as
Int_position by SCMPDS_2:9;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . a
by A12, FUNCT_1:72, SCMPDS_2:100
.=
s1 . a
by A11, SCMPDS_2:66
.=
(DataPart s1) . a
by A12, FUNCT_1:72, SCMPDS_2:100
.=
s2 . a
by A3, A12, FUNCT_1:72, SCMPDS_2:100
.=
(Exec (l,s2)) . a
by A11, SCMPDS_2:66
.=
(DataPart (Exec (l,s2))) . x
by A12, FUNCT_1:72, SCMPDS_2:100
;
verum
end; then A13:
(Exec (l,s1)) | SCM-Data-Loc = (Exec (l,s2)) | SCM-Data-Loc
by A10, A9, FUNCT_1:9, SCMPDS_2:100;
(Exec (l,s1)) . (IC SCMPDS) =
ICplusConst (
s1,
k1)
by A11, SCMPDS_2:66
.=
ICplusConst (
s2,
k1)
by A6, Th2
.=
(Exec (l,s2)) . (IC SCMPDS)
by A11, SCMPDS_2:66
;
then
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A13, RELAT_1:185;
verum end; suppose
InsCode l = 1
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider a being
Int_position such that A14:
l = return a
by SCMPDS_2:36;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A15:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider b =
x as
Int_position by SCMPDS_2:9;
per cases
( b <> a or b = a )
;
suppose A16:
b <> a
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . b
by A15, FUNCT_1:72, SCMPDS_2:100
.=
s1 . b
by A14, A16, SCMPDS_2:70
.=
(DataPart s1) . b
by A15, FUNCT_1:72, SCMPDS_2:100
.=
s2 . b
by A3, A15, FUNCT_1:72, SCMPDS_2:100
.=
(Exec (l,s2)) . b
by A14, A16, SCMPDS_2:70
.=
(DataPart (Exec (l,s2))) . x
by A15, FUNCT_1:72, SCMPDS_2:100
;
verum end; suppose A17:
b = a
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . b
by A15, FUNCT_1:72, SCMPDS_2:100
.=
s1 . (DataLoc ((s1 . a),RetSP))
by A14, A17, SCMPDS_2:70
.=
s2 . (DataLoc ((s2 . a),RetSP))
by A3, Th3
.=
(Exec (l,s2)) . b
by A14, A17, SCMPDS_2:70
.=
(DataPart (Exec (l,s2))) . x
by A15, FUNCT_1:72, SCMPDS_2:100
;
verum end; end;
end; then A18:
(Exec (l,s1)) | SCM-Data-Loc = (Exec (l,s2)) | SCM-Data-Loc
by A10, A9, FUNCT_1:9, SCMPDS_2:100;
(Exec (l,s1)) . (IC SCMPDS) =
(abs (s1 . (DataLoc ((s1 . a),RetIC)))) + 2
by A14, SCMPDS_2:70
.=
(abs (s2 . (DataLoc ((s2 . a),RetIC)))) + 2
by A3, Th3
.=
(Exec (l,s2)) . (IC SCMPDS)
by A14, SCMPDS_2:70
;
then
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A18, RELAT_1:185;
verum end; suppose
InsCode l = 2
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider a being
Int_position ,
k1 being
Integer such that A19:
l = a := k1
by SCMPDS_2:37;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A20:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider b =
x as
Int_position by SCMPDS_2:9;
per cases
( b <> a or b = a )
;
suppose A21:
b <> a
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . b
by A20, FUNCT_1:72, SCMPDS_2:100
.=
s1 . b
by A19, A21, SCMPDS_2:57
.=
(DataPart s1) . b
by A20, FUNCT_1:72, SCMPDS_2:100
.=
s2 . b
by A3, A20, FUNCT_1:72, SCMPDS_2:100
.=
(Exec (l,s2)) . b
by A19, A21, SCMPDS_2:57
.=
(DataPart (Exec (l,s2))) . x
by A20, FUNCT_1:72, SCMPDS_2:100
;
verum end; suppose A22:
b = a
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . b
by A20, FUNCT_1:72, SCMPDS_2:100
.=
k1
by A19, A22, SCMPDS_2:57
.=
(Exec (l,s2)) . b
by A19, A22, SCMPDS_2:57
.=
(DataPart (Exec (l,s2))) . x
by A20, FUNCT_1:72, SCMPDS_2:100
;
verum end; end;
end; then A23:
(Exec (l,s1)) | SCM-Data-Loc = (Exec (l,s2)) | SCM-Data-Loc
by A10, A9, FUNCT_1:9, SCMPDS_2:100;
(Exec (l,s1)) . (IC SCMPDS) =
succ (IC s2)
by A6, A19, SCMPDS_2:57
.=
(Exec (l,s2)) . (IC SCMPDS)
by A19, SCMPDS_2:57
;
then
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A23, RELAT_1:185;
verum end; suppose
InsCode l = 3
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider a being
Int_position ,
k1 being
Integer such that A24:
l = saveIC (
a,
k1)
by SCMPDS_2:38;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A25:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider b =
x as
Int_position by SCMPDS_2:9;
per cases
( b <> DataLoc ((s1 . a),k1) or b = DataLoc ((s1 . a),k1) )
;
suppose A26:
b <> DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A27:
b <> DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . b
by A25, FUNCT_1:72, SCMPDS_2:100
.=
s1 . b
by A24, A26, SCMPDS_2:71
.=
(DataPart s1) . b
by A25, FUNCT_1:72, SCMPDS_2:100
.=
s2 . b
by A3, A25, FUNCT_1:72, SCMPDS_2:100
.=
(Exec (l,s2)) . b
by A24, A27, SCMPDS_2:71
.=
(DataPart (Exec (l,s2))) . x
by A25, FUNCT_1:72, SCMPDS_2:100
;
verum end; suppose A28:
b = DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A29:
b = DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . b
by A25, FUNCT_1:72, SCMPDS_2:100
.=
IC s2
by A6, A24, A28, SCMPDS_2:71
.=
(Exec (l,s2)) . b
by A24, A29, SCMPDS_2:71
.=
(DataPart (Exec (l,s2))) . x
by A25, FUNCT_1:72, SCMPDS_2:100
;
verum end; end;
end; then A30:
(Exec (l,s1)) | SCM-Data-Loc = (Exec (l,s2)) | SCM-Data-Loc
by A10, A9, FUNCT_1:9, SCMPDS_2:100;
(Exec (l,s1)) . (IC SCMPDS) =
succ (IC s2)
by A6, A24, SCMPDS_2:71
.=
(Exec (l,s2)) . (IC SCMPDS)
by A24, SCMPDS_2:71
;
then
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A30, RELAT_1:185;
verum end; suppose
InsCode l = 4
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider a being
Int_position ,
k1,
k2 being
Integer such that A31:
l = (
a,
k1)
<>0_goto k2
by SCMPDS_2:39;
now per cases
( s1 . (DataLoc ((s1 . a),k1)) <> 0 or s1 . (DataLoc ((s1 . a),k1)) = 0 )
;
suppose A32:
s1 . (DataLoc ((s1 . a),k1)) <> 0
;
(Exec (l,s1)) . (IC SCMPDS) = (Exec (l,s2)) . (IC SCMPDS)then A33:
s2 . (DataLoc ((s2 . a),k1)) <> 0
by A3, Th3;
thus (Exec (l,s1)) . (IC SCMPDS) =
ICplusConst (
s1,
k2)
by A31, A32, SCMPDS_2:67
.=
ICplusConst (
s2,
k2)
by A6, Th2
.=
(Exec (l,s2)) . (IC SCMPDS)
by A31, A33, SCMPDS_2:67
;
verum end; end; end; then A36:
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A37:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider b =
x as
Int_position by SCMPDS_2:9;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . b
by A37, FUNCT_1:72, SCMPDS_2:100
.=
s1 . b
by A31, SCMPDS_2:67
.=
(DataPart s1) . b
by A37, FUNCT_1:72, SCMPDS_2:100
.=
s2 . b
by A3, A37, FUNCT_1:72, SCMPDS_2:100
.=
(Exec (l,s2)) . b
by A31, SCMPDS_2:67
.=
(DataPart (Exec (l,s2))) . x
by A37, FUNCT_1:72, SCMPDS_2:100
;
verum
end; then
(Exec (l,s1)) | SCM-Data-Loc = (Exec (l,s2)) | SCM-Data-Loc
by A10, A9, FUNCT_1:9, SCMPDS_2:100;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A36, RELAT_1:185;
verum end; suppose
InsCode l = 5
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider a being
Int_position ,
k1,
k2 being
Integer such that A38:
l = (
a,
k1)
<=0_goto k2
by SCMPDS_2:40;
now per cases
( s1 . (DataLoc ((s1 . a),k1)) <= 0 or s1 . (DataLoc ((s1 . a),k1)) > 0 )
;
suppose A39:
s1 . (DataLoc ((s1 . a),k1)) <= 0
;
(Exec (l,s1)) . (IC SCMPDS) = (Exec (l,s2)) . (IC SCMPDS)then A40:
s2 . (DataLoc ((s2 . a),k1)) <= 0
by A3, Th3;
thus (Exec (l,s1)) . (IC SCMPDS) =
ICplusConst (
s1,
k2)
by A38, A39, SCMPDS_2:68
.=
ICplusConst (
s2,
k2)
by A6, Th2
.=
(Exec (l,s2)) . (IC SCMPDS)
by A38, A40, SCMPDS_2:68
;
verum end; end; end; then A43:
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A44:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider b =
x as
Int_position by SCMPDS_2:9;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . b
by A44, FUNCT_1:72, SCMPDS_2:100
.=
s1 . b
by A38, SCMPDS_2:68
.=
(DataPart s1) . b
by A44, FUNCT_1:72, SCMPDS_2:100
.=
s2 . b
by A3, A44, FUNCT_1:72, SCMPDS_2:100
.=
(Exec (l,s2)) . b
by A38, SCMPDS_2:68
.=
(DataPart (Exec (l,s2))) . x
by A44, FUNCT_1:72, SCMPDS_2:100
;
verum
end; then
(Exec (l,s1)) | SCM-Data-Loc = (Exec (l,s2)) | SCM-Data-Loc
by A10, A9, FUNCT_1:9, SCMPDS_2:100;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A43, RELAT_1:185;
verum end; suppose
InsCode l = 6
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider a being
Int_position ,
k1,
k2 being
Integer such that A45:
l = (
a,
k1)
>=0_goto k2
by SCMPDS_2:41;
now per cases
( s1 . (DataLoc ((s1 . a),k1)) >= 0 or s1 . (DataLoc ((s1 . a),k1)) < 0 )
;
suppose A46:
s1 . (DataLoc ((s1 . a),k1)) >= 0
;
(Exec (l,s1)) . (IC SCMPDS) = (Exec (l,s2)) . (IC SCMPDS)then A47:
s2 . (DataLoc ((s2 . a),k1)) >= 0
by A3, Th3;
thus (Exec (l,s1)) . (IC SCMPDS) =
ICplusConst (
s1,
k2)
by A45, A46, SCMPDS_2:69
.=
ICplusConst (
s2,
k2)
by A6, Th2
.=
(Exec (l,s2)) . (IC SCMPDS)
by A45, A47, SCMPDS_2:69
;
verum end; end; end; then A50:
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A51:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider b =
x as
Int_position by SCMPDS_2:9;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . b
by A51, FUNCT_1:72, SCMPDS_2:100
.=
s1 . b
by A45, SCMPDS_2:69
.=
(DataPart s1) . b
by A51, FUNCT_1:72, SCMPDS_2:100
.=
s2 . b
by A3, A51, FUNCT_1:72, SCMPDS_2:100
.=
(Exec (l,s2)) . b
by A45, SCMPDS_2:69
.=
(DataPart (Exec (l,s2))) . x
by A51, FUNCT_1:72, SCMPDS_2:100
;
verum
end; then
(Exec (l,s1)) | SCM-Data-Loc = (Exec (l,s2)) | SCM-Data-Loc
by A10, A9, FUNCT_1:9, SCMPDS_2:100;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A50, RELAT_1:185;
verum end; suppose
InsCode l = 7
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider a being
Int_position ,
k1,
k2 being
Integer such that A52:
l = (
a,
k1)
:= k2
by SCMPDS_2:42;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A53:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider b =
x as
Int_position by SCMPDS_2:9;
per cases
( b <> DataLoc ((s1 . a),k1) or b = DataLoc ((s1 . a),k1) )
;
suppose A54:
b <> DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A55:
b <> DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . b
by A53, FUNCT_1:72, SCMPDS_2:100
.=
s1 . b
by A52, A54, SCMPDS_2:58
.=
(DataPart s1) . b
by A53, FUNCT_1:72, SCMPDS_2:100
.=
s2 . b
by A3, A53, FUNCT_1:72, SCMPDS_2:100
.=
(Exec (l,s2)) . b
by A52, A55, SCMPDS_2:58
.=
(DataPart (Exec (l,s2))) . x
by A53, FUNCT_1:72, SCMPDS_2:100
;
verum end; suppose A56:
b = DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A57:
b = DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . b
by A53, FUNCT_1:72, SCMPDS_2:100
.=
k2
by A52, A56, SCMPDS_2:58
.=
(Exec (l,s2)) . b
by A52, A57, SCMPDS_2:58
.=
(DataPart (Exec (l,s2))) . x
by A53, FUNCT_1:72, SCMPDS_2:100
;
verum end; end;
end; then A58:
(Exec (l,s1)) | SCM-Data-Loc = (Exec (l,s2)) | SCM-Data-Loc
by A10, A9, FUNCT_1:9, SCMPDS_2:100;
(Exec (l,s1)) . (IC SCMPDS) =
succ (IC s2)
by A6, A52, SCMPDS_2:58
.=
(Exec (l,s2)) . (IC SCMPDS)
by A52, SCMPDS_2:58
;
then
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A58, RELAT_1:185;
verum end; suppose
InsCode l = 8
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider a being
Int_position ,
k1,
k2 being
Integer such that A59:
l = AddTo (
a,
k1,
k2)
by SCMPDS_2:43;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A60:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider b =
x as
Int_position by SCMPDS_2:9;
per cases
( b <> DataLoc ((s1 . a),k1) or b = DataLoc ((s1 . a),k1) )
;
suppose A61:
b <> DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A62:
b <> DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . b
by A60, FUNCT_1:72, SCMPDS_2:100
.=
s1 . b
by A59, A61, SCMPDS_2:60
.=
(DataPart s1) . b
by A60, FUNCT_1:72, SCMPDS_2:100
.=
s2 . b
by A3, A60, FUNCT_1:72, SCMPDS_2:100
.=
(Exec (l,s2)) . b
by A59, A62, SCMPDS_2:60
.=
(DataPart (Exec (l,s2))) . x
by A60, FUNCT_1:72, SCMPDS_2:100
;
verum end; suppose A63:
b = DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A64:
b = DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . b
by A60, FUNCT_1:72, SCMPDS_2:100
.=
(s1 . (DataLoc ((s1 . a),k1))) + k2
by A59, A63, SCMPDS_2:60
.=
(s2 . (DataLoc ((s2 . a),k1))) + k2
by A3, Th3
.=
(Exec (l,s2)) . b
by A59, A64, SCMPDS_2:60
.=
(DataPart (Exec (l,s2))) . x
by A60, FUNCT_1:72, SCMPDS_2:100
;
verum end; end;
end; then A65:
(Exec (l,s1)) | SCM-Data-Loc = (Exec (l,s2)) | SCM-Data-Loc
by A10, A9, FUNCT_1:9, SCMPDS_2:100;
(Exec (l,s1)) . (IC SCMPDS) =
succ (IC s2)
by A6, A59, SCMPDS_2:60
.=
(Exec (l,s2)) . (IC SCMPDS)
by A59, SCMPDS_2:60
;
then
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A65, RELAT_1:185;
verum end; suppose
InsCode l = 9
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider a,
b being
Int_position ,
k1,
k2 being
Integer such that A66:
l = AddTo (
a,
k1,
b,
k2)
by SCMPDS_2:44;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A67:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider c =
x as
Int_position by SCMPDS_2:9;
per cases
( c <> DataLoc ((s1 . a),k1) or c = DataLoc ((s1 . a),k1) )
;
suppose A68:
c <> DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A69:
c <> DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . c
by A67, FUNCT_1:72, SCMPDS_2:100
.=
s1 . c
by A66, A68, SCMPDS_2:61
.=
(DataPart s1) . c
by A67, FUNCT_1:72, SCMPDS_2:100
.=
s2 . c
by A3, A67, FUNCT_1:72, SCMPDS_2:100
.=
(Exec (l,s2)) . c
by A66, A69, SCMPDS_2:61
.=
(DataPart (Exec (l,s2))) . x
by A67, FUNCT_1:72, SCMPDS_2:100
;
verum end; suppose A70:
c = DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A71:
c = DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . c
by A67, FUNCT_1:72, SCMPDS_2:100
.=
(s1 . (DataLoc ((s1 . a),k1))) + (s1 . (DataLoc ((s1 . b),k2)))
by A66, A70, SCMPDS_2:61
.=
(s2 . (DataLoc ((s2 . a),k1))) + (s1 . (DataLoc ((s1 . b),k2)))
by A3, Th3
.=
(s2 . (DataLoc ((s2 . a),k1))) + (s2 . (DataLoc ((s2 . b),k2)))
by A3, Th3
.=
(Exec (l,s2)) . c
by A66, A71, SCMPDS_2:61
.=
(DataPart (Exec (l,s2))) . x
by A67, FUNCT_1:72, SCMPDS_2:100
;
verum end; end;
end; then A72:
(Exec (l,s1)) | SCM-Data-Loc = (Exec (l,s2)) | SCM-Data-Loc
by A10, A9, FUNCT_1:9, SCMPDS_2:100;
(Exec (l,s1)) . (IC SCMPDS) =
succ (IC s2)
by A6, A66, SCMPDS_2:61
.=
(Exec (l,s2)) . (IC SCMPDS)
by A66, SCMPDS_2:61
;
then
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A72, RELAT_1:185;
verum end; suppose
InsCode l = 10
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider a,
b being
Int_position ,
k1,
k2 being
Integer such that A73:
l = SubFrom (
a,
k1,
b,
k2)
by SCMPDS_2:45;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A74:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider c =
x as
Int_position by SCMPDS_2:9;
per cases
( c <> DataLoc ((s1 . a),k1) or c = DataLoc ((s1 . a),k1) )
;
suppose A75:
c <> DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A76:
c <> DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . c
by A74, FUNCT_1:72, SCMPDS_2:100
.=
s1 . c
by A73, A75, SCMPDS_2:62
.=
(DataPart s1) . c
by A74, FUNCT_1:72, SCMPDS_2:100
.=
s2 . c
by A3, A74, FUNCT_1:72, SCMPDS_2:100
.=
(Exec (l,s2)) . c
by A73, A76, SCMPDS_2:62
.=
(DataPart (Exec (l,s2))) . x
by A74, FUNCT_1:72, SCMPDS_2:100
;
verum end; suppose A77:
c = DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A78:
c = DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . c
by A74, FUNCT_1:72, SCMPDS_2:100
.=
(s1 . (DataLoc ((s1 . a),k1))) - (s1 . (DataLoc ((s1 . b),k2)))
by A73, A77, SCMPDS_2:62
.=
(s2 . (DataLoc ((s2 . a),k1))) - (s1 . (DataLoc ((s1 . b),k2)))
by A3, Th3
.=
(s2 . (DataLoc ((s2 . a),k1))) - (s2 . (DataLoc ((s2 . b),k2)))
by A3, Th3
.=
(Exec (l,s2)) . c
by A73, A78, SCMPDS_2:62
.=
(DataPart (Exec (l,s2))) . x
by A74, FUNCT_1:72, SCMPDS_2:100
;
verum end; end;
end; then A79:
DataPart (Exec (l,s1)) = DataPart (Exec (l,s2))
by A10, A9, FUNCT_1:9;
(Exec (l,s1)) . (IC SCMPDS) =
succ (IC s2)
by A6, A73, SCMPDS_2:62
.=
(Exec (l,s2)) . (IC SCMPDS)
by A73, SCMPDS_2:62
;
then
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A79, RELAT_1:185, SCMPDS_2:100;
verum end; suppose
InsCode l = 11
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider a,
b being
Int_position ,
k1,
k2 being
Integer such that A80:
l = MultBy (
a,
k1,
b,
k2)
by SCMPDS_2:46;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A81:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider c =
x as
Int_position by SCMPDS_2:9;
per cases
( c <> DataLoc ((s1 . a),k1) or c = DataLoc ((s1 . a),k1) )
;
suppose A82:
c <> DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A83:
c <> DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . c
by A81, FUNCT_1:72, SCMPDS_2:100
.=
s1 . c
by A80, A82, SCMPDS_2:63
.=
(DataPart s1) . c
by A81, FUNCT_1:72, SCMPDS_2:100
.=
s2 . c
by A3, A81, FUNCT_1:72, SCMPDS_2:100
.=
(Exec (l,s2)) . c
by A80, A83, SCMPDS_2:63
.=
(DataPart (Exec (l,s2))) . x
by A81, FUNCT_1:72, SCMPDS_2:100
;
verum end; suppose A84:
c = DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A85:
c = DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . c
by A81, FUNCT_1:72, SCMPDS_2:100
.=
(s1 . (DataLoc ((s1 . a),k1))) * (s1 . (DataLoc ((s1 . b),k2)))
by A80, A84, SCMPDS_2:63
.=
(s2 . (DataLoc ((s2 . a),k1))) * (s1 . (DataLoc ((s1 . b),k2)))
by A3, Th3
.=
(s2 . (DataLoc ((s2 . a),k1))) * (s2 . (DataLoc ((s2 . b),k2)))
by A3, Th3
.=
(Exec (l,s2)) . c
by A80, A85, SCMPDS_2:63
.=
(DataPart (Exec (l,s2))) . x
by A81, FUNCT_1:72, SCMPDS_2:100
;
verum end; end;
end; then A86:
DataPart (Exec (l,s1)) = DataPart (Exec (l,s2))
by A10, A9, FUNCT_1:9;
(Exec (l,s1)) . (IC SCMPDS) =
succ (IC s2)
by A6, A80, SCMPDS_2:63
.=
(Exec (l,s2)) . (IC SCMPDS)
by A80, SCMPDS_2:63
;
then
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A86, RELAT_1:185, SCMPDS_2:100;
verum end; suppose
InsCode l = 12
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider a,
b being
Int_position ,
k1,
k2 being
Integer such that A87:
l = Divide (
a,
k1,
b,
k2)
by SCMPDS_2:47;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A88:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider c =
x as
Int_position by SCMPDS_2:9;
per cases
( c = DataLoc ((s1 . b),k2) or c <> DataLoc ((s1 . b),k2) )
;
suppose A89:
c = DataLoc (
(s1 . b),
k2)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A90:
c = DataLoc (
(s2 . b),
k2)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . c
by A88, FUNCT_1:72, SCMPDS_2:100
.=
(s1 . (DataLoc ((s1 . a),k1))) mod (s1 . (DataLoc ((s1 . b),k2)))
by A87, A89, SCMPDS_2:64
.=
(s2 . (DataLoc ((s2 . a),k1))) mod (s1 . (DataLoc ((s1 . b),k2)))
by A3, Th3
.=
(s2 . (DataLoc ((s2 . a),k1))) mod (s2 . (DataLoc ((s2 . b),k2)))
by A3, Th3
.=
(Exec (l,s2)) . c
by A87, A90, SCMPDS_2:64
.=
(DataPart (Exec (l,s2))) . x
by A88, FUNCT_1:72, SCMPDS_2:100
;
verum end; suppose A91:
c <> DataLoc (
(s1 . b),
k2)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A92:
c <> DataLoc (
(s2 . b),
k2)
by A3, Th4;
hereby verum
per cases
( c <> DataLoc ((s1 . a),k1) or c = DataLoc ((s1 . a),k1) )
;
suppose A93:
c <> DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A94:
c <> DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . c
by A88, FUNCT_1:72, SCMPDS_2:100
.=
s1 . c
by A87, A91, A93, SCMPDS_2:64
.=
s2 . c
by A3, Th4
.=
(Exec (l,s2)) . c
by A87, A92, A94, SCMPDS_2:64
.=
(DataPart (Exec (l,s2))) . x
by A88, FUNCT_1:72, SCMPDS_2:100
;
verum end; suppose A95:
c = DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A96:
c = DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . c
by A88, FUNCT_1:72, SCMPDS_2:100
.=
(s1 . (DataLoc ((s1 . a),k1))) div (s1 . (DataLoc ((s1 . b),k2)))
by A87, A91, A95, SCMPDS_2:64
.=
(s2 . (DataLoc ((s2 . a),k1))) div (s1 . (DataLoc ((s1 . b),k2)))
by A3, Th3
.=
(s2 . (DataLoc ((s2 . a),k1))) div (s2 . (DataLoc ((s2 . b),k2)))
by A3, Th3
.=
(Exec (l,s2)) . c
by A87, A92, A96, SCMPDS_2:64
.=
(DataPart (Exec (l,s2))) . x
by A88, FUNCT_1:72, SCMPDS_2:100
;
verum end; end;
end; end; end;
end; then A97:
DataPart (Exec (l,s1)) = DataPart (Exec (l,s2))
by A10, A9, FUNCT_1:9;
(Exec (l,s1)) . (IC SCMPDS) =
succ (IC s2)
by A6, A87, SCMPDS_2:64
.=
(Exec (l,s2)) . (IC SCMPDS)
by A87, SCMPDS_2:64
;
then
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A97, RELAT_1:185, SCMPDS_2:100;
verum end; suppose
InsCode l = 13
;
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})then consider a,
b being
Int_position ,
k1,
k2 being
Integer such that A98:
l = (
a,
k1)
:= (
b,
k2)
by SCMPDS_2:48;
for
x being
set st
x in SCM-Data-Loc holds
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
proof
let x be
set ;
( x in SCM-Data-Loc implies (DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x )
assume A99:
x in SCM-Data-Loc
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . x
then reconsider c =
x as
Int_position by SCMPDS_2:9;
per cases
( c <> DataLoc ((s1 . a),k1) or c = DataLoc ((s1 . a),k1) )
;
suppose A100:
c <> DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A101:
c <> DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . c
by A99, FUNCT_1:72, SCMPDS_2:100
.=
s1 . c
by A98, A100, SCMPDS_2:59
.=
(DataPart s1) . c
by A99, FUNCT_1:72, SCMPDS_2:100
.=
s2 . c
by A3, A99, FUNCT_1:72, SCMPDS_2:100
.=
(Exec (l,s2)) . c
by A98, A101, SCMPDS_2:59
.=
(DataPart (Exec (l,s2))) . x
by A99, FUNCT_1:72, SCMPDS_2:100
;
verum end; suppose A102:
c = DataLoc (
(s1 . a),
k1)
;
(DataPart (Exec (l,s1))) . x = (DataPart (Exec (l,s2))) . xthen A103:
c = DataLoc (
(s2 . a),
k1)
by A3, Th4;
thus (DataPart (Exec (l,s1))) . x =
(Exec (l,s1)) . c
by A99, FUNCT_1:72, SCMPDS_2:100
.=
s1 . (DataLoc ((s1 . b),k2))
by A98, A102, SCMPDS_2:59
.=
s2 . (DataLoc ((s2 . b),k2))
by A3, Th3
.=
(Exec (l,s2)) . c
by A98, A103, SCMPDS_2:59
.=
(DataPart (Exec (l,s2))) . x
by A99, FUNCT_1:72, SCMPDS_2:100
;
verum end; end;
end; then A104:
DataPart (Exec (l,s1)) = DataPart (Exec (l,s2))
by A10, A9, FUNCT_1:9;
(Exec (l,s1)) . (IC SCMPDS) =
succ (IC s2)
by A6, A98, SCMPDS_2:59
.=
(Exec (l,s2)) . (IC SCMPDS)
by A98, SCMPDS_2:59
;
then
(Exec (l,s1)) | {(IC SCMPDS)} = (Exec (l,s2)) | {(IC SCMPDS)}
by A8, GRFUNC_1:90;
hence
(Exec (l,s1)) | (SCM-Data-Loc \/ {(IC SCMPDS)}) = (Exec (l,s2)) | (SCM-Data-Loc \/ {(IC SCMPDS)})
by A104, RELAT_1:185, SCMPDS_2:100;
verum end; end;