Existe una variedad de sistemas para la Prueba interactiva de teoremas (ITP); consulte también la conferencia de ese nombre: Coq, Isabelle, HOL, ACL2, PVS, etc.
Todos ellos son relativamente difíciles de aprender, y cada uno tiene su propia cultura específica. Es como aprender un idioma extranjero: digamos que ya sabes inglés y luego puedes elegir entre francés, alemán, italiano, español y portugués. Todos están relacionados de alguna manera, esto no es chino, pero muy pocas personas manejan todo eso simultáneamente. Por lo tanto, debe intentar probar cada una de las culturas y comunidades, y luego comprometerse.
También puede haber la "característica asesina" que realmente necesita para su trabajo.
También ayuda tener expertos en uno de estos sistemas.
- ¿Cuáles son las diferencias entre Coq e Isabelle?
Ambos son descendientes del sistema LCF de Stanford / Edimburgo / Cambridge. En 1985, G. Huet y L. Paulson estaban trabajando juntos en la última versión de Cambridge LCF. Luego, la división ocurrió hacia Coc / CIC / COQ (ahora Coq) en Francia, e Isabelle en Cambridge y Munich. Tenga en cuenta que HOL4, HOL-Light, HOL-XYZ son otros descendientes relacionados de LCF.
Hace más de 20 años, la distinción de Coq vs. Isabelle se habría hecho de acuerdo con fundamentos lógicos: lógica constructiva de tipo dependiente aquí, lógica clásica de tipo simple allí. Hoy en día, sorprendentemente hay poco impacto en eso en la práctica, ya que se han agregado más y más capas sobre cada sistema formal, incluidas las herramientas complementarias y las bibliotecas.
- ¿Debo aprender Isabelle o Coq, o ambos?
Debes mirar a ambos, y tratar de sentir si te gusta más el vino y el queso, o las salchichas y salchichas. (Como uno de los muchachos detrás de Isabelle, pero actualmente en Francia, me sorprende la cantidad de franceses que realmente les gusta el chucrut cuando están en casa y nadie mira :-)
- ¿Hay alguna ventaja en aprender Isabelle o Coq primero?
No lo creo. Puede existir el peligro de que te quedes atascado con el que intentas primero y no intentes con el segundo, o que te decepciones demasiado pronto con el primero y lo descartes demasiado pronto. En cualquier caso, necesitará tiempo y persistencia para ser productivo con cualquiera de los sistemas.
Como la Prueba general como "IDE" ya se mencionó: La Prueba general / Emacs solía ser la interfaz unificadora estándar para Coq e Isabelle durante muchos años, pero nunca la habría llamado IDE. También hay CoqIDE con "IDE" en su nombre, pero es un editor relativamente básico sobre widgets de Gtk. Isabelle actual incluye Isabelle / jEdit, que no tiene "IDE" en su nombre, pero está destinado a aproximar las cosas que ve habitualmente en Netbeans o IntelliJ IDEA --- para textos de prueba en lugar de código Java.