election_title: "Equal ranks — 38 of 74 rally to Alice, and consecutive scores elect her"
scenario_description: |-
  Figure 11 of Théo Delemazure & Dominik Peters, "Generalizing Instant Runoff Voting to Allow Indifferences" (EC'24, arXiv:2404.11407), doubled so every bloc clears the house minimum of 6. Matched pair with equal_rank_cohesive_wide_gaps.yaml — the SAME 74 voters holding the SAME preference order, using the 0-5 scale differently. Same cast because it is the same election with one thing changed.
  The paper's point is an axiom called RESPECT FOR COHESIVE MAJORITIES: if more than half the voters all rank some candidate first (possibly alongside others), the winner must be someone at least one of them ranked first. Here 38 of 74 voters put Alice in their top class — 18 as Alice=Bilal=Cato, 10 as Alice=Bilal, 10 as Alice=Cato — so the axiom permits Alice, Bilal or Cato and forbids Delia. Split-IRV elects Delia and fails the axiom. Approval-IRV cannot: Theorem 3.5 proves it always satisfies it.
  On these ballots STAR elects Alice, inside the permitted set. But that is the encoding talking as much as the electorate, which is why this file has a twin. Every voter here uses consecutive scores (a three-way top class is 5,5,5 and the class below it is 4). Give the same voters the same preference order with wide gaps instead and STAR elects Delia — see the companion file. Across 20,000 random strictly-decreasing 0-5 encodings of this weak order STAR's winner is genuinely unstable: Delia 35%, Alice 19%, Bilal 12%, Cato 11%, the rest ties.
  Two things follow, and the second one cuts against this library's own preferred method. First, a weak order does not determine a STAR result — the gaps carry real information and this profile is where that stops being a slogan. Second, STAR does NOT satisfy respect for cohesive majorities: the companion file is a legitimate 0-5 profile whose induced weak order is exactly the one above, and STAR elects the one candidate the cohesive majority excluded. Approval-IRV satisfies the axiom on both files; STAR satisfies it on one.
  A discrepancy worth recording, since this library runs the figures it cites. The paper writes that on this profile "Approval-IRV selects a" (Alice). Counted, Approval-IRV eliminates Delia, then ALICE, and ends in a 64-64 tie between Bilal and Cato. The theorem is untouched — Bilal and Cato are both inside the permitted set, so respect for cohesive majorities holds exactly as Theorem 3.5 says — but the illustrative sentence names the wrong candidate. The count is in the report; check it against the round table rather than taking this file's word for it.
  For the Approval-IRV and Split-IRV counts, and the axiom check itself, run tools_adam/pref_voting_tabulation_engine/approval_irv_report.py.
paradoxes: [condorcet-cycle]
bv_test_id: BV2297
bv_election_id: j9wvv4
bv_results_url: https://bettervoting.com/j9wvv4/results
voting_method: STAR
num_winners: 1
ballots: |-
  Count:Alice,Bilal,Cato,Delia
  18:5,5,5,4    # Alice, Bilal and Cato equal-first
  10:5,5,3,4    # Alice and Bilal equal-first
  10:5,3,5,4    # Alice and Cato equal-first
  16:4,5,5,5    # Bilal, Cato and Delia equal-first
  20:4,4,4,5    # Delia alone on top
expected_winners: [Alice]

# file: equal_rank_cohesive_consecutive.yaml
