let s1, s2 be State of SCM+FSA; :: thesis: ( ( ( for a being Int-Location holds s1 . a = s2 . a ) & ( for f being FinSeq-Location holds s1 . f = s2 . f ) ) iff DataPart s1 = DataPart s2 )
A1: now :: thesis: ( ( for a being Int-Location holds s1 . a = s2 . a ) & ( for f being FinSeq-Location holds s1 . f = s2 . f ) implies for x being set st x in Data-Locations holds
s1 . x = s2 . x )
end;
A5: now :: thesis: ( ( for x being set st x in Data-Locations holds
s1 . x = s2 . x ) implies ( ( for a being Int-Location holds s1 . a = s2 . a ) & ( for f being FinSeq-Location holds s1 . f = s2 . f ) ) )
assume A6: for x being set st x in Data-Locations holds
s1 . x = s2 . x ; :: thesis: ( ( for a being Int-Location holds s1 . a = s2 . a ) & ( for f being FinSeq-Location holds s1 . f = s2 . f ) )
hereby :: thesis: for f being FinSeq-Location holds s1 . f = s2 . f end;
hereby :: thesis: verum end;
end;
dom s2 = (Data-Locations ) \/ {(IC )} by MEMSTR_0:13;
then A7: Data-Locations c= dom s2 by XBOOLE_1:7;
dom s1 = (Data-Locations ) \/ {(IC )} by MEMSTR_0:13;
then Data-Locations c= dom s1 by XBOOLE_1:7;
hence ( ( ( for a being Int-Location holds s1 . a = s2 . a ) & ( for f being FinSeq-Location holds s1 . f = s2 . f ) ) iff DataPart s1 = DataPart s2 ) by A7, A1, A5, FUNCT_1:95; :: thesis: verum