Elementary ranking conditions #
OT's algebraic ranking-inference layer ([Pri02]; [Rig09a]). An
ERC value is a sign, so the alphabet is mathlib's SignType — W (+1,
winner-preferring), L (-1, loser-preferring), e (0, neutral) — which buys
ercOfProfiles as a coordinatewise SignType.sign, the antithetical ERC as pointwise
negation, per-coordinate entailment as SignType's own order L ≤ e ≤ W, and the
decidability instances for free.
A ranking satisfies an ERC iff its sign vector, read in the ranking's priority order,
is lex-nonnegative — equivalently (ERC.satisfiedBy_iff_dominance), every
L-constraint is outranked by some W-constraint ([Pri02] §0 (3)/(4)).
Main declarations #
ERCVal,ERC n— the sign alphabet and sign vectorsFin n → ERCVal.ERC.SatisfiedBy,ERCSet.Consistent,ERCSet.Entails— the satisfaction/consistency/entailment algebra;ERCSet.linearExtensionsthe satisfying rankings as aFinset.ercOfProfiles,tableauERC— ERCs from violation profiles and winner–loser pairs;satisfiedBy_ercOfProfiles_iff_lebridges to the Core lex order.simpleERC— a single-W/single-LERC, one Hasse edgei ≫ j([MR16]).
Winner-preferring value (+1).
Equations
- OptimalityTheory.ERCVal.W = SignType.pos
Instances For
Loser-preferring value (-1).
Equations
- OptimalityTheory.ERCVal.L = SignType.neg
Instances For
Neutral / indifferent value (0).
Equations
- OptimalityTheory.ERCVal.e = SignType.zero
Instances For
Elementary ranking conditions #
An elementary ranking condition over n constraints: a sign vector
Fin n → ERCVal ([Pri02] §0).
Equations
- OptimalityTheory.ERC n = (Fin n → OptimalityTheory.ERCVal)
Instances For
An ERC is trivial if it has no L-constraint, so every ranking satisfies it.
Equations
- α.IsTrivial = ∀ (k : Fin n), α k ≠ OptimalityTheory.ERCVal.L
Instances For
Equations
- α.instDecidableIsTrivial = Fintype.decidableForallFintype
An ERC is contradictory if it has an L-constraint but no
W-constraint, so no ranking satisfies it — Prince's class 𝓛⁺.
Equations
- α.IsContradictory = ((∀ (k : Fin n), α k ≠ OptimalityTheory.ERCVal.W) ∧ ∃ (k : Fin n), α k = OptimalityTheory.ERCVal.L)
Instances For
A simple ERC has exactly one W and one L.
Equations
- α.IsSimple = ((∃! w : Fin n, α w = OptimalityTheory.ERCVal.W) ∧ ∃! l : Fin n, α l = OptimalityTheory.ERCVal.L)
Instances For
ERC satisfaction #
A ranking r satisfies ERC α iff its sign vector, read in r's priority
order, is lexicographically nonnegative.
Equations
- OptimalityTheory.ERC.SatisfiedBy r α = (toLex 0 ≤ r • toLex α)
Instances For
Prince's leading-entry characterization ([Pri02] §0): a ranking
satisfies an ERC iff the r-earliest non-neutral constraint, when one exists, is
winner-preferring.
[Pri02] §0 (3): satisfaction unfolds to the ∀∃ dominance form — every
loser-preferring constraint is dominated by some winner-preferring one.
Position-space dominance (lex_nonneg_iff_dominance), coordinates changed along r.
Equations
- OptimalityTheory.ERC.instDecidableSatisfiedBy r α = decidable_of_iff (∀ (c : Fin n), α c = OptimalityTheory.ERCVal.L → ∃ (w : Fin n), α w = OptimalityTheory.ERCVal.W ∧ r.Dominates w c) ⋯
[Pri02] §0 (4): the ∀∃ form is equivalent to the ∃∀ form — some
W-constraint dominates every L-constraint — because the ranking is total:
the leading constraint is the single witness.
A trivial ERC is satisfied by every ranking.
Sets of ERCs #
A set of ERCs, carrying the satisfaction/consistency/entailment algebra of
OT grammars. Represented as a List so that decide can search the finitely
many rankings; entailment is invariant under reordering and duplication.
Equations
- OptimalityTheory.ERCSet n = List (OptimalityTheory.ERC n)
Instances For
A ranking satisfies an ERC set iff it satisfies every member.
Equations
- OptimalityTheory.ERCSet.SatisfiedBy r E = ∀ α ∈ E, OptimalityTheory.ERC.SatisfiedBy r α
Instances For
Equations
- OptimalityTheory.ERCSet.instDecidableSatisfiedBy r E = List.decidableBAll (OptimalityTheory.ERC.SatisfiedBy r) E
An ERC set is consistent iff some ranking satisfies all its members.
Equations
- E.Consistent = ∃ (r : OptimalityTheory.Ranking n), OptimalityTheory.ERCSet.SatisfiedBy r E
Instances For
Equations
- E.instDecidableConsistent = Fintype.decidableExistsFintype
A singleton is consistent iff some ranking satisfies its ERC.
The rankings consistent with an ERC set, as a Finset — its linear extensions
([MR16]).
Equations
- E.linearExtensions = {r : OptimalityTheory.Ranking n | OptimalityTheory.ERCSet.SatisfiedBy r E}
Instances For
Entailment #
E entails E' iff every ranking satisfying E also satisfies E'.
Equations
- E.Entails E' = ∀ (r : OptimalityTheory.Ranking n), OptimalityTheory.ERCSet.SatisfiedBy r E → OptimalityTheory.ERCSet.SatisfiedBy r E'
Instances For
Adding an ERC strengthens the set: α :: E entails E.
Pointwise characterization: E entails E' if it entails each member
singleton.
An ERC set is simple if every member is a simple ERC — a set of Hasse edges ([MR16]).
Equations
- E.IsSimpleSet = ∀ α ∈ E, α.IsSimple
Instances For
Simple ERCs #
The simple ERC asserting constraint i must dominate constraint j; all
other constraints are e.
Equations
- OptimalityTheory.simpleERC i j k = if k = i then OptimalityTheory.ERCVal.W else if k = j then OptimalityTheory.ERCVal.L else OptimalityTheory.ERCVal.e
Instances For
A simple ERC i ≫ j (with i ≠ j) is satisfied by r iff i dominates
j under r.
A simple ERC i ≫ j (with i ≠ j) is consistent.
simpleERC i j (with i ≠ j) is a simple ERC.
Bridges: profiles, tableaux, and the Core lex order #
The ERC of a winner/loser violation-profile pair: the coordinatewise sign of the violation difference ([Pri02] §0; [Rig09a] Def. 3).
Equations
- OptimalityTheory.ercOfProfiles winner loser k = SignType.sign (↑(loser k) - ↑(winner k))
Instances For
ercOfProfiles is W exactly where the winner has strictly fewer
violations.
ercOfProfiles is L exactly where the winner has strictly more
violations.
ercOfProfiles is e exactly where violations are equal.
The antithetical ERC ([Pri02] §2): swapping winner and loser negates it.
Construct an ERC from a list of ERCVal, with a length proof discharged by
decide for literals: def myERC : ERC 4 := ercOfList [.W, .e, .L, .e].
Equations
- OptimalityTheory.ercOfList vs h i = vs[↑i]
Instances For
Lex-nonnegativity of the sign vector is lex-comparison of the profiles: the sign of the first difference decides both.
ERC satisfaction is lexicographic domination: r satisfies the ERC of a
winner/loser pair iff the winner's profile, read in r's priority order, is lex-≤
the loser's ([Pri02]). Precomposition with the ranking is absorbed by
instantiating lex_nonneg_ercOfProfiles_iff at the ranked readings r • w, r • l.
The ERC of a winner-loser pair (w, l) in tableau t: the ranking requirements
for w to beat l.
Equations
- OptimalityTheory.tableauERC t w l = OptimalityTheory.ercOfProfiles (t.profile w) (t.profile l)
Instances For
Tableau form of the bridge: the winner-loser ERC is satisfied by r iff r
ranks the winner at-or-above the loser under the tableau's lex evaluation.
At the identity ranking, ERC satisfaction is exactly the tableau's own lex
comparison — connecting ERC inference to LexMinProblem.
A candidate is the tableau's optimum iff, under the identity ranking, its ERC against every competitor is satisfied — ERC consistency is optimality.
The Sₙ action on a fixed CON is the ERC theory: w is optimal in
Tableau.ofPerm con r iff every winner–loser ERC of the identity-ranked tableau is
satisfied by r — factorial typology and ERC consistency are two readouts of one
symmetric-group action.