declare fun {Determiner S P1 P2 X0 X} choice X0=every|X all(S imply(P1 P2)) [] X0=a|X exists(S and(P1 P2)) end end fun {Noun N X0 X} choice X0=man|X man(N) [] X0=woman|X woman(N) end end fun {Name X0 X} choice X0=john|X john [] X0=mary|X mary end end fun {TransVerb S O X0 X} X0=loves|X loves(S O) end fun {IntransVerb S X0 X} X0=lives|X lives(S) end