En relación con esta pregunta sobre el carácter "fundamental" de los posibles sistemas lógicos, me di cuenta de que solo tenía una comprensión intuitiva (y, por lo tanto, inadecuada) de la forma en que las lógicas superiores a FOL pueden especificar sin ambigüedades el tipo de semántica que constituye la intención . interpretación de sus formalismos, dentro de los propios formalismos . Esta es una pregunta bastante significativa, ya que la capacidad de un sistema automatizado de razonamiento en el nivel del lenguaje objeto solo puede reconocer lo que está codificado en el formalismo mismo, en ese nivel; y así, aquellos enfoques que parten de la construcción de un modelo en el meta-nivel, quedan a priori descartados en el sentido que aquí describo.
En lo que estoy pensando es en los sistemas informáticos que razonan con la lógica, como los asistentes de prueba basados en HOL, como Isabelle .
Entonces, ¿cómo se especifica la semántica prevista de SOL y HOL en un sistema informático?
PD : Me he dado cuenta de que este tema no es realmente nuevo en este sitio y ha sido mencionado en otras preguntas como esta .
Desde el punto de vista de la derivabilidad y la sintaxis, no hay distinción entre la semántica completa de orden superior y la semántica de primer orden (Henkin). Esta es, en cierto sentido, la razón por la que no existe un teorema de completitud para la semántica completa, porque el teorema de completitud hace coincidir la derivabilidad con la semántica de Henkin, por lo que cualquier semántica genuinamente diferente no coincidirá con la derivabilidad. Las cosas sintácticas como los asistentes de prueba, que solo se preocupan por la derivabilidad, son algo indiferentes a los problemas semánticos.
Creo que el principal beneficio de usar lógica de orden superior en asistentes de prueba es que facilita la formalización de teoremas que han sido probados en matemáticas ordinarias. Incluso si estos teoremas pudieran formalizarse, por ejemplo, en la aritmética de Peano, mediante la creación de pruebas completamente nuevas, a menudo es más fácil modificar la prueba existente para que funcione en una lógica de orden superior.
Hasta donde yo sé, los sistemas de prueba por computadora no se preocupan en absoluto por la semántica. Su tarea es construir y verificar pruebas formales que sigan las reglas sintácticas de lo que constituye una derivación válida, y luego depende del usuario humano convencerse de que el sistema formal corresponde a su intuición sobre la semántica.
(Bueno, algunos asistentes de prueba sí se preocupan por la semántica algunas veces, por ejemplo, si contienen procedimientos de decisión basados en cálculos para teorías específicas, como campos ordenados o aritmética de Presburger. Pero luego, dependiendo del nivel de paranoia utilizado en el desarrollo -- el papel de estas partes de subpartes semánticas suele ser solo sugerir una prueba sintáctica que se puede verificar de forma independiente).
Quiero aclarar algo: HOL no es simplemente FOL multiordenado
La diferencia clave está en la expresividad de los dos sistemas. FOL no puede expresar un cierre transitivo. Aquí hay una buena nota que explica por qué. Por otro lado, HOL puede expresar un cierre transitivo. Aquí está el código fuente de la implementación de Isabelle/HOL si está interesado.
EDICIÓN 1 : tenga en cuenta la advertencia en los comentarios: FOL extendido con ZF o maquinaria de la aritmética puede expresar un cierre transitivo. Sin embargo, que ningún cálculo extendido pueda hacer esto no es lo que estoy afirmando aquí.
EDICIÓN 2 : Del mismo modo, es inapropiado hacer uso ciego de la intuición de la semántica de Henkin para su lógica de orden superior, ya que su aplicación a HOL basados en computadora no es sencilla . Por un lado, los asistentes de prueba se basan en HOL de Church, que es anterior al trabajo de Henkin y tiene sus propias peculiaridades. La semántica para HOL de Church se puede dar usando estructuras aplicativas, según Harvey Friedman (1975) y artículos posteriores.
[¿Cómo] se especifica la semántica prevista de SOL y HOL en un sistema informático?
Realmente no puede especificar la semántica , como han señalado otros, pero hay diferentes formas en que se analiza en sintaxis base.
En Isabelle, puede cargar Isabelle/ZF o Isabelle/HOL. Dependiendo del sistema que cargue, se interpreta de otra manera.
En Isabelle/ZF, es el significado que aprendiste en la clase de teoría de conjuntos: es una relación binaria en FOL y obedece a varios axiomas de la teoría de conjuntos.
En Isabelle/HOL, S :: 'x set
(es decir, " S
es un conjunto de objetos de tipo 'x
") es realmente solo un envoltorio para un objeto de tipo f :: 'x -> bool
(es decir, " f
es una función indicadora que lleva 'x
a Verdadero/Falso"). La comprensión de conjuntos y la pertenencia se definen efectivamente por la equivalencia
. Puedes leer sobre esto en la fuente de Isabelle/HOL si te gustan ese tipo de cosas.
Tanto en Isabelle/ZF como en Isabelle/HOL, la sintaxis familiar también se interpreta como azúcar sintáctico. En ambos casos, es responsabilidad del analizador compilar la sintaxis extendida en la sintaxis base; y cómo se hace difiere según la base.
Finalmente, mientras que los asistentes de prueba por computadora generalmente no están acostumbrados a razonar sobre su propia semántica, hay una excepción. John Harrison desarrolló dos pruebas de consistencia relativa de HOL-Light dentro de HOL-Light aquí .
Primero demuestra cómo construir un modelo completo de HOL-Light sin el axioma del infinito en HOL-Light. Luego muestra cómo construir un modelo completo de todo HOL-Light en HOL-Light extendido con un cardenal fuertemente inaccesible.
@
aplicación representada por operación binaria polimórfica. Parece que Harvey Friedman resolvió esto en los años 70. No hace falta decir que no creo que la intuición del HOL de Henkin sea directamente aplicable a los HOL basados en computadora. Obtuve la mayor parte de esto después de hojear esta tesis de maestría: ps.uni-saarland.de/theses/kaminski/mthesis/kaminski-mthesis.pdf
macario