You are on page 1of 11

A logikai szintzis egy clszer formalizmusa

Kocka elemek
A kocka-elemek halmaza : H = {0, 1, x) A kocka-elemek kztti mveletek eredmnyeinek halmaza: H = {0, 1, x, y, z, w}

Mveletek kocka elemek kztt


A kocka-elemek kztt belemi mveleteket definilunk. A mveletek eredmnyei olyan elemek, amelyek egy bvtett H halmazt alkotnak. Ezek a mveletek merben technikai, nem pedig elvi jellegek. Metszet (Intersection) (IS)

Konszenzus (CO)

les szorzat (SP)

Kockk s kapcsolatuk a logikai termekkel


Egy n-vltozs kocka egy n hosszsg, kocka-elemekbl ll vektor. Pldul az (1 0 X 1) vektor egy 4 vltozs kocka. Minden n vltozs kockhoz egy n-vltozs logikai szorzat-term rendelhet, ha a vltozk sorrendjt a kocka-elemek pozcijhoz rgztjk. Ha a logikai vltozk sorrendje A, B, C, D, akkor

P (1 0 X 1) = A B D

A transzformcis szably nmagrt beszl: ahol a kockaelem 1, a megfelel vltoz ponltan, ahol pedig 0, ott negltan szerepel a logikai termben. Ha a kocka-elem X, a megfelel logikai vltoz nem szerepel a termben. A kockk halmazt kt kitntetett kockval egsztjk ki. Az egyik az res kocka (nc), a msik pedig a teli kocka (fc). Az res kockt nem lehet kocka-elemekkel kifejezni, de transzformlt alakja az azonosan 0 rtk logikai fggvnyknt rtelmezhet. A teli kocka csupa X elembl ll, s az azonosan 1 rtk logikai fggvnynek felel meg. P(nc) = 0, P(fc) = P(XX..X) = 1 Ahogyan a termeket az u.n. Karnaugh-tbln szemlltethetjk, ugyangy igaz ez a kockkra is. Pldnkon egy ngyvltozs K-tln lthat egy kocka, annak algebrai kifejezsvel is.

A lefedsi , illetve az implikcis relcik


Ha a s b kt kocka, akkor a b (a impliklja b-t) akkor s csak akkor, ha a csak azokban a pozcikban klnbzik b-tl, ahol az X-t tartalmaz. Ha a b, akkor erre azt is mondjuk, hogy b fedi a-t. Az implikcis relci reflexv, anti-szimmetrikus s tranzitv. Az ilyen tulajdonsgokkal rendelkez relci a halmazt, amelyen rtelmezzk, rszben-rendezi. Az n-es kockk halmaza az implikcival hlt alkot. A hlt n = 3 esetn a kvetkez bra szemllteti:

Mveletek kockk kztt


A kockk kztti mveleteknek van logikai megfeleljk, ezrt a mveletek formlis definciin tlmenen bemutatjuk a megfelel termek kztti logikai mveleteket is. Kt kocka metszete (Intersection) c = a[IS]b Ha a = a(1), . . .a(i), . . . .a(n), b = b(1),. . .b(i),. . .b(n), akkor a c = c(1), . . .c(i). . .c(n) elemeire igaz, hogy c = nc, (nulla-kocka) ha brmely i esetn a(i)[IS]b(i) = w; egybknt: c = a(1)[IS]b(1), . . .a(i)[IS]b(i), . . .a(n)[IS]b(n)) Fennll a kvetkez azonossg : P( a[IS]b) = P(a) . P(b) A metszet lefedi mindazokat a nulladrend kockkat, amelyeket mindkt kocka lefed. K(c)=K(a[IS]b) = K(a) K(b) Plda: a b 0 0 0 c 1 0 W nc X 1 1 X X X c a b X 0 0 0 0 X 0 0 1 X 1 1 1 X 1 1

