set A = NAT ;
let s1, s2 be State of SCMPDS ; :: thesis: ( IC s1 = IC s2 & ( for a being Int_position holds s1 . a = s2 . a ) implies s1,s2 equal_outside NAT )
assume that
A1: IC s1 = IC s2 and
A2: for a being Int_position holds s1 . a = s2 . a ; :: thesis: s1,s2 equal_outside NAT
not IC SCMPDS in NAT by AMI_1:48;
then {(IC SCMPDS )} misses NAT by ZFMISC_1:56;
then A3: {(IC SCMPDS )} \/ SCM-Data-Loc misses NAT by AMI_2:29, XBOOLE_1:70;
A4: the carrier of SCMPDS \ NAT = ({(IC SCMPDS )} \/ SCM-Data-Loc ) \ NAT by SCMPDS_3:5, XBOOLE_1:40
.= {(IC SCMPDS )} \/ SCM-Data-Loc by A3, XBOOLE_1:83 ;
A5: dom (s2 | ((dom s2) \ NAT )) = (dom s2) /\ ((dom s2) \ NAT ) by RELAT_1:90
.= (dom s2) \ NAT by XBOOLE_1:28
.= {(IC SCMPDS )} \/ SCM-Data-Loc by A4, PARTFUN1:def 4 ;
A6: dom (s1 | ((dom s1) \ NAT )) = (dom s1) /\ ((dom s1) \ NAT ) by RELAT_1:90
.= (dom s1) \ NAT by XBOOLE_1:28
.= {(IC SCMPDS )} \/ SCM-Data-Loc by A4, PARTFUN1:def 4 ;
now
let x be set ; :: thesis: ( x in {(IC SCMPDS )} \/ SCM-Data-Loc implies (s1 | ((dom s1) \ NAT )) . b1 = (s2 | ((dom s2) \ NAT )) . b1 )
assume A7: x in {(IC SCMPDS )} \/ SCM-Data-Loc ; :: thesis: (s1 | ((dom s1) \ NAT )) . b1 = (s2 | ((dom s2) \ NAT )) . b1
per cases ( x in {(IC SCMPDS )} or x in SCM-Data-Loc ) by A7, XBOOLE_0:def 3;
suppose x in {(IC SCMPDS )} ; :: thesis: (s1 | ((dom s1) \ NAT )) . b1 = (s2 | ((dom s2) \ NAT )) . b1
then A8: x = IC SCMPDS by TARSKI:def 1;
hence (s1 | ((dom s1) \ NAT )) . x = IC s1 by A6, A7, FUNCT_1:70
.= (s2 | ((dom s2) \ NAT )) . x by A1, A5, A7, A8, FUNCT_1:70 ;
:: thesis: verum
end;
suppose x in SCM-Data-Loc ; :: thesis: (s1 | ((dom s1) \ NAT )) . b1 = (s2 | ((dom s2) \ NAT )) . b1
then A9: x is Int_position by SCMPDS_2:9;
thus (s1 | ((dom s1) \ NAT )) . x = s1 . x by A6, A7, FUNCT_1:70
.= s2 . x by A2, A9
.= (s2 | ((dom s2) \ NAT )) . x by A5, A7, FUNCT_1:70 ; :: thesis: verum
end;
end;
end;
hence s1 | ((dom s1) \ NAT ) = s2 | ((dom s2) \ NAT ) by A6, A5, FUNCT_1:9; :: according to FUNCT_7:def 2 :: thesis: verum