(May) No verbal prefixes in relative clauses

This commit is contained in:
Inari Listenmaa
2020-08-19 15:15:45 +02:00
parent 6d781d3d02
commit eaf401eda7
6 changed files with 23 additions and 13 deletions

View File

@@ -9,7 +9,7 @@ concrete CatMay of Cat = CommonX ** open ResMay, Prelude in {
S = ResMay.Sentence ; S = ResMay.Sentence ;
QS = SS ; QS = SS ;
RS = ResMay.RClause ; RS = ResMay.RS ;
-- relative sentence. Tense and polarity fixed, -- relative sentence. Tense and polarity fixed,
-- but agreement may depend on the CN/NP it modifies. -- but agreement may depend on the CN/NP it modifies.

View File

@@ -39,7 +39,7 @@ concrete NounMay of Noun = CatMay ** open ResMay, Prelude in {
-- : NP -> RS -> NP ; -- Paris, which is here -- : NP -> RS -> NP ; -- Paris, which is here
RelNP np rs = np ** { RelNP np rs = np ** {
s = np.s ++ rs.subj ++ rs.pred ! np.p s = np.s ++ rs.s ! np.p
} ; } ;
-- Determiners can form noun phrases directly. -- Determiners can form noun phrases directly.
@@ -147,7 +147,7 @@ concrete NounMay of Noun = CatMay ** open ResMay, Prelude in {
-- : CN -> RS -> CN ; -- : CN -> RS -> CN ;
RelCN cn rs = cn ** { RelCN cn rs = cn ** {
s = \\nf => cn.s ! nf ++ rs.subj ++ rs.pred ! P3 s = \\nf => cn.s ! nf ++ rs.s ! P3
} ; } ;
{- {-

View File

@@ -9,7 +9,7 @@ lin
-- : RP -> VP -> RCl ; -- : RP -> VP -> RCl ;
RelVP rp vp = { RelVP rp vp = {
subj = rp.s ; subj = rp.s ;
pred = \\_ => vp.s ! Root ; -- TODO pred = \\_ => vp.s ! Root ;
} ; } ;
-- : RP -> ClSlash -> RCl ; -- who I went with -- : RP -> ClSlash -> RCl ; -- who I went with
@@ -17,7 +17,7 @@ lin
subj = rp.s -- yang subj = rp.s -- yang
++ cls.subj ; -- saya ++ cls.subj ; -- saya
pred = pred =
\\p => cls.pred -- ikut sama \\p => cls.pred ! Root -- ikut sama
++ cls.c2.obj ! p -- dengan+nya (depends on the head, not known yet) ++ cls.c2.obj ! p -- dengan+nya (depends on the head, not known yet)
} ; } ;

View File

@@ -154,11 +154,17 @@ oper
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- Cl, S -- Cl, S
Clause : Type = {subj, pred : Str} ; Clause : Type = {
subj : Str ;
pred : VForm => Str -- Cl may become relative clause, need to keep open
} ;
RClause : Type = { RClause : Type = {
subj : Str ; subj : Str ;
pred : Person => Str} ; pred : Person => Str
} ;
RS : Type = {s : Person => Str} ;
ClSlash : Type = Clause ** {c2 : Preposition} ; ClSlash : Type = Clause ** {c2 : Preposition} ;
@@ -166,7 +172,7 @@ oper
predVP : NounPhrase -> VerbPhrase -> Clause = \np,vp -> { predVP : NounPhrase -> VerbPhrase -> Clause = \np,vp -> {
subj = np.s ; subj = np.s ;
pred = vp.s ! Active ; -- TODO pred = vp.s
} ; } ;
predVPSlash : NounPhrase -> VPSlash -> ClSlash = \np,vps -> predVPSlash : NounPhrase -> VPSlash -> ClSlash = \np,vps ->

View File

@@ -51,17 +51,17 @@ lin
-- : Temp -> Pol -> Cl -> S ; -- : Temp -> Pol -> Cl -> S ;
UseCl t p cl = { UseCl t p cl = {
s = cl.subj ++ t.s ++ p.s ++ cl.pred ; s = cl.subj ++ t.s ++ p.s ++ cl.pred ! Active ;
} ; } ;
-- : Temp -> Pol -> QCl -> QS ; -- : Temp -> Pol -> QCl -> QS ;
UseQCl t p cl = { UseQCl t p cl = {
s = cl.subj ++ t.s ++ p.s ++ cl.pred ; s = cl.subj ++ t.s ++ p.s ++ cl.pred ! Active ;
} ; } ;
-- : Temp -> Pol -> RCl -> RS ; -- : Temp -> Pol -> RCl -> RS ;
UseRCl t p cl = cl ** { UseRCl t p cl = {
pred = \\per => t.s ++ p.s ++ cl.pred ! per ; s = \\per => cl.subj ++ t.s ++ p.s ++ cl.pred ! per ;
} ; } ;
-- AdvS : Adv -> S -> S ; -- then I will go home -- AdvS : Adv -> S -> S ; -- then I will go home

View File

@@ -6,6 +6,10 @@ Lang: DetCN (DetQuant IndefArt NumSg) (RelCN (UseN cat_N) (UseRCl (TTAnt TPres A
LangEng: a cat that drinks milk LangEng: a cat that drinks milk
LangMay: kucing yang minum susu LangMay: kucing yang minum susu
Lang: MassNP (RelCN (UseN milk_N) (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashVP (DetCN (DetQuant DefArt NumSg) (UseN cat_N)) (SlashV2a drink_V2)))))
LangEng: milk that the cat drinks
LangMay: susu yang kucing minum
Lang: DetCN (DetQuant DefArt NumSg) (RelCN (UseN cat_N) (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashPrep (PredVP (DetCN (DetQuant DefArt NumSg) (UseN dog_N)) (UseV walk_V)) with_Prep)))) Lang: DetCN (DetQuant DefArt NumSg) (RelCN (UseN cat_N) (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashPrep (PredVP (DetCN (DetQuant DefArt NumSg) (UseN dog_N)) (UseV walk_V)) with_Prep))))
LangEng: the cat that the dog walks with LangEng: the cat that the dog walks with
LangMay: kucing yang anjing berjalan dengannya LangMay: kucing yang anjing jalan dengannya