A kockk kztti metszet logikai formja teht azonos a kockknak megfelel termek logikai szorzatval. A K-tbln klnsen szemlletes a kockk metszete.

Konszenzus

(Consense) c = a[CO]b Csak akkor van definilva, ha egy s csakis egy i indexre a(i)[CO]b(i) = y. Ilyenkor: Ha a = a(1), . . .a(i), . . . .a(n) , b = b(1),. . .b(i),. . .b(n) , akkor a c = c(1), . . .c(i). . .c(n) elemeire igaz, hogy c1 = m(a(1)[CO]b(1)) . ci = m( a(i)[CO]b(i)) = X .. cn = m(a(n)[CO]b(n)),

ahol m(0) = 0, m(1) = 1 m(X) = m(y) = X Kt kocka konszenzusval ellltott kocka lefedi mindazokat a nulladrend kockkat, amelyeket a kt kocka lefed, de nem fed le egyetlen olyan kockt sem, amelyet valamelyik kocka ne fedne. K(c) = K(a[CO]b) = K(a) U K(b)

Pldk: a b 0 0 0 c 0 1 0 Y X X 1 1 1 X X X X c a b 0 0 0 1 0 Y 0 1 Y X 1 1

Nincs rtelmezve

les szorzat (Sharp product) A kockk kztti les szorzat mveletnek eredmnye nem kocka, hanem kockk egy halmaza, azaz a megfelel mret kockk teljes halmaznak egy rszhalma. A mvelet vgrehajtsa: C = a[SP]b Ha a = a(1), . . .a(i), . . . .a(n) , b = b(1),. . .b(i),. . .b(n) , akkor az eredmny egy C kocka-halmaz, amelynek kockira igaz: C = a, ha brmely k indexre a(k)[SP]b(k) = y, C = nc, ha minden egyes indexre a(k)[SP]b(k) = z, egybknt pedig C = UNIO i = 1- N-ig { a(1), a(2), . . .a(i-1), (i), a(i+1), . . . a(n)} ahol (i) = a(i)[SP] b(i), s amennyiben (i) = z, az i. kockt trlni kell, ha pedig (i) = 1 vagy 0, akkor ezek szerepelnek.

A kockk kztti les szorzat logikai algebrai, azaz P transzformcis alakjaira vonatkoz azonossg is felrhat: P (a [ SP ] b) = P (a ) . P(b) A lefedett nulladrend kockkkal kapcsolatos sszefggs is megadhat. Eszerint kt kocka les szorzata olyan kocka-halmaz, amelynek kocki lefedik a baloldali kocka ltal lefedett nulladrend kockkat azok kivtelvel, amelyeket a jobboldali kocka is lefed. K(a[SP]b) = K(a) K(a)K(b) Fontos, hogy amennyiben a baloldali kocka teli kocka, azaz cf, az les szorzat a jobboldali kocka ltal lefedett nulladrend kockk kivtelvel minden nulladrend kockt tartalmaz, teht a megfelel logikai term neglsnak felel meg.

P (cf [ SP ]c) = P(c)

Mutassuk meg kt pldn kt kocka les szorzatnak kiszmtst. Az els feladat kiszmtsa a baloldali kockt eredmnyezi: (01XX) [SP] (001X) = (01XX), mert a msodik pozciban lv elemek les szorzata y. msodik feladat a kvetkez : (0XXX) [SP] (0101).

Nincs semelyik indexnl y eredmny elem les-szorzat. Van az els indexre viszont egy z eredmny elem les-szorzat, teht az els (zXXX) kockt trljk. A msodik, harmadik negyedik indexre kapott kockk : {(00XX), 0X1X), 0XX0)}.

Plda: a b 0 0 Z c 0 1 0 Y 1 X 1 0 X X X Z X a b 0 0 Z i=1 Z i=2 0 i=3 0 i=4 0 c 0 0 0 X 1 0 X 0 X X 0 X X X 0 1 X X 1 X X 1 X X 1 0 X X X 0 X X 0 trls

