set IF = Int-Locations \/ FinSeq-Locations;
let I be InitHalting keepInt0_1 Program of SCM+FSA; for s being State of SCM+FSA holds DataPart (Initialized (IExec (I,s))) = DataPart (IExec (I,s))
let s be State of SCM+FSA; DataPart (Initialized (IExec (I,s))) = DataPart (IExec (I,s))
set IE = IExec (I,s);
now A1:
dom (Initialized (IExec (I,s))) = the
carrier of
SCM+FSA
by PARTFUN1:def 4;
then A2:
dom (Initialized (IExec (I,s))) = (Int-Locations \/ FinSeq-Locations) \/ ({(IC SCM+FSA)} \/ NAT)
by SCMFSA_2:8, XBOOLE_1:4;
A3:
dom (IExec (I,s)) = the
carrier of
SCM+FSA
by PARTFUN1:def 4;
hence
dom (DataPart (Initialized (IExec (I,s)))) = (dom (IExec (I,s))) /\ (Int-Locations \/ FinSeq-Locations)
by A1, RELAT_1:90, SCMFSA_2:127;
for x being set st x in dom (DataPart (Initialized (IExec (I,s)))) holds
(DataPart (Initialized (IExec (I,s)))) . b2 = (IExec (I,s)) . b2then A4:
dom (DataPart (Initialized (IExec (I,s)))) = Int-Locations \/ FinSeq-Locations
by A1, A3, A2, XBOOLE_1:21;
let x be
set ;
( x in dom (DataPart (Initialized (IExec (I,s)))) implies (DataPart (Initialized (IExec (I,s)))) . b1 = (IExec (I,s)) . b1 )assume A5:
x in dom (DataPart (Initialized (IExec (I,s))))
;
(DataPart (Initialized (IExec (I,s)))) . b1 = (IExec (I,s)) . b1 end;
hence
DataPart (Initialized (IExec (I,s))) = DataPart (IExec (I,s))
by FUNCT_1:68, SCMFSA_2:127; verum