Geordnetes Paar: Definition von Frege: Unterschied zwischen den Versionen

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
(Die Seite wurde neu angelegt: „{{TBD}} {{Qualität |correctness = 3 |extent = 3 |numberOfReferences = 4 |qualityOfReferences = 5 |conformance = 5 }} Datei:Fr…“)
 
Keine Bearbeitungszusammenfassung
 
(156 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
{{TBD}}
{{Qualität
{{Qualität
|correctness        = 3
|correctness        = 4
|extent              = 3
|extent              = 4
|numberOfReferences  = 4
|numberOfReferences  = 5
|qualityOfReferences = 5
|qualityOfReferences = 5
|conformance        = 5
|conformance        = 5
}}
}}
Der Artikel „[[Geordnetes Paar]]“ befasst sich mit der Geschichte und den wichtigsten Definitionen des „geordneten Paares“.
Die älteste mir bekannte Definition, die den Paar-Begriff auf zuvor definierte Grundbegriffe zurückführt,
ist die Definition von [[Gottlob Frege]].


[[Datei:Frege (1893), §144, S179.png|mini|300px|Definition des geordneten Paars, [[Frege (1893)]], §144, S. 179]]
Da die Symbolik, die Frege verwendet, ungewöhnlich ist
===[[Gottlob Frege|Frege]] (1893)<ref name="Frege"/>===
(dies war einer der Gründe, warum er zu Lebzeiten wenig Anerkennung fand<ref>{{Quelle|Wußing (2009)}}, S. 402</ref>),
ist seine Definition nicht ohne Weiters zu verstehen. Im Folgenden soll daher versucht werden, diese Definition etwas zu veranschaulichen.
==[[Gottlob Frege|Frege]] (1893)<ref name="Frege (1893)">{{Quelle|Frege (1893)}}</ref>==
[[Datei:Frege (1893), §144, S179.png|mini|300px|Definition des geordneten Paars, Frege (1893), §144, S. 179<ref name="Frege (1893)"/>]]


''Wir definiren nun das Paar so:''
''Wir definiren nun das Paar so:''
<div class="formula">$\Vdash\acute{\epsilon}(o \frown (a \frown \epsilon)) = o \;;\; a$ </div>  
<div class="formula"><math>\Vdash\acute{\epsilon}(o \frown (a \frown \epsilon)) = o; a</math> </div>  
''Das Semikolon ist hierbei zweiseitiges Functionszeichen.'' (§144, S. 179<ref name="Frege"/>)
''Das Semikolon ist hierbei zweiseitiges Functionszeichen.'' (Frege (1893), §144, S. 179<ref name="Frege (1893)"/>)
 
==Probleme mit dem Verständnis von Freges Definition==
Freges Definition ist nicht zu verstehen, wenn man seine Symbolik nicht kennt oder falsch interpretiert.
Zum Beispiel merkt [[Richard G. Heck Jnr.|Richard Heck]] zu dieser Definition fälschlicherweise an, dass
sie weder mengentheoretisch noch mit Hilfe der [[Prädikatenlogik zweiter Ordnung]] konsistent nachgebildet werden kann:
{{Quote|Unfortunately, Frege's definition of ordered pairs is, as George Boolos once put it, extravagant
and can not be consistently reconstructed, either in second-order logic or in set-theory.<ref>{{Quelle|Heck (1997)}}</ref>}}
 
Auch ist nicht notwendigerweise jeder Versuch, diese Definition in eine moderne Form zu zu bringen, von Erfolg gekrönt.
Der [[C.S. Peirce]] Professor of American Philosophy [[Randall Dipert]] übersetzt Freges Definition beispielsweise folgendermaßen:
<div class="formula"><math><x,y> := \{x,\{y\}\}</math><ref name="Dipert">{{Quelle|Dipert (1982)}}, S. 355</ref></div>
Er merkt an, dass diese Definition falsch ist, weil z.B. die Paare <math><\{\{c\}\}, c></math> und <math><\{c\}, \{c\}></math> nicht unterschieden werden könnten,
da sie beide durch <math>\{\{\{c\}\}, \{c\}\}</math> repräsentiert würden. Das stimmt zwar, ist aber nicht Freges Definition anzulasten,
sondern Diperts falscher Interpretation dieser Definition.


====Das Paaraxiom====
Gottlob Frege definiert das Paar <math>o;a</math> mit Hilfe eines „Werthverlaufs“ <math>\acute{\epsilon}\phi(\epsilon)</math>
und der „Function <math>\xi \frown \zeta</math> mit zwei Argumenten“ (Frege (1893, §9 und §34)<ref name="Frege (1893)"/>). Da Frege der Funktion <math>\frown</math>
keinen Namen gibt, soll diese im Folgenden „Frown“ heißen (in Anlehnung an den Namen des [[LaTeX]]-Symbols, mit dem sie in diesem Beitrag dargestellt wird).


[[Datei:Frege (1893), Tafel der wichtigeren Lehrsaetze, S248.png|mini|300px|Freges Paar-Begriff erfüllt das [[Paaraxiom]], Frege (1893), Tafel der wichtigeren Lehrsätze, S. 248]]
Um die Definition von Frege zu verstehen, muss man die Bedeutung des Wertverlaufs einer Funktion und die Frown-Funktion kennen.
Frege beweist mit Hilfe der von ihm definerten Axiome mehrere Paar-Eigenschaften. Die wichtigsten dieser Sätze sind (in moderner Notation,
Auch hier leitet die Literatur einen leicht in die Irre. Beispielsweise interpretiert Edward Zalta (2014, Abschnitt 2.3) die Frown-Operation
wobei das Symbol $\vdash$ der „[[Inferenzoperator]]“ ist):
als Element-Operation <math>\in</math>.<ref name="Zalta (2014)">{{Quelle|Zalta (2014)}}</ref>
Das ist richtig, falls der Wertverlauf einer Prädikatsfunktion betrachtet wird, d.h. einer Funktion, die jedes Element des Frege-Universums auf einen [[Wahheitswert]] abbildet.
Eine derartige Funktion wird von Frege „Begriff“ genannt (Zalta verwendet die englische Übersetzung “concept”). Die Frown-Funktion von Frege ist
allerdings nicht nur für Wertverläufe von „Begriffen“ definiert, sondern für Wertverläufe von beliebigen Funktionen. Das heißt, i. Allg. kann man <math>\frown</math> nicht mit <math>\in</math> gleichsetzen.


<div class="formula">$\vdash a = i \;\rightarrow\; (o = e  \;\rightarrow\; o \;;\; a = e \;;\; i)\quad$ ([[Frege (1893)]], §155, Satz Nr. 251; Tafel der wichtigeren Lehrsätze, S. 248)</div>
==Wertverlauf und Frown-Funktion==
:''Wenn ein Gegenstand mit einem zweiten und ein dritter Gegenstand mit einem vierten zusammenfällt, so fällt das aus dem ersten und dritten bestehende Paar zusammen mit dem aus dem zweiten und vierten bestehenden.''
Freges Definition
<div class="formula">$\vdash m \;;\; x = c \;;\; d \;\rightarrow\; x = d\quad$ (Frege (1893), §149, Satz Nr. 219; Tafel der wichtigeren Lehrsätze, S. 248)</div>
:''Wenn ein Paar mit einem zweiten zusammenfällt, so fällt das zweite Glied des ersten mit dem zweiten Gliede des zweiten zusammen.''
<div class="formula">$\vdash m \;;\; x = c \;;\; d  \;\rightarrow\; m = c\quad$ (Frege (1893), §149, Satz Nr. 220; Tafel der wichtigeren Lehrsätze, S. 248)</div>
:(ohne weitere Erörterungen von Frege)


Diese Eigenschaften zeigen, dass sein Paarbegriff das [[Axiom:Paaraxiom|Paaraxiom]] erfüllt, welches explizit erst vier Jahre später von [[Giuseppe Peano]] formuliert wurde.<ref name="Peano (1897a)"/>
<div class="formula"><math>\Vdash\acute{\epsilon}(o \frown (a \frown \epsilon)) = o;a</math> </div>  


Dies ist die älteste mir bekannte Definition, die den Paar-Begriff auf zuvor definierte Grundbegriffe zurückführt.
enthält drei unübliche Symbole, deren Bedeutungen im Folgenden näher beleuchtet werden: <math>\Vdash</math>, <math>\acute\cdot</math> und <math>\frown</math>.
Allerdings ist diese Definition nicht dazu geeignet, Relationen und Funktionen zu defineren, weil sie den Funktionsbegriff
als gegeben voraussetzt.


====Veranschaulichung von Freges Definition====
===Der Definitionsdoppelstrich===
<math>\Vdash</math> ist der „Definitionsdoppelstrich“, der von Frege als Erweiterung des „Urtheilstrichs“ <math>\vdash</math>
definiert wird (Frege (1893, §27 und §5)<ref name="Frege (1893)"/>). Das Symbol <math>\vdash</math> wird in der Logik heute noch als  „Herleitungs“-, „Ableitungs“- oder „[[Inferenzoperator]]“ verwendet.


Freges Definition
Der Definitionsdoppelstrich sagt zusammen mit dem Gleichheitszeichen <math>=</math> aus,
<div class="formula">$\Vdash\acute{\epsilon}(o \frown (a \frown \epsilon)) = o \;;\; a$ </div>  
dass der Term <math>o;a</math> eine abkürzende Schreibweise für den Term <math>\acute{\epsilon}(o \frown (a \frown \epsilon))</math> ist.
kann man in modernen Klassensystemen im Prinzip durch folgende Definition nachbilden:
Heutzutage würde man üblicherweise folgende Schreibweise verwenden:
<div class="formula">$o \;;\; a$ ist eine Funktion, mit $(o \;;\; a)(\epsilon) = \epsilon(a)(o)$.</div>  
<div class="formula"><math>o;a := \acute{\epsilon}(o \frown (a \frown \epsilon)) </math> </div>


(Die Begründung für diese Darstellung und die Unterschiede zu Freges Definition werden im übernächsten Abschnitt erörtert.)
===Der Wertverlaufsoperator===
Der Operator <math>\acute\cdot</math> wird von Frege genutzt, um den „Werthverlauf“ einer Funktion zu beschreiben (Frege (1893), §9<ref name="Frege (1893)"/>).
Laut Kutschera (1989, S. 96)<ref name = "Kutschera">{{Quelle|Kutschera (1989)}}</ref> kann man den
Wertverlauf <math>\acute{\epsilon}\phi(\epsilon)</math> einer Funktion <math>\phi</math> in heutigen Klassensystemen
durch die Klasse <math>\{[\epsilon,\phi(\epsilon)]: \top\}</math> ausdrücken,
wobei die Objekte <math>[x,y]</math> keine Frege-Paare sind, sondern geordnete Paare des zugrundeliegende Klassensystems
(Wiener-/Kuratowski-/Quine-/Morse-/Schmidt-Paare o. Ä.; siehe Artikel „[[geordnetes Paar]]“).


Es fällt auf, dass der Paar-Begriff von Frege wesentlich auf dem Funktionbegriff basiert:
Für Frege sind Funktionen allerdings grundlegender als Klassen.
Ein Frege-Paar ist eine Funktion, deren Definitionsbereich lauter zweistellige Funktionen enthält. (Genaugenommen
In seinem Axiomensstem sind Funktionen (und deren Wertverläufe) wie beim [[Lambda-Kalkül]] von [[Alonzo Church]] Grundbegriffe,
ist der Definitionsbereich eines Frege-Paars gleich der [[Allklasse]].
die nicht definiert, sondern nur erläutert werden können<ref name = "Kutschera"/>
Allerdings ist $o \frown (a \frown \epsilon))$ bei Frege gleich der leeren Menge, wenn $\epsilon$ kein
und mit deren Hilfe andere Gundbegriffe wie Klassen, Paare, natürliche Zahlen etc. definiert werden.  
Wertverlauf einer zweistelligen Funktion ist. Welchen Wert $\epsilon(a)(o)$ annimmt, falls $\epsilon$ keine zweistelltige Funktion ist, hängt vom zugrundeliegenden
Klassensystem ab. Für die weiteren Betrachtungen ist es nicht von Bedeutung, welcher konkrete Wert dies ist, da nur zweistellige Funktionen betrachtet werden.)


