/* c:/users/gregoire fouillard/dropbox/efrei_2013_2014/ia/fichiers_prolog */

arbre(nil).
arbre(noeud(G, U, D)) :- arbre(G), integer(U), arbre(D).

element(X, noeud(_, X, _)).
element(X, noeud(G, _, _)) :- element(X, G).
element(X, noeud(_, _, D)) :- element(X, D).

isomorphe(nil, nil).
isomorphe(noeud(G1, V, D1), noeud(G2, V, D2)) :- isomorphe(G1, G2), isomorphe(D1, D2).
isomorphe(noeud(G1, V, D1), noeud(G2, V, D2)) :- isomorphe(G1, D2), isomorphe(D1, G2).

