formalni postupci u oblikovanju racunalnih sustavaˇ · stablo binarnog odlucivanja - brojˇ...

30
Formalni postupci u oblikovanju ra ˇ cunalnih sustava Auditorne vježbe BDD - Dijagrami binarnog odlu ˇ civanja Edgar Pek Zavod za elektroniku, mikroelektroniku, ra ˇ cunalne i inteligentne sustave Fakultet elektrotehnike i ra ˇ cunarstva Sveu ˇ cili ˇ ste u Zagrebu c ZEMRIS, FER 2006 – p. 1/30

Upload: others

Post on 15-Feb-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Formalni postupci u oblikovanjuracunalnih sustava

Auditorne vježbeBDD - Dijagrami binarnog odlu civanja

Edgar Pek

Zavod za elektroniku, mikroelektroniku, racunalne i inteligentne sustave

Fakultet elektrotehnike i racunarstva

Sveucili ste u Zagrebu

c© ZEMRIS, FER 2006 – p. 1/30

Page 2: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Pregled I

Uvod

Motivacija

Simbolicki prikaz

Dijagram binarnog odlucivanja - BDD

Stablo binarnog odlucivanja

Primjer

Broj cvorova

BDD - dijagram binarnog odlucivanja

OBDD - uredeni dijagram binarnog odlucivanja

c© ZEMRIS, FER 2006 – p. 2/30

Page 3: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Pregled II

ROBDD - reducirani uredeni dijagram binarnog odlucivanja

Primjer

Definicija

Shannonov (Booleov) teorem ekspanzije

Definicije

Zadaci

Kreiranje (RO)BDDa primjenom teorema o ekspanziji

c© ZEMRIS, FER 2006 – p. 3/30

Page 4: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Uvod - motivacija

Mnogi problemi u racunarstvu - definirani na konacnim domenama

Formalna verifikacija

Oblikovanje digitalnih sustava

Kombinatoricka optimizacija

Matematicka logika

Inteligentni sustavi

Binarnim kodiranjem elemenata iz tih domena problemi se nadaljemogu opisati pomocu operacija nad booleovim vrijednostima

c© ZEMRIS, FER 2006 – p. 4/30

Page 5: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Uvod - simbolicki prikaz

Simbolicki prikaz booleovih funkcija omogucuje rješavanjeproblema u vrlo opcenitom obliku

Rješavanje generaliziranog problema simbolickom manipulacijombooleovih funkcija - rješenja za velik broj specificnih instanciproblema

Zakljucak: efikasni postupci za prikaz i manipulaciju booleovihfunkcija mogu dati rješenja za mnoge klase kompleksnih problema

c© ZEMRIS, FER 2006 – p. 5/30

Page 6: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Uvod - simbolicki prikaz

Reducirani uredeni dijagrami binarnog odlucivanja (ROBDD)-simbolicki prikaz booleovih funkcija

Reduciranost i uredenost - Bryant(1986)

BDD - Lee(1959), Akers(1978)

Najvažnije svojstvo - kanonicnost prikaza

Operacije na booleovim funkcijama - algoritmi nad grafovima kojipredstavljaju ROBDDove

Raširena pocetna primjena: oblikovanje digitalnih sustava (CAD),verifikacija i testiranje (posebno sklopovlja)

c© ZEMRIS, FER 2006 – p. 6/30

Page 7: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Uvod - BDD

BDD - apstraktni prikaz booleovih funkcija

Poopcenje binarnih stabala odlucivanja

Ogranicenja na BDDove - uredenost i reduciranost: omogucujujednostavnije izracunavanje

ROBDD - prikladna struktura podataka za simbolicku manipulacijubooleovih funkcija

c© ZEMRIS, FER 2006 – p. 7/30

Page 8: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Stablo binarnog odlucivanja

Definicija 1. Stablo binarnog odlucivanja (engl. binary decision tree)

- je korijensko, usmjereno, aciklicko stablo koje se sastoji od dva tipa

cvorova: zavrsnih i nezavrsnihcvorova. Svaki nezavrsnicvorv je

oznacen s booleovom varijablomvar(v) i ima dva sljedbenika:low(v)

i high(v). Pri cemulow(v) odgovara dodijeljivanju varijabliv

vrijednosti0, a high(v) dodijeljivanju varijabli vrijednosti1. Svaki

zavrsnicvor je oznacen s0 ili 1

c© ZEMRIS, FER 2006 – p. 8/30

Page 9: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Stablo binarnog odlucivanja - primjer

Stablo binarnog odlucivanja ako je dana tablica istinitosti.

x1 x2 x3 f

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 0

