Domain rules #
This file defines domain rules, rules of exponence that apply exactly at the contexts of a finite domain, ordered by domain inclusion so that the rule with the narrower domain is the more specific. O'Donnell's finitely supported rules, whose domain is the finite set of forms a rule generates, and Stump's rules of paradigm linkage, whose domain is a set of content cells, are domain rules.
Main definitions #
Exponence.DomainRule: a finite domain with an exponent, with itsExponence.Ruleinstance and the specificity preorder of domain inclusion.
Main results #
DomainRule.le_iff,DomainRule.lt_iff: specificity is domain inclusion.DomainRule.factorsThrough_applies_iff: a rule's applicability factors through a map exactly when its domain is a union of the map's fibers.DomainRule.isChain_of_nested: rules whose overlapping domains are nested satisfy Pāṇinian Determinism, their Elsewhere winners forming a chain.DomainRule.exists_not_isContiguous_realizeMinimal: without Pāṇinian Determinism, minimal selection over upper-set domains realizes ABA even with distinct exponents on distinct rules.
References #
A domain rule carries an exponent and applies exactly at the contexts of a finite domain.
- dom : Finset Ctx
The domain is the finite set of contexts the rule applies at.
- exponent : E
The exponent is what the rule assigns.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Morphology.Exponence.DomainRule.instRule = { exponent := Morphology.Exponence.DomainRule.exponent, Applies := fun (r : Morphology.Exponence.DomainRule Ctx E) (c : Ctx) => c ∈ r.dom }
Domain rules are ordered by the specificity preorder, so that a rule whose domain is included in another's is the more specific.
A domain rule's applicability factors through A exactly when its domain is a union of
fibers of A.
Rules whose overlapping domains are nested satisfy Pāṇinian Determinism, their Elsewhere winners at any context forming a chain.
Equations
- r.instDecidableRelApplies c = Finset.decidableMem c r.dom
Equations
- r.instDecidableRelLt s = { decide := decide (r.dom ⊆ s.dom) && decide ¬s.dom ⊆ r.dom, reflects_decide := ⋯ }
Equations
- r.instDecidableFactorsThroughAppliesOfFintypeOfDecidableEq A = decidable_of_iff (∀ (c c' : Ctx), A c = A c' → (c ∈ r.dom ↔ c' ∈ r.dom)) ⋯
Without Pāṇinian Determinism, minimal selection realizes ABA. Over feature bundles ordered by
inclusion, a rule S for feature 1, a rule R for feature 0, and a rule T for features
1 and 2 each apply on an upper set, and listed in that order they realize R, S, R on the
chain {0} ⊆ {0, 1} ⊆ {0, 1, 2}: at {0, 1} the winners S and R are incomparable, and the
list order picks S.