Grimm (2018) — Grammatical Number and the Scale of Individuation #
Formalizes the core framework of:
Grimm, S. (2018). Grammatical number and the scale of individuation. Language 94(3). 527–574.
Core contributions #
The scale of individuation (his (17)/(19)): individuation types — equivalence classes of nominal descriptions by individuation properties — are linearly ordered: substance < granular aggregate < collective aggregate < individual.
The order-preservation thesis (his §3.4): a language's grammatical countability classes also partition nominal descriptions, and the classification map from individuation types to countability classes is order-preserving. Consequently every countability class is a contiguous segment of the scale — formally, the fibers of a monotone classification are
Set.OrdConnected(the same mathlib predicate that states [Har14a]'s convexity condition inSyntax/Minimalist/Phi/Recursion.lean). His hypothetical discontinuous system (Table 21) is refuted bydecide.Countability beyond the binary (his §2): Welsh, Turkana, Maltese (tripartite: non-countable, collective/singulative, singular/plural) and Dagaare (four classes, including an inverse-marked one) against English's binary cut and Yudja's near-absent cut.
The markedness/coding prediction (his §4.4, after Jakobson and Greenberg): which value of a class's contrast is zero-coded tracks the class's position on the scale — single-reference default for highly individuated classes, multiple-reference default for aggregate classes (the singulative), no contrast at the bottom. Dagaare's inverse number marking is this prediction at work, not a
Numbervalue — confirming the canonical inventory's exclusion ofUD.Number.Inv.Animacy refinement (his §4.2): collective/singulative classes ascend the animacy hierarchy (inverse of Smith-Stark plural marking); the per-language collective regions nest (Maltese ⊆ Welsh ⊆ Turkana).
Connections #
- Countability classes are not
Numbervalues: Welsh collectives take plural agreement while Maltese collectives take singular ([Gri18] §2.1, §2.3), so the unit/aggregate contrast cross-cuts the agreement values — vindicating the value space ofFeatures/Number/Basic.lean. - Each class carries a
Number.System(WelshClass.systemetc.), so Grimm's classes plug into the implicational universals; this generalizes the two-classCountMassNumberInteractionofStudies/Corbett2000.lean. - English's binary partition is
Features.MassCount(english_matches_massCount) — the binary feature becomes the 2-cell instance of the scale, not a primitive. countable : Boolas a lexical field is refuted twice over: structurally by [Bor05] (seeStudies/Borer2005.lean) and scalarly here.
The scale of individuation #
IndividuationType — the scale substance < granular aggregate <
collective aggregate < individual ([Gri18] (17)/(19)) — lives in
Features/Individuation.lean, shared with [SF21]'s
count/mass lexicalization options (Studies/SuttonFilip2021.lean).
The order-preservation thesis #
[Gri18] §3.4: nominal descriptions are partitioned both into
individuation types (Π_I, ordered by the scale) and into a language's
grammatical countability classes (Π_G, ordered); the thesis is that the
classification map is order-preserving (Monotone). The structural
consequence — each grammatical class is a contiguous segment of the scale,
"no category spans two disconnected segments" — is the Set.OrdConnected-ness
of the classification's fibers.
A monotone classification has order-convex fibers: each countability
class picks out a contiguous segment of the scale. One composition of
mathlib primitives (Set.ordConnected_singleton.preimage_mono); the
predicate is the same Set.OrdConnected that states [Har14a]'s
convexity condition (ordConnectedHull_eq_self).
Per-language countability systems ([Gri18] §2, Tables 19–20) #
Each language's classes are ordered by their scale position; the
classification maps are the language rows of Table 20 (Dagaare, Welsh,
English) and the §2 descriptions (Turkana §2.2, Maltese §2.3, Yudja §4.1).
Monotonicity is checked by decide; convexity of every class follows from
ordConnected_fiber_of_monotone.
Welsh ([Gri18] §2.1, Table 2): tripartite — non-countable (llefrith 'milk'), collective/unit (adar/ader-yn 'birds/bird'), singular/plural (cadair/cadair-iau 'chair/chairs').
- nonCountable : WelshClass
- collectiveUnit : WelshClass
- singularPlural : WelshClass
Instances For
Equations
- Grimm2018.instDecidableEqWelshClass x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Grimm2018.instReprWelshClass = { reprPrec := Grimm2018.instReprWelshClass.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Grimm2018.instFintypeWelshClass = { elems := { val := ↑Grimm2018.WelshClass.enumList, nodup := Grimm2018.WelshClass.enumList_nodup }, complete := Grimm2018.instFintypeWelshClass._proof_1 }
Equations
Instances For
Equations
Welsh's classification of the scale ([Gri18] Table 20 and fn. 20): substances are non-countable, granular and collective aggregates fall in the collective/unit class, individuals in singular/plural.
Equations
- Grimm2018.welshClassify IndividuationType.substance = Grimm2018.WelshClass.nonCountable
- Grimm2018.welshClassify IndividuationType.granularAggregate = Grimm2018.WelshClass.collectiveUnit
- Grimm2018.welshClassify IndividuationType.collectiveAggregate = Grimm2018.WelshClass.collectiveUnit
- Grimm2018.welshClassify IndividuationType.individualEntity = Grimm2018.WelshClass.singularPlural
Instances For
Welsh respects the scale ([Gri18] fn. 20 works this case).
Turkana ([Gri18] §2.2, Tables 5–7) patterns with Welsh: same tripartite shape, with the collective/singulative class reaching types of people (the animacy difference is §4.2 material, not a different class structure on the four-type scale).
Equations
Instances For
Maltese ([Gri18] §2.3, Tables 8–11): same tripartite shape; differs in agreement (collective is formally singular) and in admitting foodstuffs/materials with conventional-portion singulatives.
Equations
Instances For
Dagaare ([Gri18] §2.4, Table 20): four classes — non-countable, optional-singulative non-countable (-ruu, granular aggregates), plural-default countable (-ri codes the singular: inverse marking), and singular-default countable (-ri codes the plural).
- nonCountable : DagaareClass
- singulativeNonCount : DagaareClass
- pluralDefault : DagaareClass
- singularDefault : DagaareClass
Instances For
Equations
- Grimm2018.instDecidableEqDagaareClass x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Grimm2018.instReprDagaareClass = { reprPrec := Grimm2018.instReprDagaareClass.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
Dagaare's classification ([Gri18] Table 20): each individuation type gets its own grammatical class — the partition is exactly as fine-grained as the scale.
Equations
- Grimm2018.dagaareClassify IndividuationType.substance = Grimm2018.DagaareClass.nonCountable
- Grimm2018.dagaareClassify IndividuationType.granularAggregate = Grimm2018.DagaareClass.singulativeNonCount
- Grimm2018.dagaareClassify IndividuationType.collectiveAggregate = Grimm2018.DagaareClass.pluralDefault
- Grimm2018.dagaareClassify IndividuationType.individualEntity = Grimm2018.DagaareClass.singularDefault
Instances For
English ([Gri18] Table 20): binary — non-countable covers substances and aggregates (foliage, rice), singular/plural covers individuals.
- nonCountable : EnglishClass
- singularPlural : EnglishClass
Instances For
Equations
- Grimm2018.instDecidableEqEnglishClass x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Grimm2018.instReprEnglishClass = { reprPrec := Grimm2018.instReprEnglishClass.repr }
Equations
- One or more equations did not get rendered due to their size.
Equations
Instances For
Equations
Yudja ([Gri18] §4.1, Table 24): the limiting case — only the most
highly individuated nouns (humans) manifest grammatical number (optional
-i); everything else is unspecified. Formally the same binary shape as
English with the cut moved to the top of the scale; we record it through
EnglishClass with its own classification.
Equations
Instances For
The impossible system ([Gri18] Table 21) #
A hypothetical language whose singular/plural class covers granular aggregates and individuals while a distinct collective/singulative class intervenes. The singular/plural fiber is discontinuous on the scale, so no order on the classes makes the classification monotone.
Table 21's "Bad System": granular aggregates and individuals share a class that excludes the intervening collective aggregates.
Equations
- Grimm2018.badClassify IndividuationType.substance = Grimm2018.WelshClass.nonCountable
- Grimm2018.badClassify IndividuationType.granularAggregate = Grimm2018.WelshClass.singularPlural
- Grimm2018.badClassify IndividuationType.collectiveAggregate = Grimm2018.WelshClass.collectiveUnit
- Grimm2018.badClassify IndividuationType.individualEntity = Grimm2018.WelshClass.singularPlural
Instances For
The Bad System's singular/plural class is not a contiguous segment of the scale.
Hence no partial order on the classes makes the Bad System
order-preserving ([Gri18] fn. 21): with the given class order it is
not monotone, and ordConnected_fiber_of_monotone rules out every
other order as well.
Coding and markedness ([Gri18] §3.4 Table 20, §4.4) #
Each class codes one value of its contrast overtly and leaves the other
zero. The prediction (after Jakobson, Greenberg via [Gri18] §4.4): the
default (zero-coded) designation tracks individuation — multiple-reference
default for aggregate classes, single-reference default for individual
classes. Dagaare's inverse number marking is the visible signature: the
same morpheme -ri codes plural on singular-default nouns and singular on
plural-default nouns. The inverse is a coding fact, not a number value —
UD.Number.Inv has no Number preimage by design
(Features/Number/Basic.lean).
The coding pattern of a countability class ([Gri18] Table 20): which value, if any, is overtly coded against a zero-coded default.
- noContrast : ClassCoding
No number contrast (Welsh llefrith 'milk').
- codedUnit : ClassCoding
Zero-coded aggregate, coded unit — the singulative (Welsh -yn, Turkana, Maltese -a, Dagaare -ruu).
- codedSingular : ClassCoding
Zero-coded plural, coded singular (Dagaare -ri on plural-default nouns: inverse marking).
- codedPlural : ClassCoding
Zero-coded singular, coded plural (English -s, Welsh -au, Dagaare -ri on singular-default nouns).
Instances For
Equations
- Grimm2018.instDecidableEqClassCoding x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Grimm2018.instReprClassCoding = { reprPrec := Grimm2018.instReprClassCoding.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Grimm2018.instFintypeClassCoding = { elems := { val := ↑Grimm2018.ClassCoding.enumList, nodup := Grimm2018.ClassCoding.enumList_nodup }, complete := Grimm2018.instFintypeClassCoding._proof_1 }
The default (zero-coded) designation of a class: nothing, multiple referents, or a single referent.
- none : DefaultReference
- multiple : DefaultReference
- single : DefaultReference
Instances For
Equations
- Grimm2018.instDecidableEqDefaultReference x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Grimm2018.instReprDefaultReference = { reprPrec := Grimm2018.instReprDefaultReference.repr }
Equations
- One or more equations did not get rendered due to their size.
Equations
Instances For
What a coding pattern leaves as the zero-coded default.
Equations
- Grimm2018.ClassCoding.noContrast.default = Grimm2018.DefaultReference.none
- Grimm2018.ClassCoding.codedUnit.default = Grimm2018.DefaultReference.multiple
- Grimm2018.ClassCoding.codedSingular.default = Grimm2018.DefaultReference.multiple
- Grimm2018.ClassCoding.codedPlural.default = Grimm2018.DefaultReference.single
Instances For
Welsh coding by class (Table 20): 0 / 0+singulative -yn / 0+plural -au.
Equations
Instances For
Dagaare coding by class (Table 20): 0 / optional singulative -ruu / inverse singular -ri / plural -ri.
Equations
- Grimm2018.dagaareCoding Grimm2018.DagaareClass.nonCountable = Grimm2018.ClassCoding.noContrast
- Grimm2018.dagaareCoding Grimm2018.DagaareClass.singulativeNonCount = Grimm2018.ClassCoding.codedUnit
- Grimm2018.dagaareCoding Grimm2018.DagaareClass.pluralDefault = Grimm2018.ClassCoding.codedSingular
- Grimm2018.dagaareCoding Grimm2018.DagaareClass.singularDefault = Grimm2018.ClassCoding.codedPlural
Instances For
English coding by class: 0 / plural -s.
Equations
Instances For
The markedness prediction ([Gri18] §4.4): along the scale, the zero-coded default ascends none → multiple → single — the more individuated the class, the more likely single reference is the default. Verified per language.
Dagaare's two -ri classes differ only in coding direction — the formal content of "inverse number marking" ([Gri18] §2.4, Tables 15–17).
Classes carry number systems #
A countability class determines which Number values its nouns contrast —
the per-class generalization of Corbett2000.CountMassNumberInteraction
(count system vs. mass system). All class systems satisfy the implicational
universals.
The Number.System a Welsh countability class makes available. The
collective/unit class contrasts an aggregate with a unit; its
agreement values are singular and plural ([Gri18] (5)–(6):
collective adar takes plural agreement, singulative ader-yn
singular), so its system coincides with singular/plural — the class
difference lives in coding (welshCoding), not in the value
inventory.
Equations
- Grimm2018.WelshClass.nonCountable.system = { name := "Welsh non-countable", values := [] }
- Grimm2018.WelshClass.collectiveUnit.system = { name := "Welsh collective/unit", values := [Number.singular, Number.plural] }
- Grimm2018.WelshClass.singularPlural.system = { name := "Welsh singular/plural", values := [Number.singular, Number.plural] }
Instances For
Every Welsh class system satisfies the implicational universals.
English's binary cut is MassCount #
[Gri18]'s Table 20 row for English is the mass/count distinction:
the binary feature of Features/MassCount.lean is the 2-cell instance of a
scale partition, not an independent primitive. (Lexical countable : Bool
is refuted structurally by [Bor05] and scalarly here — the field's
honest replacement is an individuation type.)
The English classification and the mass/count feature are the same partition.
Animacy refinement ([Gri18] §4.2) #
Collective/singulative classes interact with animacy inversely to Smith-Stark plural marking: plural marking descends the animacy hierarchy from the top, while collective classes ascend it from below — Welsh's collective class stops at inanimates and small/mid animals, Turkana's reaches types of people, Maltese's is essentially limited to insects. Membership regions nest along animacy. We record the animacy reach of the collective class on the simplified hierarchy [Gri18] adopts (human > higher animate > lower animate > inanimate, after Haspelmath's higher/lower animate split) and verify the nesting; the full animacy-individuation product lattice (his Fig. 3) and the connectedness conjecture over it are left as the documented next step.
Simplified animacy tiers for the collective class ([Gri18] §4.2).
- inanimate : AnimacyTier
- lowerAnimate : AnimacyTier
- higherAnimate : AnimacyTier
- human : AnimacyTier
Instances For
Equations
- Grimm2018.instDecidableEqAnimacyTier x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Grimm2018.instReprAnimacyTier = { reprPrec := Grimm2018.instReprAnimacyTier.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Grimm2018.instFintypeAnimacyTier = { elems := { val := ↑Grimm2018.AnimacyTier.enumList, nodup := Grimm2018.AnimacyTier.enumList_nodup }, complete := Grimm2018.instFintypeAnimacyTier._proof_1 }
Equations
Instances For
Equations
Grimm's simplified tiers refine into the library's animacy substrate
(Features.Prominence.AnimacyRank, the scale Studies/Corbett2000.lean
states the Animacy Hierarchy constraints over).
Equations
- Grimm2018.AnimacyTier.inanimate.toRank = Features.Prominence.AnimacyRank.discreteInanimate
- Grimm2018.AnimacyTier.lowerAnimate.toRank = Features.Prominence.AnimacyRank.lowerAnimal
- Grimm2018.AnimacyTier.higherAnimate.toRank = Features.Prominence.AnimacyRank.higherAnimal
- Grimm2018.AnimacyTier.human.toRank = Features.Prominence.AnimacyRank.human
Instances For
The refinement preserves the animacy order (stated through
AnimacyRank.toNat, the substrate's ranking).
The three languages with tripartite systems, as anchors for the §4.2 animacy data.
- maltese : CollectiveLang
- welsh : CollectiveLang
- turkana : CollectiveLang
Instances For
Equations
- Grimm2018.instDecidableEqCollectiveLang x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Grimm2018.instReprCollectiveLang = { reprPrec := Grimm2018.instReprCollectiveLang.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
The animacy ceiling of each language's collective/singulative class ([Gri18] §4.2, Fig. 4): Maltese ≈ insects (lower animates), Welsh ≈ small and mid-sized animals (higher animates), Turkana ≈ types of people (humans). The region is upward-bounded: everything from inanimate aggregates up to the ceiling.
Equations
Instances For
The collective regions nest along animacy: Maltese ⊆ Welsh ⊆ Turkana ([Gri18] Fig. 4). Since each region is the down-set of its ceiling, nesting is ceiling order.