3.0 VU Formale Modellierung Verortung in der Landschaft der

Werbung
Verortung in der Landschaft der Bachelorstudien
3.0 VU Formale Modellierung
Gernot Salzer
unter Mitwirkung von
und
Lara Spendier
Ch. Fermüller, R. Freund, B. Gramlich, M. Kronegger, M. Oswald
sowie
Modul „Modellierung“
Modul „Gl. digitaler Systeme“
Medieninformatik & Visual Computing
Medizinische Informatik
Software & Information Engineering
Wirtschaftsinformatik
Technische Informatik
3.0 VU Formale Modellierung
3.0 VU Formale Modellierung
3.0 VU Datenmodellierung
3.0 VU Grundlagen digitaler
Systeme
3.0 VU Objektorientierte
Modellierung
22 TutorInnen
„3.0“ . . . 3 Ects = 75 Arbeitsstunden
Institut für Computersprachen
Arbeitsbereich Theoretische Informatik und Logik
Formale Modellierung ist Teil der Studieneingangs- u. Orientierungsphase.
Wintersemester 2011/2012
Voraussetzung für die Lehrveranstaltungen ab dem 3.Semester.
Nur zwei Wiederholmöglichkeiten.
1
Formale Modellierung – Lehrziele und Inhalt
2
Was Sie heute erwartet
In dieser Lehrveranstaltung lernen Sie
. . . die wichtigsten formalen Spezifikationsmethoden kennen.
. . . Sachverhalte mit diesen Methoden zu modellieren.
. . . formal-mathematischen Beschreibungen zu lesen und zu
verstehen, insbesondere die formale Definition der Methoden selbst,
wie sie in der Fachliteratur üblich ist.
1. Organisatorisches
2. Was bedeutet Modellierung?
3. Aussagenlogik
Themengebiete:
3.1. Was ist Logik?
3.2. Aussagenlogische Funktionen
3.3. Syntax und Semantik der Aussagenlogik
Aussagenlogik
Endliche Automaten, reguläre Ausdrücke und Petri-Netze
Formale Grammatiken
Prädikatenlogik als Spezifikationssprache
3
4
Anmeldung
1
2
3
4
Kommunikation
Studieneingangsgespräch (STEG): Anmeldung bis 5.10.2011
nicht erforderlich für „alte“ Studierende
TUWEL – Drehscheibe für Information und Kommunikation
Diskussionen mit uns ausschließlich über TUWEL-Forum
(keine Verwendung von TISS- oder Informatikforum)
Alle Unterlagen liegen in TUWEL oder sind dort verlinkt.
Inskription in der Studienabteilung bis 10.10.2011
=⇒ Matrikelnummer
Anmeldung zur Lehrveranstaltung in TISS bis 12.10.2011
STEG und Matrikelnummer erforderlich!
I
I
I
Eingangstest in TUWEL bis 13.10.2011
TISS-Anmeldung erforderlich!
I
I
I
I
I
Abgabe der gelösten Übungsaufgaben
Stoff: Heutige Vorlesungseinheit
Multiple-Choice-Test
80 % richtige Antworten erforderlich
Beliebig oft wiederholbar
Terminvereinbarung für die Abgabegespräche
Stellen Sie Fragen!
Ab hier nehmen Sie an der Lehrveranstaltung teil und erhalten ein Zeugnis!
TISS . . . TU Wien Informationssysteme & Services (tiss.tuwien.ac.at)
TUWEL . . . E-Learning-Plattform der TU Wien (tuwel.tuwien.ac.at)
Vorlesungspräsentation
Übungsblätter
Videoaufzeichnung der Vorlesung
weitere Materialen
Während oder nach der Vorlesung,
im TUWEL Diskussionsforum (Sie dürfen auch antworten!),
per Email an [email protected], und
5
in den wöchentlichen Sprechstunden.
Ablauf (1)
Ablauf (2)
Vorlesung
2 Abgabegespräche
6
im Zeitraum 31.10.–11.11. bzw. 21.11.–2.12.2011
jeweils Dienstag, 13:00–16:00, AudiMax
mündlich, etwa eine Stunde (gemeinsam mit 3–4 KollegInnen)
5 Termine: 4.10., 11.10., 18.10., 25.10., 8.11.2011
Terminvereinbarung über TUWEL
2 Übungsblätter
Fragen zum Stoff der Übungsblätter
Verfügbar in TUWEL ab 16.10. bzw. 6.11.2011
Abschlusstest
Abgabe der Lösungen in TUWEL bis 23.10. bzw. 13.11.2011
Textsystem oder leserliche (!) Handschrift gescannt im PDF-Format
schriftlich, etwa zwei Stunden
Korrigierte Lösungen per Email retour bis 30.10. bzw. 20.11.2011
Stellen Sie sicher, dass Ihre @student.tuwien.ac.at-Adresse
funktioniert!
1.Termin Mi, 21.12.2011, 18:00–20:00
Diskussion ist gut, Abschreiben schlecht.
Anmeldung über TISS erforderlich!
2.Termin Di, 17.1.2012, 14:00–16:00
3. und 4. Termin im Sommersemester 2012
Beurteilt werden vernünftige Lösungsversuche,
Fehler sind erlaubt.
Antritt bei mehreren Terminen möglich, falls Ergebnis nicht genügend.
Pro Antritt wird ein Zeugnis ausgestellt.
7
Nach dem 4.Termin verfallen die Übungsleistungen.
8
Beurteilung
Für positive Note erforderlich:
Was Sie heute erwartet
Punkteverteilung
min. 1 Punkt/Übungsblatt
max. 5 Punkte/Übungsblatt
min. 1 P./Abgabegespräch
max. 10 P./Abgabegespräch
min. 35 P. bei Abschlusstest
max. 70 P. bei Abschlusstest
min. 50 Punkte insgesamt
max. 100 Punkte insgesamt
(100 = 2 × 5 + 2 × 10 + 70)
Notenschlüssel:
50-61 Punkte: genügend
62-74 Punkte: befriedigend
1. Organisatorisches
2. Was bedeutet Modellierung?
3. Aussagenlogik
3.1. Was ist Logik?
3.2. Aussagenlogische Funktionen
3.3. Syntax und Semantik der Aussagenlogik
75-87 Punkte: gut
88-100 Punkte: sehr gut
Gute Taktik: 5 P./Ü-Blatt, min. 5 P. bei Gesprächen, min. 35 P. bei Test
Riskant: 1 Punkt/Ü-Blatt, 1 Punkt/Gespräch, 46 Punkte bei Abschlusstest9
Was bedeutet Modellierung?
Abstrakte, vereinfachte Darstellung eines komplexen Sachverhalts – der
„Realität“ – die nur die für relevant erachteten Aspekte darstellt.
Aspekte: Komponenten, Beziehungen zwischen Komponenten,
Eigenschaften
Zwei grundlegende Verwendungsmöglichkeiten:
Analyse komplexer Systeme:
I
I
Modell kommt nach der Realität.
Modell wird angepasst und korrigiert, bis es die Realität wiedergibt.
Kritischer Vergleich der Voraussagen des Modells mit der Realität.
Plan für die Konstruktion von Systemen:
I
I
I
Natürliche Sprachen
Basis jeder Kommunikation
Modell
I
10
Modell kommt vor dem System.
System wird angepasst und korrigiert, bis es dem Modell entspricht.
Kritischer Vergleich des Systemverhaltens mit dem Modell.
Modellierungssprachen: dienen der Beschreibung und Kommunikation des
11
Modells
bedeutenste Kulturleistung der Menschenheit
universell, vielseitig, ausdruckstark
wandlungsfähig
Ein Albtraum für Modellierung und Spezifikation!
komplex
mehrdeutig
unscharf
Jeder Mann liebt eine Frau.
Jeder Mann liebt mindestens eine Frau?
Jeder Mann liebt genau eine Frau?
Alle Männer lieben dieselbe Frau?
Es gibt genau eine Frau, und alle Männer lieben sie?
12
Formale Sprachen
Schimmel: Pilz oder Pferd?
konstruiert, „künstlich“
Hunde riechen gut. Guter Geruchssinn, oder duften sie?
eingeschränkte Ausdrucksmöglichkeiten
spezifische Anwendungsgebiete
Wieviel Geld müssen wir noch nach Griechenland schicken?
Das ist eine gute Gelegenheit, auch heute wieder klarzustellen, man soll da
gar nichts schönreden. Der Euro ist geschaffen worden als gemeinsame
Währung und [man] hat damals auch bereits bei der Einführung gewusst,
es handelt sich um Länder mit ganz verschiedenen Volkswirtschaften, ganz
unterschiedlichen Voraussetzungen in einer gemeinsamen Währungsunion.
Und durch die Wirtschaftskrise einerseits, aber anderseits natürlich auch
durch die Finanzmärkte, die Spekulation, die Globalisierung der
Finanzmärkte hat sie ja verändert, die hat sie ja noch viel stärker gemacht,
durch diese beiden Faktoren zeigen sich die Schwächen innerhalb dieses
Euro . . . (Bundeskanzler Faymann auf die Frage eines Zusehers, 30.8.2011, ORF2)
Bedeutung präzise festlegbar
Beispiele:
Mathematische Notationen
Programmiersprachen
logische Formelsprachen
Formale Modellierung/Formalisierung/Spezifikation
Übersetzung unpräziser natürlichsprachiger Problemstellungen in
unmissverständliche Beschreibungen in einer formalen Sprache
Und was genau heißt das nun?
13
Formale Modellierungssprachen in dieser Lehrveranstaltung
14
Was Sie heute erwartet
Textuelle Sprachen:
Logische Sprachen: Aussagenlogik, Prädikatenlogik
Reguläre Ausdrücke
Formale Grammatiken
1. Organisatorisches
2. Was bedeutet Modellierung?
3. Aussagenlogik
Graphische Sprachen:
Endliche Automaten
3.1. Was ist Logik?
3.2. Aussagenlogische Funktionen
3.3. Syntax und Semantik der Aussagenlogik
Petri-Netze
Kernaspekte:
Syntax: Was ist eine zulässige Äußerung in dieser Sprache?
Semantik: Was bedeuten die Äußerungen?
Ausdrucksstärke: Was kann ausgedrückt werden, was nicht?
15
16
Was ist Logik?
Falls man aber akzeptiert,
dass Mike untreu war
Neulich in der U-Bahn
und dass Untreue zur Trennung führt
„Stell dir vor, die Julia hat mit dem Mike Schluss gemacht!“
„Logisch, er hat ja was mit der Laura angefangen.“
dann ist es logisch schlüssig,
dass sich Julia von Mike trennt.
Was daran ist logisch?
Mike ist Julia untreu.
Wenn Untreue, dann Trennung.
Julia trennt sich von Mike.
Es ist nicht logisch,
dass Mike mit Laura anbandelt
x
Wenn x , dann y .
y
oder dass man bei Untreue Schluss machen muss
oder dass sich Julia von Mike trennt.
Die Logik untersucht allgemeine Prinzipien korrekten Schließens.
Diese Aussagen können zutreffen oder auch nicht, sie sind aber nicht
„logisch“.
17
Schlussfolgerungen (Inferenzen)
Alle Menschen sind sterblich.
Sokrates ist ein Mensch.
Sokrates ist sterblich.
)
Alle US-Präsidenten sind in der USA geboren.
Schwarzenegger ist US-Präsident.
Schwarzenegger ist in der USA geboren.
Prämissen, Annahmen
Konklusion, Folgerung
Clipart courtesy FCIT
Die Prämissen sind durch „und“ verbunden.
Die Linie bedeutet „daher“.
Wahre Prämissen, wahre Konklusion.
Gültige Inferenz: Die Konklusion folgt logisch aus den Prämissen.
eine wahre und eine falsche Prämisse
falsche Konklusion
trotzdem korrekte Inferenz!
Zugrundeliegende Inferenzregel
Alle x sind y .
z ist ein x .
z ist y .
Alle geraden Zahlen sind durch 2 teilbar.
4 ist eine gerade Zahl.
4 ist durch 2 teilbar.
wahre Prämissen, wahre Konklusion
gültige Inferenz
Inferenzmuster identisch mit vorigem Beispiel
18
19
x . . . Mensch, US-Präsident, gerade Zahl
y . . . sterblich, in USA geboren, durch 2 teilbar
z . . . Sokrates, Schwarzenegger, 4
x , y , z: Platzhalter (Variablen) für Eigenschaften, Individuen, . . .
Die Logik befasst sich mit den Inferenzregeln.
Das Anwendungsgebiet bestimmt den Wertebereich der Variablen und
die Wahrheit der elementaren Aussagen.
20
Gültigkeit von Inferenzregeln
Alle Menschen sind sterblich.
Sokrates ist sterblich.
Sokrates ist ein Mensch.
Unzulässige Inferenzen
Alle Menschen sind sterblich.
Sokrates ist sterblich.
Sokrates ist ein Mensch.
Sokrates ist ein Mensch.
Sokrates ist sterblich.
Alle Menschen sind sterblich.
Alle x sind y .
Inferenzregel: z ist y .
z ist ein x .
Diese Regel erfüllt nicht das Kriterium.
Gegenbeispiel: x = Ball, y = rund, z = Sonne
wahre Prämissen
Alle Fußbälle sind rund.
Die Sonne ist rund.
Die Sonne ist ein Fußball.
wahre Konklusionen
aber trotzdem keine zulässigen Inferenzen!
Kriterium für die Gültigkeit von Inferenzregeln
wahr
wahr
falsch
Die Inferenzregel ist daher nicht gültig,
obwohl sie gelegentlich zu wahren Konklusionen führt.
Aber eben nicht immer!
Immer wenn alle Prämissen wahr sind, ist auch die Konklusion wahr.
Äquivalentes Kriterium (Umkehrung)
Immer wenn die Konklusion falsch ist, ist mindestens eine Prämisse falsch.
21
22
Logische Junktoren (Operatoren, Konnektive, Funktionen)
Quantoren
. . . ermöglichen die Bildung zusammengesetzter Aussagen,
so wie Addition und Subtraktion bei arithmetischen Ausdrücken.
. . . ermöglichen Aussagen über die Anzahl betroffener Individuen,
Zeitpunkte etc.
Wenn Feiertag ist oder der Professor krank ist,
findet die Vorlesung nicht statt.
Jeder Mann liebt eine Frau.
Wertebereiche: Männer (x ) , Frauen (y )
„es ist Feiertag“ (x ), „Prof ist krank“ (y ), „VO findet statt“ (z)
. . . elementare Aussagen aus dem Uni-Milieu
Logische Struktur:
„Für alle x gibt es mindestens ein y , sodass x y liebt."
Logische Struktur: „Wenn x oder y , dann nicht z“
Quantoren: für alle, mindestens ein
Junktoren: wenn-dann, oder, nicht
Weitere Quantoren: einige, viele, mindestens fünf, höchstens drei, immer,
manchmal, irgendwann später, . . .
Weitere Junktoren in . . .
der Aussagenlogik: und, entweder-oder, genau dann-wenn, . . .
Zeitlogiken: morgen, gestern, im nächsten Moment, bis, . . .
Modallogiken: notwendigerweise, möglicherweise, . . .
...
23
24
Komponenten einer Logik
Unterscheidung von Logiken
logische Symbole, Variablen:
notwendig für kompakte, übersichtliche Schreibung
Syntax: Regeln für Wohlgeformtheit
Wann ist eine Folge logischer Symbole eine Formel?
Semantik: Bedeutung von Formeln
Welche Wahrheitswerte gibt es?
Wann ist eine Formel wahr, wann falsch?
Konsequenzrelation:
Wann folgt eine Formel logisch aus anderen Formeln?
Inferenzregeln (logischer Kalkül)
Wie lassen sich Formeln beweisen?
25
Klassische Aussagenlogik (Propositionallogik)
. . . nach Wahrheitswerten:
Zweiwertige Logik: wahr/falsch
Mehrwertige Logiken: wahr/falsch/unbekannt/widersprüchlich, . . .
Fuzzy logic: [0,1] (alle reellen Zahlen zwischen 0 und 1)
. . . nach Quantoren:
Aussagenlogik: keine Quantoren
Quantifizierte Aussagenlogik: Quantoren über Aussagenvariablen
Prädikatenlogik: Quantoren über Individuenvariablen
Logiken höherer Stufen: Quantoren über Funktionen und Prädikate
. . . nach den Ausdrucksmöglichkeiten:
Elementare Logik: und, oder, nicht, für alle, . . .
Zeitlogiken: im nächsten Moment, für immer, irgendwann später, . . .
Modallogiken: „ich glaube/weiß, dass“, „es ist möglich/notwendig,
dass“, . . .
26
. . . nach wahren/beweisbaren Formeln, nach Kalkülen, . . .
Was Sie heute erwartet
zwei Wahrheitswerte: wahr/falsch, true/false, verum/falsum, 1/0,
ein/aus, . . .
Aussagenvariablen, die wahr oder falsch sein können
elementare Operatoren wie „und“, „oder“, „nicht“, . . .
1. Organisatorisches
keine Quantoren
2. Was bedeutet Modellierung?
3. Aussagenlogik
Geht zurück auf die Antike
3.1. Was ist Logik?
3.2. Aussagenlogische Funktionen
3.3. Syntax und Semantik der Aussagenlogik
Grundlegend für
Philosophie
Mathematik
Informatik
Clipart courtesy FCIT
Aristoteles
384–322 v.Chr.
27
28
Negation
Konjunktion
Ich gehe nicht ins Kino.
Der Himmel ist blau und die Sonne scheint.
Ist falsch, wenn ich ins Kino gehe, und wahr andernfalls.
Trifft nur zu, wenn jede der beiden Teilaussagen wahr ist.
x
1
1
0
0
x not x
1
0
1
0
Andere Bezeichnung: non
Symbole: ¬x , −x , ∼x , x 0 , !x , x , Nx , . . .
Logikgatter:
y x and y
1
1
0
0
1
0
0
0
Andere Bezeichnung: et
1
Symbole: x ∧ y , x · y , xy , x &y , Kxy , . . .
Logikgatter:
&
29
30
Disjunktion, Alternative
Ausschließende Disjunktion (Antivalenz)
Ich verbringe den Urlaub in Italien oder in Kroatien.
Ich fahre entweder Auto oder höre Musik.
(Auf beides gleichzeitig kann ich mich nicht konzentrieren.)
Nur falsch, wenn ich in keines der beiden Länder fahre.
x
1
1
0
0
Trifft zu, wenn ich genau eines von beidem tue (aber nicht beides).
y x or y
1
1
0
1
1
1
0
0
x
1
1
0
0
Andere Bezeichnung: vel
Andere Bezeichnungen: exor, aut
Symbole: x ∨ y , x + y , x | y , Axy
Logikgatter:
y x xor y
1
0
0
1
1
1
0
0
Symbole: x 6≡ y , x ⊕ y , x 6⇔ y , x 6↔ y , Jxy , . . .
≥1
Logikgatter:
31
=1
32
Äquivalenz
Implikation
Ich springe dann (und nur dann), wenn du es auch tust.
Wenn/Falls ich ins Kino gehe, (dann) esse ich Popcorn.
Trifft zu, wenn beide springen oder keiner.
Falsch, wenn ich im Kino kein Popcorn esse, und wahr, wenn doch.
Keine Festlegung betreffend Popcorn außerhalb des Kinos, daher auch in
diesen Fällen wahr.
x
1
1
0
0
y x iff y
1
1
0
0
0
1
0
1
x
1
1
0
0
y x implies y
1
1
0
0
1
1
0
1
„Verum ex quodlibet“: x implies 1 = 1
„Ex falso quodlibet“: 0 implies y = 1
Andere Formulierungen: x genau dann wenn y , x if and only if y , x ist
notwendig und hinreichend für y , x ist äquivalent zu y
Andere Formulierungen: aus x folgt y , x impliziert y , x hinreichend für y
Andere Bezeichnungen: eq, äq, xnor, nxor, . . .
Andere Bezeichnung: seq (sequi)
Symbole: x ≡ y , x ⇔ y , x ↔ y , Exy , . . .
Symbole: x ⊃ y , x ⇒ y , x → y , Cxy , . . .
Logikgatter:
=1
33
Implikation (Umkehrung)
x
x
y
y
Negierte Konjunktion
x
1
1
0
0
Ich esse Popcorn, wenn/falls ich ins Kino gehe.
x
1
1
0
0
Logikgatter:
y x if y
1
1
1
0
1
0
0
1
y x and y
1
1
0
0
1
0
0
0
x nand y
0
1
1
1
Andere Bezeichnungen:
Sheffer-Strich, nd (J.Nicod)
≥1
34
Negierte Disjunktion
x
1
1
0
0
y x or y
1
1
0
1
1
1
0
0
x nor y
0
0
0
1
Andere Bezeichnungen:
Peirce-Pfeil, sh (H.M.Sheffer)
Symbole: x ↑ y , x | y , x /y , Dxy , . . . Symbole: x ↓ y , Xxy , . . .
Logikgatter:
Andere Formulierungen: x folgt aus y , x wird von y impliziert, x ist
notwendig für y
&
Logikgatter:
≥1
Symbole: x ⊂ y , x ⇐ y , x ← y , . . .
Logikgatter:
x
x
y
y
≥1
35
36
Implikation oder Äquivalenz?
Wenn Feiertag ist oder der Professor krank ist,
findet die Vorlesung nicht statt.
Natürlichsprachliche Implikationen sind oft logische Äquivalenzen.
Logische Struktur: „Wenn x oder y , dann nicht z.“
Logische Funktion: (x or y ) implies not z
Wenn du mein Auto wäscht, bekommst du 10 Euro.
implies (or (x , y ), not(z))
Und was, wenn ich es nicht tue?
Nur ein Logiker hält in diesem Fall 10 Euro für möglich.
Alle anderen interpretieren den Satz als:
Logische Formel: (x ∨ y ) ⊃ ¬z
Prefix-Notation: C A x y N z
Algebraische Notation: (x + y ) → z
xy +z
x
Logischer Schaltkreis:
y
z
Du bekommst 10 Euro dann und nur dann, wenn du das Auto wäscht.
x
Der positive Erfolg bei allen Lehrveranstaltungen und Prüfungen der
Studieneingangs- und Orientierungsphase berechtigt zur Absolvierung der
weiteren Lehrveranstaltungen und Prüfungen sowie zum Verfassen der im
Curriculum vorgesehenen Bachelor- oder Diplomarbeiten.
≥1
y
≥1
z
Universitätsgesetz 2002, Stand Bgbl I Nr. 13/2011, § 66(1a)
37
Logiker: Keine Einschränkung bei nicht bestandener STEOP.
Ministerium: Restliches Studium dann und nur dann, wenn STEOP.
38
Inklusive oder exklusive Disjunktion?
Der Besitz eines Führerscheins berechtigt zum Lenken eines Autos.
Ohne Führerschein keine Berechtigung? (Äquivalenz)
Auch nicht auf Privatgelände? (Doch nur Implikation?)
Natürlichsprachliche Disjunktionen sind meist ausschließend gemeint.
Falls du mich suchst: Ich bin zu Hause oder in der Arbeit.
Physikalisch kann ein Körper nicht an zwei Orten gleichzeitig sein.
Andererseits: Das Büro kann Teil der Wohnung sein.
In formalen Kontexten wird strikt zwischen Implikation und Äquivalenz
unterschieden. „Implikation = halbe Äquivalenz“
„Tee oder Kaffee?“ – „Beides, bitte!“
Wenn eine Zahl durch 4 teilbar ist, ist sie gerade.
Eher unüblich. Aber: Der Gast ist König.
4-Teilbarkeit ist eine hinreichende Bedingung für Geradheit, aber keine
notwendige.
Ich besuche dich morgen oder übermorgen.
Äquivalenz führt zu einer falschen Aussage:
Ein Besuch an beiden Tagen wäre unerwartet.
Eine Zahl ist durch 4 teilbar genau dann, wenn sie gerade ist.
2 ist eine gerade Zahl, aber nicht durch 4 teilbar.
39
40
Rezept für Zweifelsfälle der aussagenlogischen Modellierung
Ich fahre entweder Auto oder höre Musik.
(Auf beides gleichzeitig kann ich mich nicht konzentrieren.)
Wirklich ein Beispiel für ausschließende Disjunktion?
1
Identifiziere die elementaren Aussagen.
2
Analysiere alle Wahrheitsbelegungen.
3
Habe ich außerhalb des Autos tatsächlich keine ruhige Minute?
Die exklusive Disjunktion ist hier als Implikation gemeint (und wird auch
so verstanden):
Wähle geeignete logische Funktionen
(unbeirrt von Intuition und natürlicher Sprache).
z = Entweder ich fahre Auto (x ) oder ich höre Musik (y ).
Wenn ich Auto fahre, höre ich nicht Musik.
x
1
1
0
0
Legt nicht fest, was ich außerhalb des Autos mache.
y
1
0
1
0
z x or y
1
0
1
1
1
1
0
1
x xor y
0
1
1
0
x implies not y
0
1
1
1
x nand y
0
1
1
1
x implies not y : Wenn ich Auto fahre, dann höre ich nicht Musik.
41
nor
iff
xor
implies
1
0
0
0
∧
0
1
1
1
↑
1
1
1
0
∨
0
0
0
1
↓
1
0
0
1
≡
0
1
1
0
6
≡
1
0
1
1
⊃
0
1
0
0
6
⊃
Eine Menge von Funktionen heißt vollständig (für eine Funktionsklasse),
wenn damit alle Funktionen (der Klasse) ausgedrückt werden können.
1
1
0
1
⊂
0
0
1
0
6
⊂
{not, and, or} ist funktional vollständig.
Begründung siehe später.
{not, and} ist funktional vollständig.
{not, and, or} ist vollständig (siehe oben).
or kann durch {not, and} ausgedrückt werden kann:
x or y = not(not x and not y )
n
Es gibt 22 verschiedene n-stellige logische (Boolesche) Funktionen.
2n verschiedene Argumentkombinationen („Zeilen“)
2 Ergebnismöglichkeiten für jede Argumentkombination
2 nullstellige Funktionen (Konstanten): true (1), false (0)
4 einstellige Funktionen: not, . . .
16 zweistellige Funktionen: and, nand, or, . . .
42
Funktionale Vollständigkeit
if
or
0
1
¬
y
1
0
1
0
nand
0
⊥
x
1
1
0
0
and
false
1
>
x
1
0
not
true
Aussagenlogische Funktionen – Zusammenfassung
x nand y : Es kommt nicht vor, dass ich Auto fahre und Musik höre.
43
x
1
1
0
0
y not x
1
0
0
0
1
1
0
1
not y
0
1
0
1
not x and not y
0
0
0
1
not(not x and not y )
1
1
1
0
44
Was Sie heute erwartet
{nand} ist funktional vollständig.
{not, and} ist funktional vollständig (siehe oben).
not x = x nand x
x and y = not(x nand y ) = (x nand y ) nand (x nand y )
1. Organisatorisches
Praktisch relevant: nand ist einfach als Halbleiter-Schaltkreis realisierbar.
Somit ist jede logische Funktion als Schaltkreis realisierbar.
2. Was bedeutet Modellierung?
3. Aussagenlogik
Die Mengen {nor}, {not, or}, {not, implies} und {implies, false} sind
ebenfalls funktional vollständig.
3.1. Was ist Logik?
3.2. Aussagenlogische Funktionen
3.3. Syntax und Semantik der Aussagenlogik
45
Aussagenlogik – Syntax
Ausdrücke wie x and y und (x nand y ) nand (x nand y ) sind
ununterscheidbar (gleiche Funktion!). Um Aussagen über ihre Form treffen
zu können, benötigen wir eine Formelsprache.
(A3) ¬F ∈ A, wenn F ∈ A.
2
A und B sind Formeln.
(A ↑ B) ist eine Formel,
I
Variablen sind Formeln.
> und ⊥ sind Formeln.
¬F ist eine Formel, falls F eine ist.
(F ∗ G) ist eine Formel, falls F und G welche sind und ∗ ein binäres Op.symbol ist.
aussagenlogische Variablen
47
da A und B Formeln sind (Punkt 1)
und ↑ ein binäres Operatorsymbol ist.
((A ↑ B) ↑ (A ↑ B)) ist eine Formel,
I
(A4) (F ∗ G) ∈ A, wenn F , G ∈ A und ∗ ∈ {∧, ↑, ∨, ↓, ≡, 6≡, ⊃, ⊂}.
V = {A, B, C , . . . , A0 , A1 , . . . }
1
3
Die Menge A der aussagenlogischen Formeln ist die kleinste Menge, für
die gilt:
(A2) {>, ⊥} ⊆ A
((A ↑ B) ↑ (A ↑ B)) ist eine aussagenlogische Formel, weil:
I
Syntax aussagenlogischer Formeln
(A1) V ⊆ A
46
I
da (A ↑ B) und (A ↑ B) Formeln sind (Punkt 2)
und ↑ ein binäres Operatorsymbol ist.
(A1)
(A4)
(A4)
A ∧ B ist keine aussagenlogische Formel.
∧ kann nur aufgrund von A4 in einer Formel vorkommen.
Dann muss es aber auch ein Klammernpaar geben.
A ∧ B enthält ∧, aber keine Klammern.
Die Definition der Formelsyntax ist Beispiel einer induktiven Definition.
48
Induktive Definition unendlicher Mengen
Induktive Definition der geraden Zahlen
Stufenweise Konstruktion der gerade Zahlen:
G ist die kleinste Menge, für die gilt:
0∈G
0 ist eine gerade Zahl: G0 = {0}
Wenn n ∈ G, dann auch n + 2 ∈ G.
Addiert man zu geraden Zahlen 2, erhält man wieder gerade Zahlen:
G1 = G0 ∪ { n + 2 | n ∈ G0 } = {0, 2}
G2 = G1 ∪ { n + 2 | n ∈ G1 } = {0, 2, 4}
Gi+1 = Gi ∪ { n + 2 | n ∈ Gi } = {0, 2, 4, . . . , 2(i + 1)}
Die geraden Zahlen sind alle so konstruierten Zahlen:
S
G = limi→∞ Gi = i≥0 Gi
Kompakte Definition, aber nicht konstruktiv:
In den Bedingungen kommt die zu definierende Menge G selbst vor.
Beiden Methoden definieren dieselbe Menge.
(Nicht offensichtlich, Beweis erforderlich!).
Umständlich, aber konstruktiv: Beginnend mit G0 lassen sich systematisch
alle geraden Zahlen berechnen.
G0 ⊆ G
Wenn n ∈ G, dann auch n + 2 ∈ G.
49
Induktive Definition – allgemeine Situation
Anmerkung: Der Zusatz „ist kleinste Menge“ ist wesentlich.
Die natürlichen Zahlen erfüllen ebenfalls beide Bedingungen, sind aber
nicht die kleinste derartige Menge.
50
A ist die kleinste Menge, für die gilt:
U . . . Universum, Menge aller relevanten Elemente
M0 ⊆ U . . . Menge von Grundelementen
f1 : U n1 7→ U, f2 : U n2 7→ U, . . . Konstruktionsfunktionen
(A1) V ⊆ A
(A2) {>, ⊥} ⊆ A
(A3) ¬F ∈ A, wenn F ∈ A.
Stufenweise Konstruktion der Menge M
(A4) (F ∗ G) ∈ A, wenn F , G ∈ A und ∗ ∈ {∧, ↑, ∨, ↓, ≡, 6≡, ⊃, ⊂}.
Mi+1 = Mi ∪ { f1 (x1 , . . . , xn1 ) | x1 , . . . , xn1 ∈ Mi }
∪ { f2 (x1 , . . . , xn2 ) | x1 , . . . , xn2 ∈ Mi }
∪ ···
S
M = limi→∞ Mi = i≥0 Mi
U . . . Menge aller Zeichenketten bestehend aus Variablen,
Operatorsymbolen und Klammern
V ∪ {>, ⊥} . . . Grundelemente
f¬ (F ) = ¬F
f∧ (F , G) = (F ∧ G)
f↑ (F , G) = (F ↑ G)
...
f⊂ (F , G) = (F ⊂ G)
Induktive Definition der Menge M
M ist die kleinste Menge, für die gilt:
M0 ⊆ M
Wenn x1 , . . . , xn1 ∈ M, dann f1 (x1 , . . . , xn1 ) ∈ M.
Wenn x1 , . . . , xn2 ∈ M, dann f2 (x1 , . . . , xn2 ) ∈ M.
...
Definiere die Menge induktiv.
Konstruiere benötigte Elemente stufenweise.
Beobachtung:
G ist die kleinste Menge mit diesen beiden Eigenschaften.
Daher: „Use the best of both worlds.“
51













