34 votos

¿Cómo empezar con la demostración automatizada de teoremas?

Estoy interesado en esta cuestión, pero no voy a enumerar mis conocimientos/demandas sino que voy a orientarlo a un propósito más general; así que lo primero se refiere a los requisitos previos, es decir

¿Cuántos conocimientos teóricos (lógica matemática, programación y otros) hay que tener antes de dedicarse a la demostración automática de teoremas (ATP)? ¿Hay algún campo de la lógica matemática que no sea un prerrequisito necesario pero que proporcione una visión más profunda del ATP?

Una vez cumplidos los requisitos previos, sólo hay que sumergirse:

¿Cómo se empieza con la ATP? ¿Existen libros, apuntes de clase, que expliquen los conceptos cruciales? Una vez que uno ha terminado con la idea general de ATP, ¿cómo se procede a hacer ¿a qué se debe?

Sin embargo, uno podría estar preocupado (al menos esa es mi principal preocupación) por la gran cantidad de teoremas diferentes; cómo se elige, y existe la posibilidad de que si uno elige el equivocado, se quede con un conocimiento obsoleto (incluso en términos de matemáticas puras). En otras palabras

¿Hasta qué punto hay que preocuparse por el "envejecimiento" de los teóricos? ¿Existen enfoques agnósticos del lenguaje?

1voto

asenseofdesign Puntos 1

He utilizado demostradores de teoremas y he escrito otras herramientas de razonamiento formal, pero no he escrito un demostrador de teoremas. Una comprensión básica de las matemáticas debería ser suficiente para empezar a utilizar un demostrador de teoremas. Creo que escribir uno requiere años de estudio y trabajo, y un buen conocimiento de los fundamentos de las matemáticas.

El probador de teoremas que yo sugeriría es TLAPS para el TLA+, la lógica temporal de las acciones introducida por Leslie Lamport. El estilo de demostración está estructurado jerárquicamente y es legible. Una introducción al estilo de prueba es este documento y se ofrece una descripción detallada aquí .

Un buen punto de partida para el TLA+ es el libro Especificación de sistemas . Parte de la notación es similar a la de LaTeX. Los teoremas y las pruebas se imprimen con la herramienta tla2tex y LaTeX.

Para los demostradores de teoremas de la corriente principal hay buenos libros en estilo tutorial. Puede que quieras mirar:

Para responder a la última pregunta: No conozco ningún enfoque totalmente "agnóstico" en cuanto a los idiomas. Quizás TLA+ podría considerarse el enfoque más genérico, porque se basa en la teoría de conjuntos de Zermelo-Fraenkel, que sirve de base para la mayoría de las matemáticas que se hacen hoy en día, y el lenguaje refleja la notación matemática que solemos leer y escribir.

El envejecimiento de los demostradores de teoremas es probablemente algo bueno, siempre que se mantengan y tengan una comunidad activa. Beneficios: las bibliotecas de resultados matemáticos formalizados aumentan, se descubren y corrigen los errores, los proyectos de demostración de teoremas poco prácticos dejan de mantenerse, lo que hace que se dirijan a los más prácticos (menos opciones -> más fácil de elegir).

No se puede elegir el equivocado. Hay que buscar o probar al menos un par para tomar una decisión informada, de forma similar al aprendizaje de varios lenguajes de programación con diferentes paradigmas.

Se puede encontrar una lista de varios demostradores de teoremas aquí .

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X