En la lógica clásica de predicados, ¿por qué se suele suponer que existe al menos un objeto?

En la lógica de predicados clásica, se supone comúnmente que el dominio de los objetos no está vacío. Esto valida inferencias tales como

X F X X F X
así como, si el predicado de identidad está disponible, la verdad lógica de
X   X = X .
¿Cuál es la motivación de esta suposición? En realidad, podría decirse que no es una contradicción lógica suponer que nada existe.

Porque hace que muchos teoremas sean más fáciles de probar. En la lógica clásica, siempre puedes considerar el caso de un dominio vacío por separado.
Es un artefacto histórico en su mayoría sin sentido.
@EricWofsey sería bueno escuchar esta anécdota histórica si tiene tiempo.
¿Por qué hay algo en vez de nada? Sin duda un gran misterio...
@JairTaylor Correcto, y no sería misterioso en absoluto si hubiera una entidad necesariamente existente. Me pregunto si algún teólogo ha (abusado) de esta suposición lógica para argumentar a favor de un ser necesario. :D
@Max seguro, muchos filósofos y teólogos intentaron algo similar a lo largo de la historia, que se llama Argumento Ontológico . La más famosa y antigua es de Anselmo, y la objeción de Kant usando predicado. Godel también tenía una versión modal.
En matemáticas, no podemos inferir de a X : PAG ( a ) eso PAG ( y ) por algún objeto y a menos que hubiéramos supuesto o inferido previamente que el conjunto X no está vacío.

Respuestas (4)

Contrariamente a la creencia popular, muchos teoremas se expresan de manera más elegante si permitimos estructuras vacías. Solo por ejemplo, la siguiente es una de las pruebas más útiles para la eliminación de cuantificadores.

Una teoría T tiene eliminación de cuantificador si y solo si para todos los modelos METRO T y norte T , cualquier subestructura A METRO y cualquier incrustación F : A norte , F es un mapa elemental parcial.

El teorema es falso si requerimos la estructura A ser no vacío. Si observa el libro Model Theory: An Introduction , Theorem 3.1.4 de Marker, en realidad agrega la hipótesis antinatural de que el lenguaje contiene un símbolo constante para solucionar este problema.

Por otro lado, uno de los únicos lugares que conozco donde realmente ayuda asumir que todas las estructuras no están vacías es la forma normal prenex. Por ejemplo, la oración ( X PAG ( X ) ) q , dónde PAG es un 1 -símbolo de relación aria y q es un símbolo de proposición (un 0 -símbolo de relación aria) no es equivalente a ninguna oración en forma de prenexo. Por supuesto, esto se puede arreglar cambiando el teorema: cada fórmula de primer orden es equivalente sobre estructuras no vacías a una en forma de prenexo. Pero admito que es un poco insatisfactorio.

Si alguien tiene otros ejemplos de lugares donde prohibir estructuras vacías realmente parece mejorar la teoría, me gustaría conocerlos. (Aunque una advertencia justa: soy un verdadero partidario de este tema, por lo que probablemente responderé tratando de convencerlo de que existe una solución elegante que permite estructuras vacías).

En mi experiencia, realmente no hay problemas para desarrollar los conceptos básicos de la lógica de primer orden con estructuras vacías, ¡una vez que arreglas las reglas de prueba para que sean sólidas en estructuras vacías, por supuesto! Pero nuevamente, hay sistemas de prueba que son sólidos y completos en estructuras vacías y tan elegantes como los sistemas de prueba tradicionales, si no más. Si desea ver los detalles del teorema de completitud resuelto, puede consultar el Capítulo 3 de estas notas de clase sobre la teoría de modelos , donde doy un sistema de cálculo secuencial que es sólido y completo para la lógica de primer orden de orden múltiple en la que cualquiera o todos los géneros pueden estar vacíos.

