Logika – postać normalna
Transkrypt
Logika – postać normalna
Logika – postać normalna Postać normalna wyrażenie logicznego, to taka, w której występują jedynie następujące operatory ¬ (przeczenie logiczne), ∧ (koniunkcja logiczna) i ∨ (alternatywa logiczna). Można udowodnić, że dowolna funkcja logiczna może być zapisana przy użyciu jedynie tych trzech operatorów. Aby móc zapisywać formuły logiczne w postaci normalnej należy w pierwszej kolejności umieć wyrazić inne operatory logiczne za pomocą trzech wymienionych powyżej. W dalszej części na oznaczenie równoważności wyrażeń logicznych używany będzie symbol ≡. 1. x ⊕ y ≡ (x ∨ y) ∧ ((¬x) ∨ (¬y)), 2. x ⇒ y ≡ (¬x) ∨ y, 3. x ⇔ y ≡ ((¬x) ∨ y) ∧ (x ∨ (¬y)). Przy przekształcaniu wyrażeń logicznych warto też pamiętać o prawach De Morgana: 4. ¬(x ∨ y) ≡ (¬x) ∧ (¬y), 5. ¬(x ∧ y) ≡ (¬x) ∨ (¬y). W ramach ćwiczenia sprowadzimy do postaci normalnej następującą formułę: (p ∧ q) ⇒ (¬(r ∨ q) ⊕ (¬p)) ≡ (p ∧ q) ⇒ (¬(r ∨ q) ⊕ (¬p)) | {z } | {z } x y ≡ ¬(p ∧ q) ∨ (¬(r ∨ q) ⊕ (¬p)) {z } | {z } | ¬x y ≡ ¬(p ∧ q) ∨ (¬(r ∨ q) ⊕ (¬p)) ≡ ¬(p ∧ q) ∨ (¬(r ∨ q) ⊕ (¬p)) | {z } |{z} x y ≡ ¬(p ∧ q) ∨ [(¬(r ∨ q)∨(¬p)) ∧((r ∨ q)∨p)] | {z } | {z } (x∨y) (¬x)∨(¬y) ≡ ¬(p ∧ q) ∨ [(¬(r ∨ q) ∨ (¬p)) ∧ (r ∨ q ∨ p)]. Wykonując dalsze przekształcenia można doprowadzić powyższe wyrażenie do Koniunkcyjnej postaci normalnej (koniunkcja alternatyw) lub do Dysjunkcyjnej postaci normalnej (alternatywa koniunkcji). Jako kolejny przykład sprowadzimy do postaci normalnej następującą formułę: ≡ ≡ ≡ ≡ ≡ ≡ ≡ ≡ ≡ [¬((¬s) ⇒ q) ∧ r] ⇒ (r ⇒ q) [¬((¬s) ⇒ q) ∧ r] ⇒ (r ⇒ q) [¬(s ∨ q) ∧ r] ⇒ (r ⇒ q) [¬(s ∨ q) ∧ r] ⇒ (r ⇒ q) [¬(s ∨ q) ∧ r] ⇒ [(¬r) ∨ q] [¬(s ∨ q) ∧ r] ⇒ [(¬r) ∨ q] ¬[¬(s ∨ q) ∧ r] ∨ [(¬r) ∨ q] [(s ∨ q) ∨ (¬r)] ∨ [(¬r) ∨ q] [(¬r) ∨ q ∨ s] ∨ [(¬r) ∨ q] (¬r) ∨ q ∨ s. Logika – implikacje Implikacja x ⇒ y (czytamy: jeżeli x, to y) jest tak na prawdę pewną formą twierdzenia, w którym x jest założeniem, a y tezą. Równoważną pod względem logicznym formą implikacji jest formuła ¬x ∨ y. Wynika z niej jasno, że implikacja jest zawsze prawdziwa, gdy x jest fałszywe (z fałszu może wynikać wszystko). W związku z tym jedynym tak naprawdę interesującym przypadkiem jest ten, dla którego x jest prawdziwe (tylko wtedy implikacja może nie być prawdziwa). Dlatego też pytanie o to, czy z p wynika w jest tak naprawdę pytaniem o prawdziwość implikacji p ⇒ w. Ze względu na omówione powyżej własności implikacji można ograniczyć analizowane przypadki jedynie do sytuacji, w której p jest prawdziwe (dla fałszywego p implikacja zawsze jest prawdziwa). Rozważmy następujący przykład a ⇒a ∨ }b . |{z} | {z p w Z łatwością możemy stwierdzić, że z p wynika w gdyż powyższa implikacja sprowadza się do postaci ¬a∨a∨b ≡ 1 (jest zawsze prawdziwa. Inny przykład, który poddamy analizie to: a ⇒ b| ⇒ |{z} {z a} . p w W tym przypadku również można zamienić implikacje na odpowiadające im alternatywy i otrzymać a ⇒ (b ⇒ a) ≡ a ⇒ (¬b ∨ a) ≡ ¬a ∨ ¬b ∨ a ≡ 1. Zatem i w tym przypadku można stwierdzić, że z p wynika w. Spójrzmy teraz na bardziej skomplikowany przykład a ∧ (¬b) ⇒ ¬(a ⇒ b) . | {z } | {z } p w Oczywiście, gdy p jest fałszywe, to implikacja jest prawdziwa. Zatem do analizy zostaje nam jedynie przypadek, gdy p jest prawdziwe. Z łatwością można zauważyć, że p jest prawdziwe tylko wtedy, gdy a ≡ 1 i b ≡ 0. Podstawiając to wartościowanie pod formułę w otrzymujemy również prawdę. W związku z tym możemy stwierdzić, że implikacja jest prawdziwa. Inną drogą udowodnienia prawdziwości implikacji jest odpowiednie przekształcenie w: w ≡ ¬(a ⇒ b) ≡ ¬(¬a ∨ b) ≡ a ∧ (¬b) ≡ p. Widzimy, że w jest logicznie tym samym, co p. Jest to inny sposób wykazania, że implikacja p ⇒ w jest prawdziwa.