Grammar | |
S -> NP VP | {DCL(VP.sem(NP.sem))} |
S -> VP | {IMP(VP.sem(DummyYou))} |
S -> Aux NP VP | {YNQ(VP.sem(NP.sem))} |
S -> WhWord NP VP | {WHQ(NP.sem.var,VP.sem(NP.sem))} |
S -> WhWord Aux NP VP | {WHQ(WhWord.sem,VP.sem(NP.sem))} |
| |
NP -> ProperNoun | {ProperNoun.sem} |
NP -> MassNoun | {MassNoun.sem} |
NP -> Det Nominal | {} |
NP -> ComplexDet Nominal | {<∃x Nominal.sem(x) ⋀ GN(x,ComplexDet.sem)>} |
| |
Nominal -> Noun | {λx ISA(x,Noun.sem)} |
Nominal -> Adj Nominal | {λx Nominal.sem(x) ⋀ AM(x,Adj.sem)} |
Nominal -> Noun Nominal | {λx Nominal.sem(x) ⋀ NN(Noun.sem,x)} |
Nominal -> Nominal PP | {λz Nominal.sem(z) ⋀ PP.sem(z)} |
| |
ComplexDet -> NP 's | {NP.sem} |
| |
VP -> Verb NP | {Verb.sem(NP.sem)} |
VP -> Verb NP VPto | {Verb.sem(NP.sem,VPto.sem)} |
VP -> VP PP | {λy VP.sem(y) ⋀ PP.sem(VP.sem.variable)} |
| |
VPto -> to VP | {VP.sem} |
| |
PP -> P NP | {P.sem(NP.sem)} |
PP -> P NP | {NP.sem} |
| |
Lexicon | |
Noun -> restaurant | {Restaurant} |
ProperNoun -> Sally | {Sally} |
MassNoun -> bread | {Bread} |
| |
Adj -> green | {Green} |
| |
Det -> a | {∃} |
| |
P -> on | {λx λy On(x,y)} |
| |
Verb -> serves | {λxλy ∃ e, x, y ISA(e,Serving) ⋀ Server(e,y) ⋀ Served(e,x)} |
Verb -> tell | {λxλyλz
∃ e, y.variable ISA(e,Telling) ⋀ Teller(e,z) ⋀ Tellee(e,x)
⋀ ToldThing(e,y.variable) ⋀ y(x)} |