Da der Funktionsbegriff so wesentlich für die Definition des Freges-Paares ist, heißt dies, dass Funktionen nicht mit Hilfe des Fregepaares
Denselben Weg schlägt beispielsweise auch John von Neumann (1925) ein.<ref name = "Neumann (1925)">{{Quelle|Neumann (1925)}}</ref>  
(als Klasse von bestimmten Paaren) definiert werden können. Das war aber auch nicht die Absicht von Frege. Er benötigt die Paare zur
Allerdings unterscheidet sich sein Axiomensystem
Konstruktion von [[reele Zahl|reellen Zahlen]] (vgl. Frege (1903, §161 ff.)<ref>{{Quelle|Frege(1903)}}</ref>, Kutschera (1989, S. 125)<ref name="Kutschera"/>).
hinsichtlich der Definition des geordneten Paares in
zwei wesentlichen Punkten von Freges Axiomensystem:


====Projektopnsoperatoren für Frege-Paare====
* Es erlaubt nicht die uneingeschränkte Bildung von Funktionen und geordneten Paaren, so dass die [[Russellsche Antinomie]] mit großer Wahrscheinlichkeit, aber – aufgrund des zweiten [[Gödelscher Unvollständigkeitssatz|Gödelschen Unvollständigkeitssatzes]] – nicht beweisbar vermieden wird.
* Geordnete Paare werden axiomatisch eingeführt und nicht per Definition.


{{TBD}}
Überlicherweise werden heute allerdings meist mengen- oder klassenbasierte Systeme (wie z.B. [[Zermelo-Fraenkel-Mengenlehre]], [[Neumann-Bernays-Gödel-Mengenlehre]], [[Quine-Rosser-Mengenlehre]]) zur Formalisierung der Mathematik eingesetzt.
In diesen Systemen wird zwischen einer Funktion und ihrem Wertverlauf i. Allg. nicht mehr unterschieden. Im Gegenteil: Funktionen werden
mit Hilfe von Wertverlaufsklassen definiert (siehe z.B. Schmidt (1966)<ref name="Schmidt (1966)">{{Quelle|Schmidt (1966)}}</ref>):
Eine Funktion <math>f</math> ist eine Klasse von Paaren, wobei es keine zwei Paare <math>[x, y_1], [x, y_2] \in f</math> gibt, für die
<math>y_1 \not= y_2</math> gilt.
 
Da Funktionen (genauer: Wertverläufe von Funktionen) wesentlich für die Definition des Freges-Paares sind, können Funktionen nicht mit Hilfe des Frege-Paares
definiert werden. Dies war aber auch nicht die Absicht von Frege. Er benötigte die Paare zur
Konstruktion von [[reele Zahl|reellen Zahlen]] (vgl. Frege (1903, §161 ff.)<ref>{{Quelle|Frege (1903)}}</ref>, Kutschera (1989, S.&nbsp;125)<ref name="Kutschera"/>).


=====Anmerkungen zur Veranschaulichung von Freges Definition=====
Um sich Frege-Paare zu veranschaulichen, kann man dennoch einen Trick anwenden: Man identifiziert Funktionen mit ihrem Wertverlauf (so wie das in Klassensystemen üblich ist). Das einzige Problem, das man sich dabei einhandelt, ist, dass Frege-Paare <math>a;b</math> dann – sofern man eine moderne klassenbasierten Theorie zu Hilfe nimmt – mit Hilfe von anderen Paaren <math>[a,b]</math> definiert werden. Das ist aber nichts Ungewöhnliches. So werden z.B. auch [[Morse-Paar]]e<ref name="Morse">{{Quelle|Morse (1965)}}</ref> mit Hilfe von  
Freges Definition
[[Kuratowski-Paar]]en<ref name ="Kuratowski">{{Quelle|Kuratowski (1921)}}</ref> definiert.
<div class="formula">$\Vdash\acute{\epsilon}(o \frown (a \frown \epsilon)) = o \;;\; a$ </div>  
ist nicht zu verstehen, wenn man seine Symbolik nicht kennt. Daher soll diese Definition im Folgenden veranschaulicht werden.


$\Vdash$ ist der „Definitionsdoppelstrich“, der von Frege als Erweiterung des „Urtheilstrich“s $\vdash$
Alternativ kann man sich den Wertverlauf-Operator als [[Lambda-Kalkül|Lambda-Operator]] vorstellen (vgl. Zalta (2014)<ref name="Zalta (2014)"/>):
definiert wird (Frege (1893, §27 und §5)<ref name="Frege (1893)"/>). Das Symbol $\vdash$ wird in der Logik heute noch als  „Herleitungs“-/„Ableitungs“- bzw. „[[Inferenzoperator]]“ verwendet (siehe z.B. vorherigen Abschnitt).
<div class="formula"><math>\acute{\epsilon}\phi(\epsilon) \;\hat=\; \lambda \epsilon .\phi(\epsilon)</math></div>


Gottlob Frege definiert das Paar $o \;;\; a$ mit Hilfe des von ihm zuvor eingeführeten „Werthverlaufs“ $\acute{\epsilon}\phi(\epsilon)$ einer Funktion $\phi$
Wenn man die [[Eta-Konversion|η-Konversion]] im Lambda-Kalkül zulässt, sieht man auch hier, dass der Wertverlauf von <math>\phi</math> mit
und der von ihm zuvor definierten „Function $\xi \frown \zeta$ mit zwei Argumenten“ (Frege (1893, §9 und §34)<ref name="Frege (1893)"/>).
<math>\phi</math> selbst identifiziert werden kann:


Es sein $\phi$ eine Funktion. Laut Kutschera (1989, S. 96)<ref name = "Kutschera">{{Quelle|Kutschera (1989)}}</ref> kann man den zugehörigen
<div class="formula"><math>\lambda \epsilon .\phi(\epsilon) \;=\; \phi</math></div>
Wertverlauf $\acute{\epsilon}\phi(\epsilon)$ in heutigen Klassensystemen durch die Klasse $\{[\epsilon,y]: y=\phi(\epsilon)\}$ ausdrücken.
Für Frege sind Funktionen allerdings grundlegender als Klassen. Er wusste
noch nicht, dass Klassen und der Paarbegriff ausreichen, um Relationen und Funktionen zu definieren.
Daher ist „Werthverlauf“ für ihn ein Grundbegriff, der nicht definiert, sondern nur erläutert werden kann.<ref name = "Kutschera"/>
Heute wird zwischen einer Funktion und ihrem Wertverlauf i.Allg. nicht mehr unterschieden. Im Gegenteil: Funktionen werden
mit Hilfe von Wertverlaufsklassen definiert (siehe z.B. Schmidt (1966)<ref name="Schmidt (1966)"/>).


