Boole-algebrarobu/bmc/3_boole.pdf · Boole-algebra A legalább két elemet tartalmazó )(A,∧,∨...

Preview:

Citation preview

Boole-algebra

Háló

A háló egy ),,( ∨∧A algebrai struktúra, ahol: – ∧ és ∨ bináris műveletek A-n – ),( ∧A kommutatív félcsoport – ),( ∨A kommutatív félcsoport – xyxxxyxx =∧∨=∨∧ )(;)( (elnyelési tulajdonság)

),,( ∨∧A egységelemes háló, ha ),( ∧A egységelemes félcsoport – egység-eleme 1 a háló egységeleme: xx =∧1

),,( ∨∧A zéruselemes háló, ha ),( ∨A egységelemes félcsoport – egység-eleme 0 a háló zéruseleme: xx =∨ 0

),,( ∨∧A disztributív háló, ha valamelyik művelet disztributív a másikra nézve: – )()()( zxyxzyx ∧∨∧=∨∧ vagy )()()( zxyxzyx ∨∧∨=∧∨

Tétel: Egy ),,( ∨∧A disztributív hálóban mindkét művelet disztributív a másikra vonatkozólag.

Komplementum Legyen ),,( ∨∧A zéruselemes és egységelemes háló. Az Aa ∈ az Aa ∈ komplementuma, ha 0=∧ aa és 1=∨ aa

),,( ∨∧A komplementumos háló, ha minden Aa ∈ -nak van komplementuma. Tétel. Ha az ),,( ∨∧A zéruselemes és egységelemes háló disztributív, akkor tetszőleges Aa ∈ elemnek legfeljebb egy komplementuma lehet.

Boole-algebra A legalább két elemet tartalmazó ),,( ∨∧A zéruselemes és egységelemes háló Boole-algebra, ha disztributív és komplementumos, azaz:

legalább két elem: 01,0,1 ≠∈∈ AA kommutativitás: abba ∧=∧ abba ∨=∨ asszociativitás: cbacba ∧∧=∧∧ )()( cbacba ∨∨=∨∨ )()( elnyelés (abszorbció): abaa =∨∧ )( abaa =∧∨ )( egységelem, zéruselem: aa =∧1 aa =∨ 0 disztributivitás: )()()( cabacba ∧∨∧=∨∧ )()()( cabacba ∨∧∨=∧∨ komplementum: AaAa ∈∃∈∀ : 0=∧ aa 1=∨ aa

Boole-algebra

Számítási szabályok: aa = 10 = 01 = 00 =∧a 11 =∨a de Morgan összefüggések: baba ∨=∧ baba ∧=∨ idempotencia: aaa =∧ aaa =∨

Ítéletlogika

Állítás (ítélet) egy kijelentő mondat, melyről eldönthető, hogy igaz vagy hamis. igaz, jelölhetjük 1-gyel Egy kijelentés logikai értéke:

hamis, jelölhetjük 0-val Legyen B2 a logikai értékek halmaza, azaz }1,0{2 =B Logikai művelet: ítéleteken végzett művelet, az eredményül kapott állítás logikai értéke csak a komponenesek logikai értékétől függ.

Logikai műveletek (1)

A negáció (tagadás, NEM) egyváltozós logikai művelet. Jelölése: ¬ ; igazságtáblája:

A ¬A1 0 0 1

A konjunkció (ÉS) kétváltozós logikai művelet. Jelölése: ∧ ; igazságtáblája:

A B A B∧ 0 0 0 0 1 0 1 0 0 1 1 1

A B∧ pontosan akkor igaz, ha mindkét állítás igaz.

Logikai műveletek (2) A diszjunkció (VAGY) kétváltozós logikai művelet. Jelölése: ∨ ; igazságtáblája:

A B A B∨ 0 0 0 0 1 1 1 0 1 1 1 1

A B∨ pontosan akkor hamis, ha mindkét állítás hamis. A kizáró vagy (xor) kétváltozós logikai művelet. Jelölése: ⊕ ; igazságtáblája:

A B BA ⊕ 0 0 0 0 1 1 1 0 1 1 1 0

Logikai műveletek (3)

Az implikáció kétváltozós logikai művelet. Jelölése: ⊃ ; igazságtáblája: A B BA ⊃

0 0 1 0 1 1 1 0 0 1 1 1

Az ekvivalencia kétváltozós logikai művelet. Jelölése: ≡ ; igazságtáblája:

A B BA ≡ 0 0 1 0 1 0 1 0 0 1 1 1

Logikai értékek (B2,∧,∨) hálója

Legyen 0 komplementuma 10 =¬ , 1 komplementuma 01 =¬

),,,( 2 ¬∨∧B Boole-algebra (kielégíti a Boole-algebra axiómáit)

Boole-függvény Jelölje 2222 BBBBn ×××= K Descartes szorzatot. ),,,(; 212 n

n xxxxBx K=∈ Boole-függvény: 22: BBf n →

Megadható értéktáblázattal, ahol 12,0,2 −=∈ ni iBy :

1x 2x K 1−nx nx )(xf0 0 K 0 0 0y 0 0 K 0 1 1y 0 0 K 1 0 2y 0 0 K 1 1 3y K K K K K K 1 1 K 1 0

22 −ny 1 1 K 1 1

12 −ny

Boole-függvény

Megadható logikai kifejezéssel is.

Tetszőleges igazságfüggvény kifejezhető a három logikai alapművelet segítségével.

Igazságtáblázattal megadott Boole-függvényt át tudunk alakítani kifejezéssé az alábbi szabályok szerint: 1. A táblázat minden olyan sorára, amelyre 1=iy egy konjunktív tagot

képezünk. Ezeket a tagokat a diszjunkció művelettel kapcsoljuk össze. 2. Egy konjunktív tagban kötelezően szerepel az összes változó. Ezeket az

állított vagy tagadott változókat a konjunkció műveletével kapcsoljuk össze.

3. Ha az i. sorban valamely változó értéke 0 akkor tagadva, egyébként tagadás nélkül szerepel a konjunktív tagban.

Teljes diszjunktív normál forma

t.d.n.f. – Elemi konjunkciók diszjunkciója – Nincs két azonos konjunktív tag – Minden konjunktív tag tartalmazza állítva vagy tagadva az összes változót Igazságtáblázatból kapott logikai kifejezés t.d.n.f.-ban van.

Példa

Példa háromváltozós függvényre: a b c f(a,b,c) 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 1 0

.)()()(),,(

cababccabcbacbacbacbaf

¬∨¬∨¬¬==¬∧∧∨∧∧¬∨¬∧∧¬=

Igazságfüggvények egyszerűsítése

Alkalmazzuk a Boole-algebra axiómáit és a számítási szabályokat. Példa:

cbabcbabcbaaccabcabcababccabcababccabcbaf

¬∨¬=¬∨¬=¬∨¬∨∨¬¬==¬∨¬¬∨¬∨¬¬=¬∨¬∨¬¬=

11)()(),,(

Különböző táblázatos módszerek léteznek.

Logikai áramkörök • „ÉS” kapu

A konjunkciót valósítja meg. Több bemenete is lehet. A kimeneten akkor és csakis akkor van impulzus, ha mindenik

bemeneten van impulzus. Fizikailag két sorosan kötött kapcsolónak felel meg:

a b

És

a

b

a·b

Logikai áramkörök • „VAGY” kapu

A diszjunkciót valósítja meg. Szintén több bemenete lehet. A kimeneten akkor és csakis akkor van impulzus, ha legalább egy

bemeneten van impulzus. Fizikailag két párhuzamosan kötött kapcsolónak felel meg:

a

b

Vagy

a

b

a·b

Logikai áramkörök

• „NEM” kapu (inverter)

A negációt valósítja meg. Csak egy bemenettel rendelkezhet. A kimeneten akkor és csakis akkor van impulzus, ha a bemeneten nincs. Ezeket az elemeket összevontan is alkalmazhatjuk.

Nem a ā

Logikai áramkörök

• „NAND” kapu (Nem és)

• „XOR” kapu

• „NOR” kapu (Nem vagy)

Logikai áramkörök

)(),,( cabcabbcacbacbaf ∨=∨∨= Egyszerűsítés előtt:

Logikai áramkörök

)(),,( cabcabbcacbacbaf ∨=∨∨= Egyszerűsítés után:

b

a

c f (a,b,c)

Logikai áramkörök Félösszeadó Teljes összeadó

B S

C

A

B

Cbe S A

Cki

FAab

s c

TAab

sck cb

Logikai áramkörök Két byte összeadása

FA TA

TA

TA

TA

TA

TA

TA

a0

a1

a2

a3

a4

a5

a6

a7

b0

b1

b2

b3

b4

b5

b6

b7

s0 s1

s2

s3

s4

s5

s6

s7 CY