Encuentro bastante irónico que sus notas asuman una especie de conjunto no vacío.
@MarkSaving ¡Ja! Siento que debo haber tenido una razón para hacer ese requisito en ese momento, pero ahora no puedo recordar... Y estoy bastante seguro de que es la elección equivocada, ya que trabajar sobre el conjunto vacío te da exactamente proposiciones. lógica. Si alguna vez me pongo a editar las notas, lo sacaré.
Gracias por publicar las notas de la clase. Estoy un poco confundido por lo que es una secuencia variable. ¿Es una secuencia de símbolos variables o un mapeo de símbolos variables a interpretaciones (creo que esto último se llama secuencia Tarskiana pero no estoy seguro)?
@GregoryNisbet ¿Dónde aparece el término "secuencia variable" en las notas? Un "contexto variable" es solo una tupla/secuencia finita de variables. Llamo al mapeo de variables a elementos de una estructura una "interpretación" del contexto variable.
Sí tienes razón. La palabra contexto se usa consistentemente. ¿El orden de las variables proviene del orden lineal en el que aparecen en el término/wff... o es el orden de las variables libres una de las cosas que intrínsecamente eliges al escribir un término/wff?
@GregoryNisbet La forma en que escribí las notas, el orden es algo que puedes elegir. Entonces X = y + 1 es una fórmula tanto en contexto ( X , y ) y en contexto ( y , X ) . Pero podría ser mejor tomar un contexto como un conjunto finito de variables, por lo que el orden no importa...
¿Cómo se definiría formalmente la recursividad simultánea en la definición 1.11. ?
@Lobic Lo siento, ¿qué es la definición 1.11? ¿Te refieres a mis notas? No creo que haya una definición 1.11 allí...
¡Oh! Tiene dos conjuntos diferentes a los que me refiero en la página 4 aquí: akruckman.faculty.wesleyan.edu/files/2020/05/Lecture-Notes.pdf También aparece en el otro conjunto (el de esta respuesta) en la sección 1.5
@Lobic ¡Oh, bueno, esas son notas de clase de una clase diferente! De todos modos, dado que su pregunta sobre la formalización de esta definición recursiva está muy alejada de la pregunta original, y se beneficiaría de una respuesta más larga que un comentario, creo que debería hacer una nueva pregunta.
@AlexKruckman Sé cómo formalizar una definición recursiva en la teoría de conjuntos (usando intersecciones) pero estaba confundido acerca de cómo formular la recursión simaltanoues ; No estoy seguro de cómo formular la pregunta; ¿Existe un teorema de recursión simultánea?
@Lobic De hecho, no se debe hacer nada especial. Mi comentario de que la definición es "simultánea en todos los contextos X ¯ es solo para enfatizar que no estamos arreglando un contexto X ¯ y dando una definición recursiva de "fórmula en el contexto fijo X ¯ ", es decir, del conjunto { φ φ  es una fórmula en contexto  X ¯ } . En su lugar, estamos dando una definición recursiva del conjunto de pares { ( φ , X ¯ ) φ  es una fórmula en contexto  X ¯ } .
Ya veo, gracias por la respuesta!
¿Hay alguna razón particular por la cual los contextos variables son secuencias y no solo conjuntos?
@VioletFlame No, los conjuntos funcionan perfectamente bien (y pueden ser más elegantes). De hecho, hice un comentario a este efecto arriba.
¿A qué culparías que hace que las cosas salgan mal si adoptamos un sistema de prueba clásico mucha gente culpa al axioma? X A [ X ] A [ t / X ] pero no puedo ver por qué esto no se mantiene en el modelo vacío. No hay nada en su prueba que le impida pasar por AFAIK.
@VioletFlame Si me das algún sistema de prueba S que es completo sobre estructuras no vacías, prueba X ( X = X ) . Esta oración es falsa en un modelo vacío, por lo que S no es sonido sobre estructuras arbitrarias. Así, hay algún axioma o regla en S que no es sonido sobre estructuras arbitrarias. ¡Qué axioma o regla es, por supuesto, depende del sistema de prueba! Pero es solo cuestión de inspeccionar cada axioma y cada regla y verificar si es correcto en estructuras vacías.
@VioletFlame La situación con el axioma X A [ X ] A [ t / X ] es un poco sutil. Echemos A ser , la fórmula contradictoria. Entonces el axioma dice X , lo que parece poco sólido, ya que X es cierto en una estructura vacía, mientras que siempre es falso. Pero tenga en cuenta que una instancia de este axioma requiere tanto una fórmula A y un término t . Si hay algún término sin variables libres (en el contexto vacío), entonces no hay estructuras vacías. Así que supongamos t es un término en el contexto no vacío y . Entonces [ t / X ] = es una fórmula en contexto y .
@VioletFlame Y como fórmula en un contexto no vacío y , en realidad es válido en una estructura vacía (vacuamente, ya que no hay interpretaciones de y en una estructura vacía). Entonces, si adoptamos la convención de que cada fórmula viene con un contexto variable (es decir, no identificamos en el contexto vacío y en contexto y ), entonces el axioma es realmente sólido en estructuras vacías. El resultado es que si este axioma es sólido o no depende de las convenciones sobre cómo tratar las variables libres.
Gracias, eso ayuda, pero otras inferencias a las que estamos acostumbrados, por ejemplo, si ϕ ( a ¬ a ) entonces ¬ ϕ también son erróneos sobre el modelo vacío, por lo que no es solo una cosa la que falla y uno necesita desarrollar un nuevo sistema axiomático como el suyo, ¿correcto?
@VioletFlame ¿Por qué cree que la inferencia no es sólida sobre el modelo vacío? "Uno necesita desarrollar un nuevo sistema axiomático como el suyo" - nuevamente, el punto es que cualquier sistema de prueba S que es completo sobre estructuras no vacías deja de ser sólido sobre estructuras arbitrarias. Los sistemas defectuosos son inútiles, así que sí, uno necesita desarrollar uno nuevo. No es tan simple como dejar caer alguna regla; perderá la integridad de esta manera. ¿Tiene que ser "como el mío"? No, no necesariamente. Hay muchas formas diferentes en las que podría verse un sistema de prueba de este tipo, como en el caso clásico.
Creo que no es sólido porque, considere: X ( X = X ) ( X = X ) ¬ ( X = X ) lo cual es cierto en el modelo vacío. Pero en este caso ¬ ϕ Es falso.
Este es el mismo problema sobre las variables libres que surgen nuevamente. X ( X = X ) ( y = y ) ¬ ( y = y ) [Prefiero no reutilizar nombres de variables] es válido en la estructura vacía como una fórmula en contexto y . X ( X = X ) también es válido en la estructura vacía como una fórmula en contexto y . De todos modos, esta conversación se está haciendo demasiado larga. Terminemos aquí.

