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.

) or<br />

exists nlvar_arg:new_lvcn_map . (<br />

nlvar_arg.orig.one = param1 <strong>and</strong><br />

nlvar_arg.orig.two = param2 <strong>and</strong><br />

result has Args(mk_app.copy, nlvar_arg.copy,<br />

indexOf(param1, mk_app.orig.one, "Args"))<br />

) or<br />

(param1 = param2 <strong>and</strong><br />

result has Args(mk_app.copy, param1,<br />

indexOf(param1, mk_app.orig.one, "Args"))<br />

)))) <strong>and</strong><br />

/* copy appls */<br />

exists new_copy_appl_map:map orig:copy_appl_set<br />

to copy:new Appl . (<br />

forall ncappm1:new_copy_appl_map .<br />

forall ncappm2:new_copy_appl_map . (<br />

ncappm1.orig = ncappm2.orig equiv ncappm1.copy = ncappm2.copy<br />

) <strong>and</strong><br />

forall cp_app:new_copy_appl_map . (<br />

(exists ncon_head2:new_constructor_map . (<br />

(cp_app.orig.Head = ncon_head2.orig.one or<br />

cp_app.orig.Head = ncon_head2.orig.two<br />

) <strong>and</strong><br />

result has Head(cp_app.copy, ncon_head2.copy)<br />

) or<br />

/* normal const */<br />

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

) <strong>and</strong><br />

forall param:(cp_app.orig.Args) . (<br />

exists ncapp_arg:new_copy_appl_map . (<br />

ncapp_arg.orig = param <strong>and</strong><br />

result has Args(cp_app.copy, ncapp_arg.copy,<br />

indexOf(param, cp_app.orig, "Args"))<br />

) or<br />

exists ncon_arg2:new_constructor_map . (<br />

(ncon_arg2.orig.one = param or<br />

ncon_arg2.orig.two = param<br />

) <strong>and</strong><br />

result has Args(cp_app.copy, ncon_arg2.copy,<br />

indexOf(param, cp_app.orig, "Args"))<br />

) or<br />

exists nlvar_arg2:new_lvcn_map . (<br />

(nlvar_arg2.orig.one = param or<br />

nlvar_arg2.orig.two = param<br />

) <strong>and</strong><br />

result has Args(cp_app.copy, nlvar_arg2.copy,<br />

indexOf(param, cp_app.orig, "Args"))<br />

) or<br />

exists nlvarcopy_arg:new_copy_lvcn_map . (<br />

87

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!