La mayoría de las teorías de tipos que conozco son predicativas, lo que quiero decir que
Void : Prop
Void = (x : Prop) -> x
no está bien tipado en la mayoría de los probadores de teoremas ya que este tipo pi pertenece al mismo universo Prop
y no es el caso Prop : Prop
. Esto los convierte en predicativos y no permite definiciones impredecibles como las anteriores. Sin embargo, una gran cantidad de "lenguajes de pizarra" como System F o CoC son, de hecho, poco convincentes. De hecho, esta impredicatividad es vital para definir la mayoría de las construcciones no incluidas primitivamente en el lenguaje.
Mi pregunta es ¿por qué desearía abandonar la impredicatividad dado su poder para definir construcciones lógicas? Escuché a un par de personas comentar que la impredicatividad arruina la "computación" o la "inducción", pero tengo problemas para encontrar una explicación concreta.
fuente
forall P : Type, {P} + {~P}
, ya que este conjunto + impredecible implica irrelevancia de prueba (y nonat
es irrelevante). Ver, por ejemplo, coq.inria.fr/library/Coq.Logic.ClassicalUniqueChoice.html y coq.inria.fr/library/Coq.Logic.Berardi.htmlRespuestas:
Voy a elaborar mis comentarios en una respuesta. Los orígenes de la teoría del tipo predicativo son casi tan antiguos como la teoría del tipo en sí, ya que una de las motivaciones de Russel fue prohibir las definiciones "circulares" que se identificaron como parte de la fuente de las inconsistencias y paradojas del siglo XIX. Thierry Coquand ofrece una visión general ilustrada aquí . En esta teoría, los predicados sobre un "nivel" o tipo, pertenecen a los tipos del "siguiente" nivel, donde hay un número infinito (contable) de niveles.
Si bien la jerarquía predicativa de Russel fue (aparentemente) suficiente para descartar las paradojas conocidas, resultó ser muy difícil de usar como sistema fundamental. En particular, definir incluso algo tan simple como el sistema de números reales fue extremadamente difícil, por lo que Russel postuló un axioma, el Axioma de Reducibilidad, que postulaba que todos los niveles se "reducían" a uno. No hace falta decir que este no fue un desarrollo satisfactorio.
Sin embargo, al contrario de las declaraciones impredicativas "dañinas" (como la comprensión sin restricciones), este axioma no parecía introducir ninguna inconsistencia. Las formulaciones posteriores de teorías fundamentales ( teoría de tipo simple , teoría de conjuntos de Zermelo ) las aceptaron en su totalidad, haciendo que las familias de predicados (cuantificando posiblemente sobre todo el universo de conjuntos), predicados en el mismo nivel.
Alrededor de 1971, Martin-Löf introdujo la teoría del tipo dependiente en la que se
Type : Type
mantienen tanto este principio como el axioma adicional . Este sistema resultó ser inconsistente por razones sutiles: la ingenua paradoja de Russel no se puede desarrollar (de manera directa), pero una codificación inteligente permite encontrar una contradicción. Esto provocó una crisis de fe similar a la de Russel, que resultó en la teoría del tipo predicativo con universos que conocemos y amamos.Hay una manera de reparar la teoría para permitir la impredicatividad "inocente" a la teoría de conjuntos de Zermelo, lo que resulta en teorías de tipo como el Cálculo de construcciones, pero el daño ya estaba hecho, y la "escuela sueca" de la teoría de tipos tiende a rechazar la impredicatividad.
Varios puntos:
¿Qué tiene esto que ver con las matemáticas intuicionistas? La respuesta no es mucho. A comienzos del siglo XX, los matemáticos tendían a combinar el uso de principios circulares / impredicativos con un razonamiento no constructivo (la intuición es que el razonamiento impredicativo parece asumir un universo matemático preexistente , al igual que los usos del medio excluido). Sin embargo, hay teorías de intuición perfectamente intuicionistas (como IZF ). Las personas interesadas en el intuicionismo todavía tienden a interesarse en el predicativismo por alguna razón (soy culpable de esto, por supuesto).
¿Qué puede hacer usted en matemáticas predicativos? Como Martin señala en su respuesta, Hermann Weyl (que no debe confundirse con Andre Weil) comenzó un programa que trató de explorar el poder expresivo de los sistemas predicativos, tomando como punto de partida que los sistemas predicativos tenían una fuerza expresiva entre Peano Aritmética y Second Order Aritmética , que está bastante de acuerdo en ser impredecible para la mayoría de los estándares (y es comparable al Sistema F en el lado de la teoría de tipos). Posteriormente, el programa se denominó "matemática inversa", ya que intentaba clasificar la fuerza de los teoremas matemáticos conocidos en términos de los axiomas requeridos para probarlos (el reverso del enfoque habitual). losLa página wikipedia ofrece una buena descripción general; el programa tuvo bastante éxito, ya que la mayoría de las matemáticas del siglo XIX se pueden acomodar fácilmente en sistemas muy débiles. Todavía es una pregunta abierta si este programa puede escalar a resultados más recientes en, digamos, teoría de categoría superior (la sospecha es que la respuesta es "sí, con gran esfuerzo").
fuente
Una dimensión es la inferencia de tipos. La inferencia de tipo del sistema F, por ejemplo, no es decidible, pero algunos de sus fragmentos predicativos tienen una inferencia de tipo decidible (parcial).
Otra dimensión es la consistencia como lógica. Los pensadores distinguidos históricamente se han sentido un poco inquietos por tener fundamentos impredecibles de las matemáticas. Después de todo, es una forma de razonamiento circular. Creo que H. Weyl podría haber sido el primero o, uno de los primeros, que trató de reconstruir la mayor cantidad posible de matemáticas de una manera predicativa ... solo para estar seguro. Hemos aprendido que las circularidades de la impredicatividad no son problemáticas en las matemáticas clásicas, en el sentido de que nunca se han derivado contradicciones de las definiciones impredicativas "domesticadas". Con el tiempo, aprendimos a confiar en ellos. Tenga en cuenta que esto (ausencia de paradoxa) es un empírico¡observación! Sin embargo, gran parte del desarrollo de la teoría de la prueba, con sus extrañas construcciones ordinales tiene como objetivo final el deseo de construir todas las matemáticas 'desde abajo', es decir, sin definiciones impredecibles. Este programa no está completo. En los últimos años, el interés por los fundamentos predicativos de las matemáticas ha pasado de las preocupaciones acerca de la paradoxa al contenido computacional de las pruebas, lo que es interesante por varias razones. Resulta que las definiciones impredecibles dificultan la extracción de contenido computacional. Otro ángulo en la preocupación por la coherencia proviene de la tradición Curry-Howard. La teoría del tipo original de Martin-Löf era impredecible ... y poco sólida. Después de ese shock, propuso solo sistemas predicativos, pero combinados con tipos de datos inductivos para recuperar gran parte del poder de la impredicatividad.
fuente
Las teorías de tipo tienden a la predicatividad principalmente por razones socio-técnicas.
Primero, el concepto informal de impredicatividad se puede formalizar (al menos) de dos maneras diferentes. Primero, decimos que una teoría de tipos como el Sistema F no es predictiva porque la cuantificación de tipos puede abarcar todos los tipos (incluido el tipo al que pertenece el cuantificador). Entonces podemos definir operadores de identidad y composición genéricos:
Sin embargo, tenga en cuenta que en la teoría de conjuntos estándar (p. Ej., ZFC), estas operaciones no se pueden definir como objetos . No existe tal cosa como "la función de identidad" en la teoría de conjuntos, porque una función es una relación entre un conjunto de dominio y un conjunto de codominio, y si una sola función podría ser la función de identidad, entonces podría usarla para construir un conjunto de todos los conjuntos. (Así es básicamente como John Reynolds demostró que el polimorfismo de estilo System-F no tenía modelos de teoría de conjuntos).
Por lo tanto, la impredicatividad de estilo F es incompatible con una visión ingenua de los tipos como conjuntos. Si está utilizando la teoría de tipos como asistente de pruebas, es bueno poder portar matemática estándar fácilmente a su herramienta, por lo que la mayoría de las personas que implementan tales sistemas simplemente eliminan la impredicatividad. De esta forma, todo tiene una lectura tanto teórica de conjuntos como teórica de tipos, y puede interpretar los tipos de la forma que le resulte más conveniente.
fuente