1 1 1 11 10 0 0 0

x3

x1

x2

x3 x3

x2

x3

0

0

0

0

0

0

1

1

1

11

1

1 1 00

c© ZEMRIS, FER 2006 – p. 9/30

Page 10: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Stablo binarnog odlucivanja - vrijednost funkcije

Definicija 2. Neka je dano binarno stablo odlucivanja i neka dodijela

varijablama. Vrijednost funkcije se odreduje tako da se prati put od korijena

do cvora, na temelju grana odredenih vrijednostima varijabli.

1 10 0 0 0

x3

x1

x2

x3 x3

x2

x3

0

0

0

0

0

0

1

1

1

11

1

1 1 00

f(x1, x2, x3) =?

f(0, 0, 0) = 0

f(0, 0, 1) = 0

f(0, 1, 0) = 0

f(0, 1, 1) = 1

. . .

c© ZEMRIS, FER 2006 – p. 10/30

Page 11: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Stablo binarnog odlucivanja - broj cvorova I

Zadatak 1. Neka jeT stablo binarnog odlucivanja za booleovu

funkcijuf(x1, x2, . . . , xn) odn booleovih varijabli. Pretpostavaka je

da se svaka varijabla pojavljuje tocno jedanom na putu do zavrsnog

cvora (to vrijedi za bilo koji put stablaT ).

1. Za stablo binarnog odlucivanjaT , izracunati brojcvorova

size(T ).

2. Dokazati daT ima izracunati brojcvorova koristenjem

matematicke indukcije.

c© ZEMRIS, FER 2006 – p. 11/30

Page 12: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Stablo binarnog odlucivanja - broj cvorova II

Stablo binarnog odlucivanja je, obzirom na velicinu, slicno

tablici istinitosti. Uz booleovu funkciju f s n varijabli vrijedi:

Broj cvorova stabla binarnog odlucivanja: 2n+1 − 1

Broj zapisa u tablici istinitosti: 2n

Stablo binarnog odlucivanja sadrži odredenu zalihost koja se

može iskoristiti.

c© ZEMRIS, FER 2006 – p. 12/30

Page 13: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Binary decision diagram - BDD

Binary decision diagram - dijagram binarnog odlucivanja

Stablo binarnog odlucivanja - jednostavniji, poseban slucajdijagrama binarnog odlucivanja

Dijagram binarnog odlucivanja - moguce je da više cvorovapokazuje na isti cvor (dva ili više "roditelja" imaju identicnu"djecu")

Dva važna ogranicenja nad BDDovima koja se omogucila raširenokorištenje:

uredenje varijabli

reduciranost prikaza

c© ZEMRIS, FER 2006 – p. 13/30

Page 14: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

BDD - formalna definicija

Definicija 3. BDD (engl. binary decision diagram) je usmjerni aciklicki graf

(engl. directed acylic graph, DAG) s dvije vrstecvorova: zavrsnim i

nezavrsnim. Svaki nezavrsnicvorv oznacen je s varijablomvar(v) i ima dva

sljedbenikalow(v) i high(v). Svaki zavrsnicvor je oznacen ili s 0 ili s 1.

Svaki BDDB s korijenskimcvoromv odreduje Booleovu funkciju

fv(x1, . . . , xn) na slijedeci nacin:

1. Ako jev zavrsnicvor tada vrijedi:

(a) Akovalue(v) = 1 tadafv(x1, . . . , xn) = 1

(b) Akovalue(v) = 0 tadafv(x1, . . . , xn) = 0

2. Ako jev nezavrsnicvor svar(v) = xi tada jefv funkcija:

fv(x1, . . . , xn) = (¬xi∧flow(v)(x1, . . . , xn))∨(xi∧fhigh(v)(x1, . . . , xn))

c© ZEMRIS, FER 2006 – p. 14/30

Page 15: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Ordered Binary Decision Diagram - OBDD I

Ordered Binary Decision Diagram - uredeni dijagram binarnogodlucivanja

Uredenost - jedno od kljucnih ogranicenja koje je omoguciloalgoritamsku formulaciju

Intuitivno: varijable se duž svakog puta od cvora do lista (završnicvor) moraju pojavljivati u fiksnom rasporedu

Definicija 4. BDD je ureden ako je zadan potpuni uredaj < nad skupom

varijabli, te vrijedi: za bilo kojicvoru i za svako nezavrsno dijetev njihove

pripadne varijable moraju biti uredenevar(u) < var(v).

c© ZEMRIS, FER 2006 – p. 15/30

Page 16: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Ordered Binary Decision Diagram - OBDD II

1 10 0 0 0

x3

x1

x2

x3 x3

