Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Materia
Programación Lógica y Funcional
Investigación
Profesor:
Luis Javier
Alumno
Alberto
Fecha
11/01/2020
Desarrollo
Hay tres maneras bien conocidas de dar significado o semántica a los programas
lógicos: la semántica declarativa, la semántica operacional y la semántica
denotacional (comúnmente llamada semántica de punto fijo).
t1 . . . , tn de A, f
A(t1, . . . , tn) = f(t1, . . . , tn). Para cada constante c en
L, c
A = c.
Tipos de Cláusulas
Ejemplos
1. Si algunos perros son mamíferos, luego todos son mamíferos.
2. Todos los colibríes son aves.
Este colibrí es ave.
Tipos definidos por el usuario. Las reglas para definir relaciones pueden actuar
como tipos de usuario.
SELECT select_list
FROM table_source
[WHERE search_condition]
[GROUP BY group_by_expression]
[HAVING search_condition]
[ORDER BY order_expression [ASC | DESC] ]
FROM
Especifica de dónde queremos obtener los datos, es decir, de que tabla. Se utiliza
no sólo en el comando de consulta, SELECT, sino también en los comandos
UPDATE y DELETE .
WHERE
Está clausula es donde se indican las condiciones de filtrado de los datos. Estas
condiciones se definen a través de los operadores lógicos y de comparación.
Entonces parece que buscar una solución se reduce a buscar un valor extremo
(mínimo o máximo) en el espacio de búsqueda. A veces el espacio de búsqueda
puede ser bien definido, pero en la mayoría de las ocasiones sólo se conocen
algunos puntos en el espacio de búsqueda. Cuando se usa un AG las posibles
soluciones generan otras a medida que el genético evoluciona.
Numéricos
en PROLOG los objetos numéricos pueden corresponder a tipo integer o float de c.
Para realizar operaciones numéricas, se tiene el predicado is, que se comporta
como una asignación en un lenguaje imperativo. Así, el objetivo X is <expresión>
será verdadero cuando X unifique con el resultado numérico de evaluar <expresión>
Listas
La representación de hechos simples no es lo común en la clasificación del
elemento, sino que se agrupan los elementos de un mismo tipo en una lista. las
listas son colecciones de elementos en PROLOG. Una lista se divide en dos partes:
● Cabeza. Es el primer elemento de la lista
● Cola. Es una lista con el resto de los elementos de la lista. la cabeza y la cola
de una lista se separan con el símbolo |
Árboles
Es más fácil entender la forma de una estructura complicada si la escribimos como
un árbol en el que el nombre es un nodo y los componentes son las ramas
El orden en que aparecen los literales dentro de una sentencia (dentro del cuerpo) o
el orden en que se introducen las sentencias en el programa son importantes en
PROLOG. El orden afecta tanto al correcto funcionamiento del programa, como al
recorrido del árbol de llamadas, determinando, entre otras cosas, el orden en que
PROLOG devuelve las soluciones a una pregunta dada. El orden de las sentencias
determina el orden en que se obtienen las soluciones ya que varía el orden en que
El predicado functor es uno de los más útiles entre la biblioteca standard Prolog.
Este predicado permite extraer el functor y la aridad de un término cualquiera.
Pero, al ser reversible, también permite construir nuevos términos a partir del functor
y la aridad deseada.
Los modos de uso son:
• Functor(+Término,-Functor,-Aridad).
• Functor(-Término,+Functor,+Aridad).
Predicados meta-lógicos
Ejemplo:
Predicados de Clasificación
Los predicados meta-lógicos permiten controlar el algoritmo de resolución facilitando
la meta-programación.
Referencias
Moreno, L. D. C. L., & Perfil, V. T. M. (s. f.). 4.3 Representación clausada del
conocimiento. Blogspot.
https://lucydelcarmenleonmoreno.blogspot.com/2019/05/43-representacion-clausada
-del.html#:%7E:text=Representaci%C3%B3n%20del%20conocimiento%20es%20un
,y%20de%20afirmaciones%20sobre%20ellos.