These instructions might get edited a bit over the next couple of days. I'll try to flag changes.
As usual, check the write up instructions first.
Everyone should:
Because person and number information are also interpreted semantically, we want to record them regardless of whether they are syntactically relevant (i.e., whether they get used for agreement).
Some of the instructions in this section are very specific (i.e., I'm giving you lots of answers) because I want you to have time to focus your efforts on other parts of the lab. Don't be surprised then, when all of the sudden things get less specific!
png :+ [ PER person, NUM number ]. person := *top*. first := person. second := person. third := person. number := *top*. sg := number. non-sg := number. ; use this one if your language only has sg-pl dual := non-sg. ; add these two if your language has sg-du-pl pl := non-sg.
(The type non-sg is there to facilitate a mapping between languages with sg-pl and languages with sg-du-pl systems in the MT exercise. In some languages with a du-pl distinction it might also be useful language internally. If you language makes more than a three way distinction (some do!) talk to me.)
(If your language does person and number agreement with an elsewhere case -- like English non-3sg -- you may want to define subtypes of png which groups the values of PER and NUM in interesting ways. If you want to know more about this, talk to me.)
png :+ [ PER person, NUM number, GEND gender ]. gender := *top*. ...
The current plan is to treat pronouns as quantified by an existential quantifer, and as lexically definite. (We'll return to discourse status in the next lab.) We further assume that bare noun phrases always get an existential quantifier (and that generic interpretations are derivative of this, say). So the first step is to edit the type bare-np-phrase in klingon.tdl to have it introduce "_exist_q_rel" rather than "unspec_q_rel".
The next step is to create the lexical type for pronouns:
pronoun-lex := noun-lex & [ SYNSEM [ LOCAL.CAT.VAL.SPR < [ OPT + ] >, LKEYS.KEYREL.PRED "pronoun_n_rel" ] ].
Note that pronoun-lex specifies a PRED value, so all pronouns will have the same one. The only difference will be in the person and number values. (Something will have to be said about demonstrative pronouns, but that's for a later lab.) In creating this type, you may need to move some constraints on noun-lex down to a subtype, say common-noun-lex. common-noun-lex should also be constrained to be [PER third] since only pronouns have other PER values.
we := pronoun-lex & [ STEM < "we" >, SYNSEM.LOCAL.CONT.HOOK.INDEX.PNG [ PER first, NUM non-sg ] ].
The Matrix distinguishes scopal from intersective modification. We're going to pretend that everything is intersective and just not worry about the scopal guys for now.
adjective-lex := basic-adjective-lex & intersective-mod-lex & norm-ltop-lex-item & [ SYNSEM [ LOCAL [ CAT [ HEAD.MOD < [ LOCAL.CAT [ HEAD noun, VAL.SPR cons ]]>, VAL [ SPR < >, SUBJ < >, COMPS < >, SPEC < > ], POSTHEAD - ]]]].
adverb-lex := basic-adverb-lex & intersective-mod-lex & [ SYNSEM [ LOCAL [ CAT [ HEAD.MOD < [ LOCAL.CAT.HEAD verb ]>, VAL [ SPR < >, SUBJ < >, COMPS < >, SPEC < > ]]]]].
Example from French:
chat := common-noun-lex & [ STEM < "chat" >, SYNSEM [ LOCAL.CONT.HOOK.INDEX.PNG [ NUM sg, GEND masc ], LKEYS.KEYREL.PRED "_cat_n_rel" ] ]. le := determiner-lex & [ STEM < "le" >, SYNSEM [ LOCAL.CAT.VAL.SPEC < [ LOCAL.CONT.HOOK.INDEX.PNG [ NUM sg, GEND masc ] ] >, LKEYS.KEYREL.PRED "exist_q_rel" ] ].
3sg_verb-lex-rule := infl-ltow-rule & [ SYNSEM.LOCAL.CAT.VAL.SUBJ < [ LOCAL.CONT.HOOK.INDEX.PNG [ PER third, NUM sg ]] >, DTR.SYNSEM.LOCAL.CAT.HEAD verb ].
3sg_verb := %suffix (!s !ss) (!ss !ssses) (ss sses) 3sg_verb-lex-rule.And here's the letter set that's used:
%(letter-set (!s abcedfghijklmnopqrtuvwxyz))
The descriptions of phenomena and analyses should be at least a page per phenomenon. If you feel that the analyses presented here don't sit well with your language, describe (as best you can) why not.
tar czf lab3.tgz *
(When I download your submission from CollectIt, it comes in a directory named with your UWNetID. The above method avoids extra directory structure inside that directory.)