Bloc STAR baseline — 3 candidates, 2 seats (clean, no tiebreak)¶
Generated from 00_c3_b3_bloc-baseline-2-seats.yaml — do not edit by hand. Regenerate: python STARVote_LH_tabulation_engine/tools_adam/scripts/build_yaml_pages.py.
Method: Bloc STAR (multi-winner, majoritarian) · 2 seats · Expected winners: Alice, Bruno
Scenario¶
The smallest Bloc STAR election that actually decides something: 3 candidates, 2 seats, so exactly one candidate is excluded. (A 2-candidate / 2-seat race would be a non-election — both win no matter how anyone votes.)
Bloc STAR fills seats by running single-winner STAR once per seat: elect a winner, remove them, re-run on the same ballots. - Seat 1: score all three. Alice (14) and Bruno (12) are the top two and advance; in the runoff Alice is preferred 2-1, so Alice takes seat 1. - Seat 2: remove Alice and re-run on the remaining two. Bruno (12) beats Clara (3) in the runoff 3-0 and takes seat 2. Clara (total 3) is excluded. Both seats are decided cleanly by the ballots — no rung of the tie-break ladder is ever consulted. This is the control the Bloc tie probes vary from. Bloc is majoritarian: a cohesive majority can take every seat.
Ballots¶
Row 1 = candidate names; each later row is one voter's 0–5 scores (a N × prefix = N identical ballots).
Alice,Bruno,Clara
5,3,1
4,5,2
5,4,0
What the engine says¶
The count, step by step — the rounds and how the winner is reached:
--- Bloc STAR Voting Method (2 winners) ---
[Bloc STAR]
Tabulating 3 ballots to fill 2 seats.
Alice,Bruno,Clara
5, 3, 1
4, 5, 2
5, 4, 0
[Bloc STAR: Round 1: Scoring Round]
The two highest-scoring candidates advance to the next round.
Alice -- 14 -- First place
Bruno -- 12 -- Second place
Clara -- 3
Alice and Bruno advance.
[Bloc STAR: Round 1: Automatic Runoff Round]
The candidate preferred in the most head-to-head matchups wins.
Alice -- 2 -- First place
Bruno -- 1
Equal Support -- 0
Alice wins.
Runoff math:
3 ballots cast
− 0 Equal Support (no preference between the two finalists)
─
3 voters with a preference (majority = 2)
Alice 2 (67%) · Bruno 1 (33%)
──────────────────────────────────────────────────
[Bloc STAR: Round 2: Scoring Round]
The two highest-scoring candidates advance to the next round.
Bruno -- 12 -- First place
Clara -- 3 -- Second place
Bruno and Clara advance.
[Bloc STAR: Round 2: Automatic Runoff Round]
The candidate preferred in the most head-to-head matchups wins.
Bruno -- 3 -- First place
Clara -- 0
Equal Support -- 0
Bruno wins.
Runoff math:
3 ballots cast
− 0 Equal Support (no preference between the two finalists)
─
3 voters with a preference (majority = 2)
Bruno 3 (100%) · Clara 0 (0%)
[Bloc STAR: Winners — Bloc STAR Voting Method (2 winners)]
Alice
Bruno
Full audit — preference matrix, Condorcet, and score distribution¶
--- Preference Matrix ---
Head-to-head / pairwise comparison
Legend: For - Equal Support - Against
Informational only — not part of the 2-winner count below,
so no Top-2 finalists are marked.
| Alice | Bruno | Clara |
-----------------------------------------------------
Alice > | --- |2 - 0 - 1 |3 - 0 - 0 |
Bruno > | 1 - 0 - 2 | --- |3 - 0 - 0 |
Clara > | 0 - 0 - 3 |0 - 0 - 3 | --- |
[Condorcet Winner]
Condorcet Winner: Alice — matches the STAR winner
[Condorcet Loser]
Condorcet Loser: Clara — loses every head-to-head matchup
[Score Distribution] (how many ballots gave each star rating)
Score
Candidate 5 4 3 2 1 0 | Total Avg
Alice 2 1 0 0 0 0 | 14 4.7
Bruno 1 1 1 0 0 0 | 12 4.0
Clara 0 0 0 1 1 1 | 3 1.0
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 02_STAR_Bloc/02_Examples/cases/00_c3_b3_bloc-baseline-2-seats.yaml
See also¶
- Ties & tie-breaking (topic hub)
- The tie-breaking ladder (full chain)
- Runoff reversal (worked set)
- Glossary · all cases by method
More cases in this set: 01_c4_b2_bloc-star-2-seats · b484mbm_tie_every_rung · bloc_lot_path_dependence_a_c3_b5 · bloc_lot_path_dependence_b_c3_b5 · bv129_score_tiebreak_bloc · bv130_bloc_pagination_731 · bv130r2_dead_rung_bloc · bv131_guido_bloc · bv132_verify_votes_bloc · bv1525_condorcet_loser_bloc · bv1815_bloc_3c2s_basic · bv1835_8h3yrx_score_leader_no_seat · bv2105_r4dqvd_ice_cream_bloc · bv2105r2_w3vvff_ice_cream_recheck · bv2269_t488h9_race_nobody_can_lose · bv750_tie_breaking_bloc · lackner_skowron_shadow_bloc_star_c7_b12 · race_nobody_can_lose_two_seat_control