Yakut (Sakha) case #
Sakha has eight cases: nominative, accusative, genitive, dative, ablative, instrumental,
comitative and partitive. The genitive is homophonous with the nominative except after a
third-person possessive suffix. [BV10]'s account of how the structural cases
are assigned is in Studies/BakerVinokurova2010.lean. The suffixes are [SM98]'s
(p. 421), who count no genitive and add a comparative in -TĀγAr; the comitative is -LĪn, after
kinship terms -nĀn.
Implementation notes #
- Suffixes are written in Stachowski and Menz's notation, a capital for a consonant or vowel that assimilates to the stem.
- The genitive is recorded with the nominative's empty exponent; its form after a possessive suffix is not recorded.
References #
@[instance_reducible]
Equations
- Yakut.instDecidableEqCase x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
@[instance_reducible]
Equations
- Yakut.instFintypeCase = { elems := { val := ↑Yakut.Case.enumList, nodup := Yakut.Case.enumList_nodup }, complete := Yakut.instFintypeCase._proof_1 }
@[instance_reducible]
Equations
- Yakut.instReprCase = { reprPrec := Yakut.instReprCase.repr }
Equations
- Yakut.instReprCase.repr Yakut.Case.nom prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Yakut.Case.nom")).group prec✝
- Yakut.instReprCase.repr Yakut.Case.acc prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Yakut.Case.acc")).group prec✝
- Yakut.instReprCase.repr Yakut.Case.gen prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Yakut.Case.gen")).group prec✝
- Yakut.instReprCase.repr Yakut.Case.dat prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Yakut.Case.dat")).group prec✝
- Yakut.instReprCase.repr Yakut.Case.abl prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Yakut.Case.abl")).group prec✝
- Yakut.instReprCase.repr Yakut.Case.inst prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Yakut.Case.inst")).group prec✝
- Yakut.instReprCase.repr Yakut.Case.com prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Yakut.Case.com")).group prec✝
- Yakut.instReprCase.repr Yakut.Case.part prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Yakut.Case.part")).group prec✝
Instances For
The comparative value a case is named for.
Equations
Instances For
The suffixes of a case.
Equations
- Yakut.Case.nom.exponents = []
- Yakut.Case.gen.exponents = []
- Yakut.Case.acc.exponents = [Morphology.Morph.suff "(n)I"]
- Yakut.Case.dat.exponents = [Morphology.Morph.suff "GA"]
- Yakut.Case.abl.exponents = [Morphology.Morph.suff "(t)tAn"]
- Yakut.Case.inst.exponents = [Morphology.Morph.suff "(I)nAn"]
- Yakut.Case.com.exponents = [Morphology.Morph.suff "LĪn", Morphology.Morph.suff "nĀn"]
- Yakut.Case.part.exponents = [Morphology.Morph.suff "TA"]