simplified adjectival predication

This commit is contained in:
aarne
2005-03-17 13:10:38 +00:00
parent 087aa10b6f
commit 752ab6dbc1
19 changed files with 152 additions and 237 deletions

View File

@@ -25,20 +25,42 @@ incomplete concrete ClauseRomance of Clause = CategoriesRomance **
SPredVS subj verb sent =
sats2clause (
insertExtrapos (mkSats subj verb) (embedConj ++ sent.s ! verb.mp)) ; ---- mn
insertExtrapos (mkSats subj verb)
(\\b => embedConj ++ sent.s ! subordMode verb b)) ; ---- mn
SPredVQ subj verb quest =
sats2clause (
insertExtrapos (mkSats subj verb) (quest.s ! IndirQ)) ;
insertExtrapos (mkSats subj verb) (\\_ => quest.s ! IndirQ)) ;
SPredV2S subj verb obj sent =
sats2clause (
insertExtrapos
(mkSatsObject subj verb obj)
(embedConj ++ sent.s ! verb.mp)) ; ---- mn ;
(\\b => embedConj ++ sent.s ! subordMode verb b)
) ; ---- mn ;
SPredV2Q subj verb obj quest =
sats2clause (
insertExtrapos
(mkSatsObject subj verb obj)
(quest.s ! IndirQ)) ;
(\\_ => quest.s ! IndirQ)) ;
SPredVA subj verb adj =
sats2clause (
insertExtrapos (mkSats subj verb) (\\_ => adj.s ! AF (pgen2gen subj.g) subj.n)) ;
SPredVV subj verb vp =
sats2clause (
insertExtrapos
(mkSats subj verb)
(\\_ => prepCase verb.c ++ vp.s ! VIInfinit ! pgen2gen subj.g ! subj.n ! subj.p)
) ;
-- SPredObjV2V
-- SPredProgVP
-- SPredSubjV2V
-- SPredV2A
SPredAP subj adj =
sats2clause (mkSatsCopula subj (adj.s ! AF (pgen2gen subj.g) subj.n)) ;
SPredCN subj cn =
@@ -48,54 +70,6 @@ incomplete concrete ClauseRomance of Clause = CategoriesRomance **
SPredAdv subj adv =
sats2clause (mkSatsCopula subj adv.s) ;
{-
SPredVA np v x = predVerbClause np v (complAdjVerb v x) ;
SPredV2A np v x y = predVerbClause np v (complDitransAdjVerb v x y) ;
SPredSubjV2V np v x y = predVerbClause np v (complDitransVerbVerb False v x y) ;
SPredObjV2V np v x y = predVerbClause np v (complDitransVerbVerb True v x y) ;
-- SPredV2S np v x y = predVerbClause np v (complDitransSentVerb v x y) ;
-- SPredV2Q np v x y = predVerbClause np v (complDitransQuestVerb v x y) ;
SPredAP np v = predCopula np (complAdjective v) ;
SPredSuperl np a = predCopula np (complAdjective (superlAdjPhrase a)) ;
SPredCN np v = predCopula np (complCommNoun v) ;
SPredNP np v = predCopula np (complNounPhrase v) ;
SPredPP np v = predCopula np (complAdverb v) ;
SPredAV np v x = predCopula np (complVerbAdj v x) ;
SPredObjA2V np v x y = predCopula np (complVerbAdj2 True v x y) ;
SPredProgVP = progressiveClause ;
QPredV np v = intVerbClause np v (complVerb v) ;
QPredPassV np v = predCopulaQ np (passVerb v) ;
QPredV2 np v x = intVerbClause np v (complTransVerb v x) ;
-- QPredReflV2 np v = intVerbClause np v (reflTransVerb v) ;
QPredVS np v x = intVerbClause np v (complSentVerb v x) ;
QPredVV np v x = intVerbClause np (aux2verb v) (complVerbVerb v x) ;
QPredVQ np v x = intVerbClause np v (complQuestVerb v x) ;
QPredVA np v x = intVerbClause np v (complAdjVerb v x) ;
QPredV2A np v x y = intVerbClause np v (complDitransAdjVerb v x y) ;
QPredSubjV2V np v x y = intVerbClause np v (complDitransVerbVerb
False v x y) ;
QPredObjV2V np v x y = intVerbClause np v (complDitransVerbVerb
True v x y) ;
QPredV2S np v x y = intVerbClause np v (complDitransSentVerb v x y) ;
QPredV2Q np v x y = intVerbClause np v (complDitransQuestVerb v x y) ;
QPredAP np v = predCopulaQ np (complAdjective v) ;
QPredSuperl np a = predCopulaQ np (complAdjective (superlAdjPhrase a)) ;
QPredCN np v = predCopulaQ np (complCommNoun v) ;
QPredNP np v = predCopulaQ np (complNounPhrase v) ;
QPredPP np v = predCopulaQ np (complAdverb v) ;
QPredAV np v x = predCopulaQ np (complVerbAdj v x) ;
QPredObjA2V np v x y = predCopulaQ np (complVerbAdj2 True v x y) ;
IPredV a v = predVerbI True a v (complVerb v) ;
IPredV2 a v x = predVerbI True a v (complTransVerb v x) ;
IPredAP a v = predCopulaI True a (complAdjective v) ;
-}
{-
-- Use VPs
@@ -113,72 +87,4 @@ incomplete concrete ClauseRomance of Clause = CategoriesRomance **
{-
lin
SPredV np v = predVerbGroupClause np (predVerb v) ;
SPredPassV np v = predVerbGroupClause np (passVerb v) ;
SPredV2 np v x = predVerbGroupClause np (complTransVerb v x) ;
-- SPredReflV2 np v = predVerbGroupClause np (reflTransVerb v) ;
SPredVS np v x = predVerbGroupClause np (complSentVerb v x) ;
-- SPredVV np v x = predVerbGroupClause np (complVerbVerb v x) ;
-- SPredVQ np v x = predVerbGroupClause np (complQuestVerb v x) ;
-- SPredVA np v x = predVerbGroupClause np (complAdjVerb v x) ;
-- SPredV2A np v x y = predVerbGroupClause np (complDitransAdjVerb v x y) ;
-- SPredSubjV2V np v x y = predVerbGroupClause np (complDitransVerbVerb False v x y) ;
-- SPredObjV2V np v x y = predVerbGroupClause np (complDitransVerbVerb True v x y) ;
-- SPredV2S np v x y = predVerbGroupClause np (complDitransSentVerb v x y) ;
-- SPredV2Q np v x y = predVerbGroupClause np (complDitransQuestVerb v x y) ;
SPredAP np v = predVerbGroupClause np (predAdjective v) ;
SPredSuperl np a = predVerbGroupClause np (predAdjective (superlAdjPhrase a)) ;
SPredCN np v = predVerbGroupClause np (predCommNoun v) ;
SPredNP np v = predVerbGroupClause np (predNounPhrase v) ;
SPredPP np v = predVerbGroupClause np (predAdverb v) ;
-- SPredAV np v x = predVerbGroupClause np (complVerbAdj v x) ;
-- SPredObjA2V np v x y = predVerbGroupClause np (complVerbAdj2 True v x y) ;
-}
-- SPredProgVP = progressiveClause ;
{-
QPredV np v = intVerbPhrase np (predVerb v) ;
QPredPassV np v = intVerbPhrase np (passVerb v) ;
QPredV2 np v x = intVerbPhrase np (complTransVerb v x) ;
-- QPredReflV2 np v = intVerbPhrase np (reflTransVerb v) ;
QPredVS np v x = intVerbPhrase np (complSentVerb v x) ;
QPredVV np v x = intVerbPhrase np (complVerbVerb v x) ;
-- QPredVQ np v x = intVerbPhrase np (complQuestVerb v x) ;
-- QPredVA np v x = intVerbPhrase np (complAdjVerb v x) ;
-- QPredV2A np v x y = intVerbPhrase np (complDitransAdjVerb v x y) ;
-- QPredSubjV2V np v x y = intVerbPhrase np (complDitransVerbVerb False v x y) ;
-- QPredObjV2V np v x y = intVerbPhrase np (complDitransVerbVerb True v x y) ;
-- QPredV2S np v x y = intVerbPhrase np (complDitransSentVerb v x y) ;
-- QPredV2Q np v x y = intVerbPhrase np (complDitransQuestVerb v x y) ;
QPredAP np v = intVerbPhrase np (predAdjective v) ;
QPredSuperl np a = intVerbPhrase np (predAdjective (superlAdjPhrase a)) ;
QPredCN np v = intVerbPhrase np (predCommNoun v) ;
QPredNP np v = intVerbPhrase np (predNounPhrase v) ;
QPredPP np v = intVerbPhrase np (predAdverb v) ;
-- QPredAV np v x = intVerbPhrase np (complVerbAdj v x) ;
-- QPredObjA2V np v x y = intVerbPhrase np (complVerbAdj2 True v x y) ;
-}
-- IPredV a v = predVerbGroupI True a (predVerb v) ;
-- IPredV2 a v x = predVerbGroupI True a (complTransVerb v x) ;
-- IPredAP a v = predVerbGroupI True a (predAdjective v) ;
{-
-- Use VPs
PredVP = predVerbGroupClause ;
IntVP = intVerbPhrase ;
RelVP = relVerbPhrase ;
PosVP tp = predVerbGroup True tp.a ;
NegVP tp = predVerbGroup False tp.a ;
AdvVP = adVerbPhrase ;
SubjVP = subjunctVerbPhrase ;
-}
}

