Skip to content

BV parity — Ranked Robin: Copeland tie broken by tiebreak order

Generated from BV_Library_ranked_robin_ties.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: Alice

Scenario

Ported from BetterVoting's tabulator unit tests (RankedRobin.test.ts :: "Ties"). Alice and Bob split the head-to-head (3-3), tying on Copeland score; BetterVoting breaks the tie by tiebreak (lot) order and elects Alice. Rank ballots (1 = best) converted to scores for the LH engine (rank 1->4, 2->3, 3->2, 4->1).

Ballots

Row 1 = candidate names; each later row is one voter's 0–5 scores (a N × prefix = N identical ballots).

Alice,Bob,Carol,Dave
4,3,2,1
4,3,2,1
4,3,2,1
3,4,2,1
3,4,2,1
3,4,2,1

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 (score ballots).

Ballots:
   the ranking Ranked Robin reads ("=" = tied); source scores follow in () per column: Alice, Bob, Carol, Dave
     3 × Alice > Bob > Carol > Dave      (4, 3, 2, 1)
     3 × Bob > Alice > Carol > Dave      (3, 4, 2, 1)

Round-Robin — every pair, head-to-head (For – Against):
   Alice  ties  Bob     3 – 3
   Alice  beats Carol   6 – 0
   Alice  beats Dave    6 – 0
   Bob    beats Carol   6 – 0
   Bob    beats Dave    6 – 0
   Carol  beats Dave    6 – 0

--- Pairwise (Round-Robin) Matrix ---
Head-to-head / pairwise comparison — the Ranked Robin tally
Legend: For - Equal Support - Against   (row vs column)
          |   Alice   |   Bob    |  Carol   |  Dave    |
--------------------------------------------------------
  Alice > |    ---    |3 - 0 - 3 |6 - 0 - 0 |6 - 0 - 0 |
    Bob > | 3 - 0 - 3 |   ---    |6 - 0 - 0 |6 - 0 - 0 |
  Carol > | 0 - 0 - 6 |0 - 0 - 6 |   ---    |6 - 0 - 0 |
   Dave > | 0 - 0 - 6 |0 - 0 - 6 |0 - 0 - 6 |   ---    |

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  Alice      2–0–1       2.5     +12  Carol, Dave
    2  Bob        2–0–1       2.5     +12  Carol, Dave
    3  Carol      1–2–0         1      -6  Dave
    4  Dave       0–3–0         0     -18  —

Winner — Ranked Robin (RCV-RR): Alice
   *** 2 candidates tie on the highest Copeland score (2.5): Alice, Bob — a dead heat (they draw head-to-head, not a cycle). Resolved by total margin, then lot order.

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 (2 of 4): Alice, Bob
   Outside (2):        Carol, Dave
   More than one member ⇒ NO Condorcet winner: the top of the tournament is a
   dead heat (its members DRAW each other head-to-head), so the strongest
   "candidate" is a set, not a person. No member beats another, so there is no
   loop for Minimax / Ranked Pairs / Schulze to disagree about — 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.
   Ranked Robin (RCV-RR) winner Alice 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/BV_Library/cases/BV_Library_ranked_robin_ties.yaml

See also

More cases in this set: BV_Library_approval_single_winner · BV_Library_plurality_single_winner · BV_Library_ranked_robin_single_winner · BV_Library_star_condorcet_winner · BV_Library_star_pr_basic_two_seats · BV_Library_star_pr_fractional_surplus · BV_Library_star_pr_voters_fewer_than_seats · BV_Library_star_runnerup_tie · BV_Library_star_runoff · BV_Library_star_runoff_score_tie_five_star · BV_Library_star_runoff_tie_score_resolves