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