Professional Documents
Culture Documents
Para escribir un programa lgico debemos identificar: qu objetos intervienen en el problema, cules son las relaciones entre stos, y qu objetivos queremos alcanzar
Una vez identificados los elementos anteriores debemos: representar los objetos mediante trminos definir las relaciones mediante hechos y reglas definir los objetivos mediante consultas Ilustraremos la metodologa anterior mediante un ejemplo
Objetos: son las personas que forman la familia representados por trminos (sus nombres en minscula) Ejemplos:
Objetos Adn tomos adan
Eva
eva
Relaciones: son las relaciones de paternidad y maternidad definidas mediante hechos (incondicionales) Ejemplos: Adn es padre de Nicols padre(adan,nicolas). Eva es madre de Nicols madre(eva,nicolas).
Son preguntas sobre el parentesco definidas mediante consultas. Ejemplos: es David padre de Ana? padre(david,ana). quines son los hijos de Carmen? madre(carmen,X). quin es el padre de Silvia? padre(P,silvia).
Son preguntas sobre el parentesco definidas mediante consultas. Ejemplos: Es David padre de Ana? quines son los hijos de Carmen? quin es el padre de Silvia?
Ing. Sal Prez Vega
Como saber si la persona en cuestin es hijo de adan? hijo():- Como saber si la persona en cuestin es hijo de adan y eva? hijo():-
Definimos las relaciones extra mediante hechos: hermanos(nicolas,carmen). hermanos(jhon,silvia). Inconvenientes: tamao excesivo propenso a errores mantenimiento (nacimientos, etc.) adaptabilidad a otras situaciones (familias) Sera preferible definir esta relacin de forma genrica, identificando las condiciones bajo las cuales dos personas A y B son hermanos
Ing. Sal Prez Vega
Cmo podemos definir la relacin hermanos? A y B son hermanos si comparten los padres Definiremos la relacin condicional anterior mediante la regla:
Cmo podemos definir la relacin Abuelo y Abuela? Definiremos la relacin condicional mediante la regla: Abuelo(X):- . Abuela(X):- . Abuelo(X,Y):- .. Abuela(X,Y):- ..
Ing. Sal Prez Vega