x2

x3

0

0

0

0

0

0

1

1

1

11

1

1 1 00

Uredenje u ovom primjeru: x1 < x2 < x3.

Opcenito, ako je stablo binarno odlucivanja uredeno broj cvorova u stabluje tocno jednak: 2n+1

− 1.

U principu se može odabrati bilo koje uredenje - to nece utjecati na rad

algoritama. U praksi je odabir uredenja kljucan za efiksnu simbolickumanipulaciju.

c© ZEMRIS, FER 2006 – p. 16/30

Page 17: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Reduced OBDD - ROBDD

Reduced OBDD - reducirani uredeni dijagram binarnog odlucivanja

Definicija 5. Tri pravila transformacije kojima se postize reduciranost (pravila

redukcije):

Uklanjanje vi sestrukih zavrsnih cvorova Svi visestruki zavrsnicvorovi s istom

oznakom (0 odn.1) svedu su na jednu instancu. Svi lukovi se presumjere u

preostale zavrsnecvorove.

Uklanjanje vi sestrukih nezavrsnih cvorova Ako za dva nezavrsnacvorau i v

vrijedi var(u) = var(v), lo(u) = lo(v) i hi(u) = hi(v) tada se jedan od ta dva

cvora uklanja i svi dolazni lukovi se preusmjere u preostalicvor.

Uklanjanje zalihosnih testova Ako za nezavrsnicvorv vrijedi lo(v) = hi(v), tada

se uklanjav i svi dolazni lukovi se preusmjeravaju ulo(v).

c© ZEMRIS, FER 2006 – p. 17/30

Page 18: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

ROBDD - primjer (I)

Reduciranje OBDDa - uklanjanje višestrukih završnih cvorova

1 10 0 0 0

x3

x1

x2

x3 x3

x2

x3

0

0

0

0

0

0

1

1

1

11

1

1 1 00

0 1

x3

x1

x2

x3 x3

x2

x3

0

00

1

1

1

1

100

010

1

c© ZEMRIS, FER 2006 – p. 18/30

Page 19: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

ROBDD - primjer (II)

Reduciranje OBDDa - uklanjanje višestrukih nezavršnih cvorova

0 1

x3

x1

x2

x3 x3

x2

x3

0

00

1

1

1

1

100

010

1

0 1

0

x3

x2

0

x2

x3

01

1

0 1

01

1

x1

c© ZEMRIS, FER 2006 – p. 19/30

Page 20: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

ROBDD - primjer (III)

Reduciranje OBDDa - uklanjanje zalihosnih testova

0 1

0

x3

x2

0

x2

x3

01

1

0 1

01

1

x1

0 1

x3

x2

0

1

x1

1

0

0

1

c© ZEMRIS, FER 2006 – p. 20/30

Page 21: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

ROBDD - zadatak

Zadatak 2. Za funkciju zadanu tablicom istinitosti nacrtati ROBDD za

uredenjex3 < x2 < x1, na temelju tablice istinitosti i primjenom pravila

redukcije.

x1 x2 x3 f

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 0

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 1

c© ZEMRIS, FER 2006 – p. 21/30

Page 22: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

ROBDD - formalna definicija

Definicija 6. Uredeni BDD je reduciran akko vrijedi:

1. Jedinstvenost (engl. uniqeness) - ne postoje razliciti cvoroviu i v koji

imaju identicna imena varijabli (var(u) = var(v)) i identicnelow(v) i

high(v) sljedbenike (ne postoje izomorfni podgrafovi):

var(u) = var(v) ∧ low(u) = low(v) ∧ high(u) = high(v) ⇒ u = v

2. Ne postojanje zalihosnih testiranja (engl. non-redundant tests) - ne

postoje nezvrsnicvoroviv koji imaju istelow i high sljedbenike

(low(v) 6= high(v)).

c© ZEMRIS, FER 2006 – p. 22/30

Page 23: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

ROBDD - kanonski prikaz

Teorem 1 (Kanonski prikaz). Za bilo koji booleovu funkcijuf : Bn → B

postoji jedinstveni reducirani uredeni BDD koji opisujef .

Kanonski prikaz booleove funkcije - najvažnija karakteristikaROBDDa

Funkcijska svojstava mogu se lako provjeriti:

Funkcija je zadovoljiva akko ROBDD funkcije nije samo završnicvor oznacen s 0.

Svaka funkcija koja je tautologija predstavljena je ROBDD kojise sastoji od jednog završnog cvora oznacenog s 1.

Funkcija je neovisna o varijabli x, ako ROBDD prikaz ne sadržicvor oznacen s x.

