1. updated types in ../abstract/*'.gf to replace NP,Det,Quant,Predep,Prep,DAP by

their primed versions
2. implemented all linearizations to use the primed categories

This allows linearization with prep+defart's, but parsing gives metavariables
in parses (DetQuant ? NumSg) and (DetQuantOrd ? NumSg ord) for prep+defart.

Todo: make Quant.s and NP. depend on PronType = isCat | isPron | isPronDefArt.

Without SlashV2VNP', compiles in 84 sec and gives 3,6M VerbGer.gfo, 2,3M SentenceGer.gfo.

Uses |Prep'|=12 instead of |Prep|=18, |NP'|=72 instead of |NP|=54
This commit is contained in:
Hans Leiss
2022-07-22 11:49:19 +02:00
parent 8eee3df739
commit ec41af609d
20 changed files with 283 additions and 257 deletions
+20 -23
View File
@@ -12,28 +12,27 @@ abstract Noun' = Cat' ** {
--
--
fun
DetCN : Det -> CN -> NP ; -- the man
DetCN' : Det' -> CN -> NP' ; -- the man
UsePN : PN -> NP ; -- John
UsePron : Pron -> NP ; -- he
DetCN : Det' -> CN -> NP' ; -- the man
UsePN : PN -> NP' ; -- John
UsePron : Pron -> NP' ; -- he
-- Pronouns are defined in the module [``Structural`` Structural.html].
-- A noun phrase already formed can be modified by a $Predet$erminer.
PredetNP : Predet -> NP -> NP ; -- only the man
PredetNP : Predet' -> NP' -> NP' ; -- only the man
-- A noun phrase can also be postmodified by the past participle of a
-- verb, by an adverb, or by a relative clause
PPartNP : NP -> V2 -> NP ; -- the man seen
AdvNP : NP -> Adv -> NP ; -- Paris today
ExtAdvNP: NP -> Adv -> NP ; -- boys, such as ..
RelNP : NP -> RS -> NP ; -- Paris, which is here
PPartNP : NP' -> V2 -> NP' ; -- the man seen
AdvNP : NP' -> Adv -> NP' ; -- Paris today
ExtAdvNP: NP' -> Adv -> NP' ; -- boys, such as ..
RelNP : NP' -> RS -> NP' ; -- Paris, which is here
-- Determiners can form noun phrases directly.
DetNP : Det -> NP ; -- these five
DetNP : Det' -> NP' ; -- these five
--2 Determiners
@@ -41,9 +40,8 @@ abstract Noun' = Cat' ** {
-- The determiner has a fine-grained structure, in which a 'nucleus'
-- quantifier and an optional numeral can be discerned.
DetQuant : Quant -> Num -> Det ; -- these five
DetQuant' : Quant' -> Num -> Det'; -- these five
DetQuantOrd : Quant -> Num -> Ord -> Det ; -- these five best
DetQuant : Quant' -> Num -> Det' ; -- these five
DetQuantOrd : Quant' -> Num -> Ord -> Det' ; -- these five best
-- Whether the resulting determiner is singular or plural depends on the
-- cardinal.
@@ -84,21 +82,20 @@ abstract Noun' = Cat' ** {
-- neatly distinct words (Spanish "un, unos ; el, los") but also without
-- any particular word (Finnish; Swedish definites).
IndefArt : Quant ; -- a/an
DefArt : Quant ; -- the
DefArt' : Quant'; -- the
DefArt : Quant'; -- the
IndefArt : Quant' ; -- a/an
-- Nouns can be used without an article as mass nouns. The resource does
-- not distinguish mass nouns from other common nouns, which can result
-- in semantically odd expressions.
MassNP : CN -> NP ; -- (beer)
MassNP : CN -> NP' ; -- (beer)
-- Pronouns have possessive forms. Genitives of other kinds
-- of noun phrases are not given here, since they are not possible
-- in e.g. Romance languages. They can be found in $Extra$ modules.
PossPron : Pron -> Quant ; -- my (house)
PossPron : Pron -> Quant' ; -- my (house)
-- Other determiners are defined in [Structural Structural.html].
@@ -140,14 +137,14 @@ abstract Noun' = Cat' ** {
-- This is certainly overgenerating.
ApposCN : CN -> NP -> CN ; -- city Paris (, numbers x and y)
ApposCN : CN -> NP' -> CN ; -- city Paris (, numbers x and y)
--2 Possessive and partitive constructs
-- (New 13/3/2013 AR; Structural.possess_Prep and part_Prep should be deprecated in favour of these.)
PossNP : CN -> NP -> CN ; -- house of Paris, house of mine
PartNP : CN -> NP -> CN ; -- glass of wine
PossNP : CN -> NP' -> CN ; -- house of Paris, house of mine
PartNP : CN -> NP' -> CN ; -- glass of wine
-- This is different from the partitive, as shown by many languages.
@@ -156,6 +153,6 @@ abstract Noun' = Cat' ** {
--3 Conjoinable determiners and ones with adjectives
AdjDAP : DAP -> AP -> DAP ; -- the large (one)
DetDAP : Det -> DAP ; -- this (or that)
DetDAP : Det' -> DAP' ; -- this (or that)
}