. . . Konstruktionsfunktionen
52
Aussagenlogik – Semantik
Wert von ((A ∧ ¬B) ⊃ ⊥) für I(A) = 1 und I(B) = 0
B = {1, 0} . . . Wahrheitswerte
I : V 7→ B . . . Wahrheitsbelegung, Interpretation
I = { I | I : V 7→ B } . . . Menge aller Interpretationen
valI (((A ∧ ¬B) ⊃ ⊥)) =
=
=
=
=
=
I(A) = I(C ) = 1 und I(v ) = 0 sonst
„Die elementaren Aussagen A und C sind wahr, die übrigen sind falsch.“
Semantik aussagenlogischer Formeln
Wahrheitstafel
Der Wert einer Formel in einer Interpretation I wird festgelegt durch die
Funktion val : I × A 7→ B:
Kompakte Berechnung der Formelwerte für alle Interpretationen
Unter jedem Operator steht der Wert der entsprechenden Teilformel.
(v1) valI (A) = I(A) für A ∈ V;
(v2) valI (>) = 1 und valI (⊥) = 0;
(v3) valI (¬F ) = not valI (F );
(v4) valI ( (F ∗ G) ) = valI (F ) ~ valI (G),
wobei ~ die logische Funktion zum Operator ∗ ist.
53
x ¬
1 0
0 1
A B ((A ∧ ¬ B) ⊃ ⊥)
1 0 01 1 0
1 1
1 1 10 0 0
1 0
0 0 01 1 0
0 1
0 0
0 0 10 1 0
x
1
1
0
0
y ∧ ⊃
1 1 1
0 0 0
1 0 1
0 0 1
54
((A ∧ ¬B) ⊃ ⊥) ist erfüllbar und widerlegbar.
Eine Formel F heißt
gültig, wenn valI (F ) = 1 für alle I ∈ I;
A B ((A ∧ ¬ B) ⊃ ⊥)
1 1
1 0 01 1 0
1 0
1 1 10 0 0
0 1
0 0 01 1 0
0 0
0 0 10 1 0
erfüllbar, wenn valI (F ) = 1 für mindestens ein I ∈ I;
widerlegbar, wenn valI (F ) = 0 für mindestens ein I ∈ I;
unerfüllbar, wenn valI (F ) = 0 für alle I ∈ I.
Folgerungen:
Eine gültige Formel ist erfüllbar, aber weder widerlegbar noch
unerfüllbar.
Eine erfüllbare Formel kann gültig oder widerlegbar sein, aber nicht
unerfüllbar.
Eine widerlegbare Formel kann erfüllbar oder unerfüllbar sein, aber
nicht gültig.
Eine unerfüllbare Formel ist widerlegbar, aber weder gültig noch
erfüllbar.
F ist gültig/erfüllbar/widerlegbar/unerfüllbar genau dann,
wenn ¬F unerfüllbar/widerlegbar/erfüllbar/gültig ist.
valI ((A ∧ ¬B)) implies valI (⊥)
(valI (A) and valI (¬B)) implies 0
(1 and not valI (B)) implies 0
(1 and not 0) implies 0
(1 and 1) implies 0
1 implies 0 = 0
Die Formel ist
erfüllbar (daher nicht unerfüllbar),
widerlegbar (daher nicht gültig).
(A ∨ ¬A) ist gültig und erfüllbar.
A (A ∨ ¬ A)
1 1 1 01
0 0 1 10
Die Formel ist
gültig (daher nicht widerlegbar),
erfüllbar (daher nicht unerfüllbar).
(A ∧ ¬A) ist unerfüllbar und widerlegbar.
55
A (A ∧ ¬ A)
1 1 0 01
0 0 0 10
Die Formel ist
unerfüllbar (daher nicht erfüllbar),
widerlegbar (daher nicht gültig).
56
Herunterladen