View File

@@ -40,10 +40,12 @@ lin
UseA = adj2adjPhrase ;
ComplA2 = complAdj ;
ComplAV v x = complVerbAdj v x ;
ComplObjA2V v x y = complVerbAdj2 True v x y ;
PositADeg = positAdjPhrase ;
PositADeg = positAdjPhrase ;
ComparADeg = comparAdjPhrase ;
SuperlNP = superlNounPhrase ;
SuperlADeg = superlAdjPhrase ;
PredAS = predAdjSent ;
PredV0 rain = predVerbClause (pronNounPhrase pronImpers) rain (complVerb rain) ;

View File

@@ -500,17 +500,22 @@ oper
complAdverb : Adverb -> Complemnt = \dehors ->
complCopula (\\_,_,_ => dehors.s) ;
complVerbAdj : AdjCompl -> VerbPhrase -> Complemnt = \facile,ouvrir ->
complCopula (\\g,n,p =>
facile.s ! AF g n ++ prepCase facile.c ++ facile.s2 ++
ouvrir.s ! VIInfinit ! g ! n ! p) ;
complVerbAdj : AdjCompl -> VerbPhrase -> AdjPhrase = \facile,ouvrir ->
{s = \\gn => ---- p
facile.s ! gn ++ prepCase facile.c ++ facile.s2 ++
ouvrir.s ! VIInfinit ! Masc ! Sg ! P3 ;
p = False
} ;
complVerbAdj2 : Bool -> AdjCompl -> NounPhrase -> VerbPhrase -> Complemnt =
complVerbAdj2 : Bool -> AdjCompl -> NounPhrase -> VerbPhrase -> AdjPhrase =
\b,facile,lui,nager ->
complTransVerbGen (copula ** {c = dative ; s2=[]}) lui
(\\g,n,p =>
facile.s ! AF g n ++ prepCase facile.c ++ facile.s2 ++
nager.s ! VIInfinit ! g ! n ! p) ; ---- agr dep on b
{s = \\gn => ---- p
facile.s ! gn ++
lui.s ! stressed dative ++ ---- also "pour lui" ?
prepCase facile.c ++ facile.s2 ++
nager.s ! VIInfinit ! pgen2gen lui.g ! lui.n ! P3 ; ---- agr dep on b
p = False
} ;
progressiveVerbPhrase : VerbPhrase -> VerbGroup ;
@@ -584,7 +589,7 @@ oper
in
\\g,n,p =>
let
soi = reflPron ! n ! p ! (case2pformClit aime.c) ;
soi = reflPron ! n ! p ! unstressed accusative ; ---- (case2pformClit aime.c) ;
aimee = aime.s ! VPart g n
in
case clit of {
@@ -870,6 +875,9 @@ oper
SentenceVerb : Type = Verb ** {mp, mn : Mode} ;
subordMode : SentenceVerb -> Bool -> Mode = \verb,b ->
if_then_else Mode b verb.mp verb.mn ;
complSentVerb : SentenceVerb -> Sentence -> Complemnt = \croire,jeanboit ->
mkCompl
croire
@@ -1429,6 +1437,7 @@ oper
s4 : VF => Str ; -- ai ai
s5 : Str ; -- toujours (pas) toujours (pas)
s6 : Str ; -- (dit) directement (voulu) le lui dire directement
s7 : Bool => Str; -- qu'il pleu/pleuve
aux : VAux ;
g,g2 : Gender ; -- features for main verb and participle
n,n2 : Number ;
@@ -1473,6 +1482,7 @@ oper
s3 = [] ;
s4 = verb.s ;
s5, s6 = [] ;
s7 = \\_ => [] ;
aux = verb.aux ;
g = pgen2gen subj.g ;
n = subj.n ;
@@ -1494,6 +1504,7 @@ oper
s4 = sats.s4 ;
s5 = sats.s5 ;
s6 = sats.s6 ++ prep ++ np ;
s7 = sats.s7 ;
aux = sats.aux ;
g = sats.g ;
n = sats.n ;
@@ -1502,12 +1513,13 @@ oper
p = sats.p
} ;
insertExtrapos : Sats -> Str -> Sats = \sats,obj ->
insertExtrapos : Sats -> (Bool => Str) -> Sats = \sats,obj ->
{s1 = sats.s1 ;
s3 = sats.s3 ;
s4 = sats.s4 ;
s5 = sats.s5 ;
s6 = sats.s6 ++ obj ;
s6 = sats.s6 ;
s7 = obj ;
aux = sats.aux ;
g = sats.g ;
n = sats.n ;
@@ -1535,10 +1547,11 @@ oper
dit = dire.p2 ;
toujours = sats.s5 ;
directement = sats.s6 ;
ne = if_then_Str b [] "ne" ; ---- negNe ;
pas = if_then_Str b [] "pas" ---- negPas
ne = if_then_Str b [] "ne" ; ---- negNe ;
pas = if_then_Str b [] "pas" ; ---- negPas ;
oui = sats.s7 ! b
in
je ++ ne ++ lui ++ ai ++ toujours ++ pas ++ dit ++ directement
je ++ ne ++ lui ++ ai ++ toujours ++ pas ++ dit ++ directement ++ oui
} ;
}

