Condorcet analysis of Official PEP308 Ballots

Norman Petry npetry at
Tue Mar 11 19:11:43 CET 2003

On Tue, 2003-03-11 at 09:59, Anders J. Munch wrote:
> "Norman Petry" <npetry at> wrote:
> > 
> >
> > 
> > The Condorcet results for this set of ballots are shown at the end of
> > this message.
> Interesting ... but unfortunately the premise for the Condorcet method
> is not met.  Since voters haven't ranked the candidates in order of
> preference you cannot really say to have found the Condorcet results.

No and Maybe.  Voters have been allowed to provide _limited_ rankings on
the official ballot, so it's not correct to say that voters "haven't
ranked the candidates in order of preference" -- they clearly did. 
Unfortunately, a lot of voter preference information was lost due to the
limit placed on the number of options that could be ranked (3).

Condorcet's method depends on finding the majority opinion in separate
two-way races between every possible pair of alternatives.  If a fully
ranked ballot, like the one used for the "complementary" vote is used,
it is possible (but not necessary) for voters to participate in all
possible pairings.  This allows the true Condorcet winner to be found. 
Reusing the ballots from the "official" vote is equivalent to a
Condorcet election with a lot of forced abstentions.  In an 18-candidate
election, there are 153 separate 2-way races.  Imagine that there is a
separate ballot box for each of these contests.  In the "complementary"
vote, voters are given a complete set of 153 ballot papers; in the
"official" vote, they are only allowed to choose 6 ballot papers from
this set before voting.  This makes the Condorcet result derived from
these ballots less reliable than if full preferences had been
permitted.  On the other hand, a large number of voters compensates for
this problem to a large extent.  The Condorcet results for the official
vote confirm those obtained from the complementary vote, which had
better data gathering, but lower participation.

When I announced the complementary vote, I wrote:

"Please understand that I regard this vote of mine as a COMPLEMENT,
rather than a substitute for the one being organised by Raymond
Hettinger.  His vote uses a very different type of ballot, and will
therefore capture different information than mine.  Therefore both sets
of results, when viewed together, should be more useful to the BDFL than
either one would be alone."

As I mentioned previously, the form of the ballot for the official vote
biases the result in favour of the status quo, since it only allows for
limited rankings.  When limited rankings are used, a problem called
"vote-splitting" often arises -- a large, united minority faction will
win against a majority faction whose support is divided among multiple
candidates.  The most egregious form of this problem is found with
plurality ("first-past-the-post") voting, where effectively only ONE
option may be ranked, but any system of limited rankings will cause the
same problem to some degree.

Given that there were 17 syntax proposals for the ternary, and that
*many* voters didn't want the ternary in any form, a limited-rank ballot
for PEP308 will tend to favour the status quo.  If the supporters of
PEP308 felt that there was majority support for adding a ternary to
Python, it would be quite easy to blame the outcome on the form of the
official ballot.

Fortunately, the results of the complementary vote (which didn't suffer
from vote-splitting problems) prove useful, in that they CONFIRM the
official result: a majority of Python users (or at least, those who
voted) have *rejected* PEP308 -- the 'NO TERNARY' option was preferred
in both cases.

Norman Petry

More information about the Python-list mailing list