No lexical threading and morphological marking of questions

I am trying to get rid of lexical threading in the Matrix.

One of the issues that arose is morphological marking of questions.

Before, with lexical threading, it was easy to say that lexical rules which do not mark questions (aren’t “interrogative mood”) insist on a QUE-empty synsem, something like this (from my Yukaghir development grammar, with lexical threading):

INTR-MAIN-1SG-lex-rule := INTR-MAIN-lex-rule & infl-lex-rule &
  [ SYNSEM [ LOCAL [ CAT.VAL.SUBJ.FIRST.LOCAL.CONT.HOOK.INDEX.PNG [ PER 1st,
                                                                    NUM SG ],
                     CONT.HOOK.INDEX.SF ques ],
             NON-LOCAL.QUE.LIST < > ] ].

But without lexical threading, it seems like I need to be able to say something the arguments explicitly. It is unclear to me how to do that because there is nothing in the position class that directly tells me how many arguments the verb which takes it has (the user-specified INTRAN here is irrelevant).

I should be able to track that information down in the hierarchy and propagate it far enough to have access to it at the level of the position class, but it is not easy for me to do (the code being somewhat complicated) and will require lots of scattered changes in the lexicon and in the morphotactics libraries, so I want to get an idea that I am on the right track before I spend any more time?

Does that sound like the most straightforward way of getting what I want? If the position class is for intransitive verbs, create interrogative lexical rules which reflect that; ditto for transitive?..

If a language is “better-behaved” than Yukahghir in the sense that there is no need to model different morphology for intransitive and transitive verbs, but is similar to Yukaghir in that there are different markers for polar and for wh-questions, then there is still, I think, a similar problem.

It seems like I need lexical rules which:

(1) say the subject is WH; no constriant on the object
(2) say the object is WH, the subject is not
(3) say neither subject nor object are WH
(4) say the subject is not WH, the COMPS list is empty

Does that sound right or does that sound like it is too much and I am on the wrong track?

Here’s a sample grammar that is working correctly (with the proposal above). It is a pseudolanguage which has different markers for polar and wh-questions (but no different paradigms for intransitive and transitive verbs):

;;; Lexical rule types

itrg-lex-rule-super := add-only-no-ccont-rule & infl-lex-rule &
  [ INFLECTED.ITRG-OR-NONQUES-FLAG +,
    DTR verb-lex ].

itrg-lex-rule := add-only-no-ccont-rule &
  [ SYNSEM.LOCAL.CONT.HOOK.INDEX.SF ques ].

prop-lex-rule := add-only-no-ccont-rule &
  [ SYNSEM.LOCAL.CONT.HOOK.INDEX.SF prop ].

intran-polar-lex-rule-super := itrg-lex-rule &
  [ SYNSEM.LOCAL.CAT.VAL [ SUBJ < [ NON-LOCAL.QUE.LIST < > ] >,
                           COMPS < > ] ].

tran-polar-lex-rule-super := itrg-lex-rule &
  [ SYNSEM.LOCAL.CAT.VAL [ SUBJ < [ NON-LOCAL.QUE.LIST < > ] >,
                           COMPS < [ NON-LOCAL.QUE.LIST < > ] > ] ].

;;; The following two type names were created automatically instead of one user-specified type PQ-lex-rule

intran-PQ-lex-rule := intran-polar-lex-rule-super & itrg-lex-rule-super.

tran-PQ-lex-rule := itrg-lex-rule-super & tran-polar-lex-rule-super.

wh-subj-lex-rule := itrg-lex-rule &
  [ SYNSEM.LOCAL.CAT.VAL.SUBJ < [ NON-LOCAL.QUE.LIST cons ] > ].

wh-obj-lex-rule := itrg-lex-rule &
  [ SYNSEM.LOCAL.CAT.VAL [ SUBJ < [ NON-LOCAL.QUE.LIST < > ] >,
                           COMPS < [ NON-LOCAL.QUE.LIST cons ] > ] ].

;;; The following two type names were created automatically instead of one user-specified type WHQ-lex-rule

subj-WHQ-lex-rule := itrg-lex-rule-super & wh-subj-lex-rule.

obj-WHQ-lex-rule := itrg-lex-rule-super & wh-obj-lex-rule.

nonques-lex-rule-super := add-only-no-ccont-rule & const-lex-rule &
  [ INFLECTED.ITRG-OR-NONQUES-FLAG +,
    DTR verb-lex ].

decl-lex-rule := nonques-lex-rule-super & prop-lex-rule.

Hmm. After fixing one minor issue, I am no longer sure that there is a problem with transitivity (as suggested in the first part of the first post). But the question still stands, does this seem to be on the right track generally? The sample (part of the) grammar, for example.

Even if transitive/intransitive information is not a problem, there is still a very unpleasant problem of having to ignore a user-specified position class and replacing it with two position classes with different names. Which is kind of a MOM nightmare all over :). I’d like to avoid that if possible so kind of am hoping that I am in fact on the wrong track here!

