Skip to content

STAR à la Approval — 0/1 & marker ballots are legal on a STAR ballot

Generated from star_ala_approval.yaml — do not edit by hand. Regenerate: python STARVote_LH_tabulation_engine/tools_adam/scripts/build_yaml_pages.py.

Method: STAR (single winner) · 1 seat · Expected winner: D

Scenario

A STAR file (voting_method: STAR): it shows that approval-style 0/1 scoring and every ballot marker are LEGAL on a STAR ballot. Eight ballots exercise the whole marker set — blanks (-), a race abstention (~), an all-zero ballot, and a max-everything 5,5,5,5 — all tabulating as documented (markers count 0 and are reported honestly). D wins. For real Approval counting (most approvals wins), see 04_Approval/.

Ballots

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

Markers on these ballots: - blank · ~ race abstention · & candidate abstention · ? spoiled · % spoiled+reissued — all tabulate as 0 (reported honestly).

A,B,C,D
-,-,1,1
-,-,0,0
1,0,0,1
1,1,0,1
~,~,~,~
0,0,0,0
5,5,5,5
-,-,-,-

What the engine says

The count, step by step — the rounds and how the winner is reached:

[Divergence from STAR]
  STAR                   = D
  Choose-One (Plurality) = A   (differs from STAR)
  RCV-IRV                = A   (differs from STAR)
  Approval               = A   (differs from STAR)
  Note: 4 of 8 ballots (50%) had equal non-zero scores, so their ranks were
        decided by candidate priority order. The RCV-IRV result may be an
        artifact of score-to-rank tie-breaking rather than a deep
        difference.
  Note: Ranked Robin (RCV-RR) agrees with STAR, so RCV-IRV is the lone
        outlier — the classic center-squeeze signature.
  Full round-by-round reports (generated for review):
  RCV-IRV rounds: cases_tabulated/star_ala_approval_RCV-IRV_tabulated.txt

--- STAR Voting Method (single winner) ---

[STAR Voting]
 Tabulating 8 ballots. Note: 2 of 8 ballots are marked as abstentions.
A,B,C,D
-,-,1,1
-,-,0,0
1,0,0,1
1,1,0,1
~,~,~,~
0,0,0,0
5,5,5,5
-,-,-,-
  ('-' = left blank / abstained; '0' = scored zero — both count as 0 stars.)

[STAR Voting: Scoring Round]
 The two highest-scoring candidates advance to the next round.
   D             -- 8 -- First place
   A             -- 7 -- Second place
   B             -- 6
   C             -- 6
 D and A advance.

[STAR Voting: Automatic Runoff Round]
 The candidate preferred in the most head-to-head matchups wins.
   D             -- 1 -- First place
   A             -- 0
   Equal Support -- 7
 D wins.
   Runoff math:
     8  ballots cast
   − 7  Equal Support (no preference between the two finalists)
     ─
     1  voters with a preference  (majority = 1)
           D 1 (100%)  ·  A 0 (0%)

[STAR Voting: Winner — STAR Voting Method (single winner)]
 D

Full audit — preference matrix, Condorcet, and score distribution

--- Runoff (Preference) Matrix ---
Head-to-head / pairwise comparison
Legend: For - Equal Support - Against
        * indicates Top 2 Finalist
               |    * A     |     B     |     C     |   * D     |
-----------------------------------------------------------------
         * A > |    ---     |1 - 7 - 0  |2 - 5 - 1  |0 - 7 - 1  |
           B > | 0 - 7 - 1  |   ---     |1 - 6 - 1  |0 - 6 - 2  |
           C > | 1 - 5 - 2  |1 - 6 - 1  |   ---     |0 - 6 - 2  |
         * D > | 1 - 7 - 0  |2 - 6 - 0  |2 - 6 - 0  |   ---     |

[Condorcet Winner]
  Condorcet Winner: D — matches the STAR winner

[Condorcet Loser]
  No strict Condorcet loser; jointly weak Condorcet losers: B, C (winless — pairwise ties)

[Score Distribution] (how many ballots gave each star rating)
                Score
Candidate  5  4  3  2  1  0  Abs  | Total  Avg all  Avg rated
A          1  0  0  0  2  1    4  |     7      0.9        1.8
B          1  0  0  0  1  2    4  |     6      0.8        1.5
C          1  0  0  0  1  4    2  |     6      0.8        1.0
D          1  0  0  0  3  2    2  |     8      1.0        1.3
  Avg all   = Total / all ballots — a blank counts as 0, so this is the Total the Scoring Round ranks on, per ballot.
  Avg rated = Total / the ballots that scored this candidate (Abs excluded) — support among voters who had an opinion.

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 01_STAR/02_Examples/cases/star_ala_approval.yaml

See also

More cases in this set: 02a_c3_b1_three-candidates · 02b_c3_b2_three-candidates · 03a_c3_b3_style-bullet-vote · 03b_c3_b3_1_style-protest-vote · 03b_c3_b3_2_expand_style-protest-vote · 03c_c6_b8_style-gallery · 03d_c5_b5_style-gallery-five-more · 04b_c4_b3_display-options-all · 05a_c5_b3_unanimous-ballots · 06a_c9_b3_large-field-equal-support · 06b_c9_runoff-overturns-leader · 09_c4_b100_tennessee-capital · abstentions · bv2182_tg4779_faq_runoff_reversal · bv2184_fyy886_lunch_vote · bv2187_qrw6wb_ann-bob-cal · bv2256_c8h3tb_traditional_style · bv2263_xw23m9_over_50_percent · csv_ambiguity_ex1_c4_b8 · display_options_demo · equal_support_runoff_demo · quorum_demo_c3_b6 · quorum_fail_demo_c3_b6 · same_mean_different_spread_c2_b5 · three_winners_cw_score_runoff · vote_splitting · vote_splitting2 · vote_splitting3 · vote_splitting_scenario1_spoiler · vote_splitting_scenario2_bloc_leads · vote_splitting_scenario3_outsider_wins