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