Unris s binris mveletek kocka halmazok kztt


Egyszersts (Subsuming) Ha C = {c1, c2,. . .ck} kocka halmaz, akkor C = SU(C), olymdon, hogy - Ha ci eleme C-nek, s nincs olyan cj C-ben, amelyre ci cj , akkor ci eleme lesz C-nek is. - Egybknt ci-t trljk Plda c1 s c2 kockra SU mvelet: c1 c2 SU 0 0 0 1 1 1 X 1 X X X X

P(c1) = AB P(c2) kocka: ABC

A K-tbln ez megfelel a kockk tbb kzl a kisebbek elhagysnak, teht a legnagyobbak kivlasztsnak.

Metszet (Intersection, IS) Ha C1 s C2 kt kocka-halmaz, akkor C3 = C1[IS]C2 a kt kocka-halmaz metszete, s ez elllthat a kvetkez, mdon : C3 = SU( U c C1 ( U c C2 ( c[IS]c))) A kockahalmazok kztti metszet P transzformltja a P transzformltak kztti logikai metszetnek felel meg, azaz P(C1[IS]C2) = P(C1) .P(C2)

les szorzat (SP) Ha C1 s C2 kt kocka-halmaz, akkor C3 = C1[SP]C2 a kt kocka-halmaz les szorzata, s ez elllthat a kvetkez, mdon : C3 = SU( Uc C1(c[SP]C2)) ahol a c kocka s a C2 kockahalmaz les szorzata a kvetkez mdon ll ssze, amennyiben C2 = {c21, c22, . . . c2k} : c[SP]C2 = SU((. . .((c[SP]c21)[SP]c22)[SP]. . .[SP]c2k)) A kocka-halmazok kztti les szorzst teht gy vgezzk el, hogy a baloldali halmaz els kockjval les-szorozzuk a jobboldal kockahalmaz els elemt, majd az eredmnnyel tovbb szorozzuk a msodik elemet, s gy tovbb. Ha ilyen mdon vgig haladtunk a jobboldali halmazon, a felesleges kockkat elhagyjuk a SU unris halmazmvelet segtsgvel. Ezutn vesszk a baloldali halmaz msodik kockjt, s az eljrst megismteljk vele. Miutn vgig haladtunk a baloldali kocka-halmazon, az gy kapott kockahalmazt egyszerstjk az SU unris halmazmvelet segtsgvel. Az les szorzat tulajdonsgai Az les szorzatra fennll a kvetkez tulajdonsg: K(C1[SP]C2) = K(C1) K(C1) K(C2) A teli kocka, s egy C kocka-halmaz les szorzatra pedig a kvetkez azonossg rvnyes:

P (cf [ SP ]C ) = P (C ) Ha egy fggvnyt neglunk, akkor annak kocks reprezentcijt balrl les-szorozzuk a teli kockval, majd vesszk annak P-transzformltjt.

Konszenzus (CO) C = CO(C), azaz a C kocka-halmaz unris-konszenzusa azon c kockkbl ll, amelyek a C kockinak pron knti konszenzusval

Logikai fggvnyek egyszerstse kocka formalizmussal


Prmimpliknsok generlsa iteratv konszenzus eljrssal Legyen C = C0 U DC, Ahol C0 azon kockk egy kezdeti lefedse, amelyeknl a logikai fggvny rtke 1, DC pedig azok, amelyeknl a fggvny rtke kzmbs. 1. lps : legyen C = SU(C U C[CO]C) 2. lps : Ha C s C azonos, menj a 3. lpsre. Ha nem, ismteld a 2. lpst C = C helyettests utn 3. lps : lltsd ssze a Z prmimplikns halmazt azon C kockkbl, amelyek metszete a C0 halmazzal nem az res kockahalmaz.

A redundns prmimpliknsok trlse A kocks formalizmus erre is szolgltat megfelel algoritmust.

You might also like