Zum Inhalt springen
Topos Uranos

Zusammenfassung

Jede Formel bestimmt eine Wahrheitstafel; diese Lektion beweist die umgekehrte Aussage: Jede Tafel, das heißt jede Zuordnung von Wahrheitswerten zu den Zeilen, ist die Tafel einer Formel. Sie definiert die Wahrheitsfunktionen, zählt die mit nn Argumenten (22n2^{2^{n}}) und präzisiert, wann eine Formel eine von ihnen darstellt. Danach beweist sie den Satz von der funktionalen Vollständigkeit mithilfe der Tafelformel, einer Zeile für Zeile gebauten Disjunktion von Konjunktionen von Literalen, die die Lektion über Normalformen als ersten Beweis für die Existenz der disjunktiven Normalform verwenden wird. Da jede Formel des Kurses eine Zeichenkette aus Kreisen und Scheiben ist, folgt daraus ohne weitere Arbeit, dass der Peirce-Pfeil allein genügt, und es wird gezeigt, wie man mit ihm jede Funktion schreibt. Schließlich untersucht sie, welche Mengen von Junktoren genügen, um alle Funktionen darzustellen: Sie beweist ein allgemeines Kriterium, wendet es auf {¬,∧}\{\neg, \wedge\}, {¬,∨}\{\neg, \vee\}, {¬,→}\{\neg, \rightarrow\}, {↓}\{\downarrow\} und auf den Sheffer-Strich an und beweist, dass {∧,∨,→,↔}\{\wedge, \vee, \rightarrow, \leftrightarrow\} nicht genügt, weil alle seine Formeln den Wert 11 erhalten.

Lernziele

  1. Die Wahrheitsfunktionen mit nn Argumenten zählen und mithilfe der Funktionen, die sie darstellen, entscheiden, wann zwei Formeln äquivalent sind.
  2. Aus der Tafel einer Wahrheitsfunktion eine Formel konstruieren, die sie darstellt, und bei Bedarf eine kürzere äquivalente Formel suchen.
  3. Erklären, warum in der Sprache des Kurses der Peirce-Pfeil allein genügt, und allein mit ihm Formeln schreiben, die gegebene Funktionen darstellen.
  4. Beweisen, dass eine Junktorenmenge vollständig ist, indem man mit ihren Formeln den Peirce-Pfeil ausdrückt.
  5. Beweisen, dass eine Junktorenmenge nicht vollständig ist, mithilfe einer Eigenschaft, die alle ihre Formeln erhalten.

Wahrheitsfunktionen

Die Lektion über die Semantik der Aussagenlogik hat jeder Formel unter jeder Belegung einen Wahrheitswert zugeordnet und gezeigt, dass dieser Wert nur von den Werten der in ihr vorkommenden Variablen abhängt; daher hat jede Formel mit nn Variablen eine Wahrheitstafel mit 2n2^{n} Zeilen. Die Frage dieser Lektion ist die umgekehrte. Gegeben sei eine beliebige Tafel, das heißt eine willkürlich neben die 2n2^{n} Zeilen geschriebene Spalte aus Einsen und Nullen: Gibt es eine Formel, die sie als Tafel hat? Wenn das für jede Tafel gilt, hat die Sprache keine Ausdruckslücken: Alles, was sich über den Wahrheitswert von nn Aussagen in Abhängigkeit von ihren Werten sagen lässt, wird mit einer Formel gesagt. Und da in diesem Kurs jede zusammengesetzte Formel mit dem Peirce-Pfeil gebildet ist, wird die Antwort auch sagen, ob ein einziger Junktor genügt, um alles zu sagen.

Was aus den vorigen Lektionen verwendet wird