Presentaré una versión abreviada de la explicación tradicional de la semántica de la lógica clásica ordenada, explicaré por qué no podemos permitir modelos vacíos bajo esta semántica y mostraré cómo podemos modificar la explicación tradicional para permitir modelos vacíos.

arreglar un idioma L - es decir, una colección de símbolos de función y símbolos de predicado.

Una estructura es un conjunto no vacío. METRO , junto con, para cada norte -símbolo de función aria F , Una función F METRO : METRO norte METRO , y para cada norte -símbolo de predicado ario PAG , un norte - predicado ario PAG METRO METRO norte . La estructura generalmente se denota abusivamente como METRO .

Recuerde que tomamos el conjunto de todas las variables como un conjunto numerable infinito V . Dada una estructura METRO , una asignación variable para METRO se define como una función V METRO . Dada una asignación de variable α , una variable v V , y algo metro METRO , definimos α [ v metro ] ser el envío de asignación variable v a metro y enviar X v a α ( X ) .

dado un término t y una asignación variable α , podemos definir la "interpretación de t en α ", Escrito como α ( t ) , como sigue:

α ( v ) = α ( v ) cuando sea v V (aquí, el lado izquierdo es "la interpretación de v en α "y el lado derecho es la aplicación de función)
α ( F ( t 1 , . . . , t norte ) ) = F METRO ( α ( t 1 ) , . . . , α ( t norte ) ) cuando sea F es un norte -símbolo de función aria y t 1 , . . . , t norte son términos.

La declaración METRO , α ϕ , dónde METRO es una estructura, α es una asignación variable, y ϕ es una declaración en lógica de primer orden en el lenguaje L , se define recursivamente de la siguiente manera:

