Portada Favoritos
Lista Articulos: [0-C] [C-I] [I-P] [P-Z] | Todas las categorías | Página aleatoria | Lo que enlaza aquí

Demostrador de teoremas Isabelle

El demostrador interactivo de teoremas Isabelle es una herramienta, de ayuda a la demostración de teoremas escrita en el lenguaje de programación ML y desarrollada por Larry Paulson de la Universidad de Cambridge y Tobias Nipkow del Technische Universität München.

El lenguaje en donde se realizan las pruebas en HOL (acrónimo de Higher-Order Logic), que es un lenguaje fuertemente tipificado con estructuras de datos, funciones recursivas incluyendo valores funcionales y expresiones lógicas con cuantificadores.

Entre las características mas resaltantes de Isabelle se pueden mencionar

Ejemplo extraido de un archivo de teoría

subsection{*Definición inductiva de los números pares*}
consts Par :: "nat set" | Par de tipo conjunto de naturales
inductive Par | Definición inductiva de par
intros
ZeroI: "0 : Par" | Cero es par
Add2I: "n : Par ==> Suc(Suc n) : Par" | n+2 es par si n lo es 
text{* Uso de reglas de introducción: *}
lemma "Suc(Suc(Suc(Suc 0))) \<in> Par" | 4 es par
apply(rule Add2I) | Pasos de la prueba
apply(rule Add2I)
apply(rule ZeroI)
done
text{* Prueba inductiva sencilla: *}
lemma "n:Par ==> n+n : Par" | 2n es par si n lo es
 | Pasos de la prueba
apply(erule Par.induct) | Inducción en base a la def. de Par
 apply(simp) | simplificación
 apply(rule Par.ZeroI)
apply(simp)
apply(rule Par.Add2I)
apply(rule Par.Add2I)
apply(assumption)
done

Enlaces externos




This site support the Wikimedia Foundation. This Article originally from Wikipedia. All text is available under the terms of the GNU Free Documentation License Page HistoryOriginal ArticleWikipedia