La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

I.A. Listas en Prolog.

Presentaciones similares


Presentación del tema: "I.A. Listas en Prolog."— Transcripción de la presentación:

1 I.A. Listas en Prolog

2 Tipos de datos definidos por el usuario
Los tipos de datos estándar (string, symbol, integer, real), permiten hacer declaraciones genéricas de las relaciones, sin embargo es posible hacer declaraciones especificas y personalizadas de acuerdo a las necesidades del programador en función del problema a resolver.

3 Ejemplo la declaración genérica del predicado
Predicates padre(string,string) se puede especificar y personalizar en el siguiente codigo

4 padre(persona,persona)
domains persona=string predicates padre(persona,persona) Aquí el predicado padre tiene 2 argumentos de tipo persona

5 Que es una lista? Las listas son estructuras de datos dinámicas. Al programador en prolog interesa representar conocimiento en un computador, existiendo una variedad de modelos para representar esta situación problemática en un medio computacional, sin embargo las estructuras de datos dinámicas constituyen una herramienta para la implementación de estos modelos.

6 Por que las listas son estructuras dinámicas?
Por que pueden aumentar y disminuir su tamaño o numero de elementos durante la ejecución de un programa prolog.

7 Ejemplo de listas Lista de numero enteros,
Lista de nombres de personas. Lista de alumnos inscritos en un curso. etc.

8 Como se define una lista en prolog?
Una lista es un conjunto de datos homogéneos es decir datos del mismo tipo. Se denota de la siguiente manera [H|T] Donde: H (Head) Representa la cabeza de la lista T (Tail) Representar el resto de la lista, es decir la cola de la cola.

9 Dado que la lista esta definida como un conjunto de elementos, hereda aspectos de la lógica de conjuntos, existiendo por lo tanto lista vacía denotada por [], unión, intersección etc.

10 Sintacticamente la lista se encierra entre corchetes [], y sus elementos se separan por comas.
Semánticamente la lista es tratada como cualquier tipo de datos y soporta una variedad de operaciones definida en la lógica de conjuntos.

11 Ejemplos de listas Lsita de Números [1,3,5,7] donde H=1, T[3,5,7].
Lista de nombres [“Juan”,”Pedro”,”Luis”] donde H=”Juan” y T=[“Pedro”,”Luis”].

12 La lista doble [[“Ana”, “Violeta”, “Frida”],[“Luis”, Miguel,”Sebastian”]]
Se podria decir que ana es novia de luis si la lista es parte de la siguiente clausula : relacion(“NOVIOS”, [[“Ana”, “Violeta”, “Frida”],[“Luis”, Miguel,”Sebastian”]]).

13 Como se declara un tipo de dato lista en Prolog?
Domains lista1= integer* lista2=string*

14 B) Domains lista1= integer* lista2=string* predicates numeros(lista1) personasl(lista2)

15 donde el asterisco denota la declaracion de una lista
integer* Se lee lista de enteros string* Se lee lista de cadenas lista Es un tipo de datos lista de enteros lista Es un tipo de datos lista de cadenas

16 Ejemplo domains lista=integer* predicates nondeterm numeros(lista)
clauses numeros([1,3,5,7,9]). goal numeros(A), numeros([H|T]), write(A),nl, write(H),nl,write(T),nl, readln(_).

17 Fin


Descargar ppt "I.A. Listas en Prolog."

Presentaciones similares


Anuncios Google