/* Les cŽlbres "mutants" */	/* nonvide(L) vrai si la liste L contient au moins un ŽlŽment */	nonvide([ _ | _ ]).	concat([], L, L).	concat([A|S], L, [A|R]) :- concat(S, L, R).	/* mutant(S) o S est le symbole obtenu par mutation, p.ex. chevalapin */	mutant(S) :- 	animal(D), animal(F),  		/* les deux noms qui vont se chevaucher*/			concat(Debut, Milieu, D),			nonvide(Debut), nonvide(Milieu),		/* dŽcomposition non-triviale de D */			concat(Milieu, _, F),		/* chevauchement avec F */			concat(Debut, F, M),		/* composition du mutant */			name(S, M). /* pour visualiser */	/* la mŽnagerie */		animal("ALLIGATOR").	animal("TORTUE").	animal("LAPIN").	animal("CHEVAL").	animal("CARIBOU").	animal("OURS").	animal("PINTADE").	animal("VACHE").	animal("BOUC").