mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-21 00:52:51 -06:00
completed lifting Eng verbs categories to Pred.V
This commit is contained in:
@@ -57,7 +57,7 @@ oper
|
|||||||
noObj : Agr => Str = \\_ => [] ;
|
noObj : Agr => Str = \\_ => [] ;
|
||||||
|
|
||||||
NAgr = Number ;
|
NAgr = Number ;
|
||||||
AAgr = Unit ;
|
AAgr = Agr ; -- because of reflexives: "happy with itself"
|
||||||
IPAgr = Number ;
|
IPAgr = Number ;
|
||||||
|
|
||||||
defaultAgr : Agr = AgP3Sg Neutr ;
|
defaultAgr : Agr = AgP3Sg Neutr ;
|
||||||
@@ -69,7 +69,7 @@ oper
|
|||||||
_ => VAPl
|
_ => VAPl
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
agr2aagr : Agr -> AAgr = \n -> UUnit ;
|
agr2aagr : Agr -> AAgr = \a -> a ;
|
||||||
|
|
||||||
agr2nagr : Agr -> NAgr = \a -> case a of {
|
agr2nagr : Agr -> NAgr = \a -> case a of {
|
||||||
AgP1 n => n ;
|
AgP1 n => n ;
|
||||||
@@ -213,7 +213,7 @@ linref
|
|||||||
PrCl = \cl -> declCl cl ;
|
PrCl = \cl -> declCl cl ;
|
||||||
---- PrQCl = \qcl -> questCl (lin PrQCl qcl) ;
|
---- PrQCl = \qcl -> questCl (lin PrQCl qcl) ;
|
||||||
PrAdv = \adv -> adv.c1 ++ adv.s ;
|
PrAdv = \adv -> adv.c1 ++ adv.s ;
|
||||||
PrAP = \ap -> ap.s ! UUnit ++ ap.obj1 ! defaultAgr ;
|
PrAP = \ap -> ap.s ! defaultAgr ++ ap.obj1 ! defaultAgr ;
|
||||||
PrCN = \cn -> cn.s ! Sg ++ cn.obj1 ! defaultAgr ;
|
PrCN = \cn -> cn.s ! Sg ++ cn.obj1 ! defaultAgr ;
|
||||||
|
|
||||||
----------------------------
|
----------------------------
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ fun
|
|||||||
LiftV2N : V2A -> PrV (aNP aN) ; ----
|
LiftV2N : V2A -> PrV (aNP aN) ; ----
|
||||||
|
|
||||||
LiftAP : AP -> PrAP aNone ;
|
LiftAP : AP -> PrAP aNone ;
|
||||||
LiftCN : AP -> PrCN aNone ;
|
LiftCN : CN -> PrCN aNone ;
|
||||||
|
|
||||||
LiftAdv : Adv -> PrAdv aNone ;
|
LiftAdv : Adv -> PrAdv aNone ;
|
||||||
LiftAdV : Adv -> PrAdv aNone ;
|
LiftAdV : Adv -> PrAdv aNone ;
|
||||||
|
|||||||
@@ -5,36 +5,37 @@ concrete TransEng of Trans =
|
|||||||
,PredEng
|
,PredEng
|
||||||
,DictionaryEng - [Pol]
|
,DictionaryEng - [Pol]
|
||||||
|
|
||||||
** open ResEng, Prelude in {
|
** open ResEng, Prelude, (Pr = PredEng) in {
|
||||||
|
|
||||||
flags
|
flags
|
||||||
literal=Symb ;
|
literal=Symb ;
|
||||||
|
|
||||||
lin
|
oper
|
||||||
LiftV v = {s = v.s ; p = v.p ; c1,c2 = [] ; isSubjectControl = False ; vtype = VTAct ; vvtype = VVInf} ;
|
liftV : ResEng.Verb -> Pr.PrV = \v -> lin PrV {s = v.s ; p = v.p ; c1,c2 = [] ; isSubjectControl = False ; vtype = VTAct ; vvtype = VVInf} ;
|
||||||
LiftV2 v = {s = v.s ; p = v.p ; c1 = v.c2 ; c2 = [] ; isSubjectControl = False ; vtype = VTAct ; vvtype = VVInf} ;
|
|
||||||
LiftVS v = {s = v.s ; p = v.p ; c1,c2 = [] ; isSubjectControl = False ; vtype = VTAct ; vvtype = VVInf} ;
|
|
||||||
LiftVQ v = {s = v.s ; p = v.p ; c1,c2 = [] ; isSubjectControl = False ; vtype = VTAct ; vvtype = VVInf} ;
|
|
||||||
LiftVV v = {s = \\f => v.s ! VVF f ; p = v.p ; c1,c2 = [] ; isSubjectControl = False ; vtype = VTAct ; vvtype = VVInf} ; ---- c1?
|
|
||||||
|
|
||||||
LiftAP ap = {s = \\_ => ap.s ! AgP3Sg Neutr ; c1,c2 = [] ; obj1 = \\_ => []} ; --- agr, isPre
|
lin
|
||||||
|
LiftV v = liftV v ;
|
||||||
|
LiftV2 v = liftV v ** {c1 = v.c2} ;
|
||||||
|
LiftVS v = liftV v ;
|
||||||
|
LiftVQ v = liftV v ;
|
||||||
|
LiftVA v = liftV v ; ---- c1?
|
||||||
|
LiftVN v = liftV v ; ---- c1?
|
||||||
|
LiftVV v = {s = \\f => v.s ! VVF f ; p = v.p ; c1,c2 = [] ; isSubjectControl = False ; vtype = VTAct ; vvtype = VVInf} ; ---- c1? ---- VVF
|
||||||
|
|
||||||
|
LiftV3 v = liftV v ** {c1 = v.c2 ; c2 = v.c3} ;
|
||||||
|
LiftV2S v = liftV v ** {c1 = v.c2} ;
|
||||||
|
LiftV2Q v = liftV v ** {c1 = v.c2} ;
|
||||||
|
LiftV2V v = liftV v ** {c1 = v.c2 ; c2 = v.c3 ; isSubjectControl = False ; vvtype = v.typ} ; ---- subj control should be defined in V2V
|
||||||
|
LiftV2A v = liftV v ** {c1 = v.c2} ;
|
||||||
|
LiftV2N v = liftV v ** {c1 = v.c2} ;
|
||||||
|
|
||||||
|
|
||||||
|
LiftAP ap = ap ** {c1,c2 = [] ; obj1 = \\_ => []} ; --- isPre
|
||||||
|
LiftCN cn = {s = \\n => cn.s ! n ! Nom ; c1,c2 = [] ; obj1 = \\_ => []} ;
|
||||||
|
|
||||||
LiftAdv a = a ** {isAdV = False ; c1 = []} ;
|
LiftAdv a = a ** {isAdV = False ; c1 = []} ;
|
||||||
LiftAdV a = a ** {isAdV = True ; c1 = []} ;
|
LiftAdV a = a ** {isAdV = True ; c1 = []} ;
|
||||||
LiftPrep p = {s = [] ; isAdV = False ; c1 = p.s} ;
|
LiftPrep p = {s = [] ; isAdV = False ; c1 = p.s} ;
|
||||||
|
|
||||||
{-
|
|
||||||
LiftVA : VA -> PrV aA ;
|
|
||||||
LiftVN : VA -> PrV aN ; ----
|
|
||||||
|
|
||||||
LiftV3 : V3 -> PrV (aNP (aNP aNone)) ;
|
|
||||||
LiftV2S : V2S -> PrV (aNP aS) ;
|
|
||||||
LiftV2Q : V2Q -> PrV (aNP aQ) ;
|
|
||||||
-}
|
|
||||||
LiftV2V v = {s = v.s ; p = v.p ; c1 = v.c2 ; c2 = v.c3 ; isSubjectControl = False ; vtype = VTAct ; vvtype = v.typ} ; ---- subj control
|
|
||||||
{-
|
|
||||||
LiftV2A : V2A -> PrV (aNP aA) ;
|
|
||||||
LiftV2N : V2A -> PrV (aNP aN) ; ----
|
|
||||||
-}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user