Shared Slavic Verbal-Prefix Parameters #
@cite{svenonius-2004} @cite{istratkova-2004} @cite{jablonska-2004}
Types and parameters shared across Slavic verbal-prefix fragments
(Russian, Polish, Bulgarian) following @cite{svenonius-2004}'s
lexical / superlexical distinction. Mirrors the
Fragments/Mayan/Params.lean pattern: shared cluster-level types
factored out so per-language fragments don't triplicate them.
Aspect is reused from Linglib.Core.UD (UD-tag canonical
Aspect.Imp / Aspect.Perf) rather than redefined per Slavic
fragment.
Main definitions #
Aspect— perfective vs imperfective (binary distinction sufficient for Slavic; the richer UD-tagset Aspect enum lives inLinglib.Core.UD).SuperlexicalSubtype— six aspectual subtypes (paper §3).PrefixClass—lexicalorsuperlexical _ADT.PrefixClass.IsSuperlexicalpredicate withDecidablePredinstance.
Cross-references #
Slavic grammatical aspect — the binary perfective / imperfective contrast.
Instances For
Equations
- Fragments.Slavic.instDecidableEqAspect x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Aspectual subtypes for the superlexical class (@cite{svenonius-2004} §3). The same six categories used across Russian, Polish, and Bulgarian VPC fragments.
- delimitative : SuperlexicalSubtype
- cumulative : SuperlexicalSubtype
- completive : SuperlexicalSubtype
- repetitive : SuperlexicalSubtype
- inceptive : SuperlexicalSubtype
- distributive : SuperlexicalSubtype
Instances For
Equations
- Fragments.Slavic.instDecidableEqSuperlexicalSubtype x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
@cite{svenonius-2004}'s lexical / superlexical split as a single
ADT — the superlexical case carries its subtype, eliminating the
need for an Option-typed companion field plus a consistency
lemma.
- lexical : PrefixClass
- superlexical (subtype : SuperlexicalSubtype) : PrefixClass
Instances For
Equations
- Fragments.Slavic.instDecidableEqPrefixClass.decEq Fragments.Slavic.PrefixClass.lexical Fragments.Slavic.PrefixClass.lexical = isTrue ⋯
- Fragments.Slavic.instDecidableEqPrefixClass.decEq Fragments.Slavic.PrefixClass.lexical (Fragments.Slavic.PrefixClass.superlexical subtype) = isFalse ⋯
- Fragments.Slavic.instDecidableEqPrefixClass.decEq (Fragments.Slavic.PrefixClass.superlexical subtype) Fragments.Slavic.PrefixClass.lexical = isFalse ⋯
- Fragments.Slavic.instDecidableEqPrefixClass.decEq (Fragments.Slavic.PrefixClass.superlexical a) (Fragments.Slavic.PrefixClass.superlexical b) = if h : a = b then h ▸ isTrue ⋯ else isFalse ⋯
Instances For
A PrefixClass is superlexical iff it is the superlexical _ case.
Equations
- Fragments.Slavic.PrefixClass.lexical.IsSuperlexical = False
- (Fragments.Slavic.PrefixClass.superlexical subtype).IsSuperlexical = True