Holaaaaaaa
La Programación Lógica tiene sus orígenes más cercanos en lostrabajos de prueba automática de teoremas de los años sesenta. J. A. Robinson propone en 1965 una regla de inferencia a la que llama resolución, mediante la cual la demostración de un teorema puede serllevada a cabo de manera automática.
Las diferencias sintácticas entre las representaciones lógicas y las representaciones PROLOG son las siguientes:
1. En PROLOG todas las variables estánimplícitamente cuantificadas universalmente.
2. En PROLOG existe un símbolo explicito para la conjunción "y" (,), pero no existe uno
para la disyunción "o", que se expresa como una lista de sentenciasalternativas.
3. En PROLOG, las implicaciones p --> q
En Prolog no existen instrucciones de control. Su ejecución se basa en dos conceptos, la unificación y el backtracking. Gracias a la unificación,cada objetivo determina un subconjunto de cláusulas susceptibles de ser ejecutadas. Cada una de ellas se denomina punto de elección. Prolog selecciona el primer punto de elección y sigue ejecutando elprograma hasta determinar si el objetivo es verdadero o falso.
En caso de ser falso entra en juego el backtracking, que consiste en deshacer todo lo
ejecutado situando el programa en el mismoestado en el que estaba justo antes de llegar al punto de elección. Entonces se toma el siguiente punto de elección que estaba pendiente y se repite de nuevo el proceso. Todos los objetivos terminan suejecución bien en éxito ("verdadero"), bien en fracaso ("falso").
La programación lógica comprende dos paradigmas de programación: la programación
declarativa y la programación funcional. La...
Regístrate para leer el documento completo.