You are on page 1of 29

Predavanje 3

Logicke kocke, Veitchovi dijagrami

Dinko Osmankovic
Kurs: Matemati
cka logika i teorija izra
cunljivosti
Ak. godina: 2015./2016.

etf-logo.png

Sadrzaj predavanja

Booleov prostor
Reprezentacija logi
ckih funkcija logi
ckim hiperkockama
Operacije nad logi
ckim kockama

Veitchovi dijagrami i K-mape


Planarizacija logi
ckih kocki
Popunjavanje Veitchovih dijagrama
Nala
zenje MDNF pomo
cu Veitchovih dijagrama
Nala
zenje MKNF pomo
cu Veitchovih dijagrama
Nala
zenje EXDNF pomo
cu Veitchovih dijagrama
Uvjetna minimizacija
Minimizacija izraza sa 5 i vise varijabli

etf-logo.png

Vrijednosti logickih funkcija u prostoru 1

Domen logicke funkcije je konacan i diskretan skup (vrhovi


n-kocke):
0 - kocka
1 - kocka

2 - kocka

01

11

00

10

etf-logo.png

Vrijednosti logickih funkcija u prostoru 2


1101

1111

1001

1011

0101

011

0001

010

0111

111
0011

110
0100

0000

001

000

101

0110

0010

1100

1110

100
1000

1010

etf-logo.png

Minterme, implikante, proste implikante kao


logicke hiperkocke
Definicija
Minterma predstavlja tacku u prostoru B n .
Definicija
Implikanta predstavlja bilo koju kocku dimenzija n u prostoru B n .
Primjer
U prostoru B 3 (funkcija sa 3 varijable) implikante mogu biti 0-kocke
(minterma - ABC ), 1-kocke (implikanta sa dva literala - AB) i 2-kocke
(implikanta sa jednim literalom - C ).
Definicija
Prosta implikanta je kocka najvece moguce dimenzije, a koja pokriva
odredene minterme. Ne postoji kocka vece dimenzije, a koja sadrzi
razmatranu kocku (prostu implikantu).

etf-logo.png

Reprezentacija SDNF-a u prostoru Bn


SDNF se u prostoru B n predstavlja n-kockom sa oznacenim
vrhovima kocke (minterme) koji tvore SDNF.
Primjer:
f = A B C A BC ABC ABC ABC
011

010

111

110

001

000

101

100

etf-logo.png

Reprezentacija prostih implikanti u prostoru Bn

AB C
X

A BC
X
X

00-01
1-1
11-

ABC
X
X

ABC

ABC

X
X

etf-logo.png

Operatori u prostoru Bn

Ekspanzija - operator koji prosiruje trenutno pokrivanje sa pokrivanjem koje je


minimalno s obzirom na pojedina
cnu mintermu. Svaka ne-prosta implikanta se
prosiruje do proste (zamjenjuje se implikantom koja je sadr
zava, a sve ostale
implikante koje su pokrivene novom implikantom se odbacuju). Najbolje je
krenuti sa mintermama koje pokriva najmanji broj prostih implikanti.
Redukcija - operator pretvorbe pokrivanja u ne-prosto pokrivanje iste
kardinalnosti. Ovaj operator pokusava da zamijeni implikantu nekom drugom
koja je sadr
zana u njoj pod uvijetom da je novo pokrivanje ispravno.
Preoblikovanje - operator koji modificira pokrivanje zadr
zavaju
ci kardinalnost.
Implikante se mijenjaju u parovima; jedna implikanta se prosiruje, a druga
reducira uz uvjet da je rezultiraju
ce pokrivanje ispravno.
Neredundantno pokrivanje - operator koji pokrivanje nastoji u
ciniti
neredundantnim. Minimalan podskup implikanti se odabira na na
cin da ni jedna
implikanta u tom podskupu nije pokrivena preostalima iz datog podskupa.

etf-logo.png

Operatori u prostoru Bn - primjer

011

010

111

000

010

110

001

011

101

100

111

110

001

000

101

100

etf-logo.png

Osnovni heuristicki algoritmi minimizacije

PRESTO - primijeniti operator ekspanzije od pocetnog pokrivanja


koje se sastoji iskljucivo od mintermi.
MINI - iterativno primijenjivati operatore ekspanzije, redukcije i
preoblikovanja dok se ne dostigne lokalni minimum.
ESPRESSO - iterativno primijenjuje operatore ekspanzije, redukcije,
preoblikovanja i neredundantnog pokrivanja na modificiranoj
funkciji.

etf-logo.png

Primjer - MINI algoritam


Prva iteracija:

f = {0000, 0010, 0100,


0110, 1000, 1010,
0101, 0111, 1001,
1011, 1101}

0 0
0 0
01
10
1 01
101

Ekspanzija: 1101 (nema odbacivanja)


