Algebra Boole`a

Transkrypt

Algebra Boole`a
Materiał dydaktyczny pomocniczy do wykładu Informatyka
Uwagi o algebrze Boole'a
Def. 1. (algebra Boole'a).
Algebrą Boole'a B = [A, ∧, ∨, ' , O, I ] nazywamy zbiór A z dwoma działaniami
dwuargumentowymi (∧, ∨ ) , dwiema stałymi (O, I) i jednym działaniem jednoargumentowym ' , taki że dla każdego x, y, z ∈ A spełnione są następujące równości :
L1. x ∧ x = x, x ∨ x = x
(idempotentność)
L2. x ∧ y = y ∧ x, x ∨ y = y ∨ x
(przemienność)
L3. x ∧ ( y ∧ z ) = ( x ∧ y ) ∧ z
x ∨ ( y ∨ z) = ( x ∨ y) ∨ z
L4. x ∧ ( x ∨ y ) = x, x ∨ ( x ∧ y ) = x
(łączność)
(pochłanianie)
L5. x ∧ [ y ∨ ( x ∧ z )] = ( x ∧ y ) ∨ ( x ∧ z ) ,
x ∨ [ y ∧ ( x ∨ z )] = ( x ∨ y ) ∧ ( x ∨ z )
(modularność)
L6. x ∧ ( y ∨ z ) = ( x ∧ y ) ∨ ( x ∧ z ) ,
x ∨ ( y ∧ z) = ( x ∨ y) ∧ ( x ∨ z)
(rozdzielność)
L7. x ∧ O = O, x ∨ O = x
x ∧ I = x,
x∨ I = I
(własności stałych)
L8. x ∧ x ' = O, x ∨ x ' = I
(uzupełnienie)
L9. ( x ' )' = x
(inwolucja)
L10. ( x ∧ y )' = x '∨ y '
( x ∨ y )' = x ' ∧ y '
(prawa de Morgana)
Def. (dwuelementowa algebra Boole'a)
Dwuelementową algebrą Boole'a nazywamy system B = [{0,1}, ∧, ∨, ' ,0, 1] , gdzie ∧ i ∨
są działaniami wyznaczającymi odpowiednio mniejszy i większy element z dwóch danych, a
działanie ' wyznacza element przeciwny do danego.
Mamy więc
0 ∧ 1 = 0, 0 ∨ 1 = 1
0∧0 = 0, 0∨ 0 = 0
1∧1 = 1, 1∨1 = 1
0' = 1 , 1' = 0
Operator dwuargumentowy ∧ nazywamy operatorem koniunkcji (iloczynu logicznego), a
wyrażenie x ∧ y nazywamy iloczynem logicznym elementów x i y, operator dwuargumentowy
∨ operatorem alternatywy (sumy logicznej), a wyrażenie x ∨ y sumą logiczną elementów x i
y. Operator jednoargumentowy ' nazywamy operatorem negacją, a wyrażenie x' negacją
elementu x.
Tab. 1 Tabela prawdy dla iloczynu logicznego, sumy logicznej i negacji
x'
x∨ y
x
y
x∧ y
0
0
0
0
1
0
1
0
1
1
1
0
0
1
0
1
1
1
1
0
Def. (wielomian boolowski)
Wielomianem boolowskim nazywamy dowolne wyrażenie, które można otrzymać
poprzez rekurencyjne zastosowanie działań ∧ , ∨ i ' do pewnego zbioru symboli
x1 , x 2 ,..., x n .
Każdy wielomian boolowski F ( x1 , x 2 ,..., x n ) definiuje funkcję F : B n → B na dowolnej
algebrze Boole'a B. Wartości funkcji F mogą być wyliczane poprzez wstawianie elementów z
B n do wielomianu.
Przykład. Funkcja boolowska dwóch zmiennych.
F1 ( x1, x2 ) = x1 ∧ x2' ∨ x1' ∧ x2
Każda ze zmiennych x1 , x 2 może przybrać wartość 0 lub wartość 1. Wstawiając wszystkie
możliwe kombinacje zmiennych x1 , x 2 do F1 i stosując konieczne własności spośród L1-L8,
otrzymamy wartości funkcji F1 . Przykładowo, gdy wstawimy wartości x1 = 0, x 2 = 0 i
uwzględnimy negacje, otrzymujemy
0 ∧ 1 ∨ 1 ∧ 0=0 ∨ 0=0.
Tab. 2. Tabela prawdy (tabela wartości) funkcji F1 .
x1
x2
F1 ( x1 , x 2 )
0
0
0
0
1
1
1
0
1
1
1
0
W teorii układów cyfrowych do zapisu funkcji boolowskich zwanych także funkcjami
logicznymi, stosuje się zamiast operatora ∨ operator +, a operator ∧ jest pomijany w zapisie
iloczynu zmiennych. Aby zaznaczyć negację stosuje się poziomą kreskę nad zmienną, która
ma być zanegowana. Tak więc przy zastosowaniu tej konwencji funkcję F1 ( x1 , x 2 ) można
zapisać w sposób następujący:
F1 ( x1 , x 2 ) = x1 x 2 + x1 x 2