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.