Asistente de pruebas


De Wikipedia, la enciclopedia libre
  (Redirigido desde Verificación de prueba )
Saltar a navegación Saltar a búsqueda
Una sesión de prueba interactiva en CoqIDE, que muestra el script de prueba a la izquierda y el estado de la prueba a la derecha.

En ciencias de la computación y lógica matemática , un asistente de prueba o demostrador de teoremas interactivo es una herramienta de software para ayudar con el desarrollo de pruebas formales mediante la colaboración entre humanos y máquinas. Esto implica algún tipo de editor de pruebas interactivo, u otra interfaz , con la que un humano puede guiar la búsqueda de pruebas, cuyos detalles se almacenan en una computadora y algunos pasos los proporciona .

Comparación de sistemas

  • ACL2  : un lenguaje de programación, una teoría lógica de primer orden y un demostrador de teoremas (con modos tanto interactivos como automáticos) en la tradición de Boyer-Moore.
  • Coq  : que permite la expresión de afirmaciones matemáticas, verifica mecánicamente las pruebas de estas afirmaciones, ayuda a encontrar pruebas formales y extrae un programa certificado de la prueba constructiva de su especificación formal.
  • Demostradores del teorema HOL  : una familia de herramientas derivada en última instancia del demostrador del teorema LCF . En estos sistemas, el núcleo lógico es una biblioteca de su lenguaje de programación. Los teoremas representan nuevos elementos del lenguaje y solo pueden introducirse a través de "estrategias" que garantizan la corrección lógica. La composición de la estrategia brinda a los usuarios la capacidad de producir pruebas significativas con relativamente pocas interacciones con el sistema. Los miembros de la familia incluyen:
    • HOL4  - El "descendiente principal", todavía en desarrollo activo. Soporte para Moscow ML y Poly / ML . Tiene una licencia estilo BSD .
    • HOL Light  : una próspera "horquilla minimalista". Basado en OCaml .
    • ProofPower  : pasó a ser propietario y luego volvió al código abierto. Basado en ML estándar .
  • IMPS, un sistema interactivo de prueba matemática [4]
  • Isabelle es una demostradora de teoremas interactiva, sucesora de HOL. El código base principal tiene licencia BSD, pero la distribución de Isabelle incluye muchas herramientas complementarias con diferentes licencias.
  • Jape  : basado en Java.
  • Inclinarse
  • LEGO
  • Matita  : un sistema de luz basado en el cálculo de construcciones inductivas.
  • MINLOG  : un asistente de pruebas basado en una lógica mínima de primer orden.
  • Mizar  : un asistente de prueba basado en la lógica de primer orden, en un estilo de deducción natural , y la teoría de conjuntos de Tarski-Grothendieck .
  • PhoX  : un asistente de pruebas basado en una lógica de orden superior que es extensible.
  • Sistema de verificación de prototipos (PVS): un lenguaje de prueba y un sistema basado en lógica de orden superior.
  • TPS y ETPS  : demostradores de teoremas interactivos también basados ​​en el cálculo lambda de tipo simple, pero basados ​​en una formulación independiente de la teoría lógica y la implementación independiente.
  • Typelab
  • Milenrama

El Museo de Probadores de Teoremas es una iniciativa para conservar las fuentes de los sistemas de probadores de teoremas para análisis futuros, ya que son importantes artefactos culturales / científicos. Tiene las fuentes de muchos de los sistemas mencionados anteriormente.

Interfaces de usuario

Un front-end popular para asistentes de pruebas es el Proof General basado en Emacs , desarrollado en la Universidad de Edimburgo . Coq incluye CoqIDE, que se basa en OCaml / Gtk . Isabelle incluye Isabelle / jEdit, que se basa en jEdit y la infraestructura Isabelle / Scala para el procesamiento de pruebas orientado a documentos. Más recientemente, Makarius Wenzel también ha desarrollado una extensión de Visual Studio Code para Isabelle. [5]

Ver también

  • Demostración automatizada de teoremas
  • Prueba asistida por computadora
  • Manifiesto QED
  • Verificación formal
  • Teorías del módulo de satisfacción
  • Metamath  : un lenguaje para desarrollar matemáticas formalizadas acompañado de un corrector de pruebas para este lenguaje y varias bases de datos de miles de teoremas probados.

Notas

  1. ^ Caza, Warren; Matt Kaufmann; Robert Bellarmine Krug; J Moore; Eric W. Smith (2005). "Meta razonamiento en ACL2" (PDF) . Demostración de teoremas en lógicas de orden superior . Apuntes de conferencias en Ciencias de la Computación. 3603 . págs. 163-178. doi : 10.1007 / 11541868_11 . ISBN 978-3-540-28372-0.
  2. ^ Busque "pruebas por reflexión": arXiv : 1803.06547
  3. ^ "Página de versiones de Lean Theorem Prover" . GitHub .
  4. ^ Granjero, William M .; Guttman, Joshua D .; Thayer, F. Javier (1993). "IMPS: un sistema interactivo de prueba matemática" . Revista de razonamiento automatizado . 11 (2): 213–248. doi : 10.1007 / BF00881906 . S2CID 3084322 . Consultado el 22 de enero de 2020 . 
  5. Wenzel, Makarius. "Isabelle" . Consultado el 2 de noviembre de 2019 .

Referencias

  • Henk Barendregt y Herman Geuvers (2001). "Ayudantes de pruebas que utilizan sistemas de tipo dependiente" . En Manual de razonamiento automatizado .
  • Frank Pfenning (2001). "Marcos lógicos" . En Manual de razonamiento automatizado .
  • Frank Pfenning (1996). "La práctica de los marcos lógicos".
  • Robert L. Constable (1998). "Tipos en informática, filosofía y lógica". En el Manual de teoría de la prueba .
  • H. Geuvers. " Asistentes de prueba: Historia, ideas y futuro ".
  • Freek Wiedijk. " Los diecisiete probadores del mundo "

enlaces externos

  • "Introducción" a la programación certificada con tipos dependientes .
  • Introducción al Coq Proof Assistant (con una introducción general a la demostración interactiva de teoremas)
  • Demostración interactiva de teoremas para usuarios de Agda
  • Una lista de herramientas para demostrar teoremas
Catálogos
  • Matemáticas digitales por categoría: probadores de tácticas
  • Grupos y sistemas de deducción automatizados
  • Demostración de teoremas y sistemas de razonamiento automatizado
  • Base de datos de sistemas de razonamiento mecanizado existentes
  • NuPRL: otros sistemas
  • Implementaciones y marcos lógicos específicos
  • DMOZ : Ciencias: Matemáticas: Lógica y fundamentos: Lógica computacional: Marcos lógicos
Obtenido de " https://en.wikipedia.org/w/index.php?title=Proof_assistant&oldid=1048855269 "