Frege betrachtet nicht nur arithmetische Funktionen, sondern auch [[Prädikatsfunktion]]en.  
Frege betrachtet nicht nur arithmetische Funktionen, sondern auch [[Prädikatsfunktion]]en.  
Diese heißen bei ihm „Begriffe“ (Frege (1893, §3, S. 8)<ref name="Frege (1893)"/>).
Diese heißen bei ihm „Begriffe“ (Frege (1893, §3, S. 8)<ref name="Frege (1893)"/>).
Eine Pädikatsfunktion liefert für alle Argumente einen [[Junktor#Nullstellige_Junktoren|Wahrheitswert]] <code>T</code> oder <code>F</code>
Eine Pädikatsfunktion liefert für alle Argumente einen [[Junktor#Nullstellige_Junktoren|Wahrheitswert]] {{Mono|T}} oder {{Mono|F}}
als Ergebnis. Frege bezeichnet diese Werte als „das Wahre“ und „das Falsche“.
als Ergebnis. Frege bezeichnet diese Werte als „das Wahre“ und „das Falsche“.
Wenn $\phi$ eine [[Prädikatsfunktion]] ist, kann der Wertverlauf von $\phi$ auch als Klasse aufgefasst werden,
Wenn <math>\phi</math> eine Prädikatsfunktion ist, die '''jedem''' Objekt im Frege-Universum einen Wahrheitswert zuordnet,
die alle Elemente (Frege: „Gegenstände“) $\epsilon$ enthält, für die $\phi(\epsilon)$ wahr ist.
kann der Wertverlauf von <math>\phi</math> auch als Klasse aufgefasst werden,
$\acute{\epsilon}\phi(\epsilon)$ entspricht unter dieser Sichtweise der Klasse $\{\epsilon: \phi(\epsilon)\}$ (vgl. Kutschera (1989, Kapitel 6.4)<ref name = "Kutschera"/>). Insbesondere definiert Fregge die leere Menge und einelementige Mengen mit Hilfe von Wertverläufen:
die alle Elemente (Frege: „Gegenstände“) <math>\epsilon</math> enthält, für die <math>\phi(\epsilon)</math> wahr ist.
Der Wertvelauf <math>\acute{\epsilon}\phi(\epsilon)</math> entspricht unter dieser Sichtweise der Klasse <math>\{\epsilon: \phi(\epsilon)\}</math> (vgl. Kutschera (1989, Kapitel 6.4)<ref name = "Kutschera"/>).  
Insbesondere definiert Frege die leere Menge und einelementige Mengen mit Hilfe von Wertverläufen (führt dafür aber keine eigenen Symbole ein):


{| class="wikitable"
{| class="wikitable"
Zeile 89: Zeile 118:
!            || moderne Definition            || Freges Definition || Quellen
!            || moderne Definition            || Freges Definition || Quellen
|-  
|-  
| leere Menge || $\emptyset := \{x: x\not=x\}$ || $\acute{\epsilon}\neg(\epsilon=\epsilon)$ || [[Klasse_(Mengenlehre)#Spezielle_Klassen_Anlehnung_Schmidt.5B2.5D|Klasse]], Frege (1893, S. 53, vorletzter Absatz)<ref name="Frege (1893)"/>
| leere Menge || <math>\emptyset := \{x: x\not=x\}</math> || <math>\acute{\epsilon}\neg(\epsilon=\epsilon)</math> || [[Klasse_(Mengenlehre)#Spezielle_Klassen_Anlehnung_Schmidt.5B2.5D|Klasse]], Frege (1893, S. 53, vorletzter Absatz)<ref name="Frege (1893)"/>
|-
|-
| Einermenge || $\{a\} := \{x: x=a\}$ oder<br/>$\{a\} := \{x: \rm{Mg}(a) \rightarrow x = a\}$ || $\acute{\epsilon}(\epsilon=a)$ || [[Klasse_(Mengenlehre)#Spezielle_Klassen_Anlehnung_Schmidt.5B2.5D|Klasse]], Frege (1893, §11)<ref name="Frege (1893)"/>
| Einermenge || <math>\{a\} := \{x: x=a\}</math> oder<br/><math>\{a\} := \{x: \rm{Mg}(a) \rightarrow x = a\}</math> || <math>\acute{\epsilon}(\epsilon=a)</math> || [[Klasse_(Mengenlehre)#Spezielle_Klassen_Anlehnung_Schmidt.5B2.5D|Klasse]], Frege (1893, §11)<ref name="Frege (1893)"/>
|-  
|-  
| Extraktion des Elements<br/>einer Einermenge || $\rm{Mg(a)} \wedge A =\{s\} \rightarrow \bigcap{A} = a$ ||Wenn $A =\acute{\epsilon}(\epsilon=a)$, dann $\backslash A = a$ ||  
| Extraktion des Elements<br/>einer Einermenge || Es sei <math>a</math> eine Menge.<br/><math>A =\{a\} \rightarrow \bigcup{A} = a</math> ||Wenn <math>A =\acute{\epsilon}(\epsilon=a)</math>, dann <math>\backslash A = a</math> ||  
Schmidt (1966, S72, 8.28)<ref name="Schmidt (1966)"/>, Frege (1893, §11)<ref name="Frege (1893)"/>
Schmidt (1966, S72, 8.28)<ref name="Schmidt (1966)"/>, Frege (1893, §11)<ref name="Frege (1893)"/>
|-
| ||colspan="3"| Für Nicht-Einermengen liefern $\bigcap$ und $\backslash$ allerdings unterschiedliche Ergebnisse.
|}
|}


[[Datei:Frege_1893_§34_S53.png|mini|300px|Definition des $\frown$-Operators, Frege (1893, §34, S. 53)<ref name="Frege (1893)"/>]]
Für alle Objekte <math>A</math>, die keine Einermenge sind, setzt Frege fest, dass <math>\backslash A = A</math> gilt.
Frege definiert den Frown-Operator wie folgt:
Das heißt, für die leere Menge liefern <math>\bigcup</math> und <math>\backslash</math> ebenfalls dasselbe Ergebnis (nämlich die leere Menge).
Für alle anderen Objekte <math>A</math> unterscheiden sich die Ergebnisse von <math>\bigcup A</math> und <math>\backslash A</math> dagegen. Dies ist für
die Veranschaulichung der Frown-Funktion, die im nachfolgenden Abschnitt beschrieben wird, jedoch nicht von Belang,
da bei der Definition dieser Funktion nur die leere Menge und einelementige Mengen benötigt werden.
 
[[Datei:Frege_1893_§34_S53.png|mini|300px|Definition der Frown-Funktion, Frege (1893, §34, S.&nbsp;53)<ref name="Frege (1893)"/>]]
 
===Die Frown-Funktion===
 
Frege definiert die Frown-Funktion folgendermaßen (Frege (1893, §34, S. 53)<ref name="Frege (1893)"/>):
 
<div class="formula"><math>\Vdash\backslash\acute{\alpha}(\neg\bigwedge g : u = \acute{\epsilon}g(\epsilon) \rightarrow \neg (g(a) = \alpha)) = a \frown u</math></div>
Dies kann man mit Hilfe der Operatoren <math>\bigvee</math> und <math>\wedge</math> (die Frege allerdings nicht explizit definiert und daher auch nicht explitizt verwendet)
etwas einfacher ausdrücken, da <math>\neg \bigwedge g: a \rightarrow \neg b</math> äquivalent zu <math>\bigvee g: a \wedge b </math> ist:
 
<div class="formula"><math>\Vdash\backslash\acute{\alpha}(\bigvee g : u = \acute{\epsilon}g(\epsilon) \wedge g(a) = \alpha) = a \frown u</math></div>
 
In einem modernen Klassensystem kann man diese Definition – da es sich bei <math>\bigvee g : \ldots</math> um eine Prädikatsfunktion handelt und es höchstens ein Element <math>\alpha</math> gibt, das dieses Prädikat erfüllt, da also <math>\backslash A</math> und <math>\bigcup A</math> dasselbe Ergebnis liefern – folgendermaßen formulieren:
 
<div class="formula"><math>a \frown u := \bigcup\{\alpha : \bigvee g : u = \acute{\epsilon}g(\epsilon) \wedge g(a) = \alpha\}</math>
(der Wertlauf <math>\acute{\epsilon}g(\epsilon)</math> repräsentiert hier natürlich die Klasse <math>\{[\epsilon,y]: y=g(\epsilon)\}</math>)
</div>
 
Zwei Fälle sind zu unterscheiden: Entweder ist <math>u</math> der Wertverlauf einer Funktion g oder <math>u</math> ist dies nicht.
Im ersten Fall gilt:
 
<div class="formula"><math>\vdash a \frown \acute{\epsilon}g(\epsilon) = \bigcup\{\alpha : g(a) = \alpha\} = g(a)</math></div>
 
Frege beweist auf den Seiten 74 und 75 denselben Satz in folgender Form:
 
<div class="formula"><math>\vdash f(a) = a \frown \acute{\epsilon}f(\epsilon)</math> (Dieser Satz erhält von Frege die Satznummer 1.)</div>
 
Im zweiten Fall gilt:
<div class="formula"><math>\vdash a \frown u = \bigcup\{\alpha : \bigvee g : u = \acute{\epsilon}g(\epsilon) \wedge g(a) = \alpha\} = \bigcup\{\alpha : \bot\} = \emptyset</math></div>
 
<math>a \frown u</math> liefert also, falls u der Wertverlauf einer Funktion <math>g</math> ist, den Wert der Funktion <math>g</math> für das Argument <math>a</math> als Ergebnis.
Falls <math>u</math> kein Wertverlauf ist, hat <math>a \frown u</math> dagegen die leere Menge als Ergebnis. (vgl. Frege (1893, S. 53, letzter Absatz)<ref name="Frege (1893)"/>; Kutschera (1989, S. 104)<ref name = "Kutschera"/>).
 
Im Falle einer Prädikatsfunktion entspricht der <math>\frown</math>-Operator dem in Klassensystem üblichen Elementoperator <math>\in</math>:
 
<div class="formula"><math>a \frown \acute{\epsilon}g(\epsilon) = g(a)</math> entspricht in diesem Fall folgender Beziehung
                    <math>a \in \{\epsilon: g(\epsilon)\} \leftrightarrow g(a)</math></div>
 
Dies ist der Spezialfall, mit dem sich Zalta näher befasst<ref name="Zalta (2014)"/>.
 
[[Datei:Frege 1893 S75.png|mini|300px|Satz 1 und Satz 2: Der Wertverlauf von ein- und zweistelligen Funktionen, Frege (1893), S. 75<ref name="Frege (1893)"/>]]
Frege zeigt auf S. 75 außerdem noch, dass sein Satz 1
 
<div class="formula"><math>\vdash f(a) = a \frown \acute{\epsilon}f(\epsilon)</math></div>
 
auch für zweistellige Funktionen verallgemeinert werden kann:
 
<div class="formula"><math>\vdash f(a,b) = a \frown (b \frown \acute{\alpha}\acute{\epsilon}f(\epsilon,\alpha))</math> (Dieser Satz erhält von Frege die Satznummer 2.)</div>
 
Analog zu Frege kann man auch
 
<div class="formula"><math>\vdash f(a)(b) = a \frown (b \frown \acute{\alpha}\acute{\epsilon}f(\epsilon)(\alpha))</math></div>
 
zeigen. Das heißt, <math>f(a,b)</math> und <math>f(a)(b)</math> unterscheiden sich im Prinzip nicht. Obwohl Frege diese alternative
Notation für Funktionen mit zwei Argumenten nicht verwendet hat, wird dsie im nächsten Abschnitt zur
Veranschaulichung der Paardefinition verwendet, um die Definitionen etwas schlanker zu halten.
 
Anmerkung: Auf dieselbe Weise könnte man auch den Wertverlauf von beliebigen n-stelligen Funktionen definieren. Dies hat Frege allerdings nicht getan.
 
===„Übersetzung“ von Freges Definition in „moderne“ Symbolik===
 
Aus den vorangegangenen Überlegungen folgt, dass man in modernen Klassensystemen Freges Paardefinition
 
<div class="formula"><math>\Vdash\acute{\epsilon}(o \frown (a \frown \epsilon)) = o; a</math> </div>
 
mit Hilfe des [[Lambda-Kalkül]]s (das dem Axiomensystem von Frege gerade hinsichtlich des Wertverlauf-Operators etwas näher steht als ein Klassensystem) folgendermaßen formulieren kann:
 
<div class="formula"><math>o;a \,:= \; \lambda \epsilon . \epsilon a o</math> </div>
 
Für die „Übersetzung“ von Freges Definition in eine klassenbasierte Definition werden folgende Vereinbarungen getroffen.
 
* Eine Funktion <math>f</math> ist eine Klasse von Paaren mit <math>[x,y_1], [x,y_2]\in f \rightarrow y_1=y_2</math>.
* Der Funktionsaufruf-Operator <math>\cdot(\cdot)</math> ist folgendermaßen definiert <math>f(x) := \bigcap\{y: [x,y] \in f \}</math>.
 
Damit definiert man:
<div class="formula"><math>o; a := \{ [\epsilon, \epsilon(a)(o)] : \top\}</math>, d.h, <math>o; a</math> ist eine Funktion mit <math>(o; a)(\epsilon) = \epsilon(a)(o)</math></div>
 
Sofern <math>\epsilon</math> eine Funktion ist, für die der zweistellige Funktionsaufruf <math>\epsilon(a)(o)</math> definiert ist, stimmen Freges Definition und die
Alternative-Definition überein. Für andere Funktionen und Nicht-Funktionen gilt dagegen bei Frege stets <math>(o;a)(\epsilon) = \emptyset</math>.
Dies ist bei der Alternativdefinition nicht der Fall.
Allerdings ist es für die weiteren Betrachtungen nicht wichtig, welchen Wert <math>(o;a)(\epsilon)</math> annimmt, falls <math>\epsilon(a)(o)</math> nicht definiert ist.
 
==Das Paaraxiom==
 
[[Datei:Frege 1893 S195.png|mini|300px|Beweis des Paaraxioms, Teil 1, Frege (1893, S.&nbsp;195)<ref name="Frege (1893)"/>]]
[[Datei:Frege 1893 S185.png|mini|300px|Beweis des Paaraxioms, Teil 2, Frege (1893, S.&nbsp;185)<ref name="Frege (1893)"/>]]
Frege beweist die Gültigkeit des [[Paaraxiom]]s direkt, {{dh}} ohne Hilfe von Projektionsoperatoren und des Satzes
[[Satz:Aus der Existenz zweier Projektionsoperatoren für geordnete Paare folgt das Paaraxiom|„Aus der Existenz zweier Projektionsoperatoren für geordnete Paare folgt das Paaraxiom“]]:
 
{{TBD}}
 
===Die Projektionsoperatoren===
 
Frege gibt für seine Paardefinition keine [[Projektionsoperatoren]] an. Es ist aber kein Problem, diese zu definieren.
Und damit ist ebenfalls sichergestellt,
[[Satz:Aus der Existenz zweier Projektionsoperatoren für geordnete Paare folgt das Paaraxiom|dass das Paaraxiom erfüllt ist]].
 
Die Definition der Projektionsoperatoren kann in modernen Axiomensystemen auf (mindestens) zwei Arten erfolgen:
 
# Mit Funktionen eines Mengen- oder Klassensystems.
# Mit Hilfe des Lambda-Kalküls.
 
Man stellt fest, dass im zweiten Fall die Projektionsoperatoren wesentlich prägnanter formuliert werden können.
Das liegt daran, dass es sich sowohl beim Lambda-Kalkül, als auch beim Axiomensystem von Frege um funktionale Axiomensysteme handelt.
 
====Die Projektionsoperatoren auf Basis von Funktionen eines Mengen- oder Klassensystems====
 
<div class="formula"><math>\begin{array}{lclclclclclcl}
  \rm{id}      & := & \{[x,x] : \top \}            & \rm{d.h.:} & \rm{id}(x)      & = & x                      \\
  \rm{const_c}  & := & \{[x,c] : \top \}            & \rm{d.h.:} & \rm{const_c}(x) & = & c                      \\
  \pi'_1        & := & \{[x,\rm{id}] : \top \}      & \rm{d.h.:} & \pi'_1(x)      & = & \rm{id}                \\     
                &    &                              & \rm{d.h.:} & \pi'_1(x)(y)    & = & \rm{id}(y) =  y        \\
  \pi'_2        & := & \{[x,\rm{const}_x] : \top \} & \rm{d.h.:} & \pi'_2(x)      & = & \rm{const}_x            \\
                &    &                              & \rm{d.h.:} & \pi'_2(x)(y)    & = & \rm{const}_x(y) = x    \\
  \pi_1        & := & \{ [p, p(\pi'_1)] : \top\}  & \rm{d.h.:} & \pi_1(p)        & = & p(\pi'_1)              \\
  \pi_2        & := & \{ [p, p(\pi'_2)] : \top\}  & \rm{d.h.:} & \pi_2(p)        & = & p(\pi'_2)
\end{array}</math></div>
 
<math>\pi_1</math> und <math>\pi_2</math> sind die gesuchten Projektionsoperatoren:
 
<div class="formula"><math>\begin{array}{lcll}
  \pi_1(a;b) & = & (a;b) (\pi'_1) & (\rm{Def. von}\;\pi_1) \\
            & = & \pi'_1(b)(a)  & (\rm{Def. von}\;a;b)  \\
            & = & \rm{id}(a)    & (\rm{Def. von}\;\pi'_1)\\
            & = & a              & (\rm{Def. von}\;\rm{id})
\\
  \pi_2(a;b) & = & (a;b) (\pi'_2) & (\rm{Def. von}\;\pi_2) \\
            & = & \pi'_2(b)(a)  & (\rm{Def. von}\;a;b)  \\
            & = & \rm{const}_b(a)& (\rm{Def. von}\;\pi'_2)\\
            & = & b              & (\rm{Def. von}\;\rm{const}_b)
\end{array}</math></div>
 
====Die Projektionsoperatoren auf Basis des Lambda-Kalküls====
 
<div class="formula"><math>\begin{array}{lclclcl}
  \pi_1 & := & \lambda p. p(\lambda x.\lambda y.y) \\
  \pi_2 & := & \lambda p. p(\lambda x.\lambda y.x)
\end{array}</math></div>
 
<math>\pi_1</math> und <math>\pi_2</math> sind die gesuchten Projektionsoperatoren:
 
<div class="formula"><math>\begin{array}{lcll}
  \pi_1(a;b) & = & (a;b) (\lambda x.\lambda y.y)                                    & (\rm{Def. von}\;\pi_1)    \\
            & = & (\lambda \epsilon . \epsilon b  a)(\lambda x. \lambda y. y)      & (\rm{Def. von}\;a;b)      \\
            & = & (\lambda x. \lambda y. y) b a                                    & (\rm{\beta{-}Konversion}) \\
            & = & (\lambda y. y) a                                                & (\rm{\beta{-}Konversion}) \\
            & = & a                                                                & (\rm{\beta{-}Konversion})
\\
  \pi_2(a;b) & = & (a;b) (\lambda x.\lambda y.x)                                    & (\rm{Def. von}\;\pi_2)    \\
            & = & (\lambda \epsilon . \epsilon  b  a)(\lambda x. \lambda y. x)    & (\rm{Def. von}\;a;b)      \\
            & = & (\lambda x. \lambda y. x) b a                                    & (\rm{\beta{-}Konversion}) \\
            & = & (\lambda y. b) a                                                & (\rm{\beta{-}Konversion}) \\
            & = & b                                                                & (\rm{\beta{-}Konversion}) \\
\end{array} </math></div>


<div class="formula">$\Vdash\backslash\acute{\alpha}(\neg\bigwedge g : u = \acute{\epsilon}g(\epsilon) \rightarrow \neg g(a) = \alpha) = a \frown u$</div>
====„Rückübersetzung“ der Projektionsoperatoren in Freges Notation====
Dies kann man mit Hilfe der Operatoren $\bigvee$ und $\wedge$ (die Frege allerdings nicht explizit definiert und daher auch nicht explitizt verwendet),
etwas einfacher ausdrücken (da $\neg \bigwedge g: a \rightarrow \neg b$ äquivalent zu $\bigvee g: a \wedge b $ ist):


<div class="formula">$\Vdash\backslash\acute{\alpha}(\bigvee g : u = \acute{\epsilon}g(\epsilon) \wedge g(a) = \alpha) = a \frown u$</div>
Die Projektionsoperatoren des vorangegangenen Abschnitts können ziemlich einfach in
Freges Notation übersetzt werden:  


Das heißt, man kann in modernen Klassensystemen Freges Paardefinition
<div class="formula"><math>\begin{array}{lclclcl}
  \Vdash \acute{p}(p(\acute{x}(\acute{y}y))) = \pi_1 \\
  \Vdash \acute{p}(p(\acute{x}(\acute{y}x))) = \pi_2 \\
\end{array}</math></div>


<div class="formula">$\Vdash\acute{\epsilon}(o \frown (a \frown \epsilon)) = o \;;\; a$ </div>  
<math>\pi_1</math> und <math>\pi_2</math> sind die gesuchten Projektionsoperatoren. Der Beweis des Satzes basiert im Wesentlichen
auf Satz 1 von Frege: <math>\vdash f(a) = a \frown \acute{\epsilon}f(\epsilon)</math> (§54, S. 75<ref name="Frege (1893)"/>).


folgendermaßen formulieren:
<div class="formula"><math>\begin{array}{lcll}
  \vdash \pi_1(a;b) & = & \acute{p}(p(\acute{x}(\acute{y}y)))(a;b)          & (\rm{Def. von}\;\pi_1)    \\
                    & = & (a;b) \frown \acute{p}(p(\acute{x}(\acute{y}y)))  & (\rm{Frege: Satz 1})      \\
                    & = & (a;b)(\acute{x}(\acute{y}y))                      & (\rm{Frege: Satz 1})      \\
                    & = & \acute{x}(\acute{y}y) \frown (a;b)                & (\rm{Frege: Satz 1})      \\
                    & = & \acute{x}(\acute{y}y) \frown (\acute{\epsilon}(a \frown (b \frown \epsilon)) & (\rm{Def. von}\;a;b) \\
                    & = & a \frown (b \frown \acute{x}(\acute{y}y))        & (\rm{Frege: Satz 1})      \\
                    & = & a \frown \acute{y}y                              & (\rm{Frege: Satz 1})      \\
                    & = & a                                                & (\rm{Frege: Satz 1})   
\\
  \vdash \pi_2(a;b) & = & \acute{p}(p(\acute{x}(\acute{y}x)))(a;b)          & (\rm{Def. von}\;\pi_2)    \\
                    & = & (a;b) \frown \acute{p}(p(\acute{x}(\acute{y}x)))  & (\rm{Frege: Satz 1})      \\
                    & = & (a;b)(\acute{x}(\acute{y}x))                      & (\rm{Frege: Satz 1})      \\
                    & = & \acute{x}(\acute{y}x) \frown (a;b)                & (\rm{Frege: Satz 1})      \\
                    & = & \acute{x}(\acute{y}x) \frown (\acute{\epsilon}(a \frown (b \frown \epsilon))  & (\rm{Def. von}\;a;b) \\
                    & = & a \frown (b \frown \acute{x}(\acute{y}x))        & (\rm{Frege: Satz 1})      \\
                    & = & a \frown \acute{y}b                              & (\rm{Frege: Satz 1})      \\
                    & = & b                                                & (\rm{Frege: Satz 1})       
\end{array}</math></div>


<div class="formula">$o \;;\; a$, ist eine Funktion, für die Folgendes gilt: $(o \;;\; a)(f) = f(a)(o)$</div>
==Frage-Paare als JavaScript-Funktionen==


Insbesondere gilt daher:
Da Fregepaare mit Hilfe von Funktionen definiert werden und JavaScript Funktionen als  First-Class-Objekte behandelt,
kann man Freges Definition sehr leicht mit Hilfe von JavaScript nachbilden:


<div class="formula">$\begin{array}{lclclcl}
<source lang="javascript">
   a \frown \acute{\epsilon}\phi(\epsilon) & = & \backslash\acute{\alpha}(\bigvee g : \acute{\epsilon}\phi(\epsilon) = \acute{\epsilon}g(\epsilon) \wedge g(a) = \alpha) \\
/* Diesen Code können Sie direkt in der JavaScript-Konsole Ihres Browser ausführen. */
                                          & = & \backslash\acute{\alpha}(\phi(a) = \alpha) \\
let                              // λx.e  is expressed by  x => e
                                          & = & \phi(a)
   pair = (o,a) => ε => ε(a)(o),  // o;a = λε.εao
\end{array} $</div>
  π1  = p => p(x => y => y),    // π1 = λp.p(λx.λy.y)
  π2  = p => p(x => y => x),    // π2 = λp.p(λx.λy.x),
  p    = pair(1111, 2222);


$a \frown u$ liefert also, falls u der Wertverlauf einer Funktion $\phi$ ist, den Wert der Funktion $\phi$ für das Argument $a$ als Ergebnis.
console.log( π1(ε => ε('one')('two')) ); // --> 'one'
Falls $u$ kein Wertverlauf ist, gilt dagegen $a \frown u = \acute{\epsilon}\neg(\epsilon=\epsilon)$, d.h. $a \frown u$ hat die leere Menge als Ergebnis. (Frege (1893, S. 53, letzter Absatz)<ref name="Frege (1893)"/>; Kutschera (1989, S. 104)<ref name = "Kutschera"/>).
console.log( π2(ε => ε('one')('two')) ); // --> 'two'


Wenn $\phi$ wieder eine Prädikatsfunktion ist, entspricht der $\frown$-Operator dem heutigen Elementoperator $\in$:
console.log( π1(p) ); // --> 1111
console.log( π2(p) ); // --> 2222
</source>


<div class="formula">$a \frown \acute{\epsilon}\phi(\epsilon) = \phi(a)$</div>
Source: [https://glossar.hs-augsburg.de/beispiel/javascript/SetTheory/OrderedPairFregeES6/ EcmaScript6] (''arrow functions''),
entspricht dann in moderner Notation Folgender Beziehung:
[https://glossar.hs-augsburg.de/beispiel/javascript/SetTheory/OrderedPairFregeES5/ EcmaScript5]
<div class="formula">$a \in \{\epsilon: \phi(\epsilon)\} \leftrightarrow \phi(a)$</div>


'''Nach diesen zahlreichen Vorbemerkungen, kann man sich Freges Definition nun folgendermaßen veranschaulichen:'''
Wenn man bereits erzeugte Frege-Paare in einem [[Hasharray]] speichert und diese wiederverwendet,
kann man sogar erzwingen, dass wertgleiche Paare im Sinne von JavaScript identisch ({{Mono|&#61;&#61;&#61;}}) sind:


Wenn man, wie zuvor erörtert wurde, eine Funktion mit ihrem Wertverlauf gleichsetzt ($\{\epsilon: \phi(\epsilon)\} \;\hat=\; \phi$),
<source lang="javascript">
dann kann der $\frown$-Operator mit dem Funktionsaufruf-Operator $(\cdot)$ gleichgesetzt werden:
console.log( pair('one','two') ===  pair('one','two')); // --> true
$\phi(a) = a \frown \acute{\epsilon}\phi(\epsilon) \;\hat=\; a \frown \phi$.
</source>


Freges Definition
Source: [https://glossar.hs-augsburg.de/beispiel/javascript/SetTheory/OrderedPairFregeES6Identity/ EcmaScript6] (''arrow functions''),
<div class="formula">$\Vdash\acute{\epsilon}(o \frown (a \frown \epsilon)) = o \;;\; a$ </div>
[https://glossar.hs-augsburg.de/beispiel/javascript/SetTheory/OrderedPairFregeES5Identity/ EcmaScript5]
kann man sich damit folgendermaßen veranschaulichen:
<div class="formula">$o \;;\; a$ ist eine Funktion (ein Wertverlauf), für die $(o \;;\; a)(f) = f(a)(o)$ gilt, sofern f eine zweistellige Funktion ist. Für einstellige Funktionen und Nicht-Funktionen gilt dagegen $(o \;;\; a)(f) = \emptyset$.</div>


==Quellen==
==Quellen==

Aktuelle Version vom 8. November 2023, 09:53 Uhr

Dieser Artikel erfüllt die GlossarWiki-Qualitätsanforderungen:

Korrektheit: 4
(großteils überprüft)
Umfang: 4
(unwichtige Fakten fehlen)
Quellenangaben: 5
(vollständig vorhanden)
Quellenarten: 5
(ausgezeichnet)
Konformität: 5
(ausgezeichnet)

Der Artikel „Geordnetes Paar“ befasst sich mit der Geschichte und den wichtigsten Definitionen des „geordneten Paares“. Die älteste mir bekannte Definition, die den Paar-Begriff auf zuvor definierte Grundbegriffe zurückführt, ist die Definition von Gottlob Frege.

Da die Symbolik, die Frege verwendet, ungewöhnlich ist (dies war einer der Gründe, warum er zu Lebzeiten wenig Anerkennung fand[1]), ist seine Definition nicht ohne Weiters zu verstehen. Im Folgenden soll daher versucht werden, diese Definition etwas zu veranschaulichen.

Frege (1893)[2]

Definition des geordneten Paars, Frege (1893), §144, S. 179[2]

Wir definiren nun das Paar so:

$ \Vdash\acute{\epsilon}(o \frown (a \frown \epsilon)) = o; a $

Das Semikolon ist hierbei zweiseitiges Functionszeichen. (Frege (1893), §144, S. 179[2])

Probleme mit dem Verständnis von Freges Definition

Freges Definition ist nicht zu verstehen, wenn man seine Symbolik nicht kennt oder falsch interpretiert. Zum Beispiel merkt Richard Heck zu dieser Definition fälschlicherweise an, dass sie weder mengentheoretisch noch mit Hilfe der Prädikatenlogik zweiter Ordnung konsistent nachgebildet werden kann:

Unfortunately, Frege's definition of ordered pairs is, as George Boolos once put it, extravagant and can not be consistently reconstructed, either in second-order logic or in set-theory.[3]

Auch ist nicht notwendigerweise jeder Versuch, diese Definition in eine moderne Form zu zu bringen, von Erfolg gekrönt. Der C.S. Peirce Professor of American Philosophy Randall Dipert übersetzt Freges Definition beispielsweise folgendermaßen:

$ <x,y> := \{x,\{y\}\} $[4]

Er merkt an, dass diese Definition falsch ist, weil z.B. die Paare $ <\{\{c\}\}, c> $ und $ <\{c\}, \{c\}> $ nicht unterschieden werden könnten, da sie beide durch $ \{\{\{c\}\}, \{c\}\} $ repräsentiert würden. Das stimmt zwar, ist aber nicht Freges Definition anzulasten, sondern Diperts falscher Interpretation dieser Definition.

Gottlob Frege definiert das Paar $ o;a $ mit Hilfe eines „Werthverlaufs“ $ \acute{\epsilon}\phi(\epsilon) $ und der „Function $ \xi \frown \zeta $ mit zwei Argumenten“ (Frege (1893, §9 und §34)[2]). Da Frege der Funktion $ \frown $ keinen Namen gibt, soll diese im Folgenden „Frown“ heißen (in Anlehnung an den Namen des LaTeX-Symbols, mit dem sie in diesem Beitrag dargestellt wird).

Um die Definition von Frege zu verstehen, muss man die Bedeutung des Wertverlaufs einer Funktion und die Frown-Funktion kennen. Auch hier leitet die Literatur einen leicht in die Irre. Beispielsweise interpretiert Edward Zalta (2014, Abschnitt 2.3) die Frown-Operation als Element-Operation $ \in $.[5] Das ist richtig, falls der Wertverlauf einer Prädikatsfunktion betrachtet wird, d.h. einer Funktion, die jedes Element des Frege-Universums auf einen Wahheitswert abbildet. Eine derartige Funktion wird von Frege „Begriff“ genannt (Zalta verwendet die englische Übersetzung “concept”). Die Frown-Funktion von Frege ist allerdings nicht nur für Wertverläufe von „Begriffen“ definiert, sondern für Wertverläufe von beliebigen Funktionen. Das heißt, i. Allg. kann man $ \frown $ nicht mit $ \in $ gleichsetzen.

Wertverlauf und Frown-Funktion

Freges Definition

$ \Vdash\acute{\epsilon}(o \frown (a \frown \epsilon)) = o;a $

enthält drei unübliche Symbole, deren Bedeutungen im Folgenden näher beleuchtet werden: $ \Vdash $, $ \acute\cdot $ und $ \frown $.

Der Definitionsdoppelstrich

$ \Vdash $ ist der „Definitionsdoppelstrich“, der von Frege als Erweiterung des „Urtheilstrichs“ $ \vdash $ definiert wird (Frege (1893, §27 und §5)[2]). Das Symbol $ \vdash $ wird in der Logik heute noch als „Herleitungs“-, „Ableitungs“- oder „Inferenzoperator“ verwendet.

Der Definitionsdoppelstrich sagt zusammen mit dem Gleichheitszeichen $ = $ aus, dass der Term $ o;a $ eine abkürzende Schreibweise für den Term $ \acute{\epsilon}(o \frown (a \frown \epsilon)) $ ist. Heutzutage würde man üblicherweise folgende Schreibweise verwenden:

$ o;a := \acute{\epsilon}(o \frown (a \frown \epsilon)) $

Der Wertverlaufsoperator

Der Operator $ \acute\cdot $ wird von Frege genutzt, um den „Werthverlauf“ einer Funktion zu beschreiben (Frege (1893), §9[2]). Laut Kutschera (1989, S. 96)[6] kann man den Wertverlauf $ \acute{\epsilon}\phi(\epsilon) $ einer Funktion $ \phi $ in heutigen Klassensystemen durch die Klasse $ \{[\epsilon,\phi(\epsilon)]: \top\} $ ausdrücken, wobei die Objekte $ [x,y] $ keine Frege-Paare sind, sondern geordnete Paare des zugrundeliegende Klassensystems (Wiener-/Kuratowski-/Quine-/Morse-/Schmidt-Paare o. Ä.; siehe Artikel „geordnetes Paar“).

Für Frege sind Funktionen allerdings grundlegender als Klassen. In seinem Axiomensstem sind Funktionen (und deren Wertverläufe) wie beim Lambda-Kalkül von Alonzo Church Grundbegriffe, die nicht definiert, sondern nur erläutert werden können[6] und mit deren Hilfe andere Gundbegriffe wie Klassen, Paare, natürliche Zahlen etc. definiert werden.

Denselben Weg schlägt beispielsweise auch John von Neumann (1925) ein.[7] Allerdings unterscheidet sich sein Axiomensystem hinsichtlich der Definition des geordneten Paares in zwei wesentlichen Punkten von Freges Axiomensystem:

  • Es erlaubt nicht die uneingeschränkte Bildung von Funktionen und geordneten Paaren, so dass die Russellsche Antinomie mit großer Wahrscheinlichkeit, aber – aufgrund des zweiten Gödelschen Unvollständigkeitssatzes – nicht beweisbar vermieden wird.
  • Geordnete Paare werden axiomatisch eingeführt und nicht per Definition.

Überlicherweise werden heute allerdings meist mengen- oder klassenbasierte Systeme (wie z.B. Zermelo-Fraenkel-Mengenlehre, Neumann-Bernays-Gödel-Mengenlehre, Quine-Rosser-Mengenlehre) zur Formalisierung der Mathematik eingesetzt. In diesen Systemen wird zwischen einer Funktion und ihrem Wertverlauf i. Allg. nicht mehr unterschieden. Im Gegenteil: Funktionen werden mit Hilfe von Wertverlaufsklassen definiert (siehe z.B. Schmidt (1966)[8]): Eine Funktion $ f $ ist eine Klasse von Paaren, wobei es keine zwei Paare $ [x, y_1], [x, y_2] \in f $ gibt, für die $ y_1 \not= y_2 $ gilt.

Da Funktionen (genauer: Wertverläufe von Funktionen) wesentlich für die Definition des Freges-Paares sind, können Funktionen nicht mit Hilfe des Frege-Paares definiert werden. Dies war aber auch nicht die Absicht von Frege. Er benötigte die Paare zur Konstruktion von reellen Zahlen (vgl. Frege (1903, §161 ff.)[9], Kutschera (1989, S. 125)[6]).

Um sich Frege-Paare zu veranschaulichen, kann man dennoch einen Trick anwenden: Man identifiziert Funktionen mit ihrem Wertverlauf (so wie das in Klassensystemen üblich ist). Das einzige Problem, das man sich dabei einhandelt, ist, dass Frege-Paare $ a;b $ dann – sofern man eine moderne klassenbasierten Theorie zu Hilfe nimmt – mit Hilfe von anderen Paaren $ [a,b] $ definiert werden. Das ist aber nichts Ungewöhnliches. So werden z.B. auch Morse-Paare[10] mit Hilfe von Kuratowski-Paaren[11] definiert.

Alternativ kann man sich den Wertverlauf-Operator als Lambda-Operator vorstellen (vgl. Zalta (2014)[5]):

$ \acute{\epsilon}\phi(\epsilon) \;\hat=\; \lambda \epsilon .\phi(\epsilon) $

Wenn man die η-Konversion im Lambda-Kalkül zulässt, sieht man auch hier, dass der Wertverlauf von $ \phi $ mit $ \phi $ selbst identifiziert werden kann:

$ \lambda \epsilon .\phi(\epsilon) \;=\; \phi $

Frege betrachtet nicht nur arithmetische Funktionen, sondern auch Prädikatsfunktionen. Diese heißen bei ihm „Begriffe“ (Frege (1893, §3, S. 8)[2]). Eine Pädikatsfunktion liefert für alle Argumente einen Wahrheitswert T oder F als Ergebnis. Frege bezeichnet diese Werte als „das Wahre“ und „das Falsche“. Wenn $ \phi $ eine Prädikatsfunktion ist, die jedem Objekt im Frege-Universum einen Wahrheitswert zuordnet, kann der Wertverlauf von $ \phi $ auch als Klasse aufgefasst werden, die alle Elemente (Frege: „Gegenstände“) $ \epsilon $ enthält, für die $ \phi(\epsilon) $ wahr ist. Der Wertvelauf $ \acute{\epsilon}\phi(\epsilon) $ entspricht unter dieser Sichtweise der Klasse $ \{\epsilon: \phi(\epsilon)\} $ (vgl. Kutschera (1989, Kapitel 6.4)[6]). Insbesondere definiert Frege die leere Menge und einelementige Mengen mit Hilfe von Wertverläufen (führt dafür aber keine eigenen Symbole ein):

moderne Definition Freges Definition Quellen
leere Menge $ \emptyset := \{x: x\not=x\} $ $ \acute{\epsilon}\neg(\epsilon=\epsilon) $ Klasse, Frege (1893, S. 53, vorletzter Absatz)[2]
Einermenge $ \{a\} := \{x: x=a\} $ oder
$ \{a\} := \{x: \rm{Mg}(a) \rightarrow x = a\} $
$ \acute{\epsilon}(\epsilon=a) $ Klasse, Frege (1893, §11)[2]
Extraktion des Elements
einer Einermenge
Es sei $ a $ eine Menge.
$ A =\{a\} \rightarrow \bigcup{A} = a $
Wenn $ A =\acute{\epsilon}(\epsilon=a) $, dann $ \backslash A = a $

Schmidt (1966, S72, 8.28)[8], Frege (1893, §11)[2]

Für alle Objekte $ A $, die keine Einermenge sind, setzt Frege fest, dass $ \backslash A = A $ gilt. Das heißt, für die leere Menge liefern $ \bigcup $ und $ \backslash $ ebenfalls dasselbe Ergebnis (nämlich die leere Menge). Für alle anderen Objekte $ A $ unterscheiden sich die Ergebnisse von $ \bigcup A $ und $ \backslash A $ dagegen. Dies ist für die Veranschaulichung der Frown-Funktion, die im nachfolgenden Abschnitt beschrieben wird, jedoch nicht von Belang, da bei der Definition dieser Funktion nur die leere Menge und einelementige Mengen benötigt werden.

Definition der Frown-Funktion, Frege (1893, §34, S. 53)[2]

Die Frown-Funktion

Frege definiert die Frown-Funktion folgendermaßen (Frege (1893, §34, S. 53)[2]):

$ \Vdash\backslash\acute{\alpha}(\neg\bigwedge g : u = \acute{\epsilon}g(\epsilon) \rightarrow \neg (g(a) = \alpha)) = a \frown u $

Dies kann man mit Hilfe der Operatoren $ \bigvee $ und $ \wedge $ (die Frege allerdings nicht explizit definiert und daher auch nicht explitizt verwendet) etwas einfacher ausdrücken, da $ \neg \bigwedge g: a \rightarrow \neg b $ äquivalent zu $ \bigvee g: a \wedge b $ ist:

$ \Vdash\backslash\acute{\alpha}(\bigvee g : u = \acute{\epsilon}g(\epsilon) \wedge g(a) = \alpha) = a \frown u $

In einem modernen Klassensystem kann man diese Definition – da es sich bei $ \bigvee g : \ldots $ um eine Prädikatsfunktion handelt und es höchstens ein Element $ \alpha $ gibt, das dieses Prädikat erfüllt, da also $ \backslash A $ und $ \bigcup A $ dasselbe Ergebnis liefern – folgendermaßen formulieren:

$ a \frown u := \bigcup\{\alpha : \bigvee g : u = \acute{\epsilon}g(\epsilon) \wedge g(a) = \alpha\} $

(der Wertlauf $ \acute{\epsilon}g(\epsilon) $ repräsentiert hier natürlich die Klasse $ \{[\epsilon,y]: y=g(\epsilon)\} $)

Zwei Fälle sind zu unterscheiden: Entweder ist $ u $ der Wertverlauf einer Funktion g oder $ u $ ist dies nicht. Im ersten Fall gilt:

$ \vdash a \frown \acute{\epsilon}g(\epsilon) = \bigcup\{\alpha : g(a) = \alpha\} = g(a) $

Frege beweist auf den Seiten 74 und 75 denselben Satz in folgender Form:

$ \vdash f(a) = a \frown \acute{\epsilon}f(\epsilon) $ (Dieser Satz erhält von Frege die Satznummer 1.)

Im zweiten Fall gilt:

$ \vdash a \frown u = \bigcup\{\alpha : \bigvee g : u = \acute{\epsilon}g(\epsilon) \wedge g(a) = \alpha\} = \bigcup\{\alpha : \bot\} = \emptyset $

$ a \frown u $ liefert also, falls u der Wertverlauf einer Funktion $ g $ ist, den Wert der Funktion $ g $ für das Argument $ a $ als Ergebnis. Falls $ u $ kein Wertverlauf ist, hat $ a \frown u $ dagegen die leere Menge als Ergebnis. (vgl. Frege (1893, S. 53, letzter Absatz)[2]; Kutschera (1989, S. 104)[6]).

Im Falle einer Prädikatsfunktion entspricht der $ \frown $-Operator dem in Klassensystem üblichen Elementoperator $ \in $:

$ a \frown \acute{\epsilon}g(\epsilon) = g(a) $ entspricht in diesem Fall folgender Beziehung $ a \in \{\epsilon: g(\epsilon)\} \leftrightarrow g(a) $

Dies ist der Spezialfall, mit dem sich Zalta näher befasst[5].

Satz 1 und Satz 2: Der Wertverlauf von ein- und zweistelligen Funktionen, Frege (1893), S. 75[2]

Frege zeigt auf S. 75 außerdem noch, dass sein Satz 1

$ \vdash f(a) = a \frown \acute{\epsilon}f(\epsilon) $

auch für zweistellige Funktionen verallgemeinert werden kann:

$ \vdash f(a,b) = a \frown (b \frown \acute{\alpha}\acute{\epsilon}f(\epsilon,\alpha)) $ (Dieser Satz erhält von Frege die Satznummer 2.)

Analog zu Frege kann man auch

$ \vdash f(a)(b) = a \frown (b \frown \acute{\alpha}\acute{\epsilon}f(\epsilon)(\alpha)) $

zeigen. Das heißt, $ f(a,b) $ und $ f(a)(b) $ unterscheiden sich im Prinzip nicht. Obwohl Frege diese alternative Notation für Funktionen mit zwei Argumenten nicht verwendet hat, wird dsie im nächsten Abschnitt zur Veranschaulichung der Paardefinition verwendet, um die Definitionen etwas schlanker zu halten.

Anmerkung: Auf dieselbe Weise könnte man auch den Wertverlauf von beliebigen n-stelligen Funktionen definieren. Dies hat Frege allerdings nicht getan.

„Übersetzung“ von Freges Definition in „moderne“ Symbolik

Aus den vorangegangenen Überlegungen folgt, dass man in modernen Klassensystemen Freges Paardefinition

$ \Vdash\acute{\epsilon}(o \frown (a \frown \epsilon)) = o; a $

mit Hilfe des Lambda-Kalküls (das dem Axiomensystem von Frege gerade hinsichtlich des Wertverlauf-Operators etwas näher steht als ein Klassensystem) folgendermaßen formulieren kann:

$ o;a \,:= \; \lambda \epsilon . \epsilon a o $

Für die „Übersetzung“ von Freges Definition in eine klassenbasierte Definition werden folgende Vereinbarungen getroffen.

  • Eine Funktion $ f $ ist eine Klasse von Paaren mit $ [x,y_1], [x,y_2]\in f \rightarrow y_1=y_2 $.
  • Der Funktionsaufruf-Operator $ \cdot(\cdot) $ ist folgendermaßen definiert $ f(x) := \bigcap\{y: [x,y] \in f \} $.

Damit definiert man:

$ o; a := \{ [\epsilon, \epsilon(a)(o)] : \top\} $, d.h, $ o; a $ ist eine Funktion mit $ (o; a)(\epsilon) = \epsilon(a)(o) $

Sofern $ \epsilon $ eine Funktion ist, für die der zweistellige Funktionsaufruf $ \epsilon(a)(o) $ definiert ist, stimmen Freges Definition und die Alternative-Definition überein. Für andere Funktionen und Nicht-Funktionen gilt dagegen bei Frege stets $ (o;a)(\epsilon) = \emptyset $. Dies ist bei der Alternativdefinition nicht der Fall. Allerdings ist es für die weiteren Betrachtungen nicht wichtig, welchen Wert $ (o;a)(\epsilon) $ annimmt, falls $ \epsilon(a)(o) $ nicht definiert ist.

Das Paaraxiom

Beweis des Paaraxioms, Teil 1, Frege (1893, S. 195)[2]
Beweis des Paaraxioms, Teil 2, Frege (1893, S. 185)[2]

Frege beweist die Gültigkeit des Paaraxioms direkt, d. h. ohne Hilfe von Projektionsoperatoren und des Satzes „Aus der Existenz zweier Projektionsoperatoren für geordnete Paare folgt das Paaraxiom“:

TO BE DONE

Die Projektionsoperatoren

Frege gibt für seine Paardefinition keine Projektionsoperatoren an. Es ist aber kein Problem, diese zu definieren. Und damit ist ebenfalls sichergestellt, dass das Paaraxiom erfüllt ist.

Die Definition der Projektionsoperatoren kann in modernen Axiomensystemen auf (mindestens) zwei Arten erfolgen:

  1. Mit Funktionen eines Mengen- oder Klassensystems.
  2. Mit Hilfe des Lambda-Kalküls.

Man stellt fest, dass im zweiten Fall die Projektionsoperatoren wesentlich prägnanter formuliert werden können. Das liegt daran, dass es sich sowohl beim Lambda-Kalkül, als auch beim Axiomensystem von Frege um funktionale Axiomensysteme handelt.

Die Projektionsoperatoren auf Basis von Funktionen eines Mengen- oder Klassensystems

$ \begin{array}{lclclclclclcl} \rm{id} & := & \{[x,x] : \top \} & \rm{d.h.:} & \rm{id}(x) & = & x \\ \rm{const_c} & := & \{[x,c] : \top \} & \rm{d.h.:} & \rm{const_c}(x) & = & c \\ \pi'_1 & := & \{[x,\rm{id}] : \top \} & \rm{d.h.:} & \pi'_1(x) & = & \rm{id} \\ & & & \rm{d.h.:} & \pi'_1(x)(y) & = & \rm{id}(y) = y \\ \pi'_2 & := & \{[x,\rm{const}_x] : \top \} & \rm{d.h.:} & \pi'_2(x) & = & \rm{const}_x \\ & & & \rm{d.h.:} & \pi'_2(x)(y) & = & \rm{const}_x(y) = x \\ \pi_1 & := & \{ [p, p(\pi'_1)] : \top\} & \rm{d.h.:} & \pi_1(p) & = & p(\pi'_1) \\ \pi_2 & := & \{ [p, p(\pi'_2)] : \top\} & \rm{d.h.:} & \pi_2(p) & = & p(\pi'_2) \end{array} $

$ \pi_1 $ und $ \pi_2 $ sind die gesuchten Projektionsoperatoren:

$ \begin{array}{lcll} \pi_1(a;b) & = & (a;b) (\pi'_1) & (\rm{Def. von}\;\pi_1) \\ & = & \pi'_1(b)(a) & (\rm{Def. von}\;a;b) \\ & = & \rm{id}(a) & (\rm{Def. von}\;\pi'_1)\\ & = & a & (\rm{Def. von}\;\rm{id}) \\ \pi_2(a;b) & = & (a;b) (\pi'_2) & (\rm{Def. von}\;\pi_2) \\ & = & \pi'_2(b)(a) & (\rm{Def. von}\;a;b) \\ & = & \rm{const}_b(a)& (\rm{Def. von}\;\pi'_2)\\ & = & b & (\rm{Def. von}\;\rm{const}_b) \end{array} $

Die Projektionsoperatoren auf Basis des Lambda-Kalküls

$ \begin{array}{lclclcl} \pi_1 & := & \lambda p. p(\lambda x.\lambda y.y) \\ \pi_2 & := & \lambda p. p(\lambda x.\lambda y.x) \end{array} $

$ \pi_1 $ und $ \pi_2 $ sind die gesuchten Projektionsoperatoren:

$ \begin{array}{lcll} \pi_1(a;b) & = & (a;b) (\lambda x.\lambda y.y) & (\rm{Def. von}\;\pi_1) \\ & = & (\lambda \epsilon . \epsilon b a)(\lambda x. \lambda y. y) & (\rm{Def. von}\;a;b) \\ & = & (\lambda x. \lambda y. y) b a & (\rm{\beta{-}Konversion}) \\ & = & (\lambda y. y) a & (\rm{\beta{-}Konversion}) \\ & = & a & (\rm{\beta{-}Konversion}) \\ \pi_2(a;b) & = & (a;b) (\lambda x.\lambda y.x) & (\rm{Def. von}\;\pi_2) \\ & = & (\lambda \epsilon . \epsilon b a)(\lambda x. \lambda y. x) & (\rm{Def. von}\;a;b) \\ & = & (\lambda x. \lambda y. x) b a & (\rm{\beta{-}Konversion}) \\ & = & (\lambda y. b) a & (\rm{\beta{-}Konversion}) \\ & = & b & (\rm{\beta{-}Konversion}) \\ \end{array} $

„Rückübersetzung“ der Projektionsoperatoren in Freges Notation

Die Projektionsoperatoren des vorangegangenen Abschnitts können ziemlich einfach in Freges Notation übersetzt werden:

$ \begin{array}{lclclcl} \Vdash \acute{p}(p(\acute{x}(\acute{y}y))) = \pi_1 \\ \Vdash \acute{p}(p(\acute{x}(\acute{y}x))) = \pi_2 \\ \end{array} $

$ \pi_1 $ und $ \pi_2 $ sind die gesuchten Projektionsoperatoren. Der Beweis des Satzes basiert im Wesentlichen auf Satz 1 von Frege: $ \vdash f(a) = a \frown \acute{\epsilon}f(\epsilon) $ (§54, S. 75[2]).

$ \begin{array}{lcll} \vdash \pi_1(a;b) & = & \acute{p}(p(\acute{x}(\acute{y}y)))(a;b) & (\rm{Def. von}\;\pi_1) \\ & = & (a;b) \frown \acute{p}(p(\acute{x}(\acute{y}y))) & (\rm{Frege: Satz 1}) \\ & = & (a;b)(\acute{x}(\acute{y}y)) & (\rm{Frege: Satz 1}) \\ & = & \acute{x}(\acute{y}y) \frown (a;b) & (\rm{Frege: Satz 1}) \\ & = & \acute{x}(\acute{y}y) \frown (\acute{\epsilon}(a \frown (b \frown \epsilon)) & (\rm{Def. von}\;a;b) \\ & = & a \frown (b \frown \acute{x}(\acute{y}y)) & (\rm{Frege: Satz 1}) \\ & = & a \frown \acute{y}y & (\rm{Frege: Satz 1}) \\ & = & a & (\rm{Frege: Satz 1}) \\ \vdash \pi_2(a;b) & = & \acute{p}(p(\acute{x}(\acute{y}x)))(a;b) & (\rm{Def. von}\;\pi_2) \\ & = & (a;b) \frown \acute{p}(p(\acute{x}(\acute{y}x))) & (\rm{Frege: Satz 1}) \\ & = & (a;b)(\acute{x}(\acute{y}x)) & (\rm{Frege: Satz 1}) \\ & = & \acute{x}(\acute{y}x) \frown (a;b) & (\rm{Frege: Satz 1}) \\ & = & \acute{x}(\acute{y}x) \frown (\acute{\epsilon}(a \frown (b \frown \epsilon)) & (\rm{Def. von}\;a;b) \\ & = & a \frown (b \frown \acute{x}(\acute{y}x)) & (\rm{Frege: Satz 1}) \\ & = & a \frown \acute{y}b & (\rm{Frege: Satz 1}) \\ & = & b & (\rm{Frege: Satz 1}) \end{array} $

Frage-Paare als JavaScript-Funktionen

Da Fregepaare mit Hilfe von Funktionen definiert werden und JavaScript Funktionen als First-Class-Objekte behandelt, kann man Freges Definition sehr leicht mit Hilfe von JavaScript nachbilden:

/* Diesen Code können Sie direkt in der JavaScript-Konsole Ihres Browser ausführen. */
let                              // λx.e  is expressed by  x => e
  pair = (o,a) => ε => ε(a)(o),  // o;a = λε.εao
  π1   = p => p(x => y => y),    // π1 = λp.p(λx.λy.y)
  π2   = p => p(x => y => x),    // π2 = λp.p(λx.λy.x),
  p    = pair(1111, 2222);

console.log( π1(ε => ε('one')('two')) ); // --> 'one'
console.log( π2(ε => ε('one')('two')) ); // --> 'two'

console.log( π1(p) ); // --> 1111
console.log( π2(p) ); // --> 2222

Source: EcmaScript6 (arrow functions), EcmaScript5

Wenn man bereits erzeugte Frege-Paare in einem Hasharray speichert und diese wiederverwendet, kann man sogar erzwingen, dass wertgleiche Paare im Sinne von JavaScript identisch (===) sind:

console.log( pair('one','two') ===  pair('one','two'));  // --> true

Source: EcmaScript6 (arrow functions), EcmaScript5

Quellen

  1. Wußing (2009): Hans Wußing; 6000 Jahre Mathematik – Eine kulturgeschichtliche Zeitreise – Von Euler bis zur Gegenwart; Hrsg.: H.W. Alten, A. Djafari Naini und H. Wesenmüller-Kock; Band: Band 2; Auflage: 1; Verlag: Springer-Verlag GmbH; Adresse: Berlin; ISBN: 3642023630; 2009; Quellengüte: 5 (Buch), S. 402
  2. 2,00 2,01 2,02 2,03 2,04 2,05 2,06 2,07 2,08 2,09 2,10 2,11 2,12 2,13 2,14 2,15 2,16 Frege (1893): Gottlob Frege; Grundgesetze der Arithmetik; Band: I; Verlag: Verlag Hermann Pohle; Adresse: Jena; Web-Link 0, Web-Link 1, Web-Link 2, Web-Link 3; 1893; Quellengüte: 5 (Buch)
  3. Heck (1997): Richard G. Heck Jnr.; Definition by Induction in Frege's Grundgesetze der Arithmetik; in: Frege: Philosophy of Mathematics; Hrsg.: William Demopoulos; Verlag: Harvard University Press; Adresse: Cambridge; ISBN: 9780674319431; Web-Link 0, Web-Link 1; 1997; Quellengüte: 5 (Buchartikel)
  4. Dipert (1982): Randall R. Dipert; Set-Theoretical Representationsof Ordered Pairs and TheirAdequacy for the Logicof Relations; in: Canadian Journal of Philosophy; Band: XII; Nummer: 2; Seite(n): 353-374; Verlag: University of Calgary Press; Web-Link 0, Web-Link 1, Web-Link 2; 1945; Quellengüte: 5 (Artikel), S. 355
  5. 5,0 5,1 5,2 Zalta (2014): Edward N. Zalta; Frege's Theorem and Foundations for Arithmetic; Hrsg.: Edward N. Zalta; Reihe: The Stanford Encyclopedia of Philosophy; Band: 2014; Nummer: 4; Hochschule: Stanford University; http://plato.stanford.edu/entries/frege-theorem/index.html; Quellengüte: 5 (Web)
  6. 6,0 6,1 6,2 6,3 6,4 Kutschera (1989): Franz von Kutschera; Gottlob Frege – Eine Einfügrung in sein Werk; Verlag: Walter de Gruyter GmbH; Adresse: New York; Web-Link; 1989; Quellengüte: 5 (Buch)
  7. Neumann (1925): John von Neumann; Eine Axiomatisierung der Mengenlehre; in: Journal für die reine und angewandte Mathematik; Band: 154; Seite(n): 219-240; ISSN: 0075-4102, 1435-5345; Web-Link 0, Web-Link 1; 1925; Quellengüte: 5 (Artikel)
  8. 8,0 8,1 Schmidt (1966): Jürgen Schmidt; Mengenlehre – Grundbegriffe; Reihe: B.I.Hochschultaschenbücher; Band: 1; Nummer: 56; Verlag: Bibliographisches Institut AG; Adresse: Mannheim; ISBN: B0000BUJC6; 1966; Quellengüte: 5 (Buch)
  9. Frege (1903): Gottlob Frege; Grundgesetze der Arithmetik; Band: II; Verlag: Verlag Hermann Pohle; Adresse: Jena; Web-Link 0, Web-Link 1; 1903; Quellengüte: 5 (Buch)
  10. Morse (1965): Anthony Perry Morse; A Theory of Sets; Reihe: Pure and Applied Mathematics; Band: 18; Verlag: Academic Press; Adresse: New York, London; Web-Link; 1965; Quellengüte: 5 (Buch)
  11. Kuratowski (1921): Kazimierez Kuratowski; Sur la notion de l‘ordere dans la Théorie des Ensembles; in: Fundamenta Mathematica; Band: 2; Nummer: 1; Seite(n): 161-171; Web-Link; 1921; Quellengüte: 5 (Artikel)