Logik - TU Ilmenau

Werbung
Aussagen und Aussageverbindungen
Aussage :
1. p heißt Aussage, wenn p einen Sachverhalt ausdrückt. Aussagen
werden mit p, q, r, s, t, p1, p2, ... bezeichnet. A sei die Menge aller
möglichen Aussagen.
2. Man kann jeder Aussage p einen Wahrheitswert δ(p) aus einer
Menge W von Wahrheitswerten zuordnen.
3. Die Aussage p heißt zweiwertig, wenn W nur aus den 2 Wahrheitswerten “Wahr“ (w, true, 1) und “Falsch“ (f , false, 0) besteht,
d.h. W = {w, f } = {1, 0}.
4. Die Menge A2 ⊂ A aller zweiwertigen Aussagen bildet eine zweiwertige Aussagenlogik.
Aussageform :
Ein Satz P (x) mit der Variablen x ∈ X heißt Aussageform, wenn
P (x) bei Einsetzen jedes konkreten Wertes xi ∈ X in eine zweiwertige Aussage P (xi) ∈ A2 übergeht.
Junktoren :
1. Negation : ordnet jeder Aussage p deren Negat zu
• Junktor ist der Negator ¬ (Lies : nicht)
• Schreibweise: ¬p oder p̄
p ¬p
• Wertetafel : 1 0
0 1
• Die Negation ist eine einstellige Operation.
2. Disjunktion (Alternative) : ordnet 2 Aussagen p und q deren Disjungat zu
• Junktor ist der Disjungator ∨ (Lies : oder)
• Schreibweise: p ∨ q
p\q 1 0
• Wertetafel : 1 1 1
0 1 0
3. Konjunktion : ordnet 2 Aussagen p und q deren Konjungat
zu
• Junktor ist der Konjungator ∧ (Lies : und)
• Schreibweise: p ∧ q
p\q 1 0
• Wertetafel : 1 1 0
0 0 0
4. Subjunktion (Implikation) : ordnet 2 Aussagen p und q
deren Subjungat zu
• Junktor ist der Subjungator → (Lies : wenn ... dann)
• Schreibweise: p → q (p - Prämisse, q - Konklusion)
p\q 1 0
• Wertetafel : 1 1 0
0 1 1
5. Bijunktion (äquivalenz) : ordnet 2 Aussagen p und q deren
Bijungat zu
• Junktor ist der Bijungator ↔ (Lies : genau dann ... wenn)
• Schreibweise: p ↔ q
p\q 1 0
• Wertetafel : 1 1 0
0 0 1
Syntax der Aussagenlogik
Alphabet (Zeichenmenge) C :
C = {1, 0, ¬, ∧, ∨, →, ↔, ), (, a, b, c, ...}
Wortmenge über C : Die Menge aller endlichen Zeichenfolgen
mit Elementen aus C heißt Wortmenge W (C) über C.
Konstruktionsregeln : Sei A ⊆ W (C) die Menge der Ausdrücke. Folgende Konstruktionsvorschriften führen zu zulässigen aussagenlogischen Ausdrücken (kurz: Ausdrücke, auch: Formeln):
• 1, 0 ∈ A
( bzw. w, f ∈ A)
• a, b, c, ..., x, y, z, a1, a2, ... ∈ A (Aussagenvariablen)
• Mit H, K ∈ A sind auch (H) ∈ A , ¬H ∈ A , (H ∧ K) ∈
A , (H ∨ K) ∈ A, (H → K) ∈ A , (H ↔ K) ∈ A .
• äußerste Klammern um einen Ausdruck können entfallen, wenn
dieser nicht mit einem anderen Ausdruck verknüpft wird.
• Für die Junktoren werden folgende Prioritäten erklärt:
(1) ¬ (2) ∧ , ∨ (3) →
(4) ↔
Die aufgrund der Prioritäten entbehrlichen Klammern können
entfallen.
• Bei nacheinander auftretenden ∨ bzw. ∧ können die Klammern
entfallen (Assoziativität).
• Keine andere Zeichenkette aus W (C) heißt Ausdruck.
Syntaktische Entscheidbarkeit :
Von jeder endlichen Zeichenfolge H ∈ W (C) kann durch einen endlichen Algorithmus unter Anwendung der Konstruktionsregeln entschieden werden, ob H ∈ A (regelgemäß, syntaktisch korrekt) oder
H ̸∈ A (regelwidrig) ist.
Semantik der Aussagenlogik
Wahrheitswert :
Sei H ∈ A ein Ausdruck. Der Wahrheitswert (kurz: Wert) δ(H)
ist eine Funktion aus A in die Menge W = {1, 0} mit folgenden
Eigenschaften:
1. Ist a ∈ A2 eine Aussagenvariable, so δ(a) = 1 (δ(a) = 0) ,
falls a mit einer wahren Aussage (falschen Aussage) belegt wird
(Interpretation, Deutung).
2. Ist H = H(x1, x2, ..., xn) ein n-stelliger Ausdruck aus A, so berechnet sich sein Wahrheitswert bei gegebenen Wahrheitswerten
δ(x1), ..., δ(xn) ∈ {1, 0} gemäß
δ(H(x1, x2, ..., xn)) = H(δ(x1), δ(x2), ..., δ(xn)) .
Definition : Ein Ausdruck H ∈ A2 ⊆ W (C) heißt
• allgemeingültig (Tautologie), wenn er für alle 2n Belegungen
seiner Variablen wahr ist
• teilgültig (Neutralität, Kontingenz), wenn er für genau m Belegungen mit 0 < m < 2n wahr ist
• ungültig (Kontradiktion), wenn er für keine Belegung wahr ist.
Semantische Entscheidbarkeit :
Jede Wahrheitstabelle besteht aus endlich vielen Zeilen ( 2n bei nstelligen Ausdrücken); also kann die Frage nach Allgemeingültigkeit
eines Ausdruckes H ∈ A2 stets durch einen endlichen Algorithmus
entschieden werden.
Entscheidungsverfahren
Logische Erfüllbarkeit :
• Ein Ausdruck H ∈ A heißt logisch erfüllbar, falls eine Variablenbelegung existiert, für die er wahr ist.
• Eine Klasse von Ausdrücken H1, H2, . . . , Hn ∈ A heißt gemeinsam erfüllbar, falls eine Variablenbelegung existiert, für die alle
Ausdrücke Hi wahr sind.
Klassifikation
der Ausdrücke :
Ausdrücke H ∈ A
logisch erfüllbare Ausdrücke logisch unerfüllbare Ausdrücke
Tautologien Neutralitäten Kontradiktionen
Satz : Die Klasse H1, H2, . . . , Hn ∈ A ist gemeinsam erfüllbar,
gdw. H = H1 ∧ H2 ∧ . . . ∧ Hn ist logisch erfüllbar.
Vereinfachtes Entscheidungsverfahren :
Beispiel 1
H = (p → q) → (¬q → ¬p)
Beispiel 2
H = ((p → q) ∧ (p → r)) → (p → (q ∧ p))
Wichtige Tautologien
A, B, C seien beliebige Ausdrücke.
T1
T2
T3
T4
= ¬A ∨ A
= ¬ (¬A ∧ A)
= ¬¬A → A
= A → ¬¬A
Ausg.Dritter
Ausg. Wid.
Dopp.Negation
Dopp.Negation
T5 = A ∧ B → A
T6 = A → A ∨ B
Bes.Konjunktion
Einf.Disjunktion
T7 = (A → B) → (¬B → ¬A)
T8 = (¬B → ¬A) → (A → B)
T9 = (A ∧ B → C) → (A ∧ ¬C → ¬B)
1.G.Kontrapos.
2.G.Kontrapos.
3.G.Kontrapos.
T10 = (A ∧ B → C) → (A → (B → C))
T11 = (A → (B → C)) → (A ∧ B) → C)
Exportation
Importation
T12 = (A → (B → C)) → (B → (A → C)
T13 = (A → B) → ((B → C) → (A → C))
T14 = (A → (B → C)) → ((A → B) → (A → C))
Prämissenv.
Kettenschluß
Frege.Kett.
T15 = (A → B) ∧ (A → C) → (A → B ∧ C)
T16 = (A → C) ∧ (B → C) → (A ∨ B → C)
Konklus.
Prämissend.
Semantische äquivalenz : Seien A, B Aussagen.
• Ist A allgemeingültig, so schreibt man: A ⇔ 1
(lies: A semantisch äquivalent zu 1 ).
• Gilt A ↔ B ⇔ 1, so schreibt man als semantische äquivalenz:
A ⇔ B (lies: A semantisch äquivalent B ).
Gesamtheit aller einstelligen Verknüpfungen
x 1 0 Name
1
1
0
0
1
0
1
0
Redeweise Ausdruck
Tautologie
stets wahr
Projektion
x
Negation
nicht x
Kontradiktion stets falsch
1
x
¬x
0
Verknüpfungsbasis :
Eine Teilmenge aus der Menge aller höchstens zweistelligen Verknüpfungen heißt eine Verknüpfungsbasis, wenn jeder aussagenlogische
Ausdruck mit diesen Basisverknüpfungen dargestellt werden kann.
Gesamtheit der zweistelligen Verknüpfungen
x 1 1 0 0 Name
y 1 0 1 0
Redeweise
Ausdruck
1
1
1
1
1
1
1
1
1
1
0
0
1
0
1
0
Tautologie
Disjunktion
Subjunktion
Projektion
stets wahr
x oder y
wenn y dann x
x für bel. y
1
x∨y
y→x
x
1
1
1
1
0
0
0
0
1
1
0
0
1
0
1
0
Subjunktion
Projektion
Bijunktion
Konjunktion
wenn x dann y
für bel.x stets y
x gdw. y
x und y
x→y
y
x↔y
x∧y
0
0
0
0
1
1
1
1
1
1
0
0
1
0
1
0
NAND
Antivalenz
Negation
Inhibition
nicht x und nicht y
entweder x oder y
für bel.x : nicht y
x und nicht y
x∧y
˙
x∨y
¬y
x ∧ ¬y
0
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
Negation
Inhibition
NOR
Kontradiktion
nicht x für bel. y
nicht x und y
weder x noch y
stets falsch
¬x
¬x ∧ y
x∨y
0
Satz über die BOOLE-Basis :
B = { ¬ , ∧ , ∨ } ist eine Verknüpfungsbasis, die sogenannte
BOOLE-Basis.
x 1 1 0 0 Ausdruck in BOOLE-Basis
y 1 0 1 0
B={¬, ∧, ∨}
1
1
1
1
1
1
1
1
1
1
0
0
1
0
1
0
x ∨ ¬x
x∨y
x ∨ ¬y
x
1
1
1
1
0
0
0
0
1
1
0
0
1
0
1
0
¬x ∨ y
y
(x ∧ y) ∨ ¬(x ∨ y)
x∧y
0
0
0
0
1
1
1
1
1
1
0
0
1
0
1
0
¬x ∨ ¬y
(x ∨ y) ∧ ¬(x ∧ y)
¬y
x ∧ ¬y
0
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
¬x
¬x ∧ y
¬x ∧ ¬y
x ∧ ¬x
Boolesche Algebra und Dualitätsprinzip
George Boole (1815-64): “The Laws of Thought“
Boolescher Ausdruck :
Ein aussagenlogischer Ausdruck, der nur die Junktoren ¬, ∧, ∨ enthält, heißt Boolescher Ausdruck.
Boolesche Algebra :
A sei eine Menge mit folgenden 8 Eigenschaften:
1. A muß mindestens 2 Elemente aufweisen, hier 0 und 1 genannt.
2. Es gibt eine zweistellige innere Operation + auf A (Boolesche
Addition): Für alle x, y ∈ A ist x + y ∈ A.
3. Es gibt eine zweistellige innere Operation · auf A (Boolesche Multiplikation): Für alle x, y ∈ A ist x · y ∈ A.
4. Es gibt eine einstellige innere Operation x auf A (Boolesche
Komplementbildung): Für alle x ∈ A ist x ∈ A.
5. Die zweistelligen Booleschen Operationen sind kommutativ, d.h.
für alle x, y ∈ A
x+y =y+x
,
x · y = y · x.
6. Die zweistelligen Booleschen Operationen sind wechselseitig distributiv, d.h. für alle x, y, z ∈ A
x · (y + z) = (x · y) + (x · z) , x + (y · z) = (x + y) · (x + z).
7. Das Element 0 ist Neutralelement der Booleschen Addition:
x + 0 = x für alle x ∈ A,
das Element 1 ist Neutralelement der Booleschen Multiplikation:
x · 1 = x für alle x ∈ A.
8. Für die einstellige Operation gelten folgende Komplementgesetze:
x + x = 1 , x · x = 0 für alle x ∈ A.
Satz über die Boolesche Algebra :
Die Wahrheitswertemenge bildet mit den Operationen ∨, ∧, ¬ eine
zweielementige Boolesche Algebra ({1, 0}, ∨, ∧, ¬).
Dualer Ausdruck :
Ist A ein beliebiger Boolescher Ausdruck, so gewinnt man den dualen
Ausdruck (das Dualisat) ∆A, indem man in A die Junktoren ∨
und ∧ und die Wahrheitswerte 1 und 0 miteinander vertauscht und
ansonsten den Ausdruck unverändert läßt.
Dualitätsprinzip der Aussagenlogik :
Sind zwei in der Boole-Basis B notierte Ausdrücke A, B äquivalent,
so besteht äquivalenz auch zwischen ihren Dualisaten, d.h mit A ⇐⇒
B gilt auch ∆A ⇐⇒ ∆B.
Funktional unabhängige Verknüpfungsbasen
Junktoren: α1 , α2 , . . . αn
Verknüpfungsbasis: V = { α1 , α2 , . . . αn }
Ausdruck mit Junktoren αi , αk . A(αi , αk )
Funktionale Unabhängigkeit :
αi ist funktional unabhängig von α1 , . . . , αi−1 , αi+1 , . . . , αn , wenn zu beliebigem gegebenen A = A(αi ) kein
B = B(α1 , . . . , αi−1 , αi+1 , . . . , αn ) mit A ⇐⇒ B existiert.
Unabhängige Verknüpfungsbasis :
Eine Basis V = { α1 , α2 , . . . αn } heißt (funktional) unabhängig, falls jeder
Junktor αi von den übrigen Junktoren in V funktional unabhängig ist.
Folgerung :
Die BOOLE-Basis B = {¬, ∨, ∧} ist nicht funktional unabhängig.
Satz über die DE MORGAN-Basen :
D1 = {∧, ¬} und D2 = {∨, ¬} sind Verknüpfungsbasen, die DE MORGANBasen.
Satz über die FREGE-Basis :
F = {→, ¬} ist Verknüpfungsbasis, die FREGE-Basis.
Satz über die funktionale Unabhängigkeit :
Die zweielementigen Basen D1 = {∧, ¬} , D2 = {∨, ¬} und F = {→, ¬} sind
jeweils funktional unabhängig.
NOR und NAND :
Die Negation der Disjunktion heißt NOR-Verknüpfung (Negatkonjunktion):
x ∨ y := ¬ (x ∨ y ) .
Die Negation der Konjunktion heißt NAND-Verknüpfung (Negatdisjunktion):
x ∧ y := ¬ (x ∧ y ) .
Satz über NAND- und NOR-Basis :
N1 = {∨} (NOR-Basis) und N2 = {∧} (NAND-Basis) sind funktional unabhängige Verknüpfungsbasen.
Gesamtheit der zweistelligen Verknüpfungen
in der DE MORGAN - Basis D1
x 1 1 0 0 Ausdruck in DE MORGAN-Basis
y 1 0 1 0 D1 = { ∧ , ¬ }
1
1
1
1
1
1
1
1
1
1
0
0
1
0
1
0
¬(x ∧ ¬x)
¬(¬x ∧ ¬y)
¬(¬x ∧ y)
x
1
1
1
1
0
0
0
0
1
1
0
0
1
0
1
0
¬(x ∧ ¬y)
y
¬(x ∧ ¬y) ∧ ¬(¬x ∧ y)
x∧y
0
0
0
0
1
1
1
1
1
1
0
0
1
0
1
0
¬(x ∧ y)
¬(x ∧ y) ∧ ¬(¬x ∧ ¬y)
¬y
x ∧ ¬y
0
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
¬x
¬x ∧ y
¬x ∧ ¬y
x ∧ ¬x
Boolesche Funktionen
Definition : Sei {0, 1}n = {0, 1} × {0, 1} × . . . × {0, 1} das n-fache kartesische Produkt der Wahrheitswertemenge W = {0, 1}. Jede auf einer Teilmenge D ⊆ {0, 1}n definierte Funktion (eindeutige Abbildung), deren Werte in
{0, 1} liegen
f : D ⊆ {0, 1}n −→ {0, 1}
heißt Boolesche (aussagenlogische, Wahrheits-) Funktion mit n Variablen.
Satz :
n
Es existieren genau z(n) = 22 verschiedene Boolesche Funktionen mit n Variablen auf D = {0, 1}n .
Darstellung Boolescher Funktionen durch Boolesche Ausdrücke
Satz 1 :
Jeder Boolesche Ausdruck H mit n Variablen a1 , a2 , ..., an stellt eine eindeutig
bestimmte Boolesche Funktion f : {0, 1}n → {0, 1} in n Variablen dar.
Beispiel
H = (¬a ∧ b) ∨ (a ∧ ¬c) ∨ (¬b ∧ c)
besitzt die Wertetafel
a = x2
b = x1
c = x0
H
11110000
11001100
10101010
01111110
Hierdurch ist eine Boolesche Funktion y = f (x0 , x1 , x2 ) eindeutig festgelegt.
Frage : Läßt sich jede Boolesche Funktion y = f (x0 , x1 , ..., xn−1 ) als Boolescher Ausdruck notieren?
Beispiel
y = f (x0 , x1 , x2 )
= x0 x1 x2 ∨ x0 x1 x2 ∨ x0 x1 x2 ∨ x0 x1 x2 ∨ x0 x1 x2 ∨ x0 x1 x2
Satz 2 :
Jede Boolesche Funktion y = f (x0 , x1 , ..., xn−1 ) in n Variablen läßt sich als
Boolescher Ausdruck darstellen.
Funktionale Vollständigkeit
Verknüpfungsbasen
i = 1(1)m :
B = {¬, ∧, ∨}
D1 = {¬, ∧}
D2 = {¬, ∨}
F = {¬, →}
N1 = {∨}
N2 = {∧}
V = {α1, α2, ..., αm} mit den Junktoren αi,
Boole-Basis
De Morgan-Basis
De Morgan-Basis
Frege-Basis
NOR-Basis
NAND-Basis
Definition :
Eine Basis V = {α1, α2, ..., αm} ist funktional vollständig, wenn
sich durch sie jede beliebige logische Funktion definieren läßt.
Satz :
Alle 5 Verknüpfungsbasen B, D1, D2, F, N1, N2 sind funktional vollständig.
Beweis :
1. Boole-Basis B :
Nach Satz 2 läßt sich zu jeder logischen Funktion y = f (x0, x1, ..., xn−1)
ein Ausdruck in B = {¬, ∧, ∨} konstruieren.
2. De Morgan-Basis D1 :
Sei y = f (x0, x1, ..., xn−1) eine gegebene logische Funktion. Nach
Teil 1 existiert ein Boolescher Ausdruck B = B(¬, ∧, ∨) mit
B ⇔ y. Ersetzt man darin ∨ durch ¬, ∧ gemäß
p ∨ q ⇐⇒ ¬(¬p ∧ ¬q) ,
so erhält man einen Ausdruck D1 = D1(¬, ∧) mit D1 ⇔ B ⇔ y.
3. De Morgan-Basis D2 :
Ersetzung mittels
p ∧ q ⇐⇒ ¬(¬p ∨ ¬q) .
4. Frege-Basis F :
Ersetzung von ∨ und ∧ in Booleschen Ausdrücken B(¬, ∧, ∨)
mittels
p ∨ q ⇐⇒ ¬p → q
p ∧ q ⇐⇒ ¬(p → ¬q) .
5. NOR-Basis N1 :
Ersetzung von ∨ und ¬ in Ausdrücken D2(¬, ∨) mittels
p ∨ q ⇐⇒ (p∨q)∨(p∨q)
¬q ⇐⇒ p∨p .
6. NAND-Basis N2 :
Ersetzung von ∧ und ¬ in Ausdrücken D1(¬, ∧) mittels
p ∧ q ⇐⇒ (p∧q)∧(p∧q)
¬q ⇐⇒ p∧p . q.e.d.
Satz über N1 und N2 :
Die Basen N1 und N2 sind die einzigen einelementigen Verknüpfungsbasen, die funktional vollständig sind.
Normalformen
Negationstechnische Normalform :
Beziehen sich in einem Booleschen Ausdruck H die Negationen nur
auf jeweils 1 Variable, so heißt H negationstechnische (verneinungstechnische) Normalform.
Literal :
• Jede logische Variable xi heißt Atom oder atomare Formel (im
Gegensatz zu nichtatomaren Formeln, die Junktoren enthalten).
• Ein Literal H ist eine Variable (Atom) oder die Negation einer
Variablen (negiertes Atom).
Disjunktive Normalform, Konjunktive Normalform :
• Ein Ausdruck der Form
k = Hi0 ∧ Hi1 ∧ . . . ∧ Him =
m
∧
Hik , m ≤ n ,
k=0
wobei jeder Ausdruck Hik ein Literal (also gleich xik oder xik ) ist,
heißt Fundamentalkonjunktion in den Variablen x0, x1, ..., xn.
• Ein Ausdruck der Form
d = Hi0 ∨ Hi1 ∨ . . . ∨ Him =
m
∨
Hik , m ≤ n ,
k=0
wobei jeder Ausdruck Hik ein Literal (also gleich xik oder xik ) ist,
heißt Fundamentaldisjunktion in den Variablen x0, x1, ..., xn.
• Eine disjunktive Kette von Fundamentalkonjunktionen (eine konjunktive Kette von Fundamentaldisjunktionen) heißt disjunktive
Normalform (konjunktive Normalform), kurz DNF (KNF) des
Ausdruckes H.
Kanonische disjunktive Normalform (KDNF) :
• Ein Ausdruck der Form
k = H0H1 · · · Hn =
n
∧
Hi ,
i=0
wobei jeder Ausdruck Hi ein Literal (also gleich xi oder xi )
ist, heißt Elementarkonjunktion (Minterm) in den Variablen
x0, x1, ..., xn.
• Ein Ausdruck H heißt eine kanonische disjunktive Normalform
(KDNF), wenn er die Form
H = k1 ∨ k2 ∨ · · · ∨ kp =
p
∨
kj , p ≥ 1 ,
j=1
hat, wobei k1, k2, ..., kp paarweise verschiedene Elementarkonjunktionen in den gleichen Variablen x0, x1, ..., xn sind.
Kanonische konjunktive Normalform (KKNF) :
• Ein Ausdruck der Form
d = H0 ∨ H1 ∨ · · · ∨ Hn =
n
∨
Hi ,
i=0
wobei jeder Ausdruck Hi ein Literal (also gleich xi oder xi )
ist, heißt Elementardisjunktion (Maxterm) in den Variablen
x0, x1, ..., xn.
• Ein Ausdruck H heißt eine kanonische konjunktive Normalform (KKNF), wenn er die Form
H = d1 d2 · · · dq =
q
∧
dj , q ≥ 1 ,
j=1
hat, wobei d1, d2, ..., dq paarweise verschiedene Elementardisjunktionen in den gleichen Variablen x0, x1, ..., xn sind.
Erzeugung kanonischer Normalformen
Algorithmus 1 (Algebraische Umwandlung) :
S0 : Ersetzung von →, ↔, ∧, ∨ durch ¬, ∧, ∨ mittels
x→y = x∨y
x ↔ y = (x ∨ y) ∧ (x ∨ y)
x∧y = x ∧ y
x∨y = x ∨ y
S1 : Wiederholte Anwendung der De Morganschen Gesetze
x0 ∨ x1 ∨ · · · ∨ xn = x0 x1 . . . xn
x0 x1 · · · xn = x0 ∨ x1 ∨ . . . ∨ xn ,
bis nur Negationen über Einzelvariablen auftreten (VTNF).
S2 : Wiederholte Anwendung des Distributivgesetzes
x0(x1 ∨ x2 ∨ . . . ∨ xn) = x0x1 ∨ x0x2 ∨ . . . ∨ x0xn
liefert eine DNF.
S3 : Vervollständigung aller Elementarkonjunktionen durch Hinzufügen der fehlenden Variablen xi nach dem Muster
k = x0x1 · · · xi−1xi+1 · · · xn
= x0x1 · · · xi−1xi+1 · · · xn(xi ∨ xi)
= x0x1 · · · xi · · · xn ∨ x0x1 · · · xi · · · xn.
S4 : Nach Streichung mehrfach auftretender Elementarkonjunktionen entsteht eine KDNF.
Algorithmus 2 (Erzeugung durch Wertetafel) :
S1 : Aufstellen der Wertetafel des logischen Ausdruckes
S2 : Notation aller Elementarkonjunktionen in den Zeilen mit
Wert 1
S3 : Disjunktive Verknüpfung aller Elementarkonjunktionen
zur KDNF.
Satz über die Eindeutigkeit der kanonischen Normalformen :
Zu einem logischen Ausdruck existiert bis auf die Reihenfolge der Elementarterme genau eine KDNF und genau eine KKNF . Zwei logische Ausdrücke sind äquivalent, wenn ihre KDNF (bzw. ihre KKNF)
übereinstimmen.
Karnaugh-Veitch-Diagramme
n=2
n=1
n=4
n=3
n=5
n=6
Minimierung logischer Ausdrücke
Zielsetzung :
Bestimmung einer zu einem gegebenen Booleschen Ausdruck äquivalenten KNF oder DNF , die möglichst wenige Operationen ∨, ∧ oder
Variablen enthält.
Definition (Optimalität bezüglich Lk ) :
• Lk (H) ist die Anzahl der Stellen von H , an denen Variablen
stehen.
• Eine DNF(H) (bzw. KNF(H) ) heißt optimal bezüglich Lk , wenn
es keine DNF (bzw. KNF) mit kleinerem Lk (H) gibt.
Minimierungsverfahren nach Karnaugh :
• Benachbarte Felder : 2 Feldelemente des KV-Diagrammes
heißen benachbart, wenn sich die Werte ihrer Belegungsvektoren
nur in 1 Variablen unterscheiden.
• Fundamentalblöcke : Ein Rechteck benachbarter Felder des
KV-Diagrammes heißt Fundamentalblock, wenn jedes Feld mit
1 belegt ist und die Zahl der Felder 2k , k ∈ N0 beträgt.
• Primkonjunktion (anschaulich) : Eine Fundamentalkonjunktion heißt Primkonjunktion, falls der zugehörige Fundamentalblock “maximal“ ist.
Algorithmus 3
(Bildung einer minimalen DNF nach Karnaugh) :
S1 : Aufstellen des KV-Diagrammes des logischen Ausdruckes
S2 : Bildung maximaler Fundamentalblöcke, bis alle Werte 1 überdeckt sind
S3 : Notation der zugehörigen Primkonjunktionen und deren disjunktive Verknüpfung.
Primkonjunktionen
Relation zwischen Ausdrücken :
Ein Ausdruck A = A(x0 , x1 , ..., xn−1 ) impliziert einen Ausdruck
B = B(x0 , x1 , ..., xn−1 ), wenn für jede Belegung von A, für die δ(A) = 1 ist,
auch δ(B) = 1 gilt. Schreibweise: A ≤ B .
Relation zwischen Fundamentalkonjunktionen K1 und K2 :
• K1 ist in K2 enthalten (K1 ⊆ K2 ), wenn jeder Konjunktionsterm von K1
auch in K2 auftritt.
• K1 ist echt in K2 enthalten (K1 ⊂ K2 ), wenn K1 ⊆ K2 und K1 ̸= K2 .
Primkonjunktion : H sei eine DNF.
Eine Fundamentalkonjunktion R heißt Primkonjunktion der DNF H, wenn
(a) R ≤ H ist und
(b) keine Fundamentalkonjunktion R′ mit R′ ⊂ R und R′ ≤ H existiert.
Relation zwischen disjunktiven Normalformen N und M :
• N ist echt in M enthalten (N ⊂ M ), wenn N aus M durch Streichen
mindestens (a) einer Fundamentalkonjunktion oder (b) eines Konjunktionsterms in einer Fundamentalkonjunktion entsteht.
• N heißt minimal, wenn keine mit N äquivalente DNF M mit M ⊂ N
existiert.
Satz : Sei N eine DNF.
• Ist N optimal bezüglich der Längenfunktion Lk (N ), so ist N eine minimale DNF !
• Jede minimale DNF N besteht aus einer disjunktiven Kette von Primkonjunktionen !
Bemerkungen zum Satz :
1. Die Minimalität einer DNF ist notwendig für deren Optimalität. Unter
allen minimalen DNF ist (mindestens eine) optimale DNF !
2. Die Umkehrung von Teil 2 des Satzes gilt nicht, d.h. es existieren disjunktive Ketten von Primkonjunktionen, die nicht minimal sind !
Aussagenlogisches Schließen
A1, A2, ..., An, B gegebene Ausdrücke. Die Konklusion B folgt semantisch aus den Prämissen (Bedingungen) A1, A2, ..., An, falls aus δ(Ai) = 1, i = 1(1)n,
stets δ(B) = 1 folgt. Jede derartige Folgebeziehung
stellt eine Schlußregel (Regel) dar.
Schreibweise für Schlußregeln :
A1
A2
···
An
B
Grundregeln
(EK) Einführungsregel
der Konjunktion :
(BK) Beseitigungsregel
der Konjunktion :
A
B
A∧B
A
B
A∧B
(ED) Einführungsregel
der Disjunktion :
A
B
A∨B
A∨B
(EB) Einführungsregel
der Bijunktion :
A→B
B→A
A↔B
(BD) Beseitigungsregel
der Disjunktion :
A∨B
¬A
B
(BB) Beseitigungsregel
der Bijunktion :
A↔B
A↔B
A→B
B→A
(ES) Einführungsregeln
der Subjunktion :
A
A
B→A
¬A → B
(BS) Beseitigungsregeln
der Subjunktion :
(AR) Abtrennungsregel
(VR) Verwerfungsregel
A→B
A
A→B
¬B
B
¬A
Erweiterte Grundregeln für NAND und NOR
(ENA) Einf. für NAND:
(BNA) Bes. für NAND:
¬A
¬B
A∧B
A∧B
A∧B
¬A ∨ ¬B
(ENO) Einf. für NOR:
(BNO) Bes. für NOR:
¬A
¬B
A∨B
A∨B
A∨B
¬A
¬B
Satz :
• B folgt semantisch aus A1, A2, ..., An genau dann, wenn
R = A1 ∧ A2 ∧ . . . ∧ An −→ B
eine Tautologie ist.
• Jede Schlußregel läßt sich in der Form
S = A1 → (A2 → (A3 → · · · → (An → B) · · · ))
darstellen, d.h. R ⇐⇒ S.
Direkter und indirekter Beweis
Strukturregeln des direkten Beweises :
R1 : In den ersten n Zeilen werden A1, A2, ..., An als Annahmen (A.d.B.)
notiert.
R2 : Bereits bewiesene Sätze können als neue Zeilen hinzugefügt werden.
R3 : Durch Anwendung der Grundregeln auf vorhandene Zeilen können neue Zeilen hinzugefügt werden.
R4 : Der Beweis eines Satzes ist beendet, wenn seine letzte Zeile
gleich B ist.
Strukturregeln des indirekten Beweises :
S1 : In den ersten n Zeilen werden A1, A2, ..., An als Annahmen (A.d.i.B.)
notiert.
S2 : In der (n + 1)-ten Zeile wird ¬B als Annahme des indirekten
Beweises (A.d.i.B.) notiert.
S3 : Bereits bewiesene Sätze können als neue Zeilen hinzugefügt werden.
S4 : Durch Anwendung der Grundregeln auf vorhandene Zeilen können neue Zeilen hinzugefügt werden.
S5 : Der indirekte Beweis ist beendet, wenn in ihm ein Ausdruck
und dessen Negat als Beweiszeilen auftreten (Kennzeichnung mit
Wid. und den Nrn. der sich widersprechenden Zeilen).
Theorem :
Ein Ausdruck A = A1 ∧ A2 ∧ . . . ∧ An → B ist ein Theorem (Satz)
im System des natürlichen Schließens, falls es für ihn einen direkten
oder indirekten Beweis gibt.
Systematische Ableitung von Konklusionen
Fragestellung :
Gegeben die n Voraussetzungen A1 , A2 , ..., An . Gesucht sind alle möglichen
Konklusionen B , die aus der Gesamtheit der n Prämissen gewonnen werden
können, so daß eine semantische Folgebeziehung besteht.
Methode der konjunktiven Normalformen :
Sei A = A1 ∧ A2 ∧ . . . ∧ An . Bildet man die KKNF von A
KKNF(A) = D1 ∧ D2 ∧ . . . ∧ Dq
mit den q Elementardisjunktionen Di , so ergeben sich mögliche Konklusionen
durch
• D = Di , i = 1, 2, ..., q
• beliebige Konjunktionen
D=
∧
i∈Q Di
, Q ⊆ {1, 2, ..., q}
• beliebige Umformungen von D nach gültigen Schlußregeln.
Verfahren :
1. Verbindung der Prämissen zu A = A1 ∧ A2 ∧ . . . ∧ An .
2. Ermittlung der KKNF(A)
3. Ermittlung von Primdisjunktionen
4. evtl. Umformung nach gültigen Schlußregeln.
Beispiel : Gegeben seien folgende Voraussetzungen :
1. Wenn W. Philosophie studiert, so hört er auch Logikvorlesungen
(p → q) .
2. Wenn W. Informatik studiert, so hört er auch Mathevorlesungen
(r → s) .
3. W. studiert Informatik oder Philosophie (p ∨ r) .
4. Es ist nicht der Fall, daß W. sowohl Logik- als auch Mathevorlesungen
hört (¬(q ∧ s)) .
Man leite mögliche Schlußfolgerungen ab !
Mehrwertige Logikkalküle
J. Lukasiewicz (1878-1956) :
“Eine Aussage, von welcher wir nicht wissen, ob sie wahr oder falsch ist,
könnte überhaupt keinen bestimmten Wert haben im Hinblick auf Wahrheit
oder Falschheit, sondern könnte einen dritten, unbestimmten Wert haben.
Man könnte meinen, daß die Aussage ’Ich werde in einem Jahr in Warschau
sein.’ weder wahr noch falsch ist und den dritten, unbestimmten Wert hat,
den wir mit dem Symbol ’1/2’ bezeichnen können.
Man könnte aber noch weiter gehen und den Aussagen unendlich viele Werte
zuschreiben, die zwischen Falschheit und Wahrheit liegen.“
(Elemente der mathematischen Logik, Warschau, 1929)
Bezeichnung des “Unbestimmt“ :
wahrscheinlich, möglich, unentscheidbar, neutral, ich weiß nicht ...
Anwendung mehrwertiger Logiken :
– Innerlogische Anwendungen
– Quantenmechanik
– Expertensysteme
– Philosophie
Die dreiwertige Logik L3 (J. Lukasiewicz, 1917)
“Polnische Notation“ von Lukasiewicz :
Junktor
InfixLukasiewicznotation
Junktor
Negation
¬x
Negation
Subjunktion
x→y
Subjunktion
Disjunktion
x∨y
Adjunktion
Konjunktion
x∧y
Konjunktion
Bijunktion
x↔y
Bijunktion
Wahrheitswertemenge :
W3 = {1, α, 0} = {wahr , neutral , falsch}
Polnische
Notation
Nx
Cxy
Axy
Kxy
Bxy
(Häufig: α = 1/2 )
Syntax aussagenlogischer Formeln F ∈ L3 :
1. Aussagenvariablen p, q, r, s, t, ..., x, y, z, p1, p2, ... sind Formeln.
2. Ist x eine Formel, so auch N x (Negation).
3. Sind x, y Formeln, so auch
- Cxy (Subjunktion)
- Axy (Adjunktion, Disjunktion)
- Kxy (Konjunktion)
- Bxy (Bijunktion).
4. Nur die durch 1.,2. und 3. definierten Zeichenreihen sind Formeln
in L3.
Beispiele
F0
F1
F2
F3
=
=
=
=
KxN y
Cxx
CN N xx
CKxyN AN xN y
Semantik des Logikkalküls L3 :
• Semantik der Basisjunktoren N und C :
(a) Negation N x
x Nx
1 0
α α
0 1
(b) Subjunktion Cxy
x\y
1
α
0
1
1
1
1
• Abgeleitete Junktoren A und K :
Axy = CCxyy
Kxy = N AN xN y
α
α
1
1
0
0
α
1
(c) Adjunktion Axy
x\y
1
α
0
1
1
1
1
α
1
α
α
(d) Konjunktion Kxy
x\y
1
α
0
0
1
α
0
1
1
α
0
α
α
α
0
0
0
0
0
• Bijunktion B :
(b) Bijunktion Cxy
Bxy = KCxyCyx
x\y
1
α
0
• Wertoperator δ : L3 → W3 :
Für Aussagevariablen x gilt

 1 , falls
δ(x) = α , falls

0 , falls
1
1
α
0
α
α
1
α
0
0
α
1
x wahr
x neutral
x falsch
Für n-stellige Formeln gilt
δ(F (x1, ..., xn)) = F (δ(x1), ..., δ(xn)) .
• Arithmetik mit dem Wertoperator :
Falls α = 1/2 , so
δ(N x)
δ(Kxy)
δ(Axy)
δ(Cxy)
δ(Bxy)
=
=
=
=
=
1 − δ(x)
min(δ(x), δ(y))
max(δ(x), δ(y))
min(1, 1 + δ(y) − δ(x))
1 − |δ(x) − δ(y)|
Tautologien im Kalkül L3 :
Sei F ∈ L3.
1. F ist erfüllbar, falls δ(F ) = 1 für mindestens eine Belegung
2. F ist allgemeingültig (Tautologie), falls δ(F ) = 1 für alle
Variablenbelegungen
3. F ist ungültig, falls δ(F ) = 1 für keine Variablenbelegung
Folgerung : F ist Tautologie, falls F ⇐⇒ 1 gilt. Die Menge
aller Tautologien in L3 heiße T(L3) (Tautologienmenge).
F1, F2, F3 ∈ T(L3)
Beispiele
F1 = Cxx
F2 = CN N xx
F3 = CKxyN AN xN y
Wertetafel für Formel F3 :
Sei Rxy := AN xN y. Dann ist F3 := CKxyN Rxy .
x
1
1
1
y N x N y Rxy N Rxy Kxy F3
1 0
0
0
1
1
1
α 0
α
α
α
α
1
0 0
1
1
0
0
1
α 1
α α
α 0
α
α
α
0
α
1
α
α
1
α
α
0
α
α
0
1
1
1
0 1
0 α
0 0
1
1
1
0
α
1
1
1
1
0
0
0
0
0
0
1
1
1
Verhältnis der Logiken L3 und A2 :
• Frage: Sind F1, F2, F3 auch Tautologien in A2 ?
Satz
T(L3) ⊆ T(A2) , d.h. ist F ∈ L3 eine Tautologie in L3, so ist
F ∈ A2 auch Tautologie in A2 .
□
• Frage: Ist T(L3) = T(A2) ?
Gegenbeispiel
F4 = N KxN x ist keine Tautologie in L3 :
x N x KxN x F4
1
α
0
0
α
1
0
α
0
1
α
1
F4 = ¬(x ∧ ¬x) ist jedoch Tautologie in A2 :
x ¬x x ∧ ¬x F4
0 1
0
1
1 0
0
1
Die intuitionistische Logik H3
A. Heyting: Die formalen Regeln der intuitionistischen Logik.
(Berlin 1930)
Wahrheitswertemenge :
W3 = {1, β, 0} = {wahr , unbestimmt , falsch}
Syntax aussagenlogischer Formeln F ∈ H3 :
1. Aussagenvariablen p, q, r, s, t, ..., x, y, z, p1, p2, ... sind Formeln.
2. Ist x eine Formel, so auch N x (Negation).
3. Sind x, y Formeln, so auch
- Cxy (Subjunktion)
- Axy (Adjunktion, Disjunktion)
- Kxy (Konjunktion)
- Bxy (Bijunktion).
4. Nur die durch 1.,2. und 3. definierten Zeichenreihen sind Formeln.
Beispiele
(wie in Kalkül L3 )
F0
F1
F2
F3
=
=
=
=
KxN y
Cxx
CN N xx
CKxyN AN xN y
Semantik der Basisjunktoren N und C :
(a) Negation N x
x Nx
1 0
β 0
0 1
(b) Subjunktion Cxy
x\y
1
β
0
1
1
1
1
β
β
1
1
0
0
0
1
Abgeleitete Junktoren A und K : (wie in Kalkül L3)
Axy = CCxyy
Kxy = N AN xN y
(c) Adjunktion Axy
x\y
1
β
0
1
1
1
1
β
1
β
β
(d) Konjunktion Kxy
x\y
1
β
0
0
1
1
0
1
1
1
0
β
1
1
0
0
0
0
0
Tautologien im Kalkül H3 :
Eine Formel F ist Tautologie, falls F ⇐⇒ 1 gilt.
Beispiele
F1 = Cxx
ist Tautologie in H3 .
F2 = CN N xx ist keine Tautologie in H3 :
x N x N N x F2
1
β
0
0
0
1
1
1
0
1
β
1
F4 = N KxN x ist Tautologie in H3 und A2 , aber nicht in L3 !
Wertetafel in H3 :
x N x KxN x F4
1
β
0
0
0
1
Frage:
Ist F3 auch Tautologie in H3 ?
0
0
0
1
1
1
⇒ Übung !
Zusammenfassung der Beispiele in 3 Logikkalkülen :
Fi
F1
F2
F3
F4
=
=
=
=
Cxx
CN N xx
CKxyN AN xN y
N KxN x
A2
L3
H3
Taut.
Taut.
Taut.
Taut.
Taut.
Taut.
Taut.
keine T.
Taut.
keine T.
?
Taut.
Die vierwertige Logik L4
(J.Lukasiewicz, Oxford 1951)
Zielsetzung :
T(L4) = T(A2)
Syntax des Kalküls L4 :
• Wahrheitswertemenge :
W4 = {1, α, β, 0} mit 1 ≡ wahr, 0 ≡ falsch
Häufig : α = 2/3 , β = 1/3
• Syntax der Formeln F ∈ L4 : wie in Kalkül L3
Semantik des Kalküls L4 :
• Basisjunktoren N und C :
(a) Negation N x
x Nx
1 0
α β
β α
0 1
(b) Subjunktion Cxy
x\y
1
α
β
0
1
1
1
1
1
α
α
1
α
1
β
β
β
1
1
0
0
β
α
1
• Abgeleitete Junktoren A und K : (wie in L3)
Axy = CCxyy
Kxy = N AN xN y
Tautologien im Kalkül L4 :
Eine Formel F ∈ L4 ist Tautologie, falls F ⇐⇒ 1 gilt.
Beispiele
(s.o.)
F1 = Cxx Tautologie in A2, L3, H3
F2 = CN N xx keine Tautologie in H3
F4 = N KxN x keine Tautologie in L3.
x N x N N x F2
1
α
β
0
0
β
α
1
1
α
β
0
1
1
1
1
x N x KxN x F4
1
α
β
0
Resultat :
0
β
α
1
0
0
0
0
1
1
1
1
F1, F2, F4 ∈ T(L4)
Frage : Ist jede Tautologie von A2 auch Tautologie von L4 ?
Satz :
Sei F = F (¬, →) eine Tautologie in A2 . Ersetzt man überall ¬x
durch N x und x → y durch Cxy , so ist F auch eine Tautologie in
L4 .
□
Die Fuzzy–Logik
Fuzzy–Konzept :
• “fuzzy“ - unscharf, vage, verschwommen
Fuzzy–Konzept : exakter Ansatz, um die Unschärfe mathematisch zu fassen und damit exakt umzugehen
• Begründer : Lofti Asker Zadeh : Fuzzy Sets (1965)
• Hauptanwendungsgebiete :
Steuer- und Regelungstechnik, Expertensysteme
• “Fuzzyfizierung“ : Anwendung des Fuzzy-Prinzips auf klassische
Gebiete
(1)
(2)
(3)
(4)
Mengentheorie
Relationen
Zahlen
Aussagenlogik
⇒
⇒
⇒
⇒
Fuzzy-Mengen
Fuzzy-Relationen
Fuzzy-Arithmetik
Fuzzy-Logik
Fuzzy-Aussagen :
Fuzzy-Aussagen x wird ein Wahrheitswert
δ(x) ∈ [0, 1] ⊂ R
aus der Wahrheitswertemenge W = [0, 1] eindeutig zugeordnet.
Bezeichnung des Kalküls mit F L1.
Syntax der Fuzzy-Logik F L1 :
• Alphabet (Zeichenmenge) C :
C = {1, 0, ¬, ∧, ∨, →, ↔, ), (, a, b, c, ...}
• Wortmenge über C : Die Menge aller endlichen Zeichenfolgen
mit Elementen aus C heißt Wortmenge W (C) über C.
• Konstruktionsregeln : Sei Ω ⊆ W (C) die Menge der Ausdrücke. Folgende Konstruktionsvorschriften führen zu zulässigen
fuzzy-logischen Ausdrücken (Formeln) :
– 1, 0 ∈ Ω
– a, b, c, ..., x, y, z, a1, a2, ... ∈ Ω (Fuzzy-Aussagenvariablen)
– Mit H, K ∈ Ω sind auch (H) ∈ Ω , ¬H ∈ Ω , (H ∧ K) ∈
Ω , (H ∨ K) ∈ Ω, (H → K) ∈ Ω , (H ↔ K) ∈ Ω .
– Äußerste Klammern um einen Ausdruck können entfallen, wenn
dieser nicht mit einem anderen Ausdruck verknüpft wird.
– Für die Junktoren werden folgende Prioritäten erklärt:
(1) ¬ (2) ∧ , ∨ (3) →
(4) ↔
Die aufgrund der Prioritäten entbehrlichen Klammern können
entfallen.
– Bei nacheinander auftretenden ∨ bzw. ∧ k?nnen die Klammern entfallen (Assoziativität).
– Keine andere Zeichenkette aus W (C) heißt Ausdruck.
Semantik der Fuzzy–Logik F L1 :
• Wahrheitswert :
Mit dem Wertoperator δ : Ω −→ [0, 1] wird jedem Ausdruck
F eindeutig ein Wahrheitswert δ(F ) zugeordnet. Bei gegebenen
Werten δ(xi) gilt für den n-stelligem Ausdruck F (x1, x2, ..., xn)
δ(F (x1, x2, ..., xn)) = F (δ(x1), δ(x2), ..., δ(xn)) .
• Bewertung der Junktoren :
(1)
(2)
(3)
(4)
(5)
Negation :
Konjunktion :
Disjunktion :
Subjunktion :
Bijunktion :
δ(¬x) = 1 − δ(x)
δ(x ∧ y) = min(δ(x), δ(y))
δ(x ∨ y) = max(δ(x), δ(y))
δ(x → y) = min(1, 1 + δ(y) − δ(x))
δ(x ↔ y) = 1 − |δ(x) − δ(y)|
Fuzzy-logische Tautologien :
Ein Ausdruck F ∈ Ω heißt
• fuzzy-logisch allgemeingültig (Tautologie), wenn δ(F ) = 1 für
alle Belegungen der Variablen gilt
• fuzzy-logisch erfüllbar, wenn es eine Belegung der Variablen mit
δ(F ) = 1 gibt.
• fuzzy-logisch unerfüllbar, wenn es keine Belegung der Variablen
mit δ(F ) = 1 gibt.
Fuzzy-logische äquivalenz und Implikation :
1. Äquivalenz: Ist mit F, G ∈ Ω die Bijunktion F ↔ G allgemeingültig, so schreibt man die fuzzy-logische äquivalenz F ⇐⇒ G
.
2. Implikation: Ist mit F, G ∈ Ω die Subjunktion F → G allgemeingültig, so schreibt man die fuzzy-logische Implikation F =⇒ G
.
Fuzzy-logisches Entscheidungsproblem :
Gesucht ist ein endlicher Algorithmus (Entscheidungsverfahren), mit
dem von jedem syntaktisch zulässigen Ausdruck F ∈ Ω entschieden
werden kann, ob er eine Tautologie ist oder nicht.
Beispiel
a ↔ b ⇔ (a → b) ∧ (b → a)
Herunterladen