:- op(1150, xfx, '--->').

% sr_parse([astronomers,saw,stars,with,ears],s(Tree)).
s(s(NP,VP)) --->
	np(NP),
	vp(VP).

pp(pp(P,NP)) --->
	p(P),
	np(NP).
vp(vp(V,NP)) --->
	v(V),
	np(NP).
vp(vp(VP,PP)) --->
	vp(VP),
	pp(PP).

np(np(NP,PP)) --->
	np(NP),
	pp(PP).


p(p(with)) ---> [with].

v(v(saw)) ---> [saw].

np(np(saw)) ---> [saw].
np(np(astronomers)) ---> [astronomers].
np(np(ears)) ---> [ears].
np(np(stars)) ---> [stars].
np(np(telescopes)) ---> [telescopes].

