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