Eine Belegung ist eine Funktion vv von der Menge der Variablen {v1,v2,…}\{v_1, v_2, \ldots\} in {0,1}\{0, 1\}, wobei 11 das Wahre und 00 das Falsche ist; ihre Fortsetzung auf alle Formeln, die ebenfalls vv geschrieben wird, ist rekursiv definiert: v((φ↓ψ))=1v((\varphi \downarrow \psi)) = 1 genau dann, wenn v(φ)=0v(\varphi) = 0 und v(ψ)=0v(\psi) = 0. Aus den offiziellen Abkürzungen hat dieselbe Lektion im Satz über die Werte der abgeleiteten Junktoren den Wert jedes Junktors berechnet; mit Summen und Produkten geschrieben, sind es die folgenden, für jede Belegung vv und alle Formeln φ\varphi und ψ\psi:

v(¬φ)=1−v(φ),v((φ∧ψ))=v(φ) v(ψ),v((φ∨ψ))=v(φ)+v(ψ)−v(φ) v(ψ)v(\neg\varphi) = 1 - v(\varphi), \qquad v((\varphi \wedge \psi)) = v(\varphi)\,v(\psi), \qquad v((\varphi \vee \psi)) = v(\varphi) + v(\psi) - v(\varphi)\,v(\psi)
v((φ→ψ))=1−v(φ)+v(φ) v(ψ),v((φ↓ψ))=(1−v(φ)) (1−v(ψ))v((\varphi \rightarrow \psi)) = 1 - v(\varphi) + v(\varphi)\,v(\psi), \qquad v((\varphi \downarrow \psi)) = (1 - v(\varphi))\,(1 - v(\psi))

Außerdem gilt v((φ↔ψ))=v(φ) v(ψ)+(1−v(φ)) (1−v(ψ))v((\varphi \leftrightarrow \psi)) = v(\varphi)\,v(\psi) + (1 - v(\varphi))\,(1 - v(\psi)), was genau dann 11 ist, wenn v(φ)=v(ψ)v(\varphi) = v(\psi), und v((φ⊻ψ))=v(φ)+v(ψ)−2 v(φ) v(ψ)v((\varphi \veebar \psi)) = v(\varphi) + v(\psi) - 2\,v(\varphi)\,v(\psi), was genau dann 11 ist, wenn v(φ)≠v(ψ)v(\varphi) \neq v(\psi). Da die Werte 00 oder 11 sind, ist das Quadrat eines Wertes der Wert selbst, v(φ) v(φ)=v(φ)v(\varphi)\,v(\varphi) = v(\varphi), und ein Produkt von Werten ist genau dann 11, wenn jeder Faktor 11 ist; beide Beobachtungen werden ohne Wiederholung verwendet. Verwendet wird auch das Koinzidenzlemma: Wenn zwei Belegungen auf den Variablen von φ\varphi übereinstimmen, das heißt auf den Variablen, die Teilformeln von φ\varphi sind, geben sie φ\varphi denselben Wert. Aus der Lektion über semantische Folgerung und Äquivalenz wird die semantische Äquivalenz übernommen: φ≡ψ\varphi \eqsem \psi, wenn v(φ)=v(ψ)v(\varphi) = v(\psi) für jede Belegung vv. Schließlich gilt die Buchstabenkonvention der Lektion über die Formalisierung: pp, qq und rr bezeichnen die Variablen v1v_1, v2v_2 und v3v_3.

Wahrheitsfunktionen und ihre Anzahl

Sei nn eine natürliche Zahl. Eine Zeile aus nn Werten ist eine Folge a=(a1,…,an)a = (a_1, \ldots, a_n), in der jedes aia_i gleich 00 oder 11 ist; die Menge aller solchen Zeilen wird {0,1}n\{0, 1\}^{n} bezeichnet. Eine Wahrheitsfunktion mit nn Argumenten ist eine Funktion

f ⁣:{0,1}n→{0,1}f\colon \{0, 1\}^{n} \to \{0, 1\}

