03.02.2014 Aufrufe

Spezifikationsmodule - Software and Systems Engineering - TUM

Spezifikationsmodule - Software and Systems Engineering - TUM

Spezifikationsmodule - Software and Systems Engineering - TUM

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

define setCopiedMIFTerm(<br />

orig:MIFTerm, copy: MIFTerm,<br />

new_constructor_map:set(<br />

orig:(one:Constructor, two:Constructor), copy:Constructor),<br />

new_copy_constructor_map:set(<br />

orig:Constructor, copy:Constructor),<br />

new_appl_map:set(orig:(one:Appl, two:Appl), copy:Appl),<br />

new_copy_appl_map:set(orig:Appl, copy:Appl),<br />

new_lvcn_map:set(<br />

orig:(one:LocVariableConst, two:LocVariableConst),<br />

copy:LocVariableConst),<br />

new_copy_lvcn_map:set(<br />

orig:LocVariableConst, copy:LocVariableConst)<br />

) as (<br />

exists ncon:new_constructor_map . (<br />

( orig.Model = ncon.orig.one or orig.Model = ncon.orig.two<br />

) <strong>and</strong> result has Model(copy, ncon.copy)<br />

) or<br />

exists nccon:new_copy_constructor_map . (<br />

orig.Model = nccon.orig <strong>and</strong> result has Model(copy, nccon.copy)<br />

) or<br />

exists napp:new_appl_map . (<br />

( orig.Model = napp.orig.one or orig.Model = napp.orig.two<br />

) <strong>and</strong> result has Model(copy, napp.copy)<br />

) or<br />

exists ncapp:new_copy_appl_map . (<br />

orig.Model = ncapp.orig <strong>and</strong> result has Model(copy, ncapp.copy)<br />

) or<br />

exists nlvr:new_lvcn_map . (<br />

( orig.Model = nlvr.orig.one or orig.Model = nlvr.orig.two<br />

) <strong>and</strong> result has Model(copy, nlvr.copy)<br />

) or<br />

exists nclvr:new_copy_lvcn_map . (<br />

orig.Model=nclvr.orig <strong>and</strong> result has Model(copy,nclvr.copy)<br />

) or<br />

result has Model(copy, orig.Model)<br />

).<br />

define testSelectorType (<br />

sel:Selector, t:Type<br />

) := (<br />

exists ta:TAppl . (<br />

sel.Type = ta <strong>and</strong><br />

exists ta_arg:(ta.TArgs) . (<br />

indexOf(ta_arg, ta, "TArgs") = 1 <strong>and</strong><br />

ta_arg = t<br />

))).<br />

define selectorTypeEqual (<br />

65

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!