Gibt es eine Definition für freie und gebundene Variablen in der Logik?

Das macht mich verrückt, darüber nachzudenken, weil mein Buch und andere Seiten im Web über freie und gebundene Variablen ohne Definition sprechen. Ich denke, alles in der Mathematik hat eine Definition, also muss es eine Definition dafür geben.

Außerdem belege ich einen Kurs namens Abstrakte Mathematik, Vorträge über Beweisführung und Logik. Ich bin neugierig, ob Logik und diese Beweisstudie in der Mathematik einen anderen Namen haben.

Mit GOOGLE finden Sie Antworten auf Ihre Frage. Wie math.helsinki.fi/logic/opetus/log1/… .
Ja, ein Vorkommen einer Variablen ist gebunden , wenn sie im Geltungsbereich eines Quantifizierers liegt: das Vorkommen von X In X P ( X ) , ansonsten ist frei : das Auftreten von j In X ( P ( X ) Q ( j ) ) .
@MauroALLEGRANZA Wie ist es, eine gebundene und freie Variable zu sein?
@Smyra Befriedigt dich Mauros Definition nicht? Wenn ja, klären Sie bitte, was noch unklar ist.
Was ich bisher weiß, eine freie Variable ist nur ein stehender Buchstabe für ein Objekt, aber da das Objekt nicht klar ist, können wir jedes Objekt für die freie Variable frei behaupten. Es kann die Bedeutung einer Aussage ändern. Eine gebundene Variable ist nur ein Buchstabe, es bedeutet nicht, dass sie für ein Objekt steht, und selbst wenn wir den Buchstaben ändern könnten, ändert sich die Bedeutung einer Anweisung nicht. Es hat eine Verbindung mit einem Satz. Aber auch die freie Variable hat einen Zusammenhang mit einer Menge, da wir danach unsere Objekte für die freie Variable auswählen. Ich verstehe den Unterschied in einigen Fällen wie diesem nicht klar.
Und ich dachte, wenn ich eine klare Definition habe, was eine Funktion ist, könnte ich mein Problem lösen. Was Mauro jedoch nur zu den Namen sagt, sie könnten eher etwas anderes als freie und gebundene Variablen sein. Zum Beispiel könnte ich statt freie Variable hässliche Variable sagen. Es macht für mich keinen Sinn, es sei denn, ich kenne ihre Eigenschaften. Es befriedigt mich nicht.
Wahrscheinlich sind es nicht die einzigen Namen und jemand kann die Bedeutung mit Hilfe von Quantifizierern leicht verstehen.
Ich danke Ihnen für Ihre Hilfe

Antworten (2)

Freie und gebundene Variablen werden im Kontext der Syntax der Logik erster Ordnung unter Berücksichtigung von Begriffen (dh "Namen" für Objekte) und Formeln (dh Anweisungen) definiert.

Die formale Definition der Menge FV ( φ ) von freien Variablen einer Formel φ ist definiert durch:

alle in einem Term oder einer Atomformel vorkommenden Variablen sind frei.

FV ( ¬ φ ) = FV ( φ ) ;

FV ( φ ψ ) = FV ( φ ) FV ( ψ ) , (und das gleiche für die anderen binären Konnektoren);

FV ( X φ ) = FV ( X φ ) = FV ( φ ) { X } .

Eine Variable, die nicht frei ist, wird gebunden .

Eine Formel φ heißt geschlossen wenn FV ( φ ) = .

In Formel X P ( X ) , Die Variable X ist gebunden.

In Formel X R ( X , j ) Die Variable X gebunden ist, während die Variable j ist gratis.


Eine geschlossene Formel drückt, wenn sie interpretiert wird, einen Satz aus, dh hat einen bestimmten Tuth-Wert.

N ( N 0 ) stimmt darin N , während N ( N < 0 ) ist darin falsch.

Was ist der Wahrheitswert einer Formel mit einer freien Variablen, wie zB ( X > 0 ) ?

Es kommt darauf an... Es kommt darauf an, welchen Wert wir der Variablen zuweisen X .

Eine freie Variable fungiert als Pronomen der natürlichen Sprache : Ihre Referenz muss entsprechend dem Kontext identifiziert werden : Wenn ich sage "es ist rot", hängt der Wahrheitswert der Aussage von dem Objekt ab, auf das ich mit meinem Finger zeige : the rotes Buch oder der blaue Stift auf meinem Tisch.

Ebenso gibt es Möglichkeiten (definiert durch die formalen semantischen Spezifikationen der Sprache erster Ordnung : siehe Variablenzuweisungsfunktion ), um "temporär" auf freie Variablen einer Formel zu verweisen.

Betrachten Sie die Formel:

X + 2 = 5 ;

wenn wir ersetzen X die (Name für die) Nummer 3 , erhalten wir einen wahren Satz (dh 3 + 2 = 5 ).

Wenn wir stattdessen zu ersetzen X die (Name für die) Nummer 4 , erhalten wir einen falschen Satz (dh 4 + 2 = 5 ).

Eine Formel mit freier Variable wird "offen" genannt, weil sie keine (feste) Bedeutung hat: Sie ist "offen für" verschiedene Interpretationen; Um ihm eine Bedeutung zu geben, müssen wir ihn in einen Satz (dh eine geschlossene Formel) umwandeln.

