Spezifikationsmodule - Software and Systems Engineering - TUM
Spezifikationsmodule - Software and Systems Engineering - TUM
Spezifikationsmodule - Software and Systems Engineering - TUM
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
* merged states are part of root state only */<br />
forall mk_stt:new_state_map . (<br />
result has Name(mk_stt.copy,<br />
concat(mk_stt.orig.one.Name, mk_stt.orig.two.Name)) <strong>and</strong><br />
result has SubStates(new_root_state, mk_stt.copy)<br />
) <strong>and</strong><br />
/* copy states not merged */<br />
exists new_copy_state_map:map orig:copy_state_set<br />
to copy:new State . (<br />
forall ncsm1:new_copy_state_map .<br />
forall ncsm2:new_copy_state_map . (<br />
ncsm1.orig = ncsm2.orig equiv ncsm1.copy = ncsm2.copy<br />
) <strong>and</strong><br />
forall cp_stt:new_copy_state_map . (<br />
result has Name(cp_stt.copy, cp_stt.orig.Name) <strong>and</strong> (<br />
exists nsm_elem_cpstt:new_state_map . (<br />
(is SubStates(nsm_elem_cpstt.orig.one, cp_stt.orig) or<br />
is SubStates(nsm_elem_cpstt.orig.two, cp_stt.orig)<br />
) <strong>and</strong><br />
result has SubStates(nsm_elem_cpstt.copy, cp_stt.copy)<br />
) or<br />
exists ncsm_elem_cpstt:new_copy_state_map . (<br />
is SubStates(ncsm_elem_cpstt.orig, cp_stt.orig) <strong>and</strong><br />
result has SubStates(ncsm_elem_cpstt.copy, cp_stt.copy)<br />
) or<br />
result has SubStates(new_root_state, cp_stt.copy)<br />
)) <strong>and</strong><br />
/* build transitionsegments */<br />
exists new_transition_map:map orig:transition_map<br />
to copy:new TransitionSegment . (<br />
forall ntm5:new_transition_map .<br />
forall ntm6:new_transition_map . (<br />
ntm5.orig = ntm6.orig equiv ntm5.copy = ntm6.copy<br />
) <strong>and</strong><br />
forall mk_tsg:new_transition_map . (<br />
result has TransitionSegments(new_root_state, mk_tsg.copy)<br />
) <strong>and</strong><br />
/* copy transitionssegments */<br />
exists new_copy_transition_map:map orig:copy_transition_set<br />
to copy:new TransitionSegment.(<br />
forall nctm5:new_copy_transition_map .<br />
forall nctm6:new_copy_transition_map . (<br />
nctm5.orig = nctm6.orig equiv nctm5.copy = nctm6.copy<br />
) <strong>and</strong><br />
forall cp_tsg:new_copy_transition_map . (<br />
exists nsm_elem_cptsg:new_state_map . (<br />
(is TransitionSegments(nsm_elem_cptsg.orig.one,<br />
82