Hi everybody! In the course of my grammar development project (joint work with @arademaker), I’ve been creating diverse new types for handling phenomena not covered by the Grammar Matrix customization questionnaire. I’ve been reporting here the difficulties encountered while creating subtypes of general types provided by the Grammar Matrix common core matrix.tdl file. Thanks to the kind help of @ebender and @olzama, these difficulties have been solved, enabling drastic improvements in grammar coverage.
Since our first goal is to parse the MRS testsuite, the main grammatical phenomena that need to be manually implemented now relate to verb valency. I’ve already succeeded in manually implementing ditransitive verbs with prepositional objects, subject raising verbs with infinitives headed by complementizers, transitive and ditransitive subject control verbs, etc.
The implementation of object control verbs, however, was a puzzle for some time. In order to help other Grammar Matrix users, I’d like to share my experience with creating a subtype of the general type
ditrans-second-arg-control-lex-item from the matrix.tdl file.
For Portuguese, I first tried the following (I explain the type
noninh-refl-verb-lex in my previous topic):
ditrans-second-arg-control-verb-lex := main-verb-lex & noninh-refl-verb-lex & ditrans-second-arg-control-lex-item & [ SYNSEM.LOCAL [ CAT.VAL [ SPEC < >, COMPS < #comp1, #comp2 >, SUBJ < #subj > ], CONT.HOOK.XARG #xarg ], ARG-ST < #subj & [ LOCAL.CAT [ HEAD noun & [ CASE nom ], VAL [ SUBJ < >, SPR < >, SPEC < >, COMPS < > ] ] ], #comp1 & [ LOCAL [ CAT [ VAL [ SPR < >, COMPS < > ], HEAD noun & [ CASE acc ] ], CONT.HOOK.INDEX #xarg ] ], #comp2 & [ LOCAL.CAT [ VAL [ SUBJ < unexpressed >, COMPS < >, SPR < >, SPEC < > ], HEAD verb ] ] > ]. inf-ditrans-second-arg-control-verb-lex := ditrans-second-arg-control-verb-lex & [ ARG-ST.REST.REST.FIRST.LOCAL.CAT.HEAD.FORM infinitive].
This didn’t work. I was not able to parse examples in Portuguese analogous to (1).
(1) the dog persuaded the lion to sleep
(In Portuguese, the infinitive must be headed by a complementizer, in the case at hand, a, but I abstracted away from this complexity, postponing its implementation to a later stage.)
Since the source of the problem seemed quite mysterious, I moved on to experiment with the
ditrans-second-arg-control-lex-item type using one of my toy grammars of English. Example (1) was parsed, but the MRS generated was not correct:
Inspecting the type
main-verb-lex type created by the customization system, I spotted the source of the problems:
main-verb-lex := verb-lex & basic-verb-lex & basic-non-wh-word-lex & [ SYNSEM [ L-QUE -, LOCAL [ CAT [ HEAD.AUX -, VAL [ SPEC < >, SUBJ < #subj > ] ], CONT.HOOK.XARG #xarg ] ], ARG-ST.FIRST #subj & [ LOCAL [ CAT cat-sat & [ VAL [ SPR < >, COMPS < > ] ], CONT.HOOK.INDEX #xarg ] ] ].
As we can see, this type is tailored to subject control. Therefore, I adapted it to suit object control:
main-verb-lex-2 := verb-lex & basic-verb-lex & basic-non-wh-word-lex & [ SYNSEM [ L-QUE -, LOCAL [ CAT [ HEAD.AUX -, VAL [ SPEC < >, COMPS.FIRST #obj ] ], CONT.HOOK.XARG #xarg ] ], ARG-ST.REST.FIRST #obj & [ LOCAL [ CAT cat-sat & [ VAL [ SPR < >, COMPS < > ] ], CONT.HOOK.INDEX #xarg ] ] ].
The MRS now being generated is the following:
It seems correct to me, but maybe I’ve overseen something. Is the additional main verb type a viable solution or is there a more elegant one?