Spezifikationsmodule - Software and Systems Engineering - TUM
Spezifikationsmodule - Software and Systems Engineering - TUM
Spezifikationsmodule - Software and Systems Engineering - TUM
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
nctsgm_mkifp.orig.SourcePoint = mk_ifp.orig.two<br />
) <strong>and</strong><br />
result has SourcePoint(nctsgm_mkifp.copy, mk_ifp.copy)<br />
) or<br />
((nctsgm_mkifp.orig.DestinationPoint = mk_ifp.orig.one or<br />
nctsgm_mkifp.orig.DestinationPoint = mk_ifp.orig.two<br />
) <strong>and</strong><br />
result has DestinationPoint(nctsgm_mkifp.copy, mk_ifp.copy)<br />
) or true /* nothing to do for this transitionsegment */<br />
)) <strong>and</strong><br />
/* copy interfacepoints */<br />
exists new_copy_ifpoint_map:map orig:copy_interfacepoint_set<br />
to copy:new InterfacePoint . (<br />
forall ncifpm5:new_copy_ifpoint_map .<br />
forall ncifpm6:new_copy_ifpoint_map . (<br />
ncifpm5.orig = ncifpm6.orig equiv ncifpm5.copy = ncifpm6.copy<br />
) <strong>and</strong><br />
forall cp_ifp:new_copy_ifpoint_map . (<br />
result has Name(cp_ifp.copy, cp_ifp.orig.Name) <strong>and</strong><br />
exists new_dir2:Direction . (<br />
result has Direction(cp_ifp.copy, new_dir2) <strong>and</strong><br />
result has IsEntry(new_dir2, cp_ifp.orig.Direction.IsEntry)<br />
) <strong>and</strong> (<br />
exists nsm_elem_cpifp:new_state_map . (<br />
(cp_ifp.orig.State = nsm_elem_cpifp.orig.one or<br />
cp_ifp.orig.State = nsm_elem_cpifp.orig.two<br />
) <strong>and</strong><br />
result has InterfacePoints(nsm_elem_cpifp.copy, cp_ifp.copy)<br />
) or<br />
exists ncsm_elem_cpifp:new_copy_state_map . (<br />
cp_ifp.orig.State = ncsm_elem_cpifp.orig <strong>and</strong><br />
result has InterfacePoints(ncsm_elem_cpifp.copy, cp_ifp.copy)<br />
)<br />
) <strong>and</strong><br />
forall ntsgm_cpifp:new_transition_map . (<br />
((ntsgm_cpifp.orig.one.SourcePoint = cp_ifp.orig or<br />
ntsgm_cpifp.orig.two.SourcePoint = cp_ifp.orig<br />
) <strong>and</strong><br />
result has SourcePoint(ntsgm_cpifp.copy, cp_ifp.copy)<br />
) or<br />
((ntsgm_cpifp.orig.one.DestinationPoint = cp_ifp.orig or<br />
ntsgm_cpifp.orig.two.DestinationPoint = cp_ifp.orig<br />
) <strong>and</strong><br />
result has DestinationPoint(ntsgm_cpifp.copy, cp_ifp.copy)<br />
) or true /* nothing to do for this transitionsegment */<br />
) <strong>and</strong><br />
forall nctsgm_cpifp:new_copy_transition_map . (<br />
(nctsgm_cpifp.orig.SourcePoint = cp_ifp.orig <strong>and</strong><br />
result has SourcePoint(nctsgm_cpifp.copy, cp_ifp.copy)<br />
84