Sie sind auf Seite 1von 4

INTRODUCCION.

En este tema vamos aprender el uso de una estructura de prolog en el tema anterior ya
hablamos de la introduccin a prolog sobre que era un hecho como se lo utilizaba, su
sintaxis, tambin sobre las reglas. Bien ahora que es una estructura de prolog en si
consiste de un objeto nico que se compone de una coleccin de otros objetos.

MARCO TEORICO.
OPERADORES
Son predicados predefinidos en PROLOG para las operaciones matemticas bsicas. Su
sintaxis depende de la posicin que ocupen, pudiendo ser infijos o prefijos.
Por ejemplo el operador suma ("+"), podemos encontrarlo en forma prefija '+(2,5)' o
bien infija, '2 + 5'. Tambin dispone de predicados de igualdad y desigualdad. X = Y
igual X \= Y distinto X Y mayor X == Y mayor o igual Al igual que en otros lenguajes
de programacin es necesario tener en cuenta la precedencia y la asociatividad de los
operadores antes de trabajar con ellos. En cuanto a precedencia, es la tpica.
Por ejemplo, 3+2*6 se evala como 3+(2*6). En lo referente a la asociatividad,
PROLOG es asociativo por la izquierda. As, 8/4/4 se interpreta como (8/4)/4. De igual
forma, 5+8/2/2 significa 5+((8/2)/2).
El operador 'is'. Es un operador infijo, que en su parte derecha lleva un termino que se
interpreta como una expresin aritmtica, contrastndose con el termino de su izquierda.
Por ejemplo, la expresin '6 is 4+3.' es falsa. Por otra parte, si la expresin es 'X is 4+3.',
el resultado ser la instanciacin de X: X = 7
Una regla PROLOG puede ser esta:
densidad(X,Y) :- poblacin(X,P), rea(X,A), Y is P/A.
Algunos comandos bsicos * consult.
El predicado _consult_ esta pensado para leer y compilar un programa PROLOG o bien
para las situaciones en las que se precise aadir las clusulas existentes en un
determinado fichero a las que ya estn almacenadas y compiladas en la base de datos.
Su sintaxis puede ser una de las siguientes: consult(fichero). consult('fichero.ext').
consult('c:\ia\prolog\fichero'). * recon.
El predicado recon es muy parecido a consult, con la salvedad de que las clusulas
existentes en el fichero consultado, reemplazan a las existentes en la base de hechos.
Puede ser til para sustituir una nica clusula sin consultar todas las dems, situando
esa clusula en un fichero. Su sintaxis es la misma que la de consult. *forget.
Tiene como fin eliminar de la base de datos actual aquellos hechos consultados de un
fichero determinado. Su sintaxis es: forget(fichero). * exitsys. Este predicado nos
devuelve al sistema operativo.
ESTRUCTURA PROLOG.
Los objetos estructurados o estructuras) en PROLOG son trminos de la forma f(t1, ...,
tn) donde f es un funtor, y t1, ..., tn son a su vez trminos (que pueden ser constantes,
variables o a su vez estructuras).
Tambin son objetos que tienen varios componentes.
Una estructura se escribe especificando su Nombre y sus componentes (argumento).

Por ejemplo, podemos tener una estructura con el nombre libro, el cual tiene dos
componentes: titulo y autor, el autor puede ser una estructura con dos componentes,
nombre y apellidos.

Las estructuras se suelen representar por rboles donde el funtor es un nodo y los
componentes son los subrboles que cuelgan de dicho nodo.

EJMPLO PROLOG:

Una estructura de datos muy comn en la programacin no numrica son las listas.
Estas sern unas estructuras PROLOG especiales. Una lista es una secuencia ordenada
de elementos que puede tener cualquier longitud. Los elementos de una lista (como los
de cualquier otra estructura) son trminos, los cuales pueden ser en particular otras
listas. Las listas pueden representarse como un tipo especial de rbol. Una lista es o bien
la lista vaca, sin elementos, denotada [ ], o bien una estructura cuyo funtor se denota "."
(punto) y con dos componentes llamados "cabeza" y "resto" de la lista.
La lista con un solo elemento a es .(a, [ ]) y su rbol es:

La lista que consta de los elementos a, b y c sera: .(a, .(b, .(c, [ ]))) y en forma de rbol
es:

Pero la forma sintctica ms habitual de escribir las listas es separando los elementos
entre comas y toda la lista encerrada entre corchetes. Las listas anteriores se escribiran
de la forma:

EJEMP
LO PROLOG.

CONCLUSION.
En este tema se puede concluir que la estructuras de prolog nos ayuda a optimizar el
cdigo y adems es recursivo es decir que un objeto puede ser llamado a si mismo.

BIBLIOGRAFA.
Estructura Prolog. Consultado 29 de ene. 2016. Formato PDF. Disponible en
http://www.infor.uva.es

Lpez, B. s.f. (En lnea). MX. Consultado 26 de ene. 2016. Formato PDF. Disponible
en http://www.itnuevolaredo.edu.mx
Russell, S. y Norvig, P. 2004. INTELIGENCIA ARTIFICIAL. UN ENFOQUE
MODERNO. PEARSON EDUCACION. 2 ed. Madrid.

Das könnte Ihnen auch gefallen