25.11.2014 Aufrufe

Verifikation reaktiver Systeme - Universität Kaiserslautern

Verifikation reaktiver Systeme - Universität Kaiserslautern

Verifikation reaktiver Systeme - Universität Kaiserslautern

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.

251<br />

(*--------------------------------------------------------------------------<br />

* FRAC_SUB_PLUS: thm<br />

* |- !a b c. sub a (add b c) = sub (sub a b) c<br />

*--------------------------------------------------------------------------*)<br />

val FRAC_SUB_PLUS = store_thm("FRAC_SUB_PLUS",<br />

‘‘!a b c. sub a (add b c) = sub (sub a b) c‘‘,<br />

REPEAT STRIP_TAC THEN REWRITE_TAC[add_def,sub_def,ainv_def]<br />

THEN DNM_POS_ASM_TAC ‘‘dnm a * dnm b‘‘<br />

THEN DNM_POS_ASM_TAC ‘‘dnm b * dnm c‘‘<br />

THEN DNM_POS_ASM_TAC ‘‘dnm b‘‘<br />

THEN DNM_POS_ASM_TAC ‘‘dnm c‘‘<br />

THEN ARW_TAC[NMR,DNM]<br />

THEN FRAC_EQ_TAC THEN<br />

INT_RING_TAC );<br />

(*--------------------------------------------------------------------------<br />

* FRAC_SUB_MINUS: thm<br />

* |- !a b c. sub a (sub b c) = add (sub a b) c<br />

*--------------------------------------------------------------------------*)<br />

val FRAC_SUB_MINUS = store_thm("FRAC_SUB_MINUS",<br />

‘‘!a b c. sub a (sub b c) = add (sub a b) c‘‘,<br />

REPEAT STRIP_TAC THEN REWRITE_TAC[add_def,sub_def,ainv_def]<br />

THEN DNM_POS_ASM_TAC ‘‘dnm a * dnm b‘‘<br />

THEN DNM_POS_ASM_TAC ‘‘dnm b * dnm c‘‘<br />

THEN DNM_POS_ASM_TAC ‘‘dnm b‘‘<br />

THEN DNM_POS_ASM_TAC ‘‘dnm c‘‘<br />

THEN ARW_TAC[NMR,DNM]<br />

THEN FRAC_EQ_TAC THEN<br />

INT_RING_TAC );<br />

(*--------------------------------------------------------------------------<br />

* SUB_AINV_THM: thm<br />

* |- !a b. sub a b = ainv (sub b a)<br />

*--------------------------------------------------------------------------*)<br />

val SUB_AINV_THM = store_thm("SUB_AINV_THM",<br />

‘‘!a b. sub a b = ainv (sub b a)‘‘,<br />

REPEAT GEN_TAC THEN<br />

REWRITE_TAC[ainv_def, add_def, sub_def] THEN<br />

DNM_POS_ASM_TAC ‘‘dnm a‘‘ THEN<br />

DNM_POS_ASM_TAC ‘‘dnm b‘‘ THEN<br />

DNM_POS_ASM_TAC ‘‘dnm b * dnm a‘‘ THEN<br />

ARW_TAC[NMR,DNM] THEN<br />

FRAC_EQ_TAC THEN<br />

INT_RING_TAC );<br />

val _ = export_theory();

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!