Successive elimination Ex.11 — before: six voters, the agenda elects C¶
Generated from succ_elim_ex11_twin_before.yaml — do not edit by hand. Regenerate: python STARVote_LH_tabulation_engine/tools_adam/scripts/build_yaml_pages.py.
Method: Ranked Robin (RCV-RR / Copeland) · 1 seat · Expected winner: B
Scenario¶
The BEFORE half of Felsenthal's successive-elimination twin example. Source: Dan S. Felsenthal (2010), Appendix A4, Example 11, crediting H. Moulin, "Axioms of Cooperative Decision Making" (1988b: 54). Six voters, three candidates: 2×(A>B>C), 2×(B>C>A), 1×(C>A>B), 1×(C>B>A). Under the agenda A vs B, winner vs C: round 1 ties 3:3 and A survives on the earlier-letter convention; round 2 C beats A 4:2. C is elected. Now give the single C>B>A voter a TWIN — one more voter with the identical ranking. See succ_elim_ex11_twin_after.yaml: B becomes the Condorcet winner and the procedure elects B from any agenda. The original C>B>A voter ranked C first and B second, so the arrival of someone who votes exactly as they do cost them their first choice. That is the twin paradox, and it is stranger than the no-show paradox because the added ballot is a perfect copy of one already cast. Note the round-1 tie: with six voters A and B split 3:3, so C's victory here already leans on a convention. The paradox does not depend on it — B wins outright after the twin joins — but it is worth seeing that the "before" state was itself precarious. Labels are Felsenthal's own, capitalized, so the case can be read beside the paper's table. Successive elimination exists in neither the LH engine nor BetterVoting, so this file is tabulated as Ranked Robin, which elects B — already disagreeing with the agenda's C before any twin arrives. Run the procedure with tools_adam/pref_voting_tabulation_engine/successive_elimination_report.py --agenda A,B,C.
Ballots¶
Each row is one voter's ranking, most-preferred first (N: prefix = N identical ballots).
2:A>B>C
2:B>C>A
1:C>A>B
1:C>B>A
What the engine says¶
The count, step by step — the rounds and how the winner is reached:
--- Ranked Robin (RCV-RR / Copeland) Method (single winner) ---
Tabulating 6 ballots (ranked ballots).
Ballots:
2 × A > B > C
2 × B > C > A
1 × C > A > B
1 × C > B > A
Round-Robin — every pair, head-to-head (For – Against):
A ties B 3 – 3
C beats A 4 – 2
B beats C 4 – 2
--- Pairwise (Round-Robin) Matrix ---
Head-to-head / pairwise comparison — the Ranked Robin tally
Legend: For - Equal Support - Against (row vs column)
| A | B | C |
-----------------------------------------
A > | --- |3 - 0 - 3 |2 - 0 - 4 |
B > | 3 - 0 - 3 | --- |4 - 0 - 2 |
C > | 4 - 0 - 2 |2 - 0 - 4 | --- |
Win–loss record — Copeland score = wins + ½·ties (highest score wins; ties broken by total margin, then lot order):
# Candidate W–L–T Copeland Margin Beats
1 B 1–0–1 1.5 +2 C
2 C 1–1–0 1 +0 A
3 A 0–1–1 0.5 -2 —
Winner — Ranked Robin (RCV-RR): B
unbeaten, but draws A — a *weak* Condorcet winner, not a strict one (highest Copeland score, 1.5).
Full audit — preference matrix, Condorcet, and score distribution¶
--- Smith Set (the generalized Condorcet winner) ---
The smallest group whose every member beats every candidate outside it —
the honest answer to "who is even in contention?".
Smith set (3 of 3): B, C, A
Outside (0): —
More than one member ⇒ NO Condorcet winner: the top of the tournament is a
group held open by draws, so the strongest "candidate" is a set, not a
person. Some members DO beat others, but no member beats them all — a draw
blocks the sweep. No loop closes either, so there is no cycle for Minimax /
Ranked Pairs / Schulze to resolve: which member wins is left to the
tiebreak, not to a cycle rule. See
05_Ranked_Robin/01_Learn/rr_tiebreak_lh_vs_bv.md.
Note: the Copeland leaders (B) are only part of the set — the
win–loss table's top block understates how wide the contention is.
Ranked Robin (RCV-RR) winner B is INSIDE the Smith set. ✓
Guaranteed: Ranked Robin (Copeland) is Smith-efficient — every member of
the set outscores every outsider, so the top of the win–loss table is
always inside the set, however the tie among them is then broken.
Fine print: this set contains a pairwise DRAW, and a draw is enough to keep a
candidate in the Smith set but not in the tighter Schwartz set — so Schwartz
may be smaller here.
More: 07_Concepts/topics/smith_set.md
Everything in one file: the _tabulated mirror (regenerated on every run; every analysis forced on).
Run it yourself:
python STARVote_LH_tabulation_engine/starvote_larry_hastings.py method_comparisons/felsenthal_paradoxes/cases/succ_elim_ex11_twin_before.yaml
See also¶
- Condorcet efficiency (topic hub)
- Ties & tie-breaking (topic hub)
- Vote splitting (worked set)
- Glossary · all cases by method
More cases in this set: bv2144_mxfmhm_plurality · bv2144_mxfmhm_star · bv2145_6fj2kg_irv · bv2145_6fj2kg_ranked_robin · bv2145_6fj2kg_star · bv2146_krk2px_irv · bv2146_krk2px_ranked_robin · bv2146_krk2px_star · bv2147_9gdrqg_irv · bv2147_9gdrqg_star · bv2148_h87k6v_irv · bv2148_h87k6v_star · bv2149_byk9v2_irv · bv2149_byk9v2_star · bv2150_dxg8pb_irv · bv2150_dxg8pb_ranked_robin · bv2150_dxg8pb_star · bv2151_97hbpw_irv · bv2151_97hbpw_ranked_robin · bv2151_97hbpw_star · bv2152_r6ctvy_approval · bv2152_r6ctvy_ranked_robin · bv2153_pcttmr_approval · bv2153_pcttmr_irv · bv2153_pcttmr_ranked_robin · bv2154_wq6yv7_approval · bv2154_wq6yv7_irv · bv2154_wq6yv7_ranked_robin · bv2160_r6qc8h_plurality · bv2160_r6qc8h_star · bv2161_q3h4fk_plurality · bv2161_q3h4fk_star · bv2162_4htk44_irv · bv2162_4htk44_ranked_robin · bv2162_4htk44_star · bv2163_74j6vv_irv · bv2163_74j6vv_ranked_robin · bv2163_74j6vv_star · bv2164_xbqq8t_plurality · bv2164_xbqq8t_ranked_robin · bv2164_xbqq8t_star · bv2165_9vxcj7_plurality · bv2165_9vxcj7_star · bv2166_b7b8dv_plurality · bv2166_b7b8dv_star · bv2167_f3dxq9_plurality · bv2167_f3dxq9_star · coombs_ex18_monotonicity · coombs_ex20_amalgamated · coombs_ex20_district1 · coombs_ex20_district2 · coombs_ex21_twin_after · coombs_ex21_twin_before · coombs_ex22_scc · felsenthal_ex6_pareto_approval · felsenthal_ex6_ranked_robin · minimax_ex30_noshow_after · minimax_ex30_noshow_before · minimax_ex31_truncation · minimax_ex32_amalgamated · minimax_ex32_district2 · minimax_ex33_scc · succ_elim_ex10_amalgamated · succ_elim_ex10_district1 · succ_elim_ex10_district2 · succ_elim_ex11_twin_after · succ_elim_ex12_sincere · succ_elim_ex12_truncated · succ_elim_ex9_noshow · succ_elim_ex9_pareto