Es ist eine erstklassige Antwort! Danke schön!
„Eine Variable, die nicht frei ist, ist gebunden“ kann eine Variable nicht sowohl frei als auch gebunden sein?
@Lobic - ja; Wir haben mehrere Vorkommen einer Variablen in einer Formel, von denen einige frei und andere gebunden sind. Z.B P X X Q X .
Können wir also eine Variable gebunden haben, wenn es mindestens ein gebundenes Vorkommen davon gibt? [Danke für die schnelle Antwort]
Ist das die Def?
@Lobic - in welchem ​​Sinne? Wenden Sie die obige "Prozedur" auf eine Formel an ... Let φ := P X (Atomfall). Dann FV ( φ ) = { X } . Nun, was ist FV ( X P X ) ? Offensichtlich und somit X darin gebunden ist. Betrachten Sie nun den Fall φ := P X X P X ; wir haben das das erste Vorkommen von X ist frei , während die beiden anderen gebunden sind .
Offensichtlich können wir solche Fälle immer vermeiden, in denen gebundene Variablen umbenannt werden, weil ( P X X P X ) ( P X z P z ) .

Leider sind Variablen wirklich fummelig.

Das Problem der Variablen taucht in der Informatik häufig in Bezug auf Theorien wie den Lambda-Kalkül auf, der Bindungen und Substitutionen sauber handhabt. Wenn Sie einen Rahmen mit mehrfach sortierter Logik höherer Ordnung zulassen, können Sie Quantoren im Sinne des einfach typisierten Lambda-Kalküls axiomisieren und definieren. Einem Quantor über einem Diskursbereich kann direkt ein Typ gegeben werden verbinden : ( Domain Stütze ) Stütze . Eine solche Grundlage der Simple Type Theory wird in der Praxis in Theorembeweisern wie Isabelle/HOL verwendet. Weitere Informationen finden Sie unter Die sieben Tugenden der Theorie einfacher Typen .

Die STLC löst die Variablenbindung nicht direkt, bietet aber ein schönes Beispiel für die Formalisierung und Verallgemeinerung. Eine der einfacheren Techniken, um mit der Hässlichkeit von Variablen umzugehen und Substitution zu vermeiden, die in der Praxis häufig in der Metatheorie verwendet wird, ist die Verwendung von de Bruijn-Indizes. Grundsätzlich werden Variablen wie Zahlen behandelt, die in den lokalen Geltungsbereich indizieren, also zum Beispiel die Konstantenfunktion λ X j . X wird λ . λ . 1 . Wenn Sie an solchen Sachen interessiert sind, gibt es einen netten Blogbeitrag über Ordner von Jesper Cockx .

Wenn Sie mit dieser Art von Ansatz nicht zufrieden sind, können Sie die STLC zu kartesischen geschlossenen Kategorien zusammenstellen. Siehe Compiling to Categories von Conal Elliott . BCKW ist wahrscheinlich ein eher traditioneller Satz von Kombinatoren, auf den man sich kompilieren kann. Leider ist die vollständige kategorientheoretische Behandlung von abhängigen Typen und Quantifizierern in Bezug auf Slices und Unterobjekte ziemlich unheimlich. Ich denke, einer der wenigen Bereiche, in denen ein kombinatorischer Ansatz in der Praxis verwendet wird, ist das Klassenverständnis-Metatheorem der NBG-Mengentheorie, in dem Formeln für Klassen bis zu Permutationen von Tupeln und dergleichen kompiliert werden.

Direktere Zugänge zum Umgang mit Variablen sind das Gebiet der Algebraischen Logik. Sie möchten sich wahrscheinlich Alfred Tarskis Zylinderalgebren ansehen, wo Sie Existenzquantoren im Grunde als eine Art Modaloperator behandeln können. Es gibt auch andere Ansätze für das Problem wie polyadische Algebren, aber ich verstehe sie auch nicht.

Abschließend möchte ich Hilberts unbestimmten Beschreibungsoperator erwähnen, der einige Probleme mit Variablen durch das Verschachteln von Aussagen und Begriffen wohl verschlimmert, aber die Metatheorie vereinfachen kann. ε X . P ( X ) wird verwendet, um "einen unbestimmten Begriff zu beschreiben, so dass P wahr ist". Existenzielle Quantifizierung kann dann definiert werden als X . P ( X ) P ( ε X . P ( X ) ) .

Sie erwähnen das Problem nicht, aber neben freien und gebundenen Variablen gibt es auch die Probleme der globalen und lokalen Definitionen und der definitorischen Erweiterung. In einigen Fällen können Sie lokale Definitionen in Lambda-Ausdrücke desugaren lassen X := e In e ' ( λ X . e ) e ' obwohl dies aus technischen Gründen, die sehr spezifisch für Computerprogramme sind, nicht immer funktioniert. Die prägnanteste Methode, mit globalen Variablen umzugehen, könnte darin bestehen, einen eindeutigen Beschreibungsoperator zu missbrauchen .

Auch dies ist kein wirkliches Problem für die Logik erster Ordnung, aber die Informatik muss sich mit Kontrollfluss / Fortsetzungen als einer anderen Art von Variablen befassen. Die Fokussierung wie im Lambda-Bar-Mu-Mu-Tilde-Kalkül ist jedoch nicht deterministisch.

Ich hoffe, ich habe Sie davon überzeugt, dass es möglich, wenn nicht sogar tatsächlich ist, dass jemand die Erfassung formalisiert hat, um die Ersetzung von Variablen korrekt zu vermeiden, und dass Sie, wenn Sie ein Zylon sind, alles zu einem unlesbaren Durcheinander frei von Namensbindern schonfinkle können. Leider sind Variablen wirklich fummelig.

Es gibt keine einfache Typentheorie :)