c© ZEMRIS, FER 2006 – p. 23/30

Page 24: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Booleove funkcije

Booleova formula - niz formiran prema pravilima

Booleova funkcija - evaluacija booleove formule

f : Bn → B, B je booleova algebra (npr. B = {0, 1})

Beskonacno mnogo booleovih formula opisuje istu booleovufunkciju

Broj razlicith booleovih funkcija: |B|2n

.

c© ZEMRIS, FER 2006 – p. 24/30

Page 25: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Shannonov (Booleov) teorem ekspanzije I

Definicija 7 (Kofaktor). Neka jef : Bn → B booleova funkcija, a

x = (x1, x2, . . . , xn) su varijable u domeni odf . Kofaktorfa s literalom

a = xi ili a = xi je:

fxi(x1, . . . , xn) = f(x1, . . . , xi−1, 1, xi+1, . . . , xn)

fxi(x1, . . . , xn) = f(x1, . . . , xi−1, 0, xi+1, . . . , xn)

Funkcije fxii fxi

se još nazivaju i restrikcija funkcije f , i oznacavaju sf |xi=k.

c© ZEMRIS, FER 2006 – p. 25/30

Page 26: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Shannonov (Booleov) teorem ekspanzije II

Restrikcije omogucuju obavljanje rekurzija na booleovim formulama,rastavljajuci ih u jednostavnije booleove formule.

Teorem 2 (Shannonov (Booleov) teorem ekspanzije).Ako jef : Bn → B

booleova funkcija, tada vrijedi:

f(x1, . . . xn) = xi · f(x1, . . . , 1, . . . , xn) + xi · f(x1, . . . , 0, . . . xn)

[xi + f(x1, . . . , 1, . . . , xn)] · [xi + f(x1, . . . , 0, . . . , xn)]

za sve(x1, . . . , xn) ∈ Bn.

c© ZEMRIS, FER 2006 – p. 26/30

Page 27: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Teorem ekspanzije - zadaci I

Zadatak 3. Primjeniti oba oblika teorema o ekspanziji na funkciju:

f = x1x2x3 + x2(x1 + x3) obzirom na varijablux1 .

Zadatak 4. Primjeniti oba oblika teorema o ekspanziji na funkcije:

1. f = wxz + xyz + wyz + xy + wxy

2. f = y(xz + yz) + xz + wy

obzirom na varijablu y.

Zadatak 5. Primjenom teorema o ekspanziji (nad lijevom stranom) dokazati

da svaku booleovu funkcijuf vrijedi:

f(x + y) + f(xy) = f(x) + f(y)

c© ZEMRIS, FER 2006 – p. 27/30

Page 28: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Teorem ekspanzije - zadaci II

Zadatak 6. Primjenom teorema o ekspanziji (nad lijevom stranom) dokazati

da svaku booleovu funkcijuf vrijedi:

f(x + y) + f(xy) = f(0) + f(1)

Zadatak 7. Koristeci teorem o ekspanziji nad najzastupljenijom varijablom

funkcijuf pretvori u sumu mintermi.

f(x, y, z, w) = (y + z)(w + x + z)(w + x + z)(w + y + z)

c© ZEMRIS, FER 2006 – p. 28/30

Page 29: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Kreiranje BDDa primjenom teorema o ekspanziji

Temelji se na rekurzivnoj primjeni teorema o ekspanziji.

f

xi

1 0

fxifxi

Konstrukcija BDD pocinje od varijable koja je najviša u uredenju (vršnavarijabla). Postupak se rekurzivno nastavlja za svaku restrikcijuinicijalne funkcije.

Ako se oba kofaktora (za bilo koju restrikciju) jednaka tada restrikcijane ovisi o varijabli po kojoj je obavljena ekspanzija.

c© ZEMRIS, FER 2006 – p. 29/30

Page 30: Formalni postupci u oblikovanju racunalnih sustavaˇ · Stablo binarnog odlucivanja - brojˇ cvorova IIˇ Stablo binarnog odlucivanja je, obzirom na veliˇ cinu, sliˇ cnoˇ tablici

Kreiranje BDDa - zadaci

Zadatak 8. Primjenom teorema o ekspanziji nacrtati BDD za funkciju

f = abc + bd + cd uz uredenje:b ≤ c ≤ d ≤ a. Provjeriti da li BDD prikaz

predstavlja funkcijuf .

Zadatak 9. Primjenom teorema o ekspanziji nacrtati BDD za funkciju

f = abc + bcd za uredenja:

1. b ≤ c ≤ a ≤ d

2. a ≤ d ≤ b ≤ c

c© ZEMRIS, FER 2006 – p. 30/30