/* EXERCÍCIO 1 */

% declara restrições da solução 

  coloração(A,B,C,D) :- 
     cor(A), cor(B), cor(C), cor(D), 
     A \= B, A \= C, 
     B \= D, 
     C \= D. 

% declara cores disponíveis 
 
  cor(azul). 
  cor(verde). 
  cor(amarelo). 
  cor(vermelho). 


/* EXERCÍCIO 2 */

gerou(ana,eva).
gerou(ivo,eva).
gerou(bia,raí).
gerou(bia,clô).
gerou(bia,lia).
gerou(gil,raí).
gerou(gil,clô).
gerou(gil,lia).
gerou(eva,noé).
gerou(raí,noé).
gerou(lia,gal).
gerou(ary,gal).

mulher(ana).
mulher(bia).
mulher(eva).
mulher(clô).
mulher(lia).
mulher(gal).

homem(ivo).
homem(gil).
homem(raí).
homem(ary).
homem(noé).

/* EXERCÍCIO 3 */


% filme(Título,     Gênero,   Diretor,   Ano,  Duração).

  filme(amnésia,    suspense, nolan,     2000, 113).
  filme(babel,      drama,    inarritu,  2006, 142).
  filme(capote,     drama,    miller,    2005,  98).
  filme(casablanca, romance,  curtiz,    1942, 102).
  filme(matrix,     ficção,   wachowsk,  1999, 136).
  filme(rebecca,    suspense, hitchcock, 1940, 130).
  filme(shrek,      aventura, adamson,   2001,  90).
  filme(sinais,     ficção,   shymalan,  2002, 106).
  filme(spartacus,  ação,     kubrik,    1960, 184).
  filme(superman,   aventura, donner,    1978, 143).
  filme(titanic,    romance,  cameron,   1997, 194).
  filme(tubarão,    suspense, spielberg, 1975, 124).
  filme(volver,     drama,    almodóvar, 2006, 121).


/* EXERCÍCIO 4 */

mora(ana,penha).
mora(eva,santana).
mora(ivo,tatuapé).
mora(rui,mandaqui).
mora(bia,tucuruvi).

pertence(penha,leste).
pertence(tatuapé,leste).
pertence(santana,norte).
pertence(mandaqui,norte).
pertence(tucuruvi,norte).

tem_carro(eva).
tem_carro(ivo).

/* EXERCÍCIO 5 */

via(a,b). 
via(b,c). via(b,d). via(b,e). 
via(c,a). via(c,e). 
via(d,b). via(d,f). 
via(e,d). via(e,f). 
via(f,d). 

rota(X,X,[X]). 
rota(X,Y,[X|R]) :- 
 via(X,Z), rota(Z,Y,R). 

rotas(X,Y,R) :- 
 length(R,_), rota(X,Y,R). 























