diff --git a/src/rukiga/ResCgg.gf b/src/rukiga/ResCgg.gf index 4413b693..2752142c 100755 --- a/src/rukiga/ResCgg.gf +++ b/src/rukiga/ResCgg.gf @@ -1223,10 +1223,10 @@ mkSubjPrefix : Agreement -> Str =\a ->case a of { }; VFPresPart => table{ PreVerb => []; - PriNegM => "ti"; + PriNegM => []; --ObjRel => []; --SubjMarker =[]; - SecNegM => []; + SecNegM => "ta"; TAMarker => "riku"; PersistiveMarker => []; --DObjM => []; diff --git a/src/rukiga/SentenceCgg.gf b/src/rukiga/SentenceCgg.gf index ef4308de..fa66310b 100755 --- a/src/rukiga/SentenceCgg.gf +++ b/src/rukiga/SentenceCgg.gf @@ -10,32 +10,71 @@ lin -- } ; --2 Sentences --UseCl : Temp -> Pol -> Cl -> S ; -- she had not slept + --Temp = {s : Str ; t : R.Tense ; a : R.Anteriority} ; UseCl temp pol cl = let subj = cl.s; clitic = mkSubjClitic cl.subjAgr; - simul = cl.pres; --morphs ! VFPres; --this is not delivering the string - ant = cl.morphs ! VFPastPart; --this is not delivering the string + presSimul = cl.morphs ! VFPres; --this is not delivering the string + presAnt = cl.morphs ! VFPastPart; --this is not delivering the string root = cl.root; presRestOfVerb = cl.morphs ! VFPres ! RestOfVerb; pastRestOfVerb = cl.perf; --morphs ! VFPastPart ! RestOfVerb; compl = cl.compl in - case of { - => {s = subj ++ clitic ++ --Predef.BIND ++ + case of { + => {s = subj ++ clitic ++ --Predef.BIND ++ root ++ Predef.BIND ++ presRestOfVerb ++ compl}; {-Note: when I use pol.s instead of ti, the word alignment instead becomes worse-} - => {s = subj ++ "ti" ++ Predef.BIND ++ clitic ++ --Predef.BIND ++ + => {s = subj ++ "ti" ++ Predef.BIND ++ clitic ++ --Predef.BIND ++ root ++ presRestOfVerb ++ compl}; - => {s = subj ++ clitic ++ --Predef.BIND ++ - ant!TAMarker ++ root ++ Predef.BIND ++ pastRestOfVerb ++ compl}; - =>{s = subj ++ "ti" ++ Predef.BIND ++ clitic ++ --Predef.BIND ++ - ant!TAMarker ++ root ++ Predef.BIND ++ pastRestOfVerb ++ compl} + => {s = subj ++ clitic ++ --Predef.BIND ++ + cl.morphs!VFPresAnt!TAMarker ++ root ++ Predef.BIND ++ pastRestOfVerb ++ compl}; + =>{s = subj ++ "ti" ++ Predef.BIND ++ clitic ++ --Predef.BIND ++ + cl.morphs!VFPresAnt!TAMarker ++ root ++ Predef.BIND ++ pastRestOfVerb ++ compl}; + + + => {s = subj ++ clitic ++ --Predef.BIND ++ + root ++ Predef.BIND ++ pastRestOfVerb ++ compl}; + {-Note: when I use pol.s instead of ti, the word alignment instead becomes worse-} + => {s = subj ++ "ti" ++ Predef.BIND ++ clitic ++ --Predef.BIND ++ + root ++ pastRestOfVerb ++ compl}; + => {s = subj ++ clitic ++ "bire" ++ clitic ++ --Predef.BIND ++ + cl.morphs!VFPastAnt!TAMarker ++ root ++ Predef.BIND ++ pastRestOfVerb ++ compl}; + =>{s = subj ++ clitic ++ "bire" ++ clitic ++ "ta"--Predef.BIND ++ ant!TAMarker + ++ root ++ Predef.BIND ++ pastRestOfVerb ++ compl}; + + => {s = subj ++ "ni" ++ Predef.BIND ++clitic ++ "za ku" ++ Predef.BIND ++ --choice of za over ija + root ++ Predef.BIND ++ presRestOfVerb ++ compl}; + {-Note: when I use pol.s instead of ti, the word alignment instead becomes worse-} + => {s = subj ++ "ti" ++ Predef.BIND ++ clitic ++ "kuza ku" ++ Predef.BIND ++ + root ++ presRestOfVerb ++ compl}; + => {s = subj ++ "ni" ++ Predef.BIND ++clitic ++ "za kuba" ++ Predef.BIND ++ --choice of za over ija + root ++ Predef.BIND ++ pastRestOfVerb ++ compl}; + =>{s = subj ++ "ni" ++ Predef.BIND ++ clitic ++ "za kuba" ++ clitic ++ "taka" ++ Predef.BIND ++ + root ++ pastRestOfVerb ++ compl}; + + + => {s = subj ++ clitic ++ "kaa" ++Predef.BIND ++ + root ++ Predef.BIND ++ presRestOfVerb ++ compl}; + {-Note: when I use pol.s instead of ti, the word alignment instead becomes worse-} + => {s = subj ++ "ti" ++ Predef.BIND ++ clitic ++ "kaa" ++ Predef.BIND ++ + root ++ presRestOfVerb ++ compl}; + => {s = subj ++ clitic ++ "kaa"--Predef.BIND ++ + ++ root ++ Predef.BIND ++ pastRestOfVerb ++ compl}; + =>{s = subj ++ "ti" ++ Predef.BIND ++ clitic ++ "kaa" ++Predef.BIND + ++ root ++ Predef.BIND ++ pastRestOfVerb ++ compl} }; --: Temp -> Pol -> QCl -> QS ; -- has John walked + -- These are the 2 x 4 x 4 = 16 forms generated by different + -- combinations of tense, polarity, and + -- anteriority, which are defined in [``Common`` Common.html]. UseQCl = UseCl; -- : Temp -> Pol -> Cl -> S ; -- John has not walked QuestCl qcl = qcl; --: Cl -> QCl ; -- does John (not) walk + --UseRCl : Temp -> Pol -> RCl -> RS ; -- that had not slept + --UseRCl temp pol rcl = + PredVP np vp = case vp.isCompApStem of{ False => { s = np.s ! Nom; --: NP -> VP -> Cl ; -- John walks / John does not walk @@ -122,7 +161,6 @@ lin adV = vpslash.adV; containsAdV = vpslash.containsAdV }; - --SlashVP np vpslash = --AdvSlash : ClSlash -> Adv -> ClSlash ; -- (whom) he sees today --SlashPrep : Cl -> Prep -> ClSlash ; -- (with whom) he walks