In election science, a voting method satisfies the summability criterion if it is possible to tally election results locally by precinct, then calculate the results by adding up all the votes. More formally, the compilation or summation complexity of a voting system measures the difficulty of vote counting for individual precincts, and is equal to the smallest number of bits needed to summarize all the votes.[1] A voting method is called summable if the number of bits grows as a polynomial function of the number of candidates.
Often, a group has to accept a decision, but not all the votes can be gathered together in a single location. In such a situation, we need to take the votes of the present voters and summarize them such that, when the other votes arrive, we can determine the winner. The compilation complexity of a voting-rule is the smallest number of bits required for the summary.
Nonsummable methods like the alternative vote (ranked-choice) and single transferable vote can end up being prohibitively expensive to implement, often leading to their rejection by voters (as in the United Kingdom) or repeal (see RCV in the US).
A key advantage of low compilation complexity is it makes it easier to verify voting outcomes. Low compilation complexity lets us summarize the outcome in each voting-station separately, which is easy to verify by having representatives from each party count the ballots in each polling station. Then, any voter can verify the final outcome by summing up the results from the 1000 voting stations. This verifiability is important so that the public trusts and accepts the results. The publicly-released information from each precinct can be used by independent election auditors to identify any evidence of electoral fraud with statistical techniques.
Compilation complexity is also algorithmically useful for computing the backward induction winner in Stackelberg voting games.[2]
Let r be a voting rule: a function that takes as input a list of n ranked ballots, representing the preferences of n voters, and returns an outcome. There are some k<n voters whose votes are known. A compilation function is a function f that takes as input a list of k ranked ballots and returns some output such that, given any number u := n-k of additional ranked ballots, the output of r on the entire set of ballots can be computed exactly.
The compilation complexity of a rule r is the worst-case number of bits in the output of the most efficient compilation function f. This number is typically a function of n (the number of voters), k (the number of known votes), and c (the number of candidates). However, we focus on c alone for simplicity, as we are usually interested in the case with a very large number of unknown votes.
The number of possible ballots for any ranked voting rule is
\Theta(c!)
In positional voting systems like plurality or Borda, any set of votes can be summarized by recording the total score of each candidate (e.g. the number of times a candidate appears first in plurality). The winner can then be found by adding the scores in each precinct giving a bound of
\Theta(c)
The weighted majority graph of a voter profile is a directed graph in which the nodes are the candidates, and there is a directed edge from x to y iff a majority of voters prefer x to y. The weight of this edge is the number of voters who prefer x to y. Many rules are based only on the majority graph; the number of equivalence classes of such rules is at most the number of possible weighted majority graphs. This number is denoted by T(k,c) - the number of weighted tournaments on c vertices that can be obtained from k voters. Therefore, the compilation complexity is at most log(T(k,c)). An upper bound on log(T(k,c)) is
c(c-1) | |
2 |
The compilation complexity of two-round voting (the contingent vote) is in
\Theta(c2)
The compilation complexity of the single transferable vote is in
\Theta\left(2cc\right)
STAR voting is also in
\Theta(c2)
For Bucklin voting the compilation complexity is
\Theta(c2)
k
\Theta(ck)
Karia and Lang study the compilation complexity of several multiwinner voting rules, with either ranked ballots or approval ballots. For example:
\Theta(c)
\Theta(clog{kc})