← Agora

Voting

Voters rank the candidates; a rule turns those ballots into a winner. But which rule? Plurality, Borda, instant-runoff and the Condorcet method can each crown a different winner from the very same votes, and sometimes the majority's will cycles with no winner at all. Live runs the real Python engine in your browser via Pyodide.

Pick a scenario, or switch to Live · Python (lower left) to rebalance the electorate and watch the cycle appear.

Winner under each rule

The same ballots, four rules. Watch where they agree and where they don't.

Head-to-head (majority graph)

An arrow A → B means a majority prefers A to B (the number is the margin). One candidate beating everyone is the Condorcet winner; a loop is the paradox: no winner.

Mode

The electorate

Each column is a bloc of voters sharing one ranking, first choice at the top.

Tallies

First-place votes (what plurality counts) vs Borda points, normalised. Different rules reward different things.

▮ first-place▯ Borda

Live exploration

Switch Mode (lower left) to Live · Python for a three-candidate (A, B, C) sandbox, then rebalance the three cyclic blocs; the winners and the cycle shift live.

Things to notice

The spoiler effect

A candidate who can't win still changes who does, by splitting a bloc. Plurality is uniquely vulnerable; ranked methods recover the majority's real preference.

How vote-splitting works

Majorities can cycle

A beats B, B beats C and C beats A, all by majority. Collective preference need not be consistent, even when every voter is. There may be no Condorcet winner.

The Condorcet paradox

No perfect rule

It isn't that one method is simply right. Arrow's theorem proves no ranked rule can satisfy a few basic fairness axioms at once, so trade-offs are unavoidable.

Arrow's theorem

The rule is the choice

Load "All four rules disagree": one electorate, four legitimate winners. Choosing the voting method is itself a political decision, made before any vote is cast.

Why it matters