mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-09 04:59:31 -06:00
simplified Det structure in exper
This commit is contained in:
@@ -23,6 +23,11 @@ fun
|
||||
NumInt : Int -> Num ; -- 51
|
||||
OrdInt : Int -> Ord ; -- 51st (DEPRECATED)
|
||||
|
||||
-- 20/4
|
||||
DetSg : Art -> Ord -> Det ; -- the best man
|
||||
DetPl : Art -> Num -> Ord -> Det ; -- the five best men
|
||||
NoNum : Num ;
|
||||
|
||||
-- from Structural 19/4/2008
|
||||
|
||||
that_NP : NP ;
|
||||
|
||||
@@ -35,16 +35,14 @@ abstract Noun = Cat ** {
|
||||
-- (This is modified from CLE by further dividing their $Num$ into
|
||||
-- cardinal and ordinal.)
|
||||
|
||||
DetSg : Art -> Ord -> Det ; -- the best man
|
||||
DetPl : Art -> Num -> Ord -> Det ; -- the five best men
|
||||
DetArt : Art -> Num -> Ord -> Det ; -- the five best men
|
||||
|
||||
-- Notice that $DetPl$ can still result in a singular determiner, because
|
||||
-- "one" is a numeral: "this one man".
|
||||
|
||||
-- Quantifiers can form noun phrases directly.
|
||||
|
||||
DetSgNP : Quant -> Ord -> NP ; -- this
|
||||
DetPlNP : Quant -> Num -> Ord -> NP ; -- these five
|
||||
DetQuant : Quant -> Num -> Ord -> NP ; -- these five
|
||||
|
||||
-- Quantifiers can also be used in the same way as articles.
|
||||
|
||||
@@ -60,7 +58,8 @@ abstract Noun = Cat ** {
|
||||
-- All parts of the determiner can be empty, except $Quant$, which is
|
||||
-- the "kernel" of a determiner.
|
||||
|
||||
NoNum : Num ;
|
||||
NumSg : Num ;
|
||||
NumPl : Num ;
|
||||
NoOrd : Ord ;
|
||||
|
||||
-- $Num$ consists of either digits or numeral words.
|
||||
@@ -76,7 +75,7 @@ abstract Noun = Cat ** {
|
||||
|
||||
-- $Ord$ consists of either digits or numeral words.
|
||||
|
||||
OrdDigits : Digits -> Ord ; -- 51st
|
||||
OrdDigits : Digits -> Ord ; -- 51st
|
||||
OrdNumeral : Numeral -> Ord ; -- fifty-first
|
||||
|
||||
-- Superlative forms of adjectives behave syntactically in the same way as
|
||||
@@ -86,9 +85,9 @@ abstract Noun = Cat ** {
|
||||
|
||||
-- Ordinals and cardinals can be used as noun phrases alone.
|
||||
|
||||
OrdSuperlNP : A -> NP ; -- the largest
|
||||
OrdNumeralNP : Numeral -> NP ; -- the fiftieth
|
||||
NumNumeralNP : Numeral -> NP ; -- fifty
|
||||
OrdSuperlNP : Num -> A -> NP ; -- the five best
|
||||
OrdNumeralNP : Numeral -> NP ; -- the fiftieth
|
||||
NumNumeralNP : Numeral -> NP ; -- fifty
|
||||
|
||||
-- Definite and indefinite constructions are sometimes realized as
|
||||
-- neatly distinct words (Spanish "un, unos ; el, los") but also without
|
||||
|
||||
@@ -39,6 +39,18 @@ concrete BackwardEng of Backward = CatEng ** open ResEng in {
|
||||
NumInt n = {s = n.s ; n = Pl} ;
|
||||
OrdInt n = {s = n.s ++ "th"} ; --- DEPRECATED
|
||||
|
||||
DetSg quant ord = {
|
||||
s = quant.s ! Sg ++ ord.s ;
|
||||
n = Sg
|
||||
} ;
|
||||
|
||||
DetPl quant num ord = {
|
||||
s = quant.s ! num.n ++ num.s ++ ord.s ;
|
||||
n = num.n
|
||||
} ;
|
||||
|
||||
NoNum = {s = []; n = Pl } ;
|
||||
|
||||
-- from Structural 19/4/2008
|
||||
|
||||
that_NP = regNP "that" Sg ;
|
||||
|
||||
@@ -26,22 +26,12 @@ concrete NounEng of Noun = CatEng ** open ResEng, Prelude in {
|
||||
a = np.a
|
||||
} ;
|
||||
|
||||
DetSg quant ord = {
|
||||
s = quant.s ! Sg ++ ord.s ;
|
||||
n = Sg
|
||||
} ;
|
||||
|
||||
DetPl quant num ord = {
|
||||
DetArt quant num ord = {
|
||||
s = quant.s ! num.n ++ num.s ++ ord.s ;
|
||||
n = num.n
|
||||
} ;
|
||||
|
||||
DetSgNP quant ord = {
|
||||
s = \\c => quant.s ! Sg ++ ord.s ; ---- case
|
||||
a = agrP3 Sg
|
||||
} ;
|
||||
|
||||
DetPlNP quant num ord = {
|
||||
DetQuant quant num ord = {
|
||||
s = \\c => quant.s ! num.n ++ num.s ++ ord.s ; ---- case
|
||||
a = agrP3 num.n
|
||||
} ;
|
||||
@@ -50,7 +40,8 @@ concrete NounEng of Noun = CatEng ** open ResEng, Prelude in {
|
||||
|
||||
PossPron p = {s = \\_ => p.s ! Gen} ;
|
||||
|
||||
NoNum = {s = []; n = Pl } ;
|
||||
NumSg = {s = []; n = Sg} ;
|
||||
NumPl = {s = []; n = Pl} ;
|
||||
NoOrd = {s = []} ;
|
||||
|
||||
NumDigits n = {s = n.s ! NCard ; n = n.n} ;
|
||||
@@ -81,9 +72,9 @@ concrete NounEng of Noun = CatEng ** open ResEng, Prelude in {
|
||||
a = agrP3 Sg
|
||||
} ;
|
||||
|
||||
OrdSuperlNP a = {
|
||||
s = \\c => "the" ++ a.s ! AAdj Superl ; ---- case
|
||||
a = agrP3 Sg
|
||||
OrdSuperlNP n a = {
|
||||
s = \\c => "the" ++ n.s ++ a.s ! AAdj Superl ; ---- case
|
||||
a = agrP3 n.n
|
||||
} ;
|
||||
|
||||
DefArt = {s = \\_ => artDef} ;
|
||||
|
||||
Reference in New Issue
Block a user