…And transitive/intransitive is probably still a problem after all. If I create several new rules based on one user-specified, and they differ in transitivity, I can’t just keep them in one position class at that point if there is different morphology on transitive and intransitive. So if the user specified an interrogative affix on an intransitive verb, I better know what the transitivity is when I create the rule.

Perhaps I should go with more work for the user in the questionnaire? Ask them to clearly say whether the question affix goes is associated with the subject, with the object, or both, and validate against improper transitivity choice? (Too bad I cannot test changes in the questionnaire currently! But, I can test on the choices level at least, if that’s the way to go.)

Oh. I suppose what I could do is serialize the single user-specified position class as two, right off the bat (in deffile?). Maybe that will help avoid the nightmare with all the morphotactics code.

These rules should be different LRTs in the same PC, no?

The possible inputs are decided at the level of the PC, so, if we are modeling two separate paradigms for transitive/intransitive, then no. But by “these rules”, which ones are you referring to specifically?

Sorry – answering quickly in the middle of other tasks.

Looking back at your list:

(1) say the subject is WH; no constraint on the object
(2) say the object is WH, the subject is not
(3) say neither subject nor object are WH
(4) say the subject is not WH, the COMPS list is empty

Hmm … maybe you can combine (3) & (4) by saying that subject is not WH and COMPS is a list (possibly empty) of not WH (using a parameterized list type)?

At any rate, they can all be in the same PC, so long as that PC isn’t constrained to attach specifically to just intransitive verbs or just transitive verbs. The ones that mention the COMPS list just won’t apply if COMPS is empty. (The problem that arises sometimes in this space is a rule that says its DTR is transitive-verb-lex or intransitive-verb-lex and says something about COMPS that contradicts that. Then the grammar won’t load.)

Right–but looks like in Yukaghir, it is.

I am going to have to spend more time staring at Yukaghir, because it is very difficult to reason about, every time I have to. It has some sort of optional marking with person split, and the morphology generally is modelled separately for transitive and intransitive. Maybe I should see if I can get things working for everything except Yukaghir and then come back to it…

It might make sense to do Yukaghir last, indeed. If the PC is already attaching to just one type of verb, then it seems like you should only create WH rules that pertain to that type of verb in that PC. (In other words, the pseudo-feature would be interpreted differently depending on its context.)

Yes, that’s what I thought. But I am not sure that’s not a complete nightmare, at this point…

Maybe it doesn’t have to be and I am just confused. For every LRT I am looking at at any point, I certainly know the PC and its supertypes. So then creating WH-rules which only take that PC as input should not be tricky as such. The problem remains how to tell whether the PC is transitive or intransitive though, and that’s a bit unpleasant like I said (unless I am missing something else).

As a technical solution: I agree with @ebender that you can use a parametrised list, so you shouldn’t need to check if a verb is transitive or not. (If you need to append to these lists, remember to create list-copy subtypes, as explained here.)

But I also have a question about the analysis. How does morphological marking work with embedded clauses? If you had a question like “Who does Kim think arrived?”, but the wh-word is in situ, so in pseudo-English “Does Kim think who arrived?”, what happens to the morphological marking of “arrived”? Maybe this isn’t an issue for Yukaghir, but I could imagine a language where the morphological marking on the verb refers to sentence force, not the presence/absence of wh-words. So maybe the analysis should be that the in-situ rule which discharges QUE is blocked in that clause, not that QUE is empty.

1 Like

I think you’re making it harder than it needs to be. Transitive/intransitive is only relevant to rules that attach directly to the verb stem and say specifically intransitive or transitive.

I really hope so!!! :smiley: :laughing:

So, something like this then? (It seems to work, at least for the one morphological language that was working before, with the four rules, but I am not sure whether I need exactly this, or something else, or less than this. I modeled this off of the clist.)

non-wh-list := list.

non-wh-cons := non-wh-list & cons & 
[ FIRST canonical-synsem & [ NON-LOCAL.QUE.LIST < > ],
  REST non-wh-list ].

non-wh-null := non-wh-list & null.

non-wh-olist := non-wh-list & olist.

non-wh-onull := non-wh-null & onull.

non-wh-ocons is missing here?

And remember the -copy subtypes, too, if you need to append to these.

Right… So, for the clist (the list of canonical-synsem), the ccons & cons type did not actually work, and we left it out, which was somewhat dissatisfying. The same problem occurs if I try adding the non-wh-ocons type.

Maybe I should not be using canonical-synsem here in non-wh-list? Which type should I be using? Just synsem seems to work.

I don’t follow. What is dissatisfying?

If two parametrised list types have incompatible constraints on the elements of the list, then the only possible list which is of both types is an empty list. So in this case you just need non-wh-onull := non-wh-null & onull. Then if you unify non-wh-list and olist, you correctly get an empty list (non-wh-onull, which is a subtype of null). The non-wh-olist type is unnecessary – it has no subtype which is nonempty, but it also isn’t a subtype of null.

I don’t know. Emily said it was brittle (in the link above).