Documentation

Linglib.Typology.Gender

Typology.Gender #

@cite{corbett-1991} @cite{corbett-2013} @cite{dryer-haspelmath-2013} @cite{dixon-1972} @cite{wals-2013}

Per-language typological substrate for gender / noun class systems. Covers three WALS chapters by @cite{corbett-2013}:

Mirrors the Linglib/Typology/{Possession,Negation,Comparison,Coordination,Modality} substrate-extension pattern. Fragment-importable.

What lives here #

Theory-laden caveats #

Out of scope #

The 21-language sample and Corbett's typological generalisations live in Phenomena/Gender/Studies/Corbett1991.lean. @cite{kramer-2020}'s feature-tier analysis lives in Phenomena/Gender/Studies/Kramer2020.lean.

Number of gender / noun class distinctions in a language (WALS Ch 30).

Instances For
    @[implicit_reducible]
    Equations
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      @[implicit_reducible]
      instance Typology.Gender.instDecidableContains (gc : GenderCount) (n : ) :
      Decidable (gc.Contains n)
      Equations
      • One or more equations did not get rendered due to their size.

      Whether a gender system is based on biological sex (WALS Ch 31).

      Instances For
        @[implicit_reducible]
        Equations
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For

          How nouns are assigned to their gender categories (WALS Ch 32).

          Instances For
            @[implicit_reducible]
            Equations
            Equations
            • One or more equations did not get rendered due to their size.
            Instances For

              Semantic dimensions that can underlie gender / noun class assignment.

              Instances For
                @[implicit_reducible]
                Equations
                Equations
                • One or more equations did not get rendered due to their size.
                Instances For

                  A language's gender profile combining WALS Chs 30/31/32 + extra fields (raw count, agreement targets per @cite{corbett-1991}'s Agreement Hierarchy, and semantic-basis dimensions).

                  • name : String

                    Language name.

                  • iso639 : String

                    ISO 639-3 code.

                  • genderCount : GenderCount

                    Ch 30: number of genders (WALS bin).

                  • rawGenderCount :

                    Actual number of gender / noun class categories.

                  • basis : GenderBasis

                    Ch 31: sex-based or non-sex-based.

                  • assignment : AssignmentSystem

                    Ch 32: assignment system.

                  • agreementTargets : List Core.AgreementTarget

                    Where gender agreement surfaces (@cite{corbett-1991} Agreement Hierarchy: attributive > predicate > relative > pronoun > verb).

                  • semanticBases : List SemanticBasis

                    Semantic dimensions organising the system.

                  • attestedSurfaceGenders : List Features.SurfaceGender

                    Bridge to the lexical-layer Features.SurfaceGender taxonomy: the surface gender values attested in this language. Defaults to [] for noun-class systems (Bantu, Mixtec, Dyirbal) whose per-class agreement doesn't map onto the Indo-European masculine/feminine/neuter/common scheme; per-Fragment files for those languages retain a fine-grained Gender type and provide their own Features.SurfaceGender bridge via a .primary function.

                  Instances For
                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      def Typology.Gender.instDecidableEqGenderProfile.decEq (x✝ x✝¹ : GenderProfile) :
                      Decidable (x✝ = x✝¹)
                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For

                        Mathlib-style Prop-typed predicates with Decidable instances and @[simp] _iff lemmas. Filter sites that need Bool should call decide at the boundary.

                        Internal consistency across WALS chapters: no-gender in Ch 30 aligns with noGender in Ch 31, Ch 32, and an empty agreement-target list.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For

                          "Noun class" system: 5+ categories per @cite{corbett-1991}.

                          Equations
                          Instances For
                            @[implicit_reducible]
                            Equations

                            Whether the language has any gender agreement.

                            Equations
                            Instances For
                              @[implicit_reducible]
                              Equations

                              "Canonical" gender system in @cite{corbett-1991}'s sense: sex-based, 2 or 3 genders, semantic + formal assignment.

                              Equations
                              • One or more equations did not get rendered due to their size.
                              Instances For

                                Lowest agreement target in @cite{corbett-1991}'s hierarchy.

                                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.
                                  Instances For
                                    def Typology.Gender.GenderProfile.fromWALS (name iso : String) (rawGenderCount : ) (agreementTargets : List Core.AgreementTarget := []) (semanticBases : List SemanticBasis := []) (attestedSurfaceGenders : List Features.SurfaceGender := []) (genderCountFb : GenderCount := GenderCount.none) (basisFb : GenderBasis := GenderBasis.noGender) (assignmentFb : AssignmentSystem := AssignmentSystem.noGender) :

                                    Build a GenderProfile from an ISO 639-3 code via WALS lookups for Chs 30/31/32. The three required-field fallbacks (genderCountFb, basisFb, assignmentFb) fire only when WALS is silent for that ISO. The rawGenderCount, agreementTargets, semanticBases, and attestedSurfaceGenders fields are paper-stipulated per @cite{corbett-1991} — they are not derivable from any WALS chapter and must be passed explicitly.

                                    Equations
                                    • One or more equations did not get rendered due to their size.
                                    Instances For

                                      Earlier revisions of this file carried five aggregate-count theorems on the full WALS Ch 30/31/32 corpora (ch30_no_gender_modal, ch30_two_most_common, ch31_sex_based_dominant, ch32_mixed_slightly_more, ch32_no_purely_formal). These were the "aggregate-count theorems go stale" anti-pattern AND required native_decide for ~1000-element list reductions; deleted as part of the GenderProfile mathlib polish. The corpus distributions remain documentary in @cite{corbett-2013}'s WALS chapters.