I1M2011: Razonamiento sobre programas Haskell

En la clase de hoy de Informática de 1º del Grado en Matemáticas se ha estudiado cómo demostrar propiedades de funciones definidas en Haskell. Los esquemas de demostración estudiados son:

  • por simplificación,
  • por casos,
  • por inducción sobre los números naturales,
  • por inducción sobre listas,
  • por inducción anidada y
  • por generalización e inducción.

Las transparencias usadas en la clase son las del tema 8:
Read More “I1M2011: Razonamiento sobre programas Haskell”

LI2011-12: Introducción a la programación lógica con Prolog

En la clase de hoy del curso Lógica Informática se ha realizado una introducción a la programación lógica con Prolog como aplicación de la resolución en la lógica de primer orden y como base para programar los conceptos de la lógica proposicional.

En primer lugar, se ha presentado el sistema deductivo de Prolog en tres fases: proposicional, relacional y funcional. En cada una se ha comentado cómo representar el conocimiento, cómo realizar consultas y cómo es el razonamiento de Prolog para calcular las respuestas.

En segundo lugar, se ha estudiado el procesamiento de listas en Prolog. Se destaca la analogía con el de los números naturales.

En tercer lugar, hemos vistos cómo se puede representar el conocimiento y las consultas “casi en lenguaje natural” usando operadores.

En cuarto lugar, hemos estudiado cómo se puede mejorar la búsqueda usando cortes.

Finalmente, se ha visto cómo definir la negación como fallo y cómo razonar con conocimiento negativo.

Los apuntes de esta clase son Introducción a la programación lógica con Prolog (páginas 1-26).

Las transparencias de esta clase son las del tema 12
Read More “LI2011-12: Introducción a la programación lógica con Prolog”

Lecturas del Grupo de Lógica Computacional (Enero de 2012)

Esta entrada es una recopilación de lecturas compartidas en la lista de correo del grupo de lógica computacional desde el 1 de Octubre de 2011 hasta el 7 de Enero de 2012. La anterior recopilación fue la de Septiembre de 2011

La recopilación está ordenada por la fecha de su publicación en la lista. Al final de cada artículo se encuentra etiquetas relativas a los sistemas que usa o a su contenido.

Read More “Lecturas del Grupo de Lógica Computacional (Enero de 2012)”