die jeder Zeile einen Wahrheitswert zuordnet. Sie wird als Tafel dargestellt: Die Zeilen werden in der Reihenfolge der Tafel geschrieben, beginnend mit derjenigen, in der alle Werte 11 sind (für zwei Argumente 1 11\,1, 1 01\,0, 0 10\,1, 0 00\,0), und neben jede Zeile wird ihr Wert geschrieben. Eine Wahrheitsfunktion ist also eine Wahrheitstafel ohne Formel: die rechte Spalte, ohne etwas in ihrem Kopf.

PropositionEs gibt 22n2^{2^{n}} Wahrheitsfunktionen mit nn Argumenten

Für jede natürliche Zahl nn gibt es genau 2n2^{n} Zeilen aus nn Werten und 22n2^{2^{n}} Wahrheitsfunktionen mit nn Argumenten.

Beweis

  1. 1 0 1    ⟼    ∙∘∙\dato{filas}{1\,0\,1 \;\; \longmapsto \;\; \sigI\sigO\sigI}

    Eine Zeile ist eine Folge von nn Zeichen, deren jedes 11 oder 00 ist. Schreibt man die Scheibe anstelle von 11 und den Kreis anstelle von 00, so entsprechen die Zeilen eineindeutig den Zeichenketten der Länge nn über dem Alphabet aus zwei Zeichen, deren Anzahl 2n2^{n} ist, nach der ersten gelösten Aufgabe der Lektion über die Induktion, die dort durch Induktion über nn bewiesen wurde.

  2. f    ⟼    f(1,…,1)    …    f(0,…,0)f \;\; \longmapsto \;\; f(1, \ldots, 1) \;\; \ldots \;\; f(0, \ldots, 0)

    Eine Wahrheitsfunktion ist durch ihre Werte auf den Zeilen bestimmt, und jede Wahl dieser Werte ergibt eine Funktion. Schreibt man die Werte in der Reihenfolge der Tafel, so entsprechen die Funktionen eineindeutig den Folgen von 2n2^{n} Zeichen, deren jedes 11 oder 00 ist.

  3. 22n2^{\resaltar{2^{n}}}

    Nach derselben Zählung, nun auf Folgen der Länge 2n2^{n} angewandt, gibt es 22 hoch 2n2^{n} Funktionen.

  4. 22=4,24=16,28=256,216=65 5362^{2} = 4, \quad 2^{4} = 16, \quad 2^{8} = 256, \quad 2^{16} = 65\,536

    Die ersten Werte zeigen, wie schnell die Anzahl wächst: Mit fünf Argumenten gibt es bereits mehr als vier Milliarden Funktionen.

BeispielDie Funktionen mit einem und mit zwei Argumenten

Die vier Funktionen mit einem Argument sind die Konstante 11, die Identität, die Funktion, die den Wert umkehrt, und die Konstante 00; die Formeln ⊤\top, pp, ¬p\neg p und ⊥\bot, wobei ⊤:=(p→p)\top := (p \rightarrow p) und ⊥:=¬⊤\bot := \neg\top die in der Lektion über Semantik festgelegten sind, haben der Reihe nach diese Tafeln. Unter den sechzehn Funktionen mit zwei Argumenten sind die der sechs Junktoren des Kurses: der Peirce-Pfeil, die Disjunktion, die Konjunktion, die Implikation, das Bikonditional und die ausschließende Disjunktion. Es bleiben zehn weitere, darunter die beiden Konstanten, die Funktionen, die nur eines der Argumente berücksichtigen, und der Sheffer-Strich, der nur dann 00 ist, wenn beide Argumente 11 sind; die gelöste Aufgabe 1 klassifiziert sie alle.

Formeln, die Funktionen darstellen

Eine Formel und eine Wahrheitsfunktion hängen folgendermaßen zusammen. Ist φ\varphi eine Formel, deren Variablen unter v1,…,vnv_1, \ldots, v_n liegen, so sagt man, φ\varphi stellt die Wahrheitsfunktion ff mit nn Argumenten dar, wenn für jede Belegung vv gilt:

