Lógica matemática y fundamentos (2013-14)
El presente curso ofrece un estudio riguroso y sistemático de la lógica computacional, articulado en tres bloques fundamentales. Inicialmente, se abordan los principios de la lógica proposicional, cubriendo su sintaxis, semántica y los principales métodos de demostración como la deducción natural, los tableros semánticos y la resolución, incluyendo el análisis de algoritmos para el problema de satisfacibilidad (SAT). Posteriormente, el temario avanza hacia la lógica de primer orden, extendiendo los conceptos previos para incorporar cuantificadores, el tratamiento de formas normales de Skolem, los modelos de Herbrand y el principio de resolución generalizado. El curso culmina con una introducción a la lógica de orden superior, enfocada en su aplicación práctica a la verificación formal de programas mediante el asistente de demostración Isabelle/HOL. Transversalmente, se enfatiza la conexión entre la teoría y la práctica a través de la implementación de algoritmos lógicos en el lenguaje de programación funcional Haskell y la construcción de demostraciones formales, capacitando al estudiante para modelar problemas complejos y razonar sobre la corrección de programas.
Se trata de una asignatura del tercer año del del Grado en Matemáticas de la Universidad de Sevilla.
Temas
- Lógica proposicional:
- Lógica de primer orden:
- Tema 7: Sintaxis y semántica de la lógica de primer orden.
- Tema 8: Deducción natural en lógica de primer orden y en Isabelle/HOL.
- Tema 9: Tableros semánticos en lógica de primer orden.
- Tema 10: Formas normales de Skolem y cláusulas.
- Tema 11: Modelos de Herbrand.
- Tema 12: Resolución en lógica de primer orden.
- Lógica de orden superior con Isabelle/HOL
Prácticas
Relaciones de ejercicios
- Relación 1: Iniciación a la programación con Haskell.
- Relación 2: Sintaxis y semántica de la lógica proposicional en Haskell.
- Relación 3: Deducción natural proposicional con Isabelle/HOL.
- Relación 4: Argumentación proposicional con Isabelle/HOL.
- Relación 5: Formalización de argumentos en lógica de primer orden.
- Relación 6: Deducción natural en lógica de primer con Isabelle/HOL.
- Relación 7: Tableros semánticos proposicionales en Haskell.
- Relación 8: Formas normales en lógica proposicional en Haskell.
- Relación 9: Cláusulas proposicionales en Haskell.
- Relación 10: Resolución proposicional en Haskell.
- Relación 11: Razonamiento sobre programas con Isabelle/HOL.
- Relación 12: Cuantificadores sobre listas en Isabelle/HOL.
- Relación 13: Recorridos de árboles.
Exámenes
- Examen 2: Primera parte y segunda parte.
- Examen 3: Primera parte, sintaxis y segunda parte.
- Examen 4: Primera parte y segunda parte.
Libros con los temas, ejercicios y exámenes
- En Temas de "Lógica matemática y fundamentos" (2013-14) se encuentran las transparencias de todo el curso en forma de libro.
- En Ejercicios de "Lógica matemática y fundamentos" (2013-14) se encuentran los ejercicios de todo el curso en forma de libro.
- En 50 ejercicios de argumentación se encuentran los enunciados de los ejercicios de formalización de argumentos.
Bibliografía
- M. Ben-Ari. Mathematical logic for computer science. (Springer, 2001).
- I. Bratko. Prolog programming for artificial intelligence (3 ed.). (Addison Wesley, 2001).
- K. Broda, S. Eisenbach, H. Khoshnevisan y S. Vickers. Reasoned programming. (Imperial College, 1994).
- M. Fitting. First-order logic and automated theorem proving. (Springer, 1996).
- J.H. Gallier. Logic for computer science (Foundations of automatic theorem proving). (Wiley, 1986).
- M.R. Genesereth y N.J. Nilsson. Logical foundations of artificial intelligence. (Morgan Kaufmann, 1987).
- C. Hall y J. O'Donnell Discrete mathematics using a computer. (Springer, 2000).
- M. Huth y M. Ryan. Logic in computer science: Modelling and reasoning about systems (Cambridge University Press, 2000). Incluye el tutor en la Red.
- A. Nerode y R.A. Shore. Logic for applications. (Springer, 1997).
- L. Paulson. Logic and proof (U. Cambridge, 2003).
- S. Reeves y M. Clarke Logic for computer science. (Addison-Wesley 1990 & 2003).
- U. Schöning. Logic for computer scientists. (Birkäuser, 1989).