Professional Documents
Culture Documents
LABORATORIO 4
LISTAS
Toda lista no vaca puede separarse entre cabeza y cola. stas pueden separarse
con |:
[a| [b, c, d]] = [a, b, c, d]
[a| []] = [a]
1.
Listas en Prolog.
[X|
[X,
[X,
[X,
[X,
[X,
[X,
Y]
Y|
Y|
Y,
Y,
Y,
Y|
= [a, b, c, d].
Z] = [a, b, c].
Z] = [a, b, c, d].
Z| A] = [a, b, c].
Z| A] = [a, b].
a] = [Z, b, Z].
Z] = [a, W].
Leccin 5 - Laberinto
Tenemos el siguiente laberinto:
14).
15).
20).
21).
22).
23).
24).
25).
26).
22).
29).
36).
31).
27).
28).
34).
36).
32).
fin).
33).
34).
35).
36).
Fjate que se los ltimos dos predicados convierten al grafo dirigido (i.e. uno que posee arcos) en un grafo
no-dirigido (i.e. que posee aristas). Sin embargo, la descripcin de la propiedad de simetra tuvo que
realizarse por medio de un predicado auxiliar conectado_a para evitar loops infinitos en las consultas.