permute ([], []).
permute ([E|X], Z):-
permute (X, Y), insert (E, Y, Z).
insert (E, X, [E|X]).
insert (E, [F|X], [F|Y]):-
insert (E, X, Y).
marquise(RESULT):-
permute (["beautiful marquise",
"your beautiful eyes",
"make me",
"die",
"of love"
],
RESULT).