HPSG categories: grounding in Universal Dependencies and compatibility #
The HPSG syntactic categories are the cat sub-hierarchy of the RSRL construct signature
(Syntax/HPSG/Construction): cat > {verbal, nonverbal}, verbal > {verb, comp},
nonverbal > {nominal, adj}, nominal > {noun, prep}, with a genuine subsumption order. Empirical
data is tagged with Universal Dependencies POS tags (UD.UPOS); udToCat is the grounding bridge,
mapping each UD tag to its HPSG cat sort so UD-tagged data enters the category hierarchy by conversion
(the project's Layered-Grounding discipline) rather than UD.UPOS being used as the category type.
udToCat is where the nominal conflation becomes principled: NOUN/PRON/PROPN all map to
noun, so categoriesMatch treats them alike via the cat hierarchy's ≤ (noun ≤ nominal, etc.)
without any hand-coded isNom test. Tags with no HPSG cat correspondent (ADV, DET, NUM, …) map to
none, and categoriesMatch falls back to UD-tag equality for them.
The HPSG cat sort a Universal Dependencies POS tag grounds to ([Sag10]'s category hierarchy).
NOUN/PRON/PROPN → noun (NP), ADP → prep (PP), VERB/AUX → verb, ADJ → adj,
SCONJ → comp (complementizer); tags with no cat correspondent are none.
Equations
- HPSG.udToCat UD.UPOS.NOUN = some HPSG.Construction.Srt.noun
- HPSG.udToCat UD.UPOS.PRON = some HPSG.Construction.Srt.noun
- HPSG.udToCat UD.UPOS.PROPN = some HPSG.Construction.Srt.noun
- HPSG.udToCat UD.UPOS.ADP = some HPSG.Construction.Srt.prep
- HPSG.udToCat UD.UPOS.VERB = some HPSG.Construction.Srt.verb
- HPSG.udToCat UD.UPOS.AUX = some HPSG.Construction.Srt.verb
- HPSG.udToCat UD.UPOS.ADJ = some HPSG.Construction.Srt.adj
- HPSG.udToCat UD.UPOS.SCONJ = some HPSG.Construction.Srt.comp
- HPSG.udToCat x✝ = none
Instances For
Are two categories compatible? Grounded in the HPSG cat hierarchy: each UD tag maps to its cat sort
(udToCat) and the two must be comparable in the subsumption order — so all nominal categories
(NOUN/PRON/PROPN → noun) match each other without a hand-coded test, and a sort compares with its
supersorts. For tags with no cat correspondent it falls back to UD-tag equality.
Equations
- HPSG.categoriesMatch c1 c2 = match HPSG.udToCat c1, HPSG.udToCat c2 with | some a, some b => decide (a ≤ b) || decide (b ≤ a) | x, x_1 => c1 == c2