:: SCMFSA6C semantic presentation
set c1 = Start-At (insloc 0);
theorem Th1: :: SCMFSA6C:1
theorem Th2: :: SCMFSA6C:2
:: deftheorem Def1 defines parahalting SCMFSA6C:def 1 :
:: deftheorem Def2 defines keeping_0 SCMFSA6C:def 2 :
Lemma3:
Macro (halt SCM+FSA ) is parahalting
Lemma4:
( Macro (halt SCM+FSA ) is keeping_0 & Macro (halt SCM+FSA ) is parahalting )
registration
let c2,
c3 be
Int-Location ;
cluster a1 := a2 -> parahalting ;
coherence
c2 := c3 is parahalting
cluster AddTo a1,
a2 -> parahalting ;
coherence
AddTo c2,c3 is parahalting
cluster SubFrom a1,
a2 -> parahalting ;
coherence
SubFrom c2,c3 is parahalting
cluster MultBy a1,
a2 -> parahalting ;
coherence
MultBy c2,c3 is parahalting
cluster Divide a1,
a2 -> parahalting ;
coherence
Divide c2,c3 is parahalting
let c4 be
FinSeq-Location ;
cluster a2 := a3,
a1 -> parahalting ;
coherence
c3 := c4,c2 is parahalting
cluster a3,
a1 := a2 -> parahalting keeping_0 ;
coherence
( c4,c2 := c3 is parahalting & c4,c2 := c3 is keeping_0 )
end;
:: deftheorem Def3 defines Initialize SCMFSA6C:def 3 :
theorem Th3: :: SCMFSA6C:3
theorem Th4: :: SCMFSA6C:4
theorem Th5: :: SCMFSA6C:5
E8:
now
let c2 be
parahalting keeping_0 Macro-Instruction;
let c3 be
State of
SCM+FSA ;
set c4 =
IExec c2,
c3;
set c5 =
Int-Locations \/ FinSeq-Locations ;
now
E9:
(
dom (Initialize (IExec c2,c3)) = the
carrier of
SCM+FSA &
dom (IExec c2,c3) = the
carrier of
SCM+FSA )
by AMI_3:36;
hence E10:
dom ((Initialize (IExec c2,c3)) | (Int-Locations \/ FinSeq-Locations )) = (dom (IExec c2,c3)) /\ (Int-Locations \/ FinSeq-Locations )
by RELAT_1:90;
let c6 be
set ;
assume E11:
c6 in dom ((Initialize (IExec c2,c3)) | (Int-Locations \/ FinSeq-Locations ))
;
dom (Initialize (IExec c2,c3)) = (Int-Locations \/ FinSeq-Locations ) \/ ({(IC SCM+FSA )} \/ the Instruction-Locations of SCM+FSA )
by E9, SCMFSA_2:8, XBOOLE_1:4;
then E12:
dom ((Initialize (IExec c2,c3)) | (Int-Locations \/ FinSeq-Locations )) = Int-Locations \/ FinSeq-Locations
by E9, E10, XBOOLE_1:21;
end;
hence
(Initialize (IExec c2,c3)) | (Int-Locations \/ FinSeq-Locations ) = (IExec c2,c3) | (Int-Locations \/ FinSeq-Locations )
by FUNCT_1:68;
end;
theorem Th6: :: SCMFSA6C:6
theorem Th7: :: SCMFSA6C:7
theorem Th8: :: SCMFSA6C:8
theorem Th9: :: SCMFSA6C:9
theorem Th10: :: SCMFSA6C:10
:: deftheorem Def4 defines swap SCMFSA6C:def 4 :
theorem Th11: :: SCMFSA6C:11
theorem Th12: :: SCMFSA6C:12