Descripción de la asignatura



 

Descripción general

La Lógica Computacional puede describirse como la disciplina que contempla el estudio de las aplicaciones de la Lógica Matemática al mundo de la Computación. La Lógica Matemática tiene múltiples aplicaciones en Informática, siendo fundamental, por ejemplo, para la especificación y verificación de programas o para el estudio de la semántica de los lenguajes de programación. Sin embargo, el objetivo específico de la presente asignatura será introducir una de las aplicaciones más importantes de la Lógica dentro del campo de la Informática: su utilización como
herramienta para la representación del conocimiento y para la resolución de problemas mediante ordenador.

La asignatura pretende por lo tanto ser un curso introductorio a los aspectos básicos del paradigma de la Programación Lógica, adoptando un enfoque mixto teórico-práctico que incluye tanto los aspectos teóricos fundamentales en los que se basa este paradigma (lógica de primer orden, demostración automática, programación lógica definida) como su aplicación en la práctica mediante el uso de un lenguaje de programación concreto (el lenguaje Prolog, uno de los más destacados representantes de este paradigma).
 

Objetivos Al terminar el curso, el alumno deberá conocer los principios teóricos subyacentes al paradigma de la programación lógica, y entender cómo se da el paso desde el concepto de programación lógica ``pura'' a un lenguaje de programación ``real''. En lo que se refiere a este último aspecto, deberá conocer los rudimentos básicos del lenguaje Prolog y ser capaz de utilizarlo para la programación de pequeñas aplicaciones.

Temario

I. INTRODUCCIÓN: LÓGICA Y COMPUTACIÓN

         Lógica Matemática. Lógica Computacional. Evolución histórica.

II. LÓGICA DE PRIMER ORDEN

Sintaxis. Semántica. Sistemas de demostración.


III. DEMOSTRACIÓN AUTOMÁTICA MEDIANTE RESOLUCIÓN

Bases teóricas de la demostración automática. Unificación.
Sistema de Resolución. Estrategias de Resolución.


IV. PROGRAMACIÓN LÓGICA

El paradigma de la programación lógica. Programas lógicos
definidos: sintaxis y semántica (resolución SLD).
V. EL LENGUAJE DE PROGRAMACIÓN PROLOG
Características generales. El lenguaje ISO-Prolog: sintaxis y
semántica. Algunos predicados predefinidos. Aplicaciones.

Bibliografía Básica


Bibliografía Complementaria

  • Logic, Programming and Prolog, U. Nilsson and J. Maluszynaski, John Wiley, New York, 2 edition, 1995. (este libro está disponible en la URL http://www.ida.liu.se/~ulfni/lpp/).
  • Programming in Prolog, Clocksin & Mellish, Springer-Verlag. 1981.
  • Prolog Programming for Artificial Intelligence, Bratko, Addison-Wesley, 1990.

  •