Reseña: A hierarchy of mathematical structures in ACL2

Se ha publicado un artículo de razonamiento formalizado en ACL2 titulado A hierarchy of mathematical structures in ACL2.

Sus autores son Jónathan Heras, Francisco J. Martín y Vico Pascual.

Su resumen es

In this paper, we present a methodology which allows one to deal with mathematical structures in the ACL2 theorem prover. Namely, we cope with the representation of mathematical structures, the certification that an object fulfills the axioms characterizing an algebraic structure and the generation of generic theories about concrete structures. As a by-product, an ACL2 algebraic hierarchy has been obtained. Our framework has been tested with the definition of homology groups, an example coming from Homological Algebra which involves several notions related to Universal Algebra. The method presented here, when compared to a from-scratch approach, is preferred when working with complex mathematical structures; for instance, the ones coming from Algebraic Topology. The final aim of this work is the verification of Computer Algebra systems, a field where our hierarchy fits better than the ones developed in other systems.

El códico correspondiente a este trabajo se encuentra aquí.

LMF2013: Sintaxis y semántica de la lógica de primer orden

En la clase de hoy del curso Lógica matemática y fundamentos se presentado la sintaxis y la semántica de la lógica de primer orden como respuestas a las siguientes preguntas:

  • ¿cómo se puede representar el conocimiento con la lógica de primer orden?,
  • ¿qué es una fórmula de primer orden?,
  • ¿qué significa que una fórmula verdadera? y
  • ¿qué significa que un argumento sea correcto?

Como ejemplos de representación hemos visto cómo representar conocimiento geográfico, del mundo de los bloques y conocimiento astronómico. En los distintos ejemplos hemos resaltado los tipos de símbolos lógicos utilizados.

A partir de los ejemplos de representación del conocimiento, se han definido los símbolos lógicos (variables, conectivas, cuantificadores e igualdad) y los símbolos no lógicos (constantes, predicados y funciones) que forman el alfabeto del lenguaje de la lógica de primer orden.

A partir del alfabeto, se definen los términos, las fórmulas atómicas y las fórmulas del lenguaje.

Como medio del reconocimiento de fórmulas, se introducen los árboles de análisis. Con ello, respondemos a la segunda de las preguntas iniciales.

En el estudio sintáctico, definimos el conjunto de las subfórmulas, el conjunto de las variables de un término, las ocurrencias libres y ligadas, el conjunto de las variables libres y ligadas y las fórmulas cerradas y abiertas. Algunas de las definiciones anteriores se realizan por recursión sobre fórmulas o sobre términos.

En segundo lugar hemos estudiado la semántica, comenzando con distintas cuestiones sobre qué significa que una fórmula sea verdadera para resaltar su dependencia del universo, la interpretación de los símbolos no lógico y de las asignaciones a las variables libres.

Se han definido las estructuras de un lenguaje, las asignaciones a las variables y las interpretaciones de un lenguaje.

Se ha definido el valor de un término o de una fórmula en una interpretación. Con ello, respondemos a la tercera de las preguntas iniciales.

Finalmente, se han definido los conceptos de consistencia, consecuencia lógica y equivalencia y se ha explicado la metodología de búsqueda semántica de modelos y contramodelos.

Las transparencias de esta clase son las del tema 7.

I1M2012: Resolución de problemas matemáticos con Haskell

En las clases de ayer y de hoy de Informática de 1º del Grado en Matemáticas se han explicado las soluciones de los ejercicios de la 12ª relación en la que se plantea la resolución de distintos problemas
matemáticos. En concreto,

  • el problema de Ullman sobre la existencia de subconjunto del tamaño dado y con su suma acotada,
  • las descomposiciones de un número como suma de dos cuadrados,
  • el problema 145 del proyecto Euler,
  • el grafo de una función sobre los elementos que cumplen una propiedad,
  • los números semiperfectos,
  • el carácter funcional de una relación y
  • la identidad de Bezout.

Los ejercicios, y sus soluciones, se muestran a continuación.
Read More “I1M2012: Resolución de problemas matemáticos con Haskell”