0000 (odbacuju se 0010, 0100, 0110)
1000 (odbacuje se 1010)
0101 (odbacuje se 0111)
1001 (odbacuje se 1011)
Pokrivanje je {, , , , }
Redukcija: NIL, = 0 0 = 00 0
(pokriveno sa ), = 1 01 = 1101
, ,
Pokrivanje je {,
}
] [ = 0 0, = 10 1]
Preoblikovanje: [,

Pokrivanje je {, , ,
}
Druga iteracija:
Ekspanzija:

Pokrivanje je {, , , }
...
etf-logo.png

Planarizacija logickih kocki 1


01

11

00

10

011

010

111

110

001

000

101

100

Zbog rotacijske i reflektivne simetrije kocke moguce je i drugacije sloziti


minterme u Veitchov dijagram (Karnaughovu mapu)!
etf-logo.png

Planarizacija logickih kocki 2


1101

1111

1001

1011

0101

0001

0111

0011

0100

0000

0110

0010

1100

1000

wikipedia

1110

1010

etf-logo.png

Popunjavanje Veitchovih dijagrama

Veitchov dijagram se popunjava na nacin da se upisuje vrijednost na


pozicije 1-mintermi, a za 0-minterme se ne upisuje nikakva vrijednost
(zbog preglednosti).

etf-logo.png

Popunjavanje Veitchovih dijagrama - primjer

Popuniti Veitchov dijagram za funkciju


f = A B C A BC ABC ABC ABC
B
A

etf-logo.png

Minimizacija logickih funkcija primjenom


Veitchovih dijagrama
Pojmovi:
par - 1-kocka
cetvorka - 2-kocka
osmorka - 3-kocka ...
011

010

111

110

001

000

101

100

etf-logo.png

Minimizacija logickih funkcija primjenom


Veitchovih dijagrama - primjer 1
Odrediti
W MDNF za funkciju
f = (m1 , m2 , m3 , m4 , m6 , m7 , m8 , m9 , m10 , m11 , m12 , m14 , m15 )

fMDNF = C BD AD BD
Najbolje je krenuti od esencijalnih kontura (one koje sadrze 1-minterme
koje se mogu pokriti na samo jedan nacin).
etf-logo.png

Minimizacija logickih funkcija primjenom


Veitchovih dijagrama - primjer 2

Odrediti MDNF za funkciju zadanu Veitchovim dijagramom:

fMDNF = BD ABC ABC AC D ACD - nije minimalno pokrivanje


fMDNF = ABC ABC AC D ACD

etf-logo.png

Minimizacija logickih funkcija primjenom


Veitchovih dijagrama - primjer 3

Odrediti MDNF za funkciju zadanu Veitchovim dijagramom:

etf-logo.png

Nalazenje MKNF pomocu Veitchovih dijagrama

Postupak je analogan postupku nalazenja MDNF pomocu


Veitchovih dijagrama
Veitchov dijagram se popunjava sa (0-minterme), te se vrsi
pokrivanje tih polja
Konture odgovaraju prostim konsekvencama
Varijable koje formiraju konsekvencu su negirane u odnosu na one
koje formiraju implikantu

etf-logo.png

Minimizacija logickih funkcija primjenom


Veitchovih dijagrama - primjer 1 (MKNF)
Odrediti
W MDNF za funkciju
fV= (m1 , m2 , m3 , m4 , m6 , m7 , m8 , m9 , m10 , m11 , m12 , m14 , m15 ) =
(M0 , M5 , M13 )

fMKNF = (B C D)(A B C D)
Najbolje je krenuti od esencijalnih kontura (one koje sadrze polja koja
se mogu pokriti na samo jedan nacin).

etf-logo.png

Nalazenje EXDNF pomocu Veitchovih dijagrama

Izrazito je neintuitivan i zahtijeva mnogo opreznosti


Istovremeno se pokrivaju i i polja
Svako polje je potrebno pokriti sa neparnim brojem kontura, a
svako polje sa parnim brojem kontura
Ako dobiveno pokrivanje ima minimalnu kardinalnost, onda je ono
minimalno

etf-logo.png

Nalazenje EXDNF pomocu Veitchovih dijagrama primjer


Naci minimalnu EXDNF za f = ABC ABC AC D ACD.

fMEXDNF = AB BC AD CD
etf-logo.png

Uvjetna minimizacija

Cesto
se prilikom modeliranja dogada da se neke kombinacija
vrijednosti varijabli nikad ne mogu pojaviti (restrikcija na domen
funkcije)
W
W
Logicka funkcija se moze prosiriti na f = mi dj
i

Minterme oznacene sa di se nazivaju zabranjenim kombinacijama


(nebitnim za minimizaciju, en. dont care set) i u tablicama istine
se oznacavaju sa
Po potrebi mogu preuzeti vrijednost ili u postupku minimizacije

etf-logo.png

Uvjetna minimizacija - primjer

Minimizirati funkciju f = m(0, 1, 6) d(2, 4, 7)

fMDNF = A B ABC
U QM algoritmu (ali i drugim) se zabranjene kombinacije tretiraju kao ,
ali se takve minterme ne koriste u tablici pokrivanja.

etf-logo.png

Minimizacija izraza sa 5 varijabli

Shannon-Booleovom ekpanzijom je moguce podijeliti funkciju sa 5


varijabli na disjunkciju dvije funkcije sa 4 varijable:
f (A, B, C , D, E ) = EfE E fE
Minimizacija funkcije f se moze shvatiti kao minimizacija njenih
kofaktora neovisno
B

v25 v29 v21 v17 v24 v28 v20 v16


v27 v31 v23 v19 v26 v30 v22 v18
v11 v15 v7 v3 v10 v14 v6 v2
v9 v13 v5 v1 v8 v12 v4 v0
C
E

etf-logo.png

Minimizacija izraza sa 6 i vise varijabli varijabli

Identicna strategija sa dva spregnuta Veitchova dijagrama se moze


primijeniti
Dijagrami su prakticno beskorisni za funkcije sa 6 varijabli

etf-logo.png

Minimizacija izraza sa 6 i vise varijabli varijabli

http://www.mathematik.uni-marburg.de/~ thormae/lectures/ti1/code/karnaughmap/
etf-logo.png

Q&A

You might also like