#!/usr/bin/prolog
% Rätsel aus der Facebookgruppe hotlikechili
% Der 16. Satz ist falsch.
% Mit diesem Satz ist das Rätsel nicht lösbar
% ------------------%
erste(E,[E|_]).
mitte(M,[_,_,M,_,_]).
links(A,B,[A|[B|_]]).
links(A,B,[_|R]) :- links(A,B,R).
neben(A,B,L):-links(A,B,L);links(B,A,L).
run :-
X = [_,_,_,_,_],
member([1955,bayer,_,_,_],X), %1. Der Bayer arbeitet in der Halle aus dem Baujahr 1955.
member([_,thueringer,_,_,fischen],X), %2. Der Thüringer geht gern Fischen.
member([_,berliner,hochtief,_,_],X), %3. Der Berliner arbeitet bei Hochtief.
links([1946,_,_,_,_],[1958,_,_,_,_],X), %4. Die 1946 erbaute Halle befindet sich links von der 1958 erbauten Halle.
member([1946,_,bauer,_,_],X), %5. Die Person aus der 1946 erbauten Halle arbeitet bei Bauer.
member([_,_,_,bewehrer,volleyball],X), %6. Der Bewehrer spielt gern Volleyball.
member([1963,_,_,maurer,_],X), %7. Die Person aus der 1963 erbauten Halle ist Maurer.
mitte([_,_,zueblin,_,_],X), %8. Die Person aus der Mittelhalle arbeitet bei Züblin.
erste([_,hesse,_,_,_],X), %9. Der Hesse arbeitet in der ersten Halle.
neben([_,_,_,kranfahrer,_],[_,_,_,_,fussball],X), %10. Der Kranfahrer arbeitet neben der Person, die gern Fußball spielt.
neben([_,_,_,_,tennis],[_,_,_,maurer,_],X), %11. Die Person die gern Tennis spielt, arbeitet neben dem Maurer.
member([_,_,bilfinger,maler,_],X), %12. Der Maler arbeitet bei Bilfinger.
member([_,bremer,_,polier,_],X), %13. Der Bremer arbeitet als Polier.
neben([_,hesse,_,_,_],[1939,_,_,_,_],X),%14. Der Hesse arbeitet neben der 1939 erbauten Halle.
neben([_,_,_,kranfahrer,_],[_,_,strabag,_,_],X), %15. Der Kranfahrer arbeitet neben der Person die bei Strabagarbeitet
%neben([_,_,maler,_,_],[_,bayer,_,_,_],X), %16. Der Maler arbeitet neben dem Bayer.
member([_,H,_,_,golf],X), %Person aus H spielt golf
write(X),nl,
write('Der '),write(H),write(' spielt Golf.'),nl,
halt.