Logik Teil 1: Aussagenlogik - uni- · PDF file 2017. 2. 13. · Aussagenlogik 2...

Click here to load reader

  • date post

    18-Jan-2021
  • Category

    Documents

  • view

    0
  • download

    0

Embed Size (px)

Transcript of Logik Teil 1: Aussagenlogik - uni- · PDF file 2017. 2. 13. · Aussagenlogik 2...

  • Logik Teil 1: Aussagenlogik

  • Aussagenlogik

    2

    • Aussagenlogik behandelt die logische Verknüpfung von Aussagen 
 mittels Junktoren wie und, oder, nicht, gdw.

    • Jeder Aussage ist ein Wahrheitswert (wahr/falsch) zugeordnet

    • Man interessiert sich insbesondere für den Wahrheitswert zusammen-
 gesetzter Aussagen, z. B.:
 
 „A  oder B “ wahr gdw. A  wahr oder B  wahr
 
 A  oder B  könnten z. B. stehen für „Die Erde ist ein Planet“ oder 
 „Bremen liegt am Ganges“. Davon wird abstrahiert.

    • Die Ausdrucksstärke von Aussagenlogik ist sehr begrenzt

    • Es ergeben sich jedoch interessante algorithmische Probleme
 (z.B. das Erfüllbarkeitsproblem)

  • Übersicht Teil 1

    1.1 Grundlagen

    1.2 Normalformen und funktionale Vollständigkeit

    1.3 Erfüllbarkeit, Gültigkeit, Folgerbarkeit, Horn-Formeln

    1.4 Resolution

    1.5 Kompaktheit

    NEXT

    3

  • Syntax

    Definition Syntax Aussagenlogik

    Wir fixieren eine abzählbar unendliche Menge VAR = {x1, x2, x3, . . . } von Aussagenvariablen.

    Beispiele: ¬x1, ¬¬x3, (x1 � ¬x4), ((x1 � x3) � 1), (¬(x1 ⇥ x2) � ¬(¬x1 ⇥ ¬x2))

    Die Menge AL der aussagenlogischen Formeln ist induktiv definiert durch

    • 0, 1 ⇥ AL

    • VAR � AL

    • Wenn ⇥,� ⇥ AL, dann auch ¬⇥, (⇥ ⇤ �), (⇥ ⌅ �) in AL

    Intuitiv kann jedes xi Wahrheitswert wahr oder falsch annehmen und repräsentiert eine Aussage wie ”Bremen liegt am Ganges“.

    4

  • Sprechweisen und Konventionen

    • ¬' sprechen wir ”nicht '“ (Negation), (' _ ) sprechen wir ”' oder “ (Disjunktion), (' ^ ) sprechen wir ”' und “ (Konjunktion)

    • 1 steht für ”wahr“, 0 für ”falsch“, 0,1 sind die Booleschen Konstanten

    • Die atomaren Formeln sind {0, 1} [ VAR

    • Alle anderen Formeln sind zusammengesetzt

    • Statt x1, x2, . . . verwenden wir manchmal auch andere Symbole für Variablen, insbesondere x, y, z

    5

  • Sprechweisen und Konventionen

    Also z.B. x � y � z für ((x � y) � z)

    • Iterierte Konjunktionen und Disjunktionen sind implizit linksgeklammert

    x ^ y _ x0 ^ y0 ist nicht eindeutig, darum nicht erlaubt

    • Klammern werden weggelassen, wenn das Resultat eindeutig ist, wobei ¬ stärker bindet als � und ⇥

    Also steht z. B. ¬x ^ y für (¬x ^ y), nicht für ¬(x ^ y)

    6

  • Semantik

    Definition Semantik Aussagenlogik Eine Belegung ist eine Abbildung V : VAR ! {0, 1}. Sie definiert einen Wahrheitswert V (') für jede Formel ':

    • V (0) = 0 und V (1) = 1

    • V (¬') = 1 � V (')

    • V (' ^ ) = (

    1 falls V (') = 1 und V ( ) = 1 0 sonst

    • V (' _ ) = (

    1 falls V (') = 1 oder V ( ) = 1 0 sonst

    Wenn V (') = 1, dann sagen wir, dass ' von V erfüllt wird.

    Wir schreiben dann auch V |= ' und nennen V ein Modell von '.

    7

  • Semantik

    Beispiel:

    Dann z. B.

    Belegung V mit V (x1) = 0 und V (xi) = 1 für alle i > 1

    V ist also ein Modell von ¬(¬x1 � x2) ⇥ x3.

    V (¬x1) = 1 V (¬x1 � x2) = 1 V (¬(¬x1 � x2)) = 0 V (¬(¬x1 � x2) ⇥ x3) = 1

    8

  • Semantik Die Semantik der Junktoren als Verknüpfungstafeln:

    V (�) V (�) V (⇥ � �) 0 0 0 1 1 0 1 1

    0 0 0 1

    V (�) V (�)

    0 0 0 1 1 0 1 1

    0 1 1 1

    V (�)

    0 1

    1 0

    V (¬�) V (⇥ � �)

    Manuelle Auswertung bequem über Baumdarstellung von Formeln:

    x

    z

    y

    ¬Beispiel ¬((x � y) ⇥ z), V (x) = V (y) = 1, V (z) = 0:

    1 1

    01

    1

    0

    (alle anderen Variablen 0) _

    9

  • Iterierte Konjunktion / Disjunktion

    Bemerkung zur Notation:

    • Wir schreiben �

    i=1..n

    �i für �1 � · · · � �n (iterierte Konjunktion)

    i=1..n

    �i für �1 � · · · � �n (iterierte Disjunktion)

    • Wenn n = 0, dann

    (leere Konjunktion)

    (leere Konjunktion)

    (leere Disjunktion)

    ^

    i=1..n

    'i := 1

    _

    i=1..n

    'i := 0

    10

  • Implikation

    Weitere interessante Junktoren sind als Abkürzung definierbar, z. B.:

    ⇥ � � steht für ¬⇥ ⇥ �

    ⇥ ⇥ � steht für (⇥ � �) ⇤ (� � ⇥)

    Implikation

    Biimplikation

    V (�) V (�)

    0 0 0 1 1 0 1 1

    1 1 0 1

    V (�) V (�)

    0 0 0 1 1 0 1 1

    1 0 0 1

    V (⇥ � �) V (⇥ � �)

    Wir nehmen an, dass ¬,⇤,⌅ stärker binden als � und ⇥, x ^ y ! z steht also für (x ^ y) ! z

    11

  • Koinzidenzlemma

    Koinzidenzlemma

    Oft ist es unpraktisch, alle (unendlich viele) Variablen belegen zu müssen.

    Für den Wahrheitswert einer Formel � ist nur die Belegung derjenigen Variablen von Bedeutung, die in � vorkommen. Wir bezeichen diese mit Var(�).

    Wenn wir mit einer Formel � arbeiten, so erlaubt uns das Koinzidenzlemma, in Belegungen nur die Variablen Var(�) (also endlich viele) zu betrachten.

    Eine Belegung für � ist eine Belegung, die nur die Variablen in Var(�) belegt.

    Sei � eine Formel und V1, V2 Belegungen mit V1(x) = V2(x) für alle x � Var(�). Dann ist V1(�) = V2(�).

    Beweis per Induktion über die Struktur von '.

    12

  • Beispiel Repräsentation

    Modellierung eines Zeitplanungs-Problems (Scheduling) in Aussagenlogik

    An einer Schule gibt es drei Lehrerinnen mit folgenden Fächerkombinationen:

    Müller Schmidt Körner

    Mathe Deutsch

    Es soll folgender Lehrplan erfüllt werden:

    Klasse a) Klasse b)

    Stunde I Mathe Deutsch Stunde II Deutsch Deutsch Stunde III Mathe Mathe

    Dabei soll jede Lehrerin mindestens 2 Stunden unterrichten. T1.1

    13

  • Auswertung

    Definition Auswertungsproblem Das Auswertungsproblem der Aussagenlogik ist:

    Gegeben: Aussagenlogische Formel �, Belegung V für � Frage: Gilt V (�) = 1?

    Theorem (Komplexität Auswertungsproblem)

    Idee Algorithmus für Polyzeit:

    Das Auswertungsproblem der Aussagenlogik ist in Linearzeit lösbar.

    • Verwende rekursiven Algorithmus, der den Wahrheitswert aller Teilformeln von � bestimmt

    • Der Wahrheitswert von atomaren Formeln ist durch V gegeben, zusammengesetzte Teilformeln per Rekursion + Verknüpfungstafel

    14

  • Auswertung

    Definition Teilformeln

    Formale Definition der Teilformeln:

    Es ist nun einfach, die Details des Algorithmus auszuarbeiten (Übung!)

    15

    Sei ' eine Formel. Die Menge TF(') der Teilformeln von ' ist induktiv definiert wie folgt:

    • TF(') = {'}, wenn ' 2 {0, 1} [ Var

    • TF(¬') = {¬'} [ TF(')

    • TF(' ^ ) = {' ^ } [ TF(') [ TF( )

    • TF(' _ ) = {' _ } [ TF(') [ TF( )

    Also z. B.:

    TF(¬((x ^ y) _ z)) = {x, y, z, x ^ y, (x ^ y) _ z, ¬((x ^ y) _ z)}

  • Beachte: links stehen die Variablen aus Var('), es gibt also ? Zeilen

    Äquivalenz

    Definition Äquivalenz

    0 0 0 1 1 0 1 1

    0 0 0 1

    V (x) V (y) V (x � y) 0 0 0 1 1 0 1 1

    0 0 0 1

    V (x) V (y) V (¬(¬x � ¬y))

    Zwei Formeln ' und sind äquivalent, wenn für alle Belegungen V gilt, dass V (') = V ( ). Wir schreiben dann ' ⌘ .

    Einfacher Beweis mittels Wahrheitstafeln für Formeln ':

    16

    Z. B. gilt x ^ y ⌘ ¬(¬x _ ¬y)

    2|Var(')|

  • Äquivalenz

    Äquivalente Formeln sind austauschbar:

    Ersetzungslemma

    Beweis per Induktion über die Struktur von #.

    T1.2

    T1.3 17

    Seien ' and äquivalente Formeln, # eine Formel mit ' 2 TF(#) und #0 eine Formel, die sich aus # ergibt, indem ein beliebiges Vorkommen von ' durch ersetzt wird. Dann gilt # ⌘ #0.

    Allgemeines Vorgehen beim Induktionsbeweis: Induktionsanfang:

    Induktionsschritt: Zeige:

    Zeige die Aussage für alle atomaren Formeln # 2 {0, 1} [ VAR.

    Wenn die Aussage für #1 und #2 gilt, (Induktionsvoraussetzung, IV) dann auch für ¬#1, #1^#2 und #1_#2. (Induktionsbehauptung)

  • Äquivalenz

    Im Folgenden wollen wir einige nützliche Äquivalenzen etablieren

    Genauer gesagt handelt es sich um Äquivalenzschemata, z. B.:

    Für alle Formeln ' gilt: ' � ¬¬' Eliminieren doppelter Negation

    Beweis per Wahrheitstafel

    18

  • Äquivalenz

    De Morgansche Gesetze

    Idempotenz von Konjunktion und Disjunktion

    Kommutativität von Konjunktion und Disjunktion

    und Disjunktion

    Assoziativität von Konjunktion

    Folgende Äquivalenzen gelten für alle aussagenlogischen Formeln ⇤,�,⇥:

    • ¬(' ^ ) ⌘ ¬' _ ¬ ¬(' _ ) ⌘ ¬' ^ ¬

    • ' ^ ' ⌘ ' ' _ ' ⌘ '

    • ' ^ ⌘ ^ ' ' _ ⌘ _ '

    • ' ^ ( ^ #) ⌘ (' ^ ) ^ # ' _ ( _ #) ⌘ (' _ ) _ #

    19

  • Äquivalenz

    Mehr nützliche Äquivalenzen:

    Absorption

    Distributivgesetze

    Kontradiktion und

    T