From ce3fee58bc66bf26d0fd5e06d061c696fff6f1fc Mon Sep 17 00:00:00 2001 From: aarne Date: Thu, 24 Feb 2005 14:22:14 +0000 Subject: [PATCH] changed type of ComplV3 --- lib/resource/abstract/Clause.gf | 1 + lib/resource/abstract/ClauseI.gf | 1 + lib/resource/abstract/Rules.gf | 1 - lib/resource/abstract/Verbphrase.gf | 1 + lib/resource/english/RulesEng.gf | 2 +- lib/resource/romance/RulesRomance.gf | 8 +++----- lib/resource/romance/SyntaxRomance.gf | 20 ++++++++++++++++++-- lib/resource/romance/VerbphraseRomance.gf | 1 + lib/resource/scandinavian/RulesScand.gf | 2 +- 9 files changed, 27 insertions(+), 10 deletions(-) diff --git a/lib/resource/abstract/Clause.gf b/lib/resource/abstract/Clause.gf index 7843ff847..b6e10b30f 100644 --- a/lib/resource/abstract/Clause.gf +++ b/lib/resource/abstract/Clause.gf @@ -14,6 +14,7 @@ fun SPredV : NP -> V -> Cl ; -- "John walks" SPredPassV : NP -> V -> Cl ; -- "John is seen" SPredV2 : NP -> V2 -> NP -> Cl ; -- "John sees Mary" + SPredV3 : NP -> V2 -> NP -> NP -> Cl ; -- "John tells Mary everything" SPredReflV2 : NP -> V2 -> Cl ; -- "John loves himself" SPredVS : NP -> VS -> S -> Cl ; -- "John says that Mary runs" SPredVV : NP -> VV -> VPI -> Cl ; -- "John must walk" diff --git a/lib/resource/abstract/ClauseI.gf b/lib/resource/abstract/ClauseI.gf index 0d95f72aa..ac1f51343 100644 --- a/lib/resource/abstract/ClauseI.gf +++ b/lib/resource/abstract/ClauseI.gf @@ -9,6 +9,7 @@ incomplete concrete ClauseI of Clause = open Rules, Verbphrase in { SPredV np v = PredVP np (UseV v) ; SPredPassV np v = PredVP np (UsePassV v) ; SPredV2 np v x = PredVP np (ComplV2 v x) ; +---- SPredV3 np v x y = PredVP np (ComplV3 v x y) ; SPredReflV2 np v = PredVP np (ComplReflV2 v) ; SPredVS np v x = PredVP np (ComplVS v x) ; SPredVV np v x = PredVP np (ComplVV v x) ; diff --git a/lib/resource/abstract/Rules.gf b/lib/resource/abstract/Rules.gf index 6479003c9..395dfb40e 100644 --- a/lib/resource/abstract/Rules.gf +++ b/lib/resource/abstract/Rules.gf @@ -70,7 +70,6 @@ fun -- Partial saturation. UseV2 : V2 -> V ; -- "loves" - ComplV3 : V3 -> NP -> V2 ; -- "prefers wine (to beer)" ComplA2S : A2S -> NP -> AS ; -- "good for John" diff --git a/lib/resource/abstract/Verbphrase.gf b/lib/resource/abstract/Verbphrase.gf index 6b0d0303d..b533253ce 100644 --- a/lib/resource/abstract/Verbphrase.gf +++ b/lib/resource/abstract/Verbphrase.gf @@ -21,6 +21,7 @@ abstract Verbphrase = Categories ** { UseV : V -> VP ; -- "walks" UsePassV : V -> VP ; -- "is seen" ComplV2 : V2 -> NP -> VP ; -- "sees Mary" + ComplV3 : V3 -> NP -> NP -> VP ; -- "tells Mary everything" ComplReflV2 : V2 -> VP ; -- "loves himself" ComplVS : VS -> S -> VP ; -- "says that Mary runs" ComplVV : VV -> VPI -> VP ; -- "must walk" diff --git a/lib/resource/english/RulesEng.gf b/lib/resource/english/RulesEng.gf index e70d7fa62..f346e1e63 100644 --- a/lib/resource/english/RulesEng.gf +++ b/lib/resource/english/RulesEng.gf @@ -78,7 +78,7 @@ lin -- Partial saturation. UseV2 = transAsVerb ; - ComplV3 = complDitransVerb ; +---- ComplV3 = complDitransVerb ; ComplA2S = predAdjSent2 ; diff --git a/lib/resource/romance/RulesRomance.gf b/lib/resource/romance/RulesRomance.gf index a9f228e97..dccda4d20 100644 --- a/lib/resource/romance/RulesRomance.gf +++ b/lib/resource/romance/RulesRomance.gf @@ -52,8 +52,6 @@ lin UseV2 = transAsVerb ; ----- ComplV3 = complDitransVerb ; - ComplA2S = predAdjSent2 ; ---- clitics get lost AdjPart = adjPastPart ; @@ -99,9 +97,9 @@ lin --3 Sentences and relative clauses -- - SlashV2 = slashTransVerb ; ----- SlashVV2 = slashVerbVerb ; ----- SlashAdv cl p = slashAdverb cl p.s ; + SlashV2 = slashTransVerb ; + SlashVV2 = slashVerbVerb ; + SlashAdv = slashAdverb ; IdRP = identRelPron ; FunRP = funRelPron ; diff --git a/lib/resource/romance/SyntaxRomance.gf b/lib/resource/romance/SyntaxRomance.gf index 5c7022b12..d4be22704 100644 --- a/lib/resource/romance/SyntaxRomance.gf +++ b/lib/resource/romance/SyntaxRomance.gf @@ -635,10 +635,15 @@ oper v ** {s2 = p1 ; c = c1 ; s3 = p2 ; c3 = c2} ; --- This must be completed to account for the order of the clitics. +--- In the rule below, the last argument cannot get cliticized. -{- ---- complDitransVerb : - DitransVerb -> NounPhrase -> NounPhrase -> VerbGroup = \donner,jean,vin -> + DitransVerb -> NounPhrase -> NounPhrase -> Complemnt = \donner,jean,vin -> + complTransVerbGen + donner jean + (\\_,_,_ => donner.s3 ++ vin.s ! case2pform donner.c3) ; + +{- {s = \\b,g,w => let adonne = formVerb2 donner g w ; @@ -927,6 +932,17 @@ oper predVerbGroupClause jean (predClauseGroup aimer (complVerb aimer)) ** complementOfTransVerb aimer ; + slashVerbVerb : NounPhrase -> VerbVerb -> TransVerb -> ClauseSlashNounPhrase = + \jean,vouloir,aimer -> + predVerbGroupClause jean + (predClauseGroup aimer (complVerbVerb vouloir + (predVerbGroup True {s = [] ; a = Simul} (predClauseGroup aimer (complVerb aimer))))) ** + complementOfTransVerb aimer ; + + slashAdverb : Clause -> {s : Str ; c : CaseA} -> ClauseSlashNounPhrase = + \ilhabite,dans -> ilhabite ** {s2 = dans.s ; c = dans.c} ; + + --2 Relative pronouns and relative clauses -- -- Relative pronouns are inflected in diff --git a/lib/resource/romance/VerbphraseRomance.gf b/lib/resource/romance/VerbphraseRomance.gf index 12d731ed0..af508e467 100644 --- a/lib/resource/romance/VerbphraseRomance.gf +++ b/lib/resource/romance/VerbphraseRomance.gf @@ -28,6 +28,7 @@ incomplete concrete VerbphraseRomance of Verbphrase = CategoriesRomance ** UseV v = predClauseGroup v (complVerb v) ; UsePassV v = predClauseBeGroup (passVerb v) ; ComplV2 v x = predClauseGroup v (complTransVerb v x) ; + ComplV3 v x y = predClauseGroup v (complDitransVerb v x y) ; ComplReflV2 v = predClauseGroup v (reflTransVerb v) ; ComplVS v x = predClauseGroup v (complSentVerb v x) ; ComplVV v x = predClauseGroup v (complVerbVerb v x) ; diff --git a/lib/resource/scandinavian/RulesScand.gf b/lib/resource/scandinavian/RulesScand.gf index 87bbb27e6..5fbba54f1 100644 --- a/lib/resource/scandinavian/RulesScand.gf +++ b/lib/resource/scandinavian/RulesScand.gf @@ -59,7 +59,7 @@ lin -- Partial saturation. UseV2 = transAsVerb ; - ComplV3 = complDitransVerb ; +---- ComplV3 = complDitransVerb ; ComplA2S = predAdjSent2 ;