Tryu pendulo

Páginas: 5 (1240 palabras) Publicado: 23 de junio de 2010
Índice: Introducción a la Programación Lógica: PROLOG
1. Introducción 2. Hechos 3. Preguntas 4. Variables 5. Conjunciones 6. Reglas
UNIVERSIDAD DE VALLADOLID

7. Ejercicios

Introducción (I)
Basado en la lógica de Primer Orden. Resolver problemas formulados como una serie de objetos y relaciones entre ellos: base de conocimiento Ejemplo: Juan tiene un libro
Objetos: “Juan” y “libro”Relación: “tiene” (predicado) Importancia del orden
tiene(juan, libro).

Introducción (II)
Hecho: propiedad de un objeto
Ejemplo: “el diamante es valioso”
valioso(diamante).

Reglas: forma de describir relaciones
Ejemplo:“Dos personas son hermanas, si ambas son hembras y tienen los mismos padres”

Programación en PROLOG:
Declarar hechos sobre objetos y sus relaciones Definir reglas sobreobjetos y sus relaciones Hacer preguntas sobre objetos y relaciones:
Trabajar contra una base de (datos) conocimiento

Hechos (I)
Ejemplo:
Objetos: Juan, Pepe, vino y cerveza Relación: A le gusta Hechos: A Juan le gusta el vino A Pepe le gusta la cerveza

Hechos (II)
Los nombre de objetos y relaciones comenzarán por minúsculas Primero la relación y después los objetos a modo de argumentosSe permite “_” para separar caracteres Al final debe aparecer un punto

PROLOG:
a_le_gusta (juan, vino). a_le_gusta (pepe, cerveza).

Coherencia con el orden de los objetos
A Juan le gusta el vino ≠ Al vino le gusta Juan

Hechos (III)
Admite predicados (relaciones) monádicos o poliádicos:
valioso(diamante). hembra(ana). tiene(juan, oro). padre(juan, maria). dar(juan, libro, maria).Preguntas (I)
Formalmente igual que un hecho precedido del símbolo “?” En primera instancia, busca en la base de conocimiento, si el hecho inquirido está almacenado. Ejemplo:
Base de Conocimiento gusta(jose, maria). gusta(maria, libro). gusta(juan, coche). gusta(jose, pescado). Preguntas ?- gusta(maria, jose). ?- gusta(maria, libro). ?- gusta(juan, pescado). ?- gusta(jose, pescado). Resp. No YesNo Yes

El diamante es valioso. Ana es una hembra. Juan tiene oro. Juan es el padre de María. Juan da un libro a María

Preguntas (II)
Introducción de la base de conocimiento en SWI-PROLOG:
Doble click en el fichero con la extensión”pl”

Variables (I)
Formalmente comienzan por mayúscula
Instanciada: con un valor asignado No instanciada: sin valor a priori

La respuesta “no” significaque “no” hay coincidencia con hechos almacenados en la base. Para averiguar qué le gusta a Maria, hay que recurrir a las variables.
?- gusta(X, maria).

Ejemplo:
¿qué le gusta a Juan?
?- gusta(juan, X). X = coche ;
X está no instanciada X está instanciada con valor “coche”

¿qué le gusta a José?
?- gusta(jose, X). X = maria ; X = pescado ;
X adquiere el primer valor encontrado pulsarsucesivamente “n” para pasar al siguiente

Variables (II)
PROLOG localiza el primer hecho coincidente en el predicado y con los mismos argumentos literales. El sentido de búsqueda es de arriba abajo. En la variable almacenará el objeto, cuya posición coincida con ésta. Marca el hecho en la base y muestra la variable, ahora sí, instanciada: X=maria Si pulsa [RETURN], se detiene la búsqueda dándosepor satisfechos con la respuesta. Si se teclea “;”, X pasa a no instanciada y se repetiría el proceso pero empezando en la marca establecida en la última instancia. A esto se le denomina “resatisfacer” la pregunta.

Conjunciones (I)
Ejemplo:
Base de Conocimiento gusta(maria, comida). gusta(maria, vino). gusta(juan, vino). gusta(juan, maria).

Pregunta: ¿Juan y María se gustan?
¿A Maria legusta Juan? Y ¿A Juan le gusta Maria? ?- gusta(juan, maria), gusta(maria, juan).

Conjunciones (II)
PROLOG intenta satisfacer el primer objetivo: ¿A María le gusta Juan? Si fuera así, establece una marca en la base y probará a satisfacer el segundo objetivo: ¿A Juan le gusta María? Si también resultase satisfactorio pone otra marca en la base, por si hubiera que “resatisfacer” a continuación....
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • tryu
  • Pendulo
  • Pendulo
  • Pendulo
  • Péndulo
  • Pendulos
  • Pendulo
  • El pendulo

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS