/* 
Programm satz.pl (Aufgabe 45) 
zur Analyse einfacher englischer Sätze

Beispielanfragen: 
?- satz(S).
?- satz([the,man,eats|Xs).
*/
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
satz(S) :-  nominalphrase(NP),
            verbalphrase(VP),
            append(NP,VP,S).
nominalphrase(NP)
        :-  artikel(A),
            nomen(N),
            append(A,N,NP).
artikel([the]).

nomen([man]).
nomen([apple]).

verbalphrase(VP) :- verb(VP).
verbalphrase(VP)
        :- verb(V),
           nominalphrase(NP),
           append(V,NP,VP).
verb([sings]).
verb([eats]).

% vordefiniert:  
% append([],Ys,Ys).
% append([X|Xs],Ys,[X|Zs])
%         :- append(Xs,Ys,Zs).

