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.

244<br />

UNDISCH_TAC ‘‘is_gcd m (SUC (m’ * 2)) (gcd m (SUC (m’ * 2)))‘‘ THEN<br />

REWRITE_TAC[is_gcd_def] THEN<br />

ARW_TAC[]<br />

] );<br />

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

‘‘!x y. ODD x /\ EVEN y ==> (gcd x y = gcd x (y DIV 2))‘‘,<br />

ONCE_REWRITE_TAC[GCD_SYM] THEN<br />

ARW_TAC[BGCD_EVEN_ODD] );<br />

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

‘‘!x y. ODD x /\ ODD y /\ (x=y) ==> (gcd x y = x)‘‘,<br />

REPEAT STRIP_TAC THEN<br />

ARW_TAC[GCD_REF] );<br />

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

‘‘!x y. ODD x /\ ODD y /\ y (gcd x y = gcd (x-y) y)‘‘,<br />

REPEAT STRIP_TAC THEN<br />

ASSUME_TAC (SPEC ‘‘x-y‘‘ (SPEC ‘‘y:num‘‘ GCD_ADD_L)) THEN<br />

UNDISCH_TAC ‘‘gcd (y + (x - y)) y = gcd y (x - y)‘‘ THEN<br />

ONCE_REWRITE_TAC[ADD_SYM] THEN<br />

ASSUME_TAC (UNDISCH_ALL (prove(‘‘y < x ==> ybool, out:num->bool) =<br />

!t. out t = ~inp t‘;<br />

val MUX_def = Define ‘MUX(sw:num->bool,in1:num->num,in2:num->num,out:num->num) =<br />

!t. out t = if sw t then in1 t else in2 t‘;<br />

val OR_def = Define ‘OR(in1:num->bool,in2:num->bool,out:num->bool) =<br />

!t. out t = (in1 t) \/ (in2 t)‘;<br />

val AND_def = Define ‘AND(in1:num->bool,in2:num->bool,out:num->bool) =<br />

!t. out t = (in1 t) /\ (in2 t)‘;<br />

val COUNTER_def = Define ‘COUNTER(inp:num->bool,out:num->num) =<br />

!t. out t = if (t=0) then 0 else<br />

if (inp t) then (out(t-1)+1) else out(t-1)‘;<br />

val REG_def = Define ‘REG(inp:num->num,out:num->num,init:num) =<br />

!t. out t = if (t=0) then init else inp (t-1)‘;<br />

val SHIFT_def = Define ‘SHIFT(inp:num->num, out:num->num) =<br />

!t. out t = (inp t) DIV 2‘;

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!