View File

@@ -29,26 +29,22 @@ incomplete concrete VerbphraseRomance of Verbphrase = CategoriesRomance **
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) ;
ComplReflV2 v = predClauseGroup v (reflTransVerb v) ;
ComplVS v x = predClauseGroup v (complSentVerb v x) ;
ComplVV v x = predClauseGroup v (complVerbVerb v x) ;
ComplVQ v x = predClauseGroup v (complQuestVerb v x) ;
ComplVA v x = predClauseGroup v (complAdjVerb v x) ;
ComplV2A v x y = predClauseGroup v (complDitransAdjVerb v x y) ;
---- ComplSubjV2V v x y = predClauseGroup v (complDitransVerbVerb False v x y) ;
---- ComplObjV2V v x y = predClauseGroup v (complDitransVerbVerb True v x y) ;
ComplSubjV2V v x y = predClauseGroup v (complDitransVerbVerb False v x y) ;
ComplObjV2V v x y = predClauseGroup v (complDitransVerbVerb True v x y) ;
ComplV2S v x y = predClauseGroup v (complDitransSentVerb v x y) ;
ComplV2Q v x y = predClauseGroup v (complDitransQuestVerb v x y) ;
PredAP v = predClauseBeGroup (complAdjective v) ;
PredSuperl a = predClauseBeGroup (complAdjective (superlAdjPhrase a)) ;
PredCN v = predClauseBeGroup (complCommNoun v) ;
PredNP v = predClauseBeGroup (complNounPhrase v) ;
PredAdv v = predClauseBeGroup (complAdverb v) ;
PredAV v x = predClauseBeGroup (complVerbAdj v x) ;
PredObjA2V v x y = predClauseBeGroup (complVerbAdj2 True v x y) ;
PredProgVP = progressiveVerbPhrase ;
-- Use VPs