06.01. Grammatik mit append/3

% Grammatikregeln:
s(L3) :- 
    np(L1),
    vp(L2),
    append(L1,L2,L3).
np(L3) :-
    det(L1),
    n(L2),
    append(L1,L2,L3).
vp(L3):-
    v(L1),
    np(L2),
    append(L1,L2,L3). 

% Lexikon:
det([eine]).
det([die]).
det([keine]).
n([maus]).
n([katze]).
v([jagt]).
v([klaut]).

Wie viele Sätze können mit dieser Grammatik generiert werden?

Betrachten Sie die folgende Anfrage im Tracemodus:
?- s([keine, katze, klaut, eine, maus]).

Fällt ihnen eine Möglichkeit ein, die Prädikate für die Grammatikregeln effizienter zu definieren? (Tipp: Es reicht, die Teilziele umzustellen.)

Noch keine Kommentare eingereicht. Bitte hilf uns diese Aufgabe zu verbessern.

Schreibe einen Kommentar