METRO , α t 1 = t 2 si y solo si α ( t 1 ) = α ( t 2 )
METRO , α PAG ( t 1 , . . . , t norte ) si y solo si ( α ( t 1 ) , . . . , α ( t norte ) ) PAG METRO
METRO , α siempre
METRO , α nunca
METRO , α A B si y solo si METRO , α A y METRO , α B
... (se omiten otros conectores)
METRO , α X ϕ si y solo si hay alguna metro METRO tal que METRO , α [ X metro ] ϕ
METRO , α X ϕ si y solo si para todos metro METRO , METRO , α [ X metro ] ϕ

Definimos METRO ϕ significar que para todos α : V METRO , se da el caso de que METRO , α ϕ . Esto se lee como " METRO es un modelo de ϕ ".

Tenga en cuenta que esta definición se encuentra inmediatamente con un problema si permitimos METRO estar vacío Esto se debe a que no hay asignaciones de variables. α : V METRO . Por lo tanto, para todos ϕ , METRO ϕ . ¡Esto no es lo que queremos! No queremos modelos de fenómenos contradictorios. Queremos que haya modelos de declaraciones si y solo si estas declaraciones son consistentes.

Afortunadamente, hay una manera de revisar esta cuenta para permitir modelos vacíos.

Una asignación de variable flexible se define como una función parcial α : V METRO , dónde V es un subconjunto de V . Una asignación variable flexible α : V METRO se dice que es "compatible con ϕ (mi propia terminología) si F r mi mi V a r i a b yo mi s ( ϕ ) V . Dada alguna asignación variable flexible α : V METRO , alguna variable v V , y algo metro METRO , podemos definir una asignación variable flexible α [ v metro ] : V { v } METRO que envía v a metro y envía X V , X v a α ( X ) .

Una vez que hemos definido las asignaciones de variables flexibles, podemos definir la interpretación de un término sobre esta asignación flexible. Una asignación variable flexible α : V METRO es compatible con un término t si y si F r mi mi V a r i a b yo mi s ( t ) V . Si α es compatible con t , entonces la interpretación de t en α , escrito α ( t ) , es definido por

