ERC sets and antimatroids #
Merchant and Riggle show that consistent sets of elementary ranking conditions (ERCs) over n
constraints and antimatroids on Fin n are the same objects. A set of ERCs determines the
family of the top segments of the rankings that satisfy it, which is an antimatroid; an
antimatroid determines one ERC for each of its rooted circuits. The two maps are inverse to
each other, the second up to logical equivalence, and both preserve entailment.
Main definitions #
ERC.IsFeasible E S:Sis the set of the topkconstraints of a ranking satisfyingE.ERC.toAntimatroid E: the antimatroid of a consistent set of ERCs.ERC.ofAntimatroid A: the ERCs of the rooted circuits of an antimatroid.
Main statements #
ERC.toAntimatroid_ofAntimatroid: an antimatroid is the antimatroid of its ERCs.ERC.satisfiedBy_ofAntimatroid_toAntimatroid_iff: the ERCs of the antimatroid ofEare satisfied by exactly the rankings that satisfyE.ERC.isFeasible_iff_forall_singleton_of_simple: for ERCs that each rank one constraint over one other, the feasible sets are those feasible for each ERC alone, whileERC.exists_forall_isFeasible_singleton_not_isFeasibleshows this fails in general.
Implementation notes #
- Rankings satisfying a set of ERCs are built by sorting the constraints by a key into a
lexicographic product (
Ranking.exists_dominates_iff), and their top segments are read off withRanking.exists_take_eq. - The paper's remark after its definition of the feasible family, and its proof of union
closure, assume that a set feasible for each ERC alone is feasible for all of them;
ERC.exists_forall_isFeasible_singleton_not_isFeasiblerefutes this, so union closure is proved by merging rankings instead. - The paper states that the ERCs of the antimatroid of
EequalE, but proves that they are satisfied by the same rankings. Equality fails, since a chain's rooted circuits include its transitive edges, so the theorem states the equivalence. - Antimatroids carry a ground set, as mathlib's
Matroiddoes; the inverse laws assume it is all ofFin n, which is the paper's setting.
References #
The feasible sets of a set of ERCs #
A set of constraints is feasible for a set of ERCs when it is the set of the top k
constraints of a ranking that satisfies all of them.
Equations
- OptimalityTheory.ERC.IsFeasible E S = ∃ (r : OptimalityTheory.Ranking (Fin n) n), (∀ α ∈ E, OptimalityTheory.ERC.SatisfiedBy r α) ∧ ∃ (k : Fin (n + 1)), ↑(r.take k) = S
Instances For
The top segments of a ranking that satisfies a set of ERCs are feasible for it.
For finite sets the feasibility of a set is decided by the linear extensions.
A finite set of ERCs has a linear extension exactly when some ranking satisfies all of its ERCs.
Entailment between sets of ERCs carries over to their feasible sets.
A ranking satisfies a set of ERCs exactly when each of its top segments is feasible, since the ranking witnessing the segment through a loser puts a winner of the ERC in it.
A set is feasible for a single satisfiable ERC exactly when it holds a winner of the ERC whenever it holds a loser.
Union closure #
The feasible sets of a set of ERCs are closed under union. The union of the top segment
S of r₁ and the top segment T of r₂ is a top segment of the ranking that lists S in
the order of r₁, then the rest of T in the order of r₂, then the remaining constraints in
the order of r₁.
The antimatroid of a set of ERCs #
The antimatroid of a consistent set of ERCs, whose feasible sets are the top segments of the rankings that satisfy it.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The simple fragment #
When every ERC ranks a single winner over a single loser, or imposes nothing, the ERCs encode a partial order, and the feasible sets are its order ideals: the sets feasible for each ERC alone. In general that intersection is strictly larger.
For ERCs that each rank one constraint over one other, a set is feasible exactly when it is feasible for each of them. A set feasible for each is a top segment of the ranking that lists it first and the rest after, each in the order of a ranking satisfying all the ERCs, since each ERC's loser in the set has its unique winner in the set.
In general a set feasible for each of a consistent set of ERCs need not be feasible for all of them: two ERCs over four constraints, each with two winners, admit a set that holds a winner of each ERC whose loser it holds without being a top segment of a ranking satisfying both.
The ERCs of an antimatroid #
The ERC of a rooted circuit has the other members of its carrier as winners, its root as loser, and the constraints outside the carrier as neutral.
Equations
- OptimalityTheory.ERC.ofRootedCircuit rc k = if k ∈ rc.carrier ∧ k ≠ rc.root then OptimalityTheory.ERCVal.W else if k = rc.root then OptimalityTheory.ERCVal.L else OptimalityTheory.ERCVal.e
Instances For
The ERCs of an antimatroid, one for each of its rooted circuits.
Equations
Instances For
A rooted circuit with two members gives a simple ERC, ranking the other member over the root; larger carriers give ERCs with several winners.
Dietrich's characterization #
A ranking satisfies the ERCs of an antimatroid exactly when each of its top segments is feasible ([Die87]). Satisfaction gives each next segment by union closure, since a failure would yield a rooted circuit whose root no winner outranks; feasibility of the segment through a root puts one of its winners above it.
The inverse laws #
The feasible sets of an antimatroid are those of its ERCs. A feasible set extends to a chain of feasible sets, by removal below it and augmentation above it, which is the sequence of top segments of a ranking; that ranking satisfies the ERCs by Dietrich's characterization.
The ERCs of an antimatroid are consistent.
An antimatroid is the antimatroid of its ERCs.
The ERCs of the antimatroid of E are satisfied by exactly the rankings that satisfy
E.
Containment of antimatroids carries over to entailment of their ERCs.