Analysing Vote Counting Algorithms Via Logic
And its Application to the CADE Election System
Bernhard Beckert, Rajeev Gore, and Carsten Schürmann
We present a method for using first-order logic to specify the
semantics of preferences as used in common vote counting algorithms.
We also present a corresponding system that uses Celf linear-logic
programs to describe voting algorithms and which generates explicit
examples when the algorithm departs from its specification. When our
method and system are applied to analyse the vote counting algorithm
used to elect CADE Trustees, we find that it strictly differs from the
standard definition of Single Transferable Vote (STV). We therefore
argue that it is a misnomer to say that the CADE algorithm implements
STV.