v(φ)=f(v(v1),…,v(vn))v(\varphi) = f(v(v_1), \ldots, v(v_n))

das heißt, wenn die Tafel von φ\varphi, geschrieben mit den Variablen v1,…,vnv_1, \ldots, v_n, die Tafel von ff ist. Die Bedingung an die Variablen ist keine Nebensache: Die Formel (p∧q)(p \wedge q) stellt keine Funktion mit einem Argument dar, weil ihr Wert nicht nur von dem von pp abhängt.

PropositionDie Funktion einer Formel

Sei φ\varphi eine Formel, deren Variablen unter v1,…,vnv_1, \ldots, v_n liegen. Dann stellt φ\varphi genau eine Wahrheitsfunktion mit nn Argumenten dar, die fφf_\varphi bezeichnet wird. Ist ψ\psi eine weitere Formel, deren Variablen unter v1,…,vnv_1, \ldots, v_n liegen, so gilt φ≡ψ\varphi \eqsem \psi genau dann, wenn fφ=fψf_\varphi = f_\psi.

Beweis

  1. va(vi)=ai(i≤n),va(vk)=0(k>n)\dato{va}{v_a(v_i) = a_i \quad (i \leq n), \qquad v_a(v_k) = 0 \quad (k > n)}

    Zu jeder Zeile aa gibt es eine Belegung, die jedem viv_i den Wert aia_i gibt: Es genügt, den übrigen Variablen den Wert 00 zu geben.

  2. v(vi)=v′(vi)=ai(i≤n)    ⇒    v(φ)=v′(φ)=fφ(a)v(v_i) = v'(v_i) = a_i \quad (i \leq n) \;\; \Rightarrow \;\; v(\varphi) = v'(\varphi) = \resaltar{f_\varphi(a)}

    Wenn zwei Belegungen v1,…,vnv_1, \ldots, v_n die Werte der Zeile aa geben, stimmen sie auf den Variablen von φ\varphi überein und geben nach dem Koinzidenzlemma φ\varphi denselben Wert. Dieser gemeinsame Wert wird als fφ(a)f_\varphi(a) genommen; nach Konstruktion stellt φ\varphi die Funktion fφf_\varphi dar.

  3. g(a)=va(φ)=fφ(a)g(a) = v_a(\varphi) = f_\varphi(a)

    Stellt φ\varphi auch eine Funktion gg dar, so gilt in jeder Zeile aa die Gleichung g(a)=va(φ)=fφ(a)g(a) = v_a(\varphi) = f_\varphi(a): Die dargestellte Funktion ist eindeutig.

  4. v(φ)=fφ(v(v1),…,v(vn))=fψ(v(v1),…,v(vn))=v(ψ)v(\varphi) = f_\varphi(v(v_1), \ldots, v(v_n)) = f_\psi(v(v_1), \ldots, v(v_n)) = v(\psi)

    Wenn fφ=fψf_\varphi = f_\psi, sind für jede Belegung vv die Werte von φ\varphi und von ψ\psi der Wert derselben Funktion in derselben Zeile; daher φ≡ψ\varphi \eqsem \psi.

  5. fφ(a)=va(φ)=va(ψ)=fψ(a)f_\varphi(a) = v_a(\varphi) = v_a(\psi) = f_\psi(a)

    Umgekehrt: Wenn φ≡ψ\varphi \eqsem \psi, gibt in jeder Zeile aa die Belegung vav_a beiden Formeln denselben Wert, und daher fφ(a)=fψ(a)f_\varphi(a) = f_\psi(a).

Es gibt unendlich viele Formeln mit Variablen unter v1,…,vnv_1, \ldots, v_n und nur 22n2^{2^{n}} Funktionen; also stellen viele Formeln dieselbe Funktion dar, und die Proposition besagt, dass es genau die untereinander äquivalenten sind. Zu klären bleibt, ob jede Funktion von einer Formel dargestellt wird oder ob manche Tafeln ohne eine Formel bleiben, die sie hat.