α ( v ) = α ( v ) cuando sea v es una variable (el lado derecho es la aplicación de la función real, el lado izquierdo es "la interpretación de v en α )
α ( F ( t 1 , . . . , t norte ) ) = F METRO ( α ( t 1 ) , . . . , α ( t norte ) ) para todos norte -símbolos de funciones arias F y términos t 1 , . . . , t norte

La declaración METRO , α ϕ , dónde METRO es una estructura, α es una asignación variable flexible en METRO , ϕ es una declaración en el idioma L , y α es compatible con ϕ , se define recursivamente para significar

METRO , α t 1 = t 2 si y solo si α ( t 1 ) = α ( t 2 )
METRO , α PAG ( t 1 , . . . , t norte ) si y solo si ( α ( t 1 ) , . . . , α ( t norte ) ) PAG METRO
METRO , α siempre
METRO , α nunca
METRO , α ( A B ) si y solo si METRO , α A y METRO , α B .
... (se omiten otros conectores)
METRO , α X ϕ si y solo si existe metro METRO tal que METRO , α [ X metro ] ϕ .
METRO , α X ϕ si y solo si para todos metro METRO , METRO , α [ X metro ] ϕ .

La declaración METRO ϕ significa que para todas las asignaciones de variables flexibles α : V METRO compatible con ϕ , se da el caso de que METRO , α ϕ .

Tenga en cuenta que hay un poco más de trabajo aquí. Por ejemplo, tenemos que demostrar que si α es compatible con X ϕ , entonces α [ X metro ] es compatible con ϕ .

Pero esto nos saca del acertijo anterior al permitir METRO estar vacío Esto se debe a que siempre existe la asignación de variable vacía, que es compatible con la instrucción . Así que nunca es el caso de que METRO incluso cuando METRO esta vacio.

Resulta que no es demasiado difícil modificar ligeramente las reglas normales de la lógica clásica de predicados para que sean sólidas y completas sobre esta definición modificada de "modelos". Las reglas modificadas prueban exactamente las mismas afirmaciones que las "reglas ordinarias" si asume X .

Una "salida" aún mejor, que considero la semántica correcta para la lógica de primer orden, es declarar que cada término y cada fórmula vienen con un contexto variable (que incluye todas las variables que aparecen libres en el término/fórmula ). El contexto variable es parte de la definición de la sintaxis. Por ejemplo, X es un término en contexto ( X 1 , , X norte ) si y solo si X es una de las variables X i , declaramos que X φ es una fórmula en contexto ( y 1 , , y norte ) si φ es una fórmula en contexto ( X , y 1 , , y norte ) , etc.
Luego dada una fórmula φ en contexto variable ( X 1 , , X norte ) , una estructura METRO , y una interpretación ( a 1 , , a norte ) de las variables en el contexto, podemos preguntarnos sobre la satisfacción METRO φ ( a 1 , , a norte ) . Esto evita la cuantificación universal sobre asignaciones de variables (flexibles): para saber a qué elemento se refiere un término, o saber si se cumple una fórmula, solo necesita asignar valores a las variables en su contexto.
@AlexKruckman Sí, estoy de acuerdo. Esa semántica también tiene buenos paralelos con la forma en que se expresan los juicios en la teoría de tipo formal y la semántica categórica de la lógica. Solo quería presentar una solución simple que fuera lo más análoga posible a la semántica tradicional.
Tal vez me estoy perdiendo algo, pero ¿cómo funciona esto si el idioma contiene constantes individuales? Si el dominio está vacío, esas constantes no se refieren a nada. Si C es tal constante, ¿sería la fórmula PAG ( C ) simplemente interpretarse como falso?
@Max Tenga en cuenta que una constante es solo un símbolo de función cero-ario C . Así, si METRO es una estructura para el lenguaje, tendremos C metro : METRO 0 METRO . Desde METRO 0 siempre tiene exactamente un elemento , tenemos C metro ( ) METRO . Así que no hay modelos vacíos de lenguajes con símbolos constantes.
@AlexKruckman ¿Le importaría agregar estos dos comentarios a su respuesta? Los encontré útiles.
¿Supongo que uno modifica las reglas de prueba modificando trivialmente la regla de iniciación? ¿Bien?
@VioletFlame Sí, la regla para la introducción existencial debe modificarse un poco. Para una cuenta aún mejor, puede ver las notas de la teoría del modelo de Kruckman en la respuesta aceptada. Los encontré bastante esclarecedores.

Si permite que el dominio no esté vacío, debe introducir más complejidad para manejar símbolos no lógicos.


Puede relajarse o eliminar la suposición de que el dominio no está vacío, lo que le brinda varios tipos de lógica libre .

A primera vista, la lógica libre aborda un problema ligeramente diferente, a saber, cómo manejar símbolos constantes que no se refieren a nada ni a funciones parciales.

Sin embargo, estas son preguntas que debe abordar si desea permitir símbolos constantes en su vocabulario no lógico. En la teoría de la Aritmética de Peano, por ejemplo, hay una constante 0 . En una estructura vacía, no hay nada que 0 puede referirse a... por lo que no está claro cómo construir una estructura con un dominio vacío que podría ser o no ser un modelo de PA.

Este es un completo problema. Simplemente no existe ninguna estructura con un dominio vacío sobre una lengua que tenga un símbolo constante. Esto no requiere ningún tratamiento especial; es inmediato a partir de la definición de una estructura.

En la lógica de predicados clásica (cuantificada), asumimos que el dominio del discurso contiene al menos un objeto y que cada constante en el lenguaje se refiere a un objeto en ese dominio. Por supuesto, puede crear su propio sistema lógico sin tal idealización, pero siempre tendrá en cuenta que es posible que no tengamos objetos para abarcar en su fórmula, lo que complicará considerablemente la forma del lenguaje sin mucho beneficio en el análisis de problemas reales. Los problemas reales siempre se basan en objetos abstractos físicos o bien definidos (mentales) existentes; de lo contrario, es un problema metafísico algo nihilista o puramente imaginario similar al unicornio / pegaso que se puede emplear para describir la lógica libre .

Una lógica libre es una lógica con menos presupuestos existenciales que la lógica clásica. Las lógicas libres pueden permitir términos que no denoten ningún objeto. Las lógicas libres también pueden permitir modelos que tienen un dominio vacío. Una lógica libre con la última propiedad es una lógica inclusiva.

En un nivel filosófico más profundo, el filósofo Quine tiene un dicho famoso

"Ser es ser el valor de una variable ligada".

La existencia en sí misma no es un predicado en la lógica clásica consistente con el espíritu de Quine, por lo que primero debemos asumir la no vacuidad del dominio que se va a abarcar para la variable ligada. En otras palabras, la existencia de todas sus variables en FOL clásico ya está implícitamente asegurada por la suposición de no vacío del dominio del discurso en esta etapa de génesis , los cuantificadores posteriores deciden aún más su existencia bajo predicados correspondientes... Como resumen aquí en lógica clásica todos somos realistas y nos comprometemos con el no vacío de cualquier dominio del discurso de interés. Si resulta que ningún objeto en este dominio no vacío satisface algún predicado P(x), entonces simplemente concluimos la proposición ¬ X PAG ( X ) o X ¬ PAG ( X ) .

¿Por qué los conjuntos vacíos, los gráficos vacíos, los órdenes vacíos, etc. no son dominios del discurso de interés? ¿No puedes ser realista y aceptar la realidad de estos objetos matemáticos? "Cada constante en el lenguaje se refiere a un objeto en ese dominio" - ¡Ciertamente! Si hay símbolos constantes en el lenguaje, entonces no hay estructuras vacías. Pero en el lenguaje de los conjuntos, el lenguaje de los gráficos, el lenguaje de las órdenes, etc., es simplemente erróneo negar la existencia de estructuras vacías.
@AlexKruckman gracias por sus comentarios y desafíos. Sin embargo, no encuentro ninguna contradicción de mis declaraciones aquí. Por ejemplo, en el lenguaje de los conjuntos ZF, el conjunto vacío se considera un objeto de bloque de construcción en el dominio de fondo del discurso y se puede definir como ∀y(y=∅↔∀z(z∉y)), (ver aquí ) pero se requiere que el dominio del discurso en sí mismo no esté vacío en FOL, por lo que el axioma del par desordenado implica la existencia de un conjunto que contiene este par. (continuará)
... de lo contrario, si el dominio de fondo del discurso está vacío, no podemos asegurarnos de que exista tal par desordenado y tenemos que agregar premisas adicionales para expresar el mismo efecto. Al igual que tratar la excepción de puntero nulo en el lenguaje de programación, es mejor excluir estos casos marginales triviales pero molestos en la mayoría de las situaciones. A la mente humana no le gustan las complicaciones innecesarias, como lo demuestra su propia nota de conferencia cuando asumió un conjunto no vacío por razones que ahora olvidó y se opone con confianza ahora...
Un problema aquí es: ¿Para qué sirve la lógica de primer orden? Si su propósito es axiomatizar clases de estructuras matemáticas (por lo que estamos interesados ​​en la teoría de grupos, órdenes, gráficos, etc.), entonces no es natural excluir estructuras vacías. Si su propósito es proporcionar una base para una amplia gama de matemáticas (por lo que estamos interesados ​​en teorías de conjuntos, teorías de la aritmética, etc.), entonces es perfectamente natural querer requerir la existencia de algunos objetos.
¡Por supuesto, la lógica de primer orden tiene ambos roles! Pero incluso en el escenario fundacional, diría que es el papel de la teoría , no de la lógica subyacente, afirmar la existencia de los objetos. Como hace ZFC, por ejemplo, con el axioma del infinito.
@AlexKruckman Creo que la lógica es la base de todos los campos epistémicos, incluidas las matemáticas, la filosofía y el lenguaje, ya que la morfología del logos universal griego a la lógica y puede ver que la palabra "lenguaje" está relacionada etimológicamente con "logos", lo que sugiere que la lógica se consideró como componente atómico de cualquier lenguaje natural desde la antigüedad... La teoría de conjuntos es solo otro metalenguaje construido sobre FOL para dar más significados semánticos y relaciones abstractas que los plurales y ofrecer más predicados y wffs. Pero la existencia última o no (T o ⊥) es una cuestión epistémica ya codificada en el cuantificador ∃ en lógica.