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

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

267<br />

* dnm (rep_rat (abs_rat x)) * nmr y * dnm y‘‘)] THEN<br />

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

REWRITE_TAC[INT_EQ_RMUL] THEN<br />

ARW_TAC[LESS_IMP_NOT_0] THEN<br />

ASM_CASES_TAC ‘‘nmr y=0‘‘ THENL<br />

[<br />

ARW_TAC[]<br />

,<br />

ARW_TAC[] THEN<br />

REWRITE_TAC[GSYM rat_equiv_def] THEN<br />

ONCE_REWRITE_TAC[RAT_EQUIV_SYM] THEN<br />

ARW_TAC[REP_ABS_EQUIV]<br />

] );<br />

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

‘‘!x y. abs_rat (mul x (rep_rat (abs_rat y))) = abs_rat (mul x y)‘‘,<br />

ONCE_REWRITE_TAC[FRAC_MULT_COMM] THEN<br />

ARW_TAC[RAT_MULT_CONG1]);<br />

val RAT_MULT_CONG =<br />

save_thm("RAT_MULT_CONG", CONJ RAT_MULT_CONG1 RAT_MULT_CONG2);<br />

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

* RAT_SUB_CONG1: thm<br />

* |- !x y. abs_rat (sub (rep_rat (abs_rat x)) y) = abs_rat (sub x y)<br />

*<br />

* RAT_SUB_CONG2: thm<br />

* |- !x y. abs_rat (sub x (rep_rat (abs_rat y))) = abs_rat (sub x y)<br />

*<br />

* RAT_SUB_CONG: thm<br />

* |- !x y. abs_rat (sub (rep_rat (abs_rat x)) y) = abs_rat (sub x y) /\<br />

* !x y. abs_rat (sub x (rep_rat (abs_rat y))) = abs_rat (sub x y)<br />

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

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

‘‘!x y. abs_rat (sub (rep_rat (abs_rat x)) y) = abs_rat (sub x y)‘‘,<br />

REWRITE_TAC[sub_def] THEN<br />

ARW_TAC[RAT_ADD_CONG]);<br />

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

‘‘!x y. abs_rat (sub x (rep_rat (abs_rat y))) = abs_rat (sub x y)‘‘,<br />

ONCE_REWRITE_TAC[SUB_AINV_THM] THEN<br />

ONCE_REWRITE_TAC[GSYM RAT_AINV_CONG] THEN<br />

ARW_TAC[RAT_SUB_CONG1] );<br />

val RAT_SUB_CONG = save_thm("RAT_SUB_CONG",<br />

CONJ RAT_SUB_CONG1 RAT_SUB_CONG2);<br />

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

* RAT_DIV_CONG1: thm

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!