Docs / Morphology / Morphotactics / AffixTemplate

Position-class templates

import Linglib.Morphology.Morphotactics.AffixTemplate · namespace Morphology

In templatic morphology the formatives of a word fill a flat string of positions. A formative's position can be determined by its formal category rather than by its function, and fillers of the same position cannot co-occur. These properties tend to hold of individual formatives rather than of the whole string, so a template may contain a position whose fillers stack, as the voice suffixes of the Turkish verb do.

An AffixTemplate lists the positions of a word's prefixes and of its suffixes and marks those that stack. It admits the strings over its positions, in their order, in which only stacking positions repeat. Each position may be skipped, so these strings are closed under dropping a filler and regular. Order and repetition are conditions on pairs, so they are also strictly 2-piecewise. A string of exponents, each tagged with its position, is licensed when its positions are admitted.

Implementation notes

A template can forbid a filler but not require one, the limit of strictly piecewise grammars, so a dependency between fillers is a further condition in the citing grammar. The template of prosodic morphology, a CV skeleton, is Autosegmental.Skeleton, matched in Morphology/Morphotactics/TemplateMatch.lean.

References

Declarations

A word's position-class template, over the positions Slot. Slots are tags, not exponents: the exponents of each position live in the citing grammar.

structure AffixTemplateL40–48
(Slot : Type u_1) :
Type u_1
  • prefixSlots : List Slot

    The prefix positions, word-edge inward.

  • suffixSlots : List Slot

    The suffix positions, stem-outward.

  • stacking : Finset Slot

    The positions whose fillers stack, any number of them in one word.

Used by AffixTemplate.slots, AffixTemplate.language, AffixTemplate.instDecidablePredListMemLanguageLanguage, AffixTemplate.Licensed, AffixTemplate.instDecidablePredListSigmaLicensed, AffixTemplate.isSublistClosed_language, AffixTemplate.isRegular_language, AffixTemplate.isStrictlyPiecewise_language, AffixTemplate.mem_language_iff_sublist

Used in Fragments/Dargwa/Tanti/Verbs, Fragments/Finnish/Morphotactics, Fragments/Japanese/Morph, Fragments/Mayan/Agreement, Fragments/Mayan/Chol/Agreement and 12 more

The strings of positions the template admits: those over its positions, in their order, in which only stacking positions repeat.

def AffixTemplate.languageL59–62
{Slot : Type u_1} (t : AffixTemplate Slot) [DecidableEq Slot] :
Language Slot
  • t.language = {v : List Slot | (List.map (fun (a : Slot) => List.idxOf a t.slots) v).SortedLE ∧ ∀ a ∈ v, a ∈ t.slots ∧ (a ∈ t.stacking ∨ List.count a v ≤ 1)}

Built from ,

Used by AffixTemplate.instDecidablePredListMemLanguageLanguage, AffixTemplate.Licensed, AffixTemplate.isSublistClosed_language, AffixTemplate.isRegular_language, AffixTemplate.isStrictlyPiecewise_language, AffixTemplate.mem_language_iff_sublist

Used in Hyman2003

L64
L66–68
L70–71
L98–114