MODELOS DE PROGRAMACION LOGICA
4.1 Introducción al modelo de programación lógica
4.3 Representacion Clausada del Conocimiento
Representación del conocimiento
término comúnmente usado para referirse a representaciones pensadas
procesamiento por ordenadores modernos
representaciones compuestas por objetos explícitos
afirmaciones sobre ellos
HECHOS
Combinación de predicados y constantes.
CONSTANTES Y PREDICADOS
REGLAS
significar que un hecho depende de uno o más hechos.
4.4 Consulta de una Base de Clausulas
Desplazar Disyunciones
desplazar las disyunciones al interior de las sentencias de tal forma que conecten literales (átomos o átomos negados)
Eliminación de cuantificadores existenciales
La eliminación de un cuantificador existencial introduce una sentencia que no es equivalente
la sentencia original pero no es implicada por esta.
4.7 Control de Busqueda en Programas Logicos
EL ORDEN
aparecen los literales dentro de una sentencia (dentro del cuerpo)
el orden en que se introducen las sentencias en el programa
correcto funcionamiento del programa
recorrido del árbol de llamadas
SENTENCIAS
orden en que se obtienen las soluciones
4.8 Manipulacion de Terminos
construir programas que manipulan otros programas proporcionando una mayor expresividad al lenguaje
Predicados
Meta-Lógicos
Permiten controlar el algoritmo de resolución facilitando la meta-programación.
FUNCTOR
ARIDAD
4.5 Espacios de busqueda
Al conjunto de todas las posibles soluciones a un problema concreto
Cada punto en el espacio de búsqueda representa una posible solución.
Cada posible solución se le puede asociar un fitness o un valor que indicará cómo de buena es la solución para el problema.
4.6 P.L con numeros, listas y arboles
ARBOLES
estructura escrita como un árbol en el que el nombre es un nodo y los componentes son las ramas.
NUMEROS
los objetos numéricos pueden corresponder a tipos integer o float de C
EXPRESIONES
LISTAS
Colecciones de elementos en PROLOG
Cabeza
Cola
una lista con el resto de los elementos de la lista.
Es el primer elemento de la lista
4.9 Predicados Meta-Logicos
controlar el algoritmo de resolución facilitando la meta-programación.
construir programas que manipulan otros programas proporcionando una mayor expresividad al lenguaje
extraer el functor y la aridad de un término cualquiera.
4.2 Semantica de los programas logicos
Prolog
hechos (datos)
Conjunto de de reglas
relaciones entre objetos de la base de datos
Semantica
Busca relaciones entre los objetos creados, las variables y las listas, que son sus estructuras básicas.
Comentarios entre /**/
Tipos de Datos primitivos
variables
constantes
Reales
Enteros
Caracteres
Tipos de datos estructurados:
Átomos
Constantes
variables de cadena.
Listas, representadas entre [ ].
Los identificadores con minúscula representan hechos, los que van con mayúscula variables.
análisis de los problemas lógicos de significación
Programación Declarativa
Consiste en indicar como resolver un problema mediante sentencias, en la Programación Lógica, se trabaja en una forma descriptiva, estableciendo relaciones entre entidades
Programacion Logica
La programación lógica: construye base de conocimientos mediante reglas y hechos
Regla
implicación o inferencia lógica que deduce nuevo conocimiento
Definir nuevas relaciones a partir de otras ya existentes
Hecho
Declaración, cláusula o proposición cierta o falsa
Una relación entre objetos y es la forma más sencilla de sentencia
Consulta
Se especifica el problema, la proposición a demostrar o el objetivo