Determining Possible and Necessary Winners under Lirong Xia Vincent Conitzer

Journal of Artificial Intelligence Research 41 (2011) pages 25–67
Submitted 09/10; published 05/11
Determining Possible and Necessary Winners under
Common Voting Rules Given Partial Orders
Lirong Xia
Vincent Conitzer
lxia@cs.duke.edu
conitzer@cs.duke.edu
Department of Computer Science, Duke University,
Durham, NC 27708, USA
Abstract
Usually a voting rule requires agents to give their preferences as linear orders. However,
in some cases it is impractical for an agent to give a linear order over all the alternatives. It
has been suggested to let agents submit partial orders instead. Then, given a voting rule,
a profile of partial orders, and an alternative (candidate) c, two important questions arise:
first, is it still possible for c to win, and second, is c guaranteed to win? These are the
possible winner and necessary winner problems, respectively. Each of these two problems
is further divided into two sub-problems: determining whether c is a unique winner (that
is, c is the only winner), or determining whether c is a co-winner (that is, c is in the set of
winners).
We consider the setting where the number of alternatives is unbounded and the votes
are unweighted. We completely characterize the complexity of possible/necessary winner
problems for the following common voting rules: a class of positional scoring rules (including
Borda), Copeland, maximin, Bucklin, ranked pairs, voting trees, and plurality with runoff.
1. Introduction
In multiagent systems, often, the agents must make a joint decision in spite of the fact
that they have different preferences over the alternatives. For example, the agents may
have to decide on a joint plan or an allocation of tasks/resources. A general solution to
this problem is to have the agents vote over the alternatives. That is, each agent i gives a
ranking (linear order) ≻i of all the alternatives; then a voting rule takes all of the submitted
rankings as input, and based on this produces a chosen alternative (the winner), or a set
of chosen alternatives. The design of good voting rules has been studied for centuries by
the social choice community. More recently, computer scientists have become interested in
social choice—motivated in part by applications in multiagent systems, but also by other
applications. Hence, a community interested in computational social choice has emerged.
In “traditional” social choice, agents are usually required to give a linear order over all
the alternatives. However, especially in multiagent systems applications, this is not always
practical. For one, sometimes, the set of alternatives is too large. For example, there are
generally too many possible joint plans or allocations of tasks/resources for an agent to
give a linear order over them. In such settings, agents must use a different voting language
to represent their preferences; for example, they can use CP-nets (Boutilier, Brafman,
Domshlak, Hoos, & Poole, 2004; Lang, 2007; Xia, Lang, & Ying, 2007a, 2007b; Lang &
Xia, 2009). However, when an agent uses a CP-net (or a similar language) to represent
its preferences, this generally only gives us a partial order over the alternatives. Another
c
2011
AI Access Foundation. All rights reserved.
25
Xia & Conitzer
issue is that it is not always possible for an agent to compare two alternatives (Pini, Rossi,
Venable, & Walsh, 2007). Such incomparabilities also result in a partial order.
In this paper, we study the setting where for each agent, we have a partial order corresponding to that agent’s preferences. We study the following two questions. (1) Is it
the case that, for some extension of the partial orders to linear orders, alternative c wins?
(2) Is it the case that, for any extension of the partial orders to linear orders, alternative c
wins? These problems are known as the possible winner and necessary winner problems, respectively, introduced by Konczak and Lang (2005). Depending on the interpretation of “c
wins”, the possible/necessary winner problems are further divided into two sub-problems:
one is called the possible/neccessary unique winner problem (here “unique” is often omitted
when causing no confusion), in which “c wins” means that c is the only winner of the election; the other is called the possible/necessary co-winner problem, in which “c wins” means
that c is one of the winners. It should be noted that the answer depends on the voting
rule used. Previous research has also investigated the setting where there is uncertainty
about the voting rule; here, a necessary (possible) winner is an alternative that wins for any
(some) realization of the rule (Lang, Pini, Rossi, Venable, & Walsh, 2007). In this paper,
we will not study this setting; that is, the rule is always fixed.
While these problems are motivated by the above observations on the impracticality
of submitting linear orders, they also relate to preference elicitation and manipulation. In
preference elicitation, the idea is that, instead of having each agent report its preferences
all at once, we ask them simple queries about their preferences (e.g. “Do you prefer a
to b?”), until we have enough information to determine the winner. Preference elicitation has found many applications in multiagent systems, especially in combinatorial auctions (for overviews, see Parkes, 2006; Sandholm & Boutilier, 2006) and in voting settings
as well (Conitzer & Sandholm, 2002, 2005b; Conitzer, 2009). The problem of deciding
whether we can terminate preference elicitation and declare a winner is exactly the necessary winner problem. Manipulation is said to occur when an agent casts a vote that
does not correspond to its true preferences, in order to obtain a result that it prefers. By
the Gibbard–Satterthwaite Theorem (Gibbard, 1973; Satterthwaite, 1975), for any reasonable voting rule, there are situations where an agent can successfully manipulate the rule.
To prevent manipulation, one approach that has been taken in the computational social
choice community is to study whether manipulation is (or can be made) computationally
hard (Bartholdi, Tovey, & Trick, 1989a; Bartholdi & Orlin, 1991; Hemaspaandra & Hemaspaandra, 2007; Elkind & Lipmaa, 2005; Conitzer, Sandholm, & Lang, 2007; Faliszewski,
Hemaspaandra, & Schnoor, 2008; Zuckerman, Procaccia, & Rosenschein, 2009; Xia, Zuckerman, Procaccia, Conitzer, & Rosenschein, 2009; Faliszewski, Hemaspaandra, & Schnoor,
2010). The fundamental questions that have been studied here are “Given the other votes,
can a coalition of agents cast their votes so that alternative c wins?” (so-called constructive manipulation) and “Given the other votes, can this coalition of agents cast their votes
so that alternative c does not win?” (so-called destructive manipulation). These problems
correspond to the possible winner problem and (the complement of) the necessary winner
problem, respectively. To be precise, they only correspond to restricted versions of the possible winner problem and (the complement of) the necessary winner problem in which some
of the partial orders are linear orders (the nonmanipulators’ votes) and the other partial
orders are empty (the manipulators’ votes). However, if there is uncertainty about parts
26
Determining Possible and Necessary Winners Given Partial Orders
of the nonmanipulators’ votes, or if parts of the manipulators’ votes are already fixed (for
example due to preference elicitation), then they can correspond to the general versions of
the possible winner problem and (the complement of) the necessary winner problem.
Another related problem is the evaluation problem (Conitzer et al., 2007). We are
given a probability distribution over each voter’s vote, and we are asked for the probability
that a given alternative wins. It has been shown that for any anonymous voting rule, when
the number of alternatives is no more than a constant, there is a polynomial-time algorithm
that solves the evaluation problem; when the number of alternatives is not bounded
above by a constant, the problem becomes #P hard for plurality, Borda, and Copeland
rules (Hazon, Aumann, Kraus, & Wooldridge, 2008). The complexity of influencing the
distribution over the voters’ votes on multiple binary issues to make a given alternative
(a valuation of all these issues) win has also been studied (Erdélyi, Fernau, Goldsmith,
Mattei, Raible, & Rothe, 2009). The possible/necessary winner problems are related to the
evaluation problem in the following way. If every voter assigns positive probability to
every one of the linear orders that extend her partial order, then, for any alternative c, c
is a possible winner if and only if the probability that c wins the election is positive; c is
a necessary winner if and only if the probability that c wins the election is 1. We must
note that this reduction from the possible/necessary winner problem to the evaluation
problem is in general not polynomial, because for any partial order, it is possible that
there are exponentially many linear orders that extend it. For example, if the partial
order is empty, then any linear order is an extension of it. However, in this paper, we
prove results that show that the possible/necessary winner problem is hard even when the
number of undetermined pairs in each partial order is a constant, so that there are in fact
only polynomially many linear orders that extend it. Hence, our hardness results also imply
(only NP-)hardness results for the evaluation problem.
Because of the variety of different interpretations of the possible and necessary winner
problems, it is not surprising that there have already been significant studies of these problems. Two main settings have been studied (see Walsh, 2007 for a good survey). In the first
setting, the number of alternatives is bounded, and the votes are weighted. Here, for the
Borda, veto, Copeland, maximin, STV, and plurality with runoff rules, the possible winner
problem is NP-complete; for the STV and plurality with runoff rules, the necessary winner
problem is coNP-complete (Conitzer et al., 2007; Pini et al., 2007; Walsh, 2007). However,
in many elections, votes are unweighted (that is, each agent’s vote counts the same). If
the votes are unweighted, and the number of alternatives is bounded, then the possible and
necessary winner problems can always be solved in polynomial time, assuming the voting
rule can be executed in polynomial time (Conitzer et al., 2007; Walsh, 2007). Hence, the
other setting that has been studied is that where the votes are unweighted and the number
of alternatives is not bounded; this is the setting that we will study in this paper. In this setting, the possible and necessary winner problems are known to be hard for STV (Bartholdi
& Orlin, 1991; Pini et al., 2007; Walsh, 2007). Computing whether an alternative is a
possible or necessary Condorcet winner can be done in polynomial time (Konczak & Lang,
2005). However, at the time of the conference version of this work (Xia & Conitzer, 2008),
for most of the other common rules, there were no prior results (except for the fact that the
27
Xia & Conitzer
problems are easy for many of these rules when each partial order is either a linear order
or empty, that is, the standard manipulation problem).1
1.1 Our Contributions
In this paper, we characterize the complexity of the possible and necessary winner problems
for some of the most important other rules—specifically, a class of positional scoring rules,
Copeland, maximin, Bucklin, ranked pairs, voting trees, and plurality with runoff. We
show that the possible winner problems are NP-complete for all these rules except the
possible unique winner problem with respect to plurality with runoff. We also show that the
necessary winner problems are coNP-complete for the Copeland, ranked pairs, and voting
trees; and the necessary co-winner problem is coNP-complete for plurality with runoff. For
the remaining cases, we present polynomial-time algorithms. Our results are summarized
in Table 1.
STV
Plurality
Veto
Pos. scoring
(incl. Borda, k-approval)
Copeland
Maximin
Bucklin
Ranked pairs
Voting trees
(incl. balanced trees)
Plu. w/ runoff
Possible Winner
NP-complete
(Bartholdi & Orlin, 1991)
P2
P3
NP-complete
4
NP-complete
NP-complete
NP-complete
NP-complete
4
NP-complete
4
4
4
4
NP-complete (unique winner)
P (co-winner)
Necessary Winner
coNP-complete
(Bartholdi & Orlin, 1991)
P2
P3
P
coNP-complete
P
P
coNP-complete
4
coNP-complete
4
4
P (unique winner)
coNP-complete (co-winner)
4
Table 1: Summary of complexity of possible/necessary winner problems with respect to
common voting rules. Unless otherwise mentioned, the results do not depend on
whether we consider the unique-winner or the co-winner version of the problem.
1. An earlier paper (Konczak & Lang, 2005) studied these problems for positional scoring rules, and claimed
that the problems are polynomial-time solvable for positional scoring rules; however, there was a subtle
mistake in their proofs. We will show that the possible winner problem is in fact NP-complete for some
positional scoring rules. We will also give a correct proof that the necessary winner problem is indeed
polynomial-time solvable for all positional scoring rules.
2. Easy to prove; also proved in the work of Betzler and Dorn (2010), and follows from the bribery algorithm
by Faliszewski (2008).
3. Easy to prove, also proved in the work of Betzler and Dorn (2010).
4. Hardness results hold even when the number of unknown pairs in each partial order is no more than a
constant.
28
Determining Possible and Necessary Winners Given Partial Orders
This paper is a significant extension of the conference version of this work (Xia &
Conitzer, 2008): this extended version includes all the proofs, and the results on voting trees,
plurality with runoff, and k-approval are new. The conference version also did not mention
plurality and veto; these results are easy and follow from known results, as explained in the
footnotes under the table.
1.2 Subsequent Work since the Conference Version
Since the conference version of this work, the complexity of the possible winner problem
with respect to any positional scoring rule has been fully characterized (Betzler & Dorn,
2010; Baumeister & Rothe, 2010). By the theorems of Betzler and Dorn (2010), the possible
winner problem is NP-complete with respect to Borda and k-approval. Still, these hardness
results do not directly imply the hardness results obtained for positional scoring rules in
this paper—we prove that the hardness results for Borda and k-approval hold even when
the number of undetermined pairs in each vote is no more than 4.
Also, a special case of the possible and necessary winner problems where new alternatives
join the election after the voters’ preferences over the initial alternatives have been fully
revealed has been proposed and studied in the work of Chevaleyre, Lang, Maudet, and
Monnot (2010). It has been shown that the possible-winner-with-new-alternatives problem
is NP-complete for maximin, Copeland (Xia, Lang, & Monnot, 2011), and k-approval when
k ≥ 3 and there are at least 3 new alternatives (Chevaleyre, Lang, Maudet, Monnot, & Xia,
2010); the problem is in P for Bucklin (when k ≥ 3) (Xia, Lang, & Monnot, 2011), Borda,
and k-approval (when k ≤ 2 or there are no more than two new alternatives) (Chevaleyre,
Lang, Maudet, Monnot, & Xia, 2010).
Meanwhile, a number of new results on the complexity of the unweighted coalitional
manipulation problem have also been obtained. Specifically, the unweighted coalitional
manipulation problem has been shown to be NP-hard for Copelandα for any 0 ≤ α ≤ 1
(except for α = 12 ; these results even hold with two manipulators) (Faliszewski et al., 2008,
2010),5 maximin (two manipulators) and ranked pairs (one manipulator) (Xia et al., 2009),
and a specific positional scoring rule (two manipulators) (Xia, Conitzer, & Procaccia, 2010).
As we mentioned before, the unweighted coalitional manipulation problem is a special case
of the possible winner problem studied in this paper (where some partial orders are linear
orders and the others are empty); as a result, NP-hardness results for the unweighted
coalitional manipulation problem also imply NP-hardness of the possible winner problem
for these rules. We note that the NP-hardness results proved in this paper (except the
possible unique winner problem for plurality with runoff) hold even when for each partial
order, the number of pairs of alternatives for which the order is unknown is a constant.
Therefore, the subsequent research on the unweighted coalitional manipulation does not
completely imply the NP-hardness results that we prove in this paper for the possible
winner problem for Copeland, maximin, ranked pairs, and positional scoring rules.
Elkind et al. (2009) showed that the possible winner problem also reduces to the swap
bribery problem, in which an interested party can pay voters to swap adjacent alternatives
5. Faliszewksi et al. (2008) also study the case of weighted coalitional manipulation with three alternatives
for Copeland, and show that how hard this problem is depends both on α and whether we consider the
unique-winner or the co-winner variant of the problem. We do not study weighted votes in this paper.
29
Xia & Conitzer
in their rankings, but the price to swap two alternatives depends on both the identity of
the alternatives and the identity of the voter. That is, (with respect to a fixed voting rule)
the computational complexity of the swap bribery problem is at least as high as that of the
possible winner problem, in terms of polynomial-time reductions.
The complexity of the possible winner problem has also been studied from a fixedparameter tractability perspective, for parameters such as the number of alternatives, the
number of voters, and the number of unknown pairs in each vote (Betzler, Hemmann, &
Niedermeier, 2009). Finally, the counting version of the possible winner problem has also
been studied (Bachrach, Betzler, & Faliszewski, 2010).
2. Preliminaries
Let C = {c1 , . . . , cm } be the set of alternatives (or candidates). A linear order on C is
a transitive, antisymmetric, and total relation on C. The set of all linear orders on C is
denoted by L(C). An n-voter profile P on C consists of n linear orders on C. That is,
P = (V1 , . . . , Vn ), where for every i ≤ n, Vi ∈ L(C). The set of all profiles on C is denoted
by P (C). In the remainder of the paper, m denotes the number of alternatives and n denotes
the number of voters.
A voting rule r is a function from the set of all profiles on C to the set of (nonempty)
subsets of C, that is, r : P (C) → 2C \ ∅. The following are some common voting rules.
1. (Positional) scoring rules: A positional scoring rule is defined by a scoring vector
~sm = (~sm (1), . . . , ~sm (m)) of m non-negative integers, where ~sm (1) ≥ · · · ≥ ~sm (m).
For any vote V ∈ L(C) and any c ∈ C, let s(V, c) = ~smP
(j), where j is the rank of
c in V . For any profile P = (V1 , . . . , Vn ), let s(P, c) = ni=1 s(Vi , c). The rule will
select c ∈ C so that s(P, c) is maximized. Some examples of positional scoring rules
are Borda, for which the scoring vector is (m − 1, m − 2, . . . , 0), plurality, for which
the scoring vector is (1, 0, . . . , 0), veto, for which the scoring vector is (1, . . . , 1, 0), and
k-approval (1 ≤ k ≤ m − 1), for which the scoring vector is (1, . . . , 1, 0, . . . , 0). In this
| {z }
k
paper, we assume that the scoring vector can be computed in polynomial time.
2. Copeland: For any two alternatives ci and cj , we can simulate a pairwise election
between them, by seeing how many votes rank ci ahead of cj , and how many rank cj
ahead of ci . ci wins if and only if the majority of votes rank ci ahead of cj . Then,
an alternative receives one point for each win in a pairwise election. (Typically, an
alternative also receives half a point for each pairwise tie, but this will not matter for
our results.) A winner is an alternative who has the highest score.
3. Maximin (a.k.a. Simpson): Let NP (ci , cj ) denote the number of votes that rank ci
ahead of cj in the profile P . A winner is an alternative c that maximizes min{NP (c, c′ ) :
c′ ∈ C, c′ 6= c}.
4. Bucklin: An alternative c’s Bucklin score is the smallest number k such that more
than half of the votes rank c among the top k alternatives. A winner is an alternative
who has the smallest Bucklin score. (Sometimes, ties are broken by the number of
30
Determining Possible and Necessary Winners Given Partial Orders
votes that rank an alternative among the top k position, but for simplicity we will
not consider this tiebreaking rule here.)
5. Ranked pairs: This rule first creates an entire ranking of all the alternatives. NP (ci , cj )
is defined as for the maximin rule. In each step, we will consider a pair of alternatives
ci , cj that we have not previously considered; specifically, we choose the remaining
pair with the highest NP (ci , cj ). We then fix the order ci > cj , unless this contradicts
previous orders that we fixed (that is, it violates transitivity). We continue until we
have considered all pairs of alternatives (hence we have a full ranking). The alternative
at the top of the ranking wins.
6. Voting trees: A voting tree is a binary tree with m leaves, where each leaf is associated
with an alternative. In each round, there is a pairwise election between an alternative
ci and its sibling cj : if the majority of voters prefer ci to cj , then cj is eliminated,
and ci is associated with the parent of these two nodes; similarly, if the majority of
voters prefer cj to ci , then ci is eliminated, and cj is associated with the parent of
these two nodes. The alternative that is associated with the root of the tree (wins all
its rounds) wins. Balanced voting trees are also known as cup, knockout tournaments
or single-elimination tournaments.
7. Plurality with runoff: The rule has two steps. In the first step, all alternatives except
the two that are ranked in the top position for most times are eliminated, and the
votes transfer to the second round, in which the plurality rule (a.k.a. majority rule in
case of two alternatives) is used to select the winner.
8. Single transferable vote (STV): The election has m rounds. In each round, the alternative that gets the minimal plurality score drops out, and is removed from all of
the votes (so that votes for this alternative transfer to another alternative in the next
round). The last-remaining alternative is the winner.
Given a profile P , the pairwise score difference DP (c, c′ ) of alternatives c and c′ is defined
as follows.
DP (c, c′ ) = NP (c, c′ ) − NP (c′ , c)
The subscript P is omitted when there is no risk of confusion. For a linear order V over
C, we let DV denote the pairwise score difference function of the profile that consists of a
single vote V . That is, DV = D{V } . It follows from the definition that D(c, c′ ) = −D(c′ , c).
We note that although maximin, ranked pairs, and voting trees are based on pairwise scores,
they can also be computed by pairwise score differences in the same way, because for any
profile P of n votes, and any pair of alternatives (c, c′ ), we have DP (c, c′ ) = 2NP (c, c′ ) − n.
We adopt the parallel-universes tiebreaking (Conitzer, Rognlie, & Xia, 2009) to define
the winning alternatives for the rules that have multiple rounds (i.e., ranked pairs, voting
trees, plurality with runoff, and STV). That is, an alternative c is a winner if and only if
there exists a way to break ties in all of the steps such that c is the winner. For example,
an alternative c is a winner for a voting tree, if there exists a way to break ties in the
pairwise elections in the voting process, such that c wins. A partial order on C is a reflexive,
transitive, and antisymmetric relation on C. We say a linear order V extends a partial order
O if O ⊆ V .
31
Xia & Conitzer
Definition 1 A linear order V on C extends a partial order O on C if for every pair of
alternatives c, c′ ∈ C, c ≻O c′ ⇒ c ≻V c′ .
Throughout the paper we use the following notation. Let V denote a linear order over C;
let O denote a partial order over C; let P denote a profile of linear orders; let Pposet denote
a profile of partial orders.
3. Possible/Necessary Winners
We are now ready to define possible (necessary) winners, which were first introduced by
Konczak and Lang (2005).
Definition 2 Given a profile of partial orders Pposet = (O1 , . . . , On ) on C, we say that an
alternative c ∈ C is: (1) a possible winner if there exists P = (V1 , . . . , Vn ) such that each Vi
extends Oi , and r(P ) = {c}; (2) a necessary winner if for every P = (V1 , . . . , Vn ) such that
each Vi extends Oi , r(P ) = {c}; (3) a possible co-winner if there exists P = (V1 , . . . , Vn ) such
that each Vi extends Oi , and c ∈ r(P ); (4) a necessary co-winner if for any P = (V1 , . . . , Vn )
such that each Vi extends Oi , c ∈ r(P ).
Example 1 Let there be three alternatives {c1 , c2 , c3 }. Three partial orders are illustrated
in Figure 1. Let Pposet = (O1 , O2 , O3 ). c1 is a possible (co-)winner of Pposet with respect to
plurality, because we can complete O1 by adding c2 ≻ c3 , complete O2 by adding c1 ≻ c2 ,
and complete O3 by adding c1 ≻ c2 and c1 ≻ c3 ; then, c1 is the only winner. However, c1 is
not a necessary (co-)winner, because we can complete O1 by adding c2 ≻ c3 , complete O2 by
adding c2 ≻ c1 , and complete O3 by adding c2 ≻ c1 and c1 ≻ c3 ; then, c2 is the only winner.
O1
c2
c1
O2
O3
c1
c3
c1
c3
c2
c2
c3
Figure 1: Partial orders.
′
However, if we let Pposet
= (O1 , O1 , O2 ), then c1 is the (only) necessary winner, because
c1 will be ranked first in at least two votes.
Now, we define the computational problems studied in this paper:
Definition 3 Define the problem Possible Winner (PW) with respect to voting rule r to be:
given a profile Pposet of partial orders and an alternative c, we are asked whether or not c
is a possible winner for Pposet with respect to r.
Necessary Winner (NW), Possible co-Winner (PcW), and Necessary co-Winner (NcW)
are defined similarly.
A natural first question is how these problems are related to each other. It turns out
that (holding the voting rule fixed) there exists a polynomial-time Turing reduction from
NW to PcW. That is, if PcW is in P, then NW is also in P.
Proposition 1 For any voting rule r, if computing PcW with respect to r is in P, then
computing NW with respect to r is also in P .
32
Determining Possible and Necessary Winners Given Partial Orders
Proof. Because r never outputs ∅, an alternative c is a necessary unique winner with respect
to r if and only if for every alternative d (d 6= c), d is not a possible co-winner. Therefore, if
we have a polynomial-time algorithm that solves the PcW problem with respect to r, then
to solve the NW problem, we simply run the algorithm for every alternative d (d 6= c). If
any d 6= c is a possible co-winner, then we output that c is not a necessary unique winner;
otherwise, we output that c is a necessary unique winner.
2
There is no similar relationship between the PW and NcW problems. It is true that if
some alternative d (d 6= c) is a possible unique winner, then c is not a necessary co-winner.
However, it is possible that even if no alternative d (d 6= c) is a possible unique winner, c
is still not a necessary co-winner. For example, let Pposet = (c2 ≻ c3 ≻ c1 , c3 ≻ c2 ≻ c1 ).
Because Pposet is already composed of linear orders, it has only one extension (itself). It
follows that there is no possible unique winner for Pposet with respect to plurality, but clearly
c1 is not a necessary co-winner. More generally, we have the following proposition, which
says that for any pair of different problems X, Y ∈ {PW, PcW, NW, NcW}, the answer to
Y cannot be computed from only the answers to X for all alternatives, unless X =NW and
Y =PcW. (This holds even when the rule is plurality).
Proposition 2 Suppose m ≥ 3. Let X, Y ∈ {P W, P cW, N W, N cW } be such that (1) X6=Y
and (2) X6=PcW or Y6=NW. There exist two profiles Pposet and P̄poset of partial orders (with
|Pposet | = |P̄poset |), such that (1) for every alternative c, the answers to X with respect to
plurality are the same for both Pposet and P̄poset , and (2) there exists an alternative d for
which the answers to Y with respect to plurality for Pposet and P̄poset are different.
Proof. The proof is by construction. For any partial order O on C, we let T op(O) denote
the set of alternatives c′ for which there exists at least one extension of O where c′ is in the
top position. For any set C ′ ⊆ C, we define OC ′ to be an arbitrary partial order such that
T op(OC ′ ) = C ′ . For simplicity, we write Oc′ for O{c′ } . For example, when m = 3, we can let
Oc1 = O{c1 } = c1 ≻ c2 ≻ c3 , that is, Oc1 is a linear order. As another example, O{c1 ,c2 } is
the partial order that is obtained from [c1 ≻ c2 ≻ c3 ] by removing c1 ≻ c2 .
Let d = c1 . We next specify the profiles Pposet and P̄poset for the following (exhaustive)
list of cases (X, Y ).
• (PW, NW) and (PW, NcW). (1) Let Pposet be composed of 5 copies of Oc1 . c1 is a
necessary unique/co-winner. (2) Let P̄poset = (Oc1 , Oc2 , Oc2 , O{c1 ,c3 } , O{c1 ,c3 } ). c1 is
the unique winner for one extension, {c1 , c2 } are the winners for two extensions, and
{c2 , c3 } are the winners for one extension. Therefore, c1 is not a necessary unique/cowinner. We note that c1 is the only possible unique winner for both profiles.
• (PW, PcW). (1) Let Pposet = (Oc1 , Oc2 ). {c1 , c2 } are the winners for the only extension, which means that c1 is a possible co-winner. (2) Let P̄poset = (Oc2 , Oc3 ).
{c2 , c3 } are the winners for the only extension, which means that c1 is not a possible
co-winner. We note that there is no possible unique winner for either profile.
• (NcW, NW). (1) Let Pposet = (Oc1 , Oc1 ). c1 is the only winner in the only extension,
which means that c1 is the necessary unique winner. (2) Let P̄poset = (Oc1 , O{c1 ,c2 } ).
c1 is the only winner for one extension, and {c1 , c2 } are the winners for the other
33
Xia & Conitzer
extension, which means that c1 is not the necessary unique winner. We note that c1
is the only necessary co-winner for both profiles.
• (PcW, PW) and (PcW, NcW). (1) Let Pposet = (O{c1 ,c2 } , O{c1 ,c2 } ). c1 is the unique
winner for one extension, c2 is the unique winner for one extension, and {c1 , c2 } are the
winners for two extensions. Therefore, c1 is a possible unique winner (meanwhile, c1
is not a necessary co-winner). (2) Let P̄poset = (Oc1 , Oc2 ). {c1 , c2 } are the winners for
the only extension, which means that c1 is not a possible unique winner (meanwhile,
c1 is a necessary co-winner). We note that c1 and c2 are the only possible co-winners
for both profiles.
• (NW, PW), (NW, PcW), (NcW, PW), (NcW, PcW). (1) Let Pposet = (O{c1 ,c2 } , O{c1 ,c2 } ).
c1 is the unique winner for one extension, c2 is the unique winner for one extension,
and {c1 , c2 } are the winners for two extensions. Therefore, c1 is a possible unique/cowinner. (2) Let P̄poset = (O{c2 ,c3 } , O{c2 ,c3 } ). c2 is the unique winner for one extension,
c3 is the unique winner for one extension, and {c2 , c3 } are the winners for two extensions. Therefore, c1 is not a possible unique/co-winner. We note that there is no
necessary unique/co-winner for either profile.
• (NW, NcW). (1) Let Pposet = (Oc1 , Oc2 ). {c1 , c2 } are the winners for the only extension, which means that c1 is a necessary co-winner. (2) Let P̄poset = (Oc2 , O{c1 ,c2 } ).
{c1 , c2 } are the winners for one extension, and c2 is the unique winner for the other
extension, which means that c1 is not a necessary co-winner. We note that there is
no necessary unique winner for either profile.
2
4. Hardness Results
In this section, we prove that PW (PcW) is NP-complete with respect to a class of positional
scoring rules, Copeland, maximin, Bucklin, ranked pairs, and voting trees; NW (NcW) is
coNP-complete with respect to Copeland, ranked pairs, and voting trees; and PW is NPcomplete and NcW is coNP-complete with respect to plurality with runoff. For positional
scoring rules, we will not show that PW is hard for all positional scoring rules—in fact, for
plurality and veto, PW is easy; rather, we will give a sufficient condition on a positional
scoring rule under which PW is hard. Most notably, Borda satisfies this condition. kapproval does not satisfy this condition, and we will provide a distinct proof for PW (PcW)
with respect to k-approval (k ≥ 2).6 Similarly for voting trees, we provide a necessary
condition under which the hardness results hold, and most notably, balanced voting trees
satisfy this condition. All of these results (except the one for PW with respect to plurality
with runoff) hold even when the partial orders are “almost” linear orders. That is, the
number of undetermined pairs in each partial order is bounded above by a constant.
6. After the conference version of this paper (Xia & Conitzer, 2008), Betzler and Dorn proved a dichotomy
theorem for possible winner problems with respect to positional scoring rules (Betzler & Dorn, 2010).
According to their theorem, PW with respect to k-approval (k ≥ 2) is NP-complete. In this paper, we
prove that the problem is NP-complete, even when the number of undetermined pairs in each vote is no
more than 4.
34
Determining Possible and Necessary Winners Given Partial Orders
All the hardness results are proved by reductions from the exact 3-cover (X3C)
problem, except for the result for k-approval, which is proved by a reduction from 3-SAT.
X3C and 3-SAT are known to be NP-complete (Garey & Johnson, 1979). The two problems
are defined as follows.
Definition 4 (X3C) We are given a set V = {v1 , . . . , vq } and a collection S = {S1 , . . . , St },
where for each i ≤ t, Si = {vl(i,1) , vl(i,2) , vl(i,3) } ⊆ V, with 1 ≤ l(i, 1), l(i, 2), l(i, 3) ≤ q. We
are asked whether we can cover all of the elements in V with non-overlapping sets in S.
Definition 5 (3-SAT) We are given a formula in conjunctive normal form: F = C1 ∧
. . . ∧ Ct over binary variables x1 , . . . , xq , where for any j ≤ t, Cj is called a clause. For any
j ≤ t, Cj = lj1 ∨ lj2 ∨ lj3 , where for any α ∈ {1, 2, 3}, ljα is called a literal, and there exists
i ≤ q such that either ljα = xi or ljα = ¬xi . We are asked whether there exists a valuation
of the variables under which F is true.
In each proof, the election instance that we construct from an arbitrary X3C (or 3-SAT)
instance consists of two parts. The first part is a set of partial orders that encode the X3C
(or 3-SAT) instance.7 For example, in some of our PW reductions from X3C, the first part
is structured as follows: in order for c to win, there is an alternative c′ that needs to be
placed in a “high” position in the extensions of the partial orders at least some number
of times. However, for each of the partial orders, there is a set of three alternatives such
that if we put c′ in a high position in an extension of that partial order, then these three
alternatives must be ranked in even higher positions (that is, c′ “pushes up” these three
alternatives in the extension). These sets of three alternatives that must sometimes be
pushed up correspond to the sets of three elements in the X3C instance. The PW instance
is set up in such a way that if the same X3C-element alternative is pushed up by c′ in two
different votes in the first part, then c cannot win. Thus, the sets of alternatives that we
push up must be disjoint, and the instance is set up in such a way that we need to put c′ in
a high position often enough that the pushed-up 3-sets actually must constitute an exact
cover. The second part is a set of linear orders (that is, in the second part, everything is
determined) whose purpose is, informally stated, to adjust the scores of the alternatives so
that we get the properties just described.
First we introduce some notation to represent the set of all pairwise comparisons in a
linear order.
Definition 6 For any set {a1 , . . . , al }, let O(a1 , . . . , al ) = {(ai , aj ) : i < j}.
That is, O(a1 , . . . , al ) is the set of all ordered pairs consistent with the linear order a1 ≻
. . . ≻ al . For example, O(a, b, c) = {(a, b), (b, c), (a, c)}. The following notation will be
frequently used in the proofs.
Definition 7 For any set A and any partition A1 , . . . , Ak of A, let O(A1 , . . . , Ak ) denote
an arbitrary linear order on A that is consistent with A1 ≻ A2 ≻ . . . ≻ Ak .
7. Typically, we define the partial orders by first defining some linear orders and then removing some of
the pairwise ordering constraints.
35
Xia & Conitzer
The proofs that make use of this notation only use the fact that O(A1 , . . . , Ak ) is consistent
with A1 ≻ . . . ≻ Ak , so that the order within each Ai (i ≤ k) does not matter. For example,
let A = {a, b, c, d}, A1 = {a}, A2 = {b, c}, A3 = {d}. There are two linear orders that are
consistent with A1 ≻ A2 ≻ A3 . They are a ≻ b ≻ c ≻ d and a ≻ c ≻ b ≻ d. O(A1 , A2 , A3 )
can denote either of them, e.g., O(A1 , A2 , A3 ) = a ≻ b ≻ c ≻ d. Sometimes we use the
notation “Others” to denote the set of all objects that are not mentioned in the context.
For example, O(A1 , A2 , A3 ) = O(Others, A2 , A3 ) = O(A1 , Others, A3 ) = O(A1 , A2 , Others).
Usually, a positional scoring rule is defined for a fixed number of alternatives (that is,
m is fixed). If we hold m fixed, then there exist polynomial-time algorithms for both PW
and NW (Walsh, 2007; Conitzer et al., 2007). However, there are positional scoring rules
that are defined for any number of alternatives—for example, Borda, plurality, and veto.
For such positional scoring rules, the number of alternatives is not bounded, and indeed, we
will prove that PW is not always easy with respect to such rules. To study the complexity
of social choice problems that involve a growing number of alternatives, it is necessary to
associate a scoring vector with every natural number of alternatives. In the remainder of the
paper, a positional scoring rule r consists of a sequence of scoring vectors {~s1 , ~s2 , . . .} such
that for each i ∈ N, ~si is the scoring vector for i alternatives. The next theorem provides a
sufficient condition on a positional scoring rule for PW to be NP-complete. In this paper,
all the PW/PcW problems are in NP, and all the NW/NcW problems are in coNP. This
follows from the fact that, given an extension of the partial orders to linear orders, we can
compute the winner(s) in polynomial-time for the rules studied in this paper. With this
in mind, we only prove the hardness direction in the NP-completeness/coNP-completeness
proofs. There do exist rules for which computing the winner(s) is NP-hard, for example,
Dodgson’s rule (Bartholdi, Tovey, & Trick, 1989b; Hemaspaandra, Hemaspaandra, & Rothe,
1997) and Young’s rule (Rothe, Spakowski, & Vogel, 2003), but we will not study any rules
for which computing the winners is hard here.
Theorem 1 Let r be a positional scoring rule with scoring vectors {~s1 , ~s2 , . . .}. Suppose
there exists a polynomial function f (x) such that for any x ∈ N, there exist l and k with
x ≤ l ≤ f (x) and k ≤ l − 4, and satisfy the following conditions:
(1) ~sl (k) − ~sl (k + 1) = ~sl (k + 1) − ~sl (k + 2) = ~sl (k + 2) − ~sl (k + 3) > 0,
(2) ~sl (k + 3) − ~sl (k + 4) > 0,
Then, PW and PcW are both NP-complete with respect to r, even when the number of
undetermined pairs in each vote is no more than 4.
Proof. Given an X3C instance V = {v1 , . . . , vq }, S = {S1 , . . . , St }, let q + 3 ≤ l ≤ f (q + 3)
(where q is the number of elements in the X3C instance) satisfy the two conditions in
the assumption, and let k ≤ l − 4 satisfy ~sl (k) − ~sl (k + 1) = ~sl (k + 1) − ~sl (k + 2) =
~sl (k + 2) − ~sl (k + 3) > 0, and ~sl (k + 3) − ~sl (k + 4) > 0. Let K1 = ~sl (k) − ~sl (k + 1) and
K2 = ~sl (k + 3) − ~sl (k + 4). We construct the PW instance as follows.
Alternatives: C = {c, w, d} ∪ V ∪ A, where d and A = {a1 , . . . , al−q−3 } are auxiliary
alternatives.
First part (P1 ) of the profile: For each j ≤ t, choose an arbitrary set Bj ⊂ C\(Si ∪{w, d})
36
Determining Possible and Necessary Winners Given Partial Orders
with |Bj | = k − 1. We define a partial order Oj as follows.
Oj = O(Bj , w, Si , d, Others) \ [{w} × (Sj ∪ {d})]
That is, Oj is a partial order that agrees with Bj ≻ w ≻ Sj ≻ d ≻ Others, except that the
pairwise relations between (w, Sj ) and (w, d) are not determined (and these are the only 4
undetermined relations). Let P1 = {O1 , . . . , Ot }.
Second part (P2 ) of the profile: We first give the properties that we need P2 to satisfy;
we will show how to construct P2 in polynomial time later in the proof. All votes in P2
are linear orders. Let P1′ = {O(Bj , w, Sj , d, Others) : j ≤ t}. That is, P1′ (|P1′ | = t) is an
extension of P1 (in fact, P1′ is the set of linear orders that we started with to obtain P1 ,
before removing some of the pairwise relations). P2 is a set of linear orders such that the
following holds for Q = P1′ ∪ P2 :
(1) For every i ≤ q, ~sl (Q, c) − ~sl (Q, vi ) = 2K1 , ~sl (Q, w) − ~sl (Q, c) =
q
3
× (3K1 + K2 ) − K2 .
(2) For every i ≤ q, the scores of vi and w, c are higher than those of the other alternatives
in any extension of P1 ∪ P2 .
(3) P2 ’s size is polynomial in t + q.
Suppose there exists an extension P1∗ of P1 such that c is the winner for P1∗ ∪ P2 . For each
i ≤ q, vi is not ranked higher than w more than once in P1∗ , because otherwise the total
score of vi will be higher than or equal to the total score of c. We recall that the score
difference between w and c in P1′ ∪ P2 is 3q × (3K1 + K2 ) − K2 . Therefore, if there exists j ≤ t
such that in the extension of Oj , w is ranked above c, and is ranked below some alternative
in Sj , then there must exist an alternative in V that is ranked above w at least two times
in P1∗ , which contradicts the assumption that c is the winner. It follows that in order for
the total score of w to be lower than the total score of c, w is ranked lower than d at least
q
∗
3 times. Let I denote the set of subscripts of votes in P1 for which w is ranked lower than
d; then, SI = {Si : i ∈ I} is a solution to the X3C instance.
Conversely, given a solution to the X3C instance, let I be the set of indices of Si that
are included in the X3C. Then, a solution to the possible winner instance can be obtained
by ranking d ahead of w exactly in the votes with subscripts in I. Therefore, c is a possible
winner if and only if there exists a solution to the X3C problem, which means that PW and
PcW are NP-complete with respect to positional scoring rules that satisfy the conditions
stated in the theorem.
For possible co-winner, we replace (1) by the following condition.
(1’) For every i ≤ q, s(Q, c) − s(Q, vi ) = K1 , s(Q, w) − s(Q, c) = 3q × (3K1 + K2 ).
Next, we show how to construct the profile P2 so that it satisfies the three conditions.
P2 consists of the following three parts.
The first part, P2′ . Let MV denote the cyclic permutation among V ∪ {c, w}. That
is, MV = c → w → v1 → v2 → . . . → vq → c. For any j ∈ N, and any e ∈
V ∪ {c, w}, we let MV0 (e) = e, and MVj (e) = MV (MVj−1 (e)). The first part of P2 is
P2′ = MV (P1′ ) ∪ MV2 (P1′ ) ∪ . . . ∪ MVq+1 (P1′ ). It follows that for any e, e′ ∈ V ∪ {c, w},
~sl (P1′ ∪ P2′ , e) = ~sl (P1′ ∪ P2′ , e′ ).
37
Xia & Conitzer
The second part, P2∗ . Choose an arbitrary set B ⊆ C\{d, w, c} such that |B| = k−1,
and an arbitrary set A′ ⊆ C \ (B ∪ {d, w}) such that |A′ | = 3. We define the following
partial orders.
V1
V2
V3
V4
= O(B, d, w, c, Others),
= O(B, d, c, w, Others),
= O(B, d, A′ , w, Others),
= O(B, A′ , d, w, Others),
V1′
V2′
V3′
V4′
= O(B, c, w, d, Others)
= O(B, w, c, d, Others)
= O(B, w, A′ , d, Others)
= O(B, A′ , w, d, Others)
P2∗ is defined as follows.
P2∗ ={V1′ , V2′ , MV (V1 ), MV (V2 ), . . . , MVq+1 (V1 ), MVq+1 (V2 )}
q
∪ × {V3′ , MV (V3 ), . . . , MVq+1 (V3 )} ∪ {V4′ , MV (V4 ), . . . , MVq+1 (V4 )}
3
q
q
Here ×{V3′ , MV (V3 ), . . . , MVq+1 (V3 )} represents copies of {V3′ , MV (V3 ), . . . , MVq+1 (V3 )}.
3
3
Putting P2′ and P2∗ together, the condition (1) in the description of P2 is satisfied.
The third part, P̃2 . P̃2 is defined in a way such that in P̃2 , the total scores of each
pair of alternatives in V ∪ {c, w} are the same, and the total score of any alternative
in V ∪ {c, w} is significantly higher than the total score of any alternative in A ∪ {d}.
Let MO be a cyclic permutation among A ∪ {d}. That is, we let MO = d → a1 →
a2 → . . . → al−q−3 → d. Let V5 = O(V, c, w, Others). We define the third part P̃2 as
follows.
P̃2 = (|P1 ∪ P2′ ∪ P2∗ | + 1) × {MVi (MOj (V5 )) : i ≤ q + 2, j ≤ l − q − 2}
We note that |P1 ∪ P2′ ∪ P2∗ | + 1 is polynomial in t + q. Therefore, the size of P̃2 is
polynomial in t + q.
2
Theorem 1 provides a sufficient condition on positional scoring rules for PW and PcW
to be NP-complete. It can be applied to prove NP-completeness of PW and PcW for Borda,
as the following corollary shows.
Corollary 1 PW and PcW are NP-complete with respect to Borda, even when the number
of undetermined pairs in each vote is no more than 4.
Proof. For any l ∈ N, the scoring vector ~sl for Borda is (l − 1, l − 2, . . . , 0). If we let
f (x) = x, l = x, and k = l − 4, then the conditions in Theorem 1 are all satisfied, and the
claim follows.
2
Theorem 1 does not apply to k-approval. As we noted in Table 1, the possible and
necessary winner problems with respect to plurality (1-approval) are in P. We next show
that for any fixed k ∈ N with k ≥ 2, PW and PcW with respect to k-approval are NPcomplete.
Theorem 2 For any fixed natural number k ≥ 2, PW and PcW are NP-complete with
respect to k-approval, even when the number of undetermined pairs in each vote is no more
than 4.
38
Determining Possible and Necessary Winners Given Partial Orders
Proof. We first prove the NP-hardness for PW with respect to 2-approval. Then, we show
how to extend the proof to any k ∈ N, where k ≥ 2.
We prove the NP-hardness by a reduction from 3-SAT. Given an instance of 3-SAT,
where there are q variables x1 , . . . , xq and a formula F = C1 ∧ . . . ∧ Ct , we construct an
instance of PW with respect to 2-approval as follows. Without loss of generality, we assume
that q + t ≥ 2 (generally, for any fixed k ∈ N, we can assume that q + t ≥ k), and that in
each clause of F , no variable appears more than once.
Alternatives: C = {c} ∪ C ∪ X ∪ X1 ∪ X1¬ ∪ . . . ∪ Xq ∪ Xq¬ ∪ D1 ∪ D1¬ ∪ . . . ∪ Dq ∪ Dq¬ ,
where C = {c1 , . . . , ct }, X = {x1 , . . . , xq , ¬x1 , . . . , ¬xq }, and for each i ≤ q,
– Xi = {x1i , . . . , xti , x̂1i , . . . , x̂ti }, Xi¬ = {¬x1i , . . . , ¬xti , ¬x̂1i , . . . , ¬x̂ti };
– Di = {d1i , . . . , dti }, Di¬ = {¬d1i , . . . , ¬dti }.
In words, C represents the set of clauses in F ; xi and ¬xi represent the values that the
Boolean variable xi can take; Xi (respectively, Xi¬ ) represents a set of “duplicates” of
xi (respectively, ¬xi ); Di (respectively, Di¬ ) represents a set of auxiliary alternatives
that are associated with xi (respectively, ¬xi ).
First part P1 of the profile: For each i ≤ q, we let Vi = O(c, xi , ¬xi , Others).
Then, we obtain Oi by removing (xi , ¬xi ) from Vi . That is, in any extension of Oi ,
c must be in the top position, and one of xi and ¬xi must be in the second position
(and the other, in the third). We will see later in the proof that the two extensions
of Oi correspond to the two valuations of the variable xi , i.e., xi being ranked in the
second position (while ¬xi is ranked in the third position) corresponds to xi = f alse.
For each i ≤ q, we define the following linear orders.
Vi1 = O(xi , d1i , x1i , x̂1i , Others)
∀2 ≤ j ≤ t, Vij = O(x̂j−1
, dji , xji , x̂ji , Others)
i
Then, we obtain Oi1 from Vi1 by removing {xi , d1i } × {x1i , x̂1i }; for each 2 ≤ j ≤ t,
we obtain Oij from Vij by removing {x̂j−1
, dji } × {xji , x̂ji }. We define Vij,¬ and Oij,¬
i
similarly by adding ¬ to each alternative explicitly written in the definition of Vij and
Oij , respectively (that is, the alternatives that are not in “Others”). For example,
Vi1,¬ = O(¬xi , ¬d1i , ¬x1i , ¬x̂1i , Others).
For each j ≤ t, let fj : X → X1 ∪ X1¬ ∪ . . . ∪ Xq ∪ Xq¬ be the mapping such
that for any x ∈ X, fj (x) is obtained from x by adding j to the superscript of
x. For example, fj (x1 ) = xji and fj (¬x2 ) = ¬xj2 . For each j ≤ t, let Wj =
O(c, fj (lj1 ), fj (lj2 ), fj (lj3 ), Others). Then, we obtain Qj from Wj by removing
{fj (lj1 ), fj (lj2 ), fj (lj3 )} × {fj (lj1 ), fj (lj2 ), fj (lj3 )}
That is, in any extension of Qj , c must be in the top position, and one of {fj (lj1 ), fj (lj2 ),
fj (lj3 )} must be in the second position. We will see that the extensions of Qj correspond to how Cj (the jth clause) is satisfied under a valuation of x1 , . . . , xq .
We let P1 = {O1 , . . . , Oq } ∪ {Oij , Oij,¬ : ∀i ≤ q, j ≤ t} ∪ {Qj : ∀j ≤ t}.
39
Xia & Conitzer
Second part P2 of the profile: for any profile P and any alternative c′ , we let
s2 (P, c′ ) denote the score of c′ in P , under 2-approval. That is, s2 (P, c′ ) is the number
of times that c′ is ranked in the top two positions in P . We let P2 be an arbitrary
profile of linear orders that satisfies the following conditions.
– s2 (P2 , c) = 0.
– For every i ≤ q and every j ≤ t, s2 (P2 , xi ) = s2 (P2 , ¬xi ) = s2 (P2 , xji ) =
s2 (P2 , ¬xji ) = s2 (P2 , x̂ji ) = s2 (P2 , ¬x̂ji ) = q + t − 2.
– For any c′ not mentioned above, s2 (P2 , c′ ) ≤ 1.
Because t + q ≥ 2, P2 is well-defined and |P2 | is bounded above by a polynomial of t and q
(we try to fit q + t − 2 copies of {xi , ¬xi , xji , ¬xji , x̂ji , ¬x̂ji : ∀i ≤ q, j ≤ t} into the top two
positions of ⌈(q + t − 2)(2q + 4qt)/2⌉ = q(q + t − 2)(2t + 1) votes). We note that the number
of undetermined pairs in each vote in P1 ∪ P2 is no more than 4.
Suppose there is a feasible solution to the 3-SAT instance. Let g denote a valuation of
x1 , . . . , xq under which F is satisfied. We define an extension of P1 ∪ P2 as follows.
• For every i ≤ q, if g(xi ) = true, then we define the following extensions of partial
orders in P1 .
– Let V̄i be the extension of Oi in which ¬xi is ranked in the second position.
– Let V̄i1 be an extension of Oi1 in which xi and d1i are ranked in the top two
positions; let V̄i1,¬ be an extension of Oi1,¬ in which ¬x1i and ¬x̂1i are ranked in
the top two positions.
– For every 2 ≤ j ≤ t, let V̄ij be an extension of Oij in which x̂j−1
and dji are
i
ranked in the top two positions.
– For every 2 ≤ j ≤ t, let V̄ij,¬ be an extension of Oij,¬ in which ¬xji and ¬x̂ji are
ranked in the top two positions.
• For every i ≤ q, if g(xi ) = f alse, then we define the following extensions (which are
similar to the extensions in the case where g(xi ) = true).
– Let V̄i be the extension of Oi in which xi is ranked in the second position.
– Let V̄i1,¬ be an extension of Oi1,¬ in which ¬xi and ¬d1i are ranked in the top two
positions; let V̄i1 be an extension of Oi1 in which x1i and x̂1i are ranked in the top
two positions.
– For every 2 ≤ j ≤ t, let V̄ij,¬ be an extension of Oij,¬ in which ¬x̂j−1
and ¬dji are
i
ranked in the top two positions.
– For every 2 ≤ j ≤ t, let V̄ij be an extension of Oij in which xji and x̂ji are ranked
in the top two positions.
• For every j ≤ t, if Cj is satisfied by xi = true (respectively, xi = f alse) for some
i ≤ q, then, we let W̄j be an extension of Qj in which xji (respectively, ¬xji ) is ranked
in the second position.
• Let P ∗ = {V̄1 , . . . , V̄q } ∪ {V̄ij , V̄ij,¬ : ∀i ≤ q, j ≤ t} ∪ {W̄1 , . . . , W̄t } ∪ P2 .
40
Determining Possible and Necessary Winners Given Partial Orders
It can be checked that in P ∗ \ P2 , every alternative c′ (c′ 6= c) is ranked in the two top
positions at most once. We recall that s2 (P2 , c′ ) ≤ q + t − 2 and s2 (P ∗ , c) = q + t. Therefore,
c is the unique winner.
Next, we show how to convert a feasible solution to PW to a feasible solution to the
3-SAT instance. Let P ∗ be an extension for which c is the unique winner. Let g be the
valuation such that for any i ≤ q, g(xi ) = true if and only if in the extension of Oi in P ∗ ,
¬xi is ranked in the second position. We prove the following claim to show that under g,
all clauses are satisfied.
Claim 1 For any i ≤ q, if g(xi ) = true (respectively, g(xi ) = f alse), then for every j ≤ t,
¬xji and ¬x̂ji (respectively, xji and x̂ji ) are ranked in the top two positions in the extension
of Oij,¬ (respectively, Oij ) in P ∗ .
Proof. For any i ≤ q, we prove the claim by induction on j. We only prove the case where
g(xi ) = true; the case where g(xi ) = f alse can be proved similarly.
Suppose g(xi ) = true. By definition, ¬xi is ranked in the second position in the extension of Oi in P ∗ . We recall that s2 (P2 , ¬xi ) = q + t − 2 = s2 (P ∗ , c) − 2. Because c is the
unique winner, ¬xi is not ranked in the top two positions in any extension of P1 \ {Oi }.
Specifically, ¬xi is not ranked in the top two positions in the extension of Oi1,¬ . We recall
that ¬xi ≻ ¬d1i in Oi1,¬ . Therefore, ¬d1i is not ranked in the top two positions in the
extension of Oi1,¬ (otherwise, ¬xi would also be ranked in the top two positions, which immediately prevents c from being the unique winner). We also note that ¬xi , ¬d1i , ¬x1i , ¬x̂1i
are the only four alternatives that can be ranked in the top two positions in an extension of
Oi1,¬ . It follows that in the extension of Oi1,¬ , ¬x1i , ¬x̂1i are ranked in the top two positions.
This means that the claim holds for j = 1.
Suppose the claim holds for all j with j ≤ j ′ . Following similar reasoning as in the
case where j = 1, we can prove that the claim holds for j = j ′ + 1. More precisely, by
′
′
the induction hypothesis, ¬x̂ji is ranked in the top two positions in the extension of Oij ,¬ .
′
′
Therefore, ¬x̂ji is not ranked in the top two positions in the extension of Oij +1,¬ (otherwise
′
the score of ¬x̂ji is at least as large as the score of c, which means that c is not a unique
′
′
′
′
winner). We recall that ¬x̂ji ≻ ¬dji +1 in Oij +1,¬ . Therefore, ¬dji +1 is not ranked in the
j ′ +1,¬
j′
top two positions in the extension of Oi
(otherwise ¬x̂i must also be ranked in the
top two positions, which immediately prevents c from being the unique winner). We also
′
′
′
′
note that ¬x̂ji , ¬dji +1 , ¬xji +1 , ¬x̂ji +1 are the only four alternatives that can be ranked in
′
′
the top two positions in an extension of Oij +1,¬ . It follows that in the extension of Oij +1,¬ ,
′
′
¬xji +1 and ¬x̂ji +1 are ranked in the top two positions. This means that the claim holds for
j = j ′ + 1.
Therefore, the claim holds for every j ≤ t.
2
We are now ready to show that under g, all the clauses are satisfied. Let j be a number
no more than t. If xji is ranked in the second position in the extension of Qj , then we must
have that g(xi ) = true. If not, then, from Claim 1, xji is ranked in the top two positions in
the extension of Oij , which means that xji is ranked in the top two positions in P ∗ \P2 at least
twice: once in Oij , and once in Qj . It follows that s2 (P ∗ , xji ) ≥ q+t−2+2 ≥ q+t = s2 (P ∗ , c),
which contradicts the assumption that c is the unique winner. Similarly, if in the extension of
41
Xia & Conitzer
Qj , ¬xji is ranked in the second position, then we must have that g(xi ) = f alse. This means
that under g, every clause Cj is satisfied by the valuation of the variable that corresponds
to the alternative that is ranked in the second position in the extension of Qj . Hence, F is
satisfied.
For PcW, we simply replace s2 (P2 , xi ) = s2 (P2 , ¬xi ) = s2 (P2 , xji ) = s2 (P2 , ¬xji ) =
s2 (P2 , x̂ji ) = s2 (P2 , ¬x̂ji ) = q + t − 2 in the definition for P2 by s2 (P2 , xi ) = s2 (P2 , ¬xi ) =
s2 (P2 , xji ) = s2 (P2 , ¬xji ) = s2 (P2 , x̂ji ) = s2 (P2 , ¬x̂ji ) = q + t − 1.
The reduction for k > 2 is similar to the case where k = 2. For any 3-SAT instance, let
P1 and P2 be the profile of partial orders defined for the case k = 2. For k > 2, we add
|P1 ∪ P2 | × (k − 2) new alternatives to the instance, and in each partial order in P1 ∪ P2 , we
let the top k − 2 positions be occupied by the new alternatives, and we put the remaining
new alternatives in the bottom positions, such that none of the new alternatives is ranked
in the top k positions more than once. Let P̄1 and P̄2 denote the profiles of partial orders
obtained in this way. It follows that c is a possible (co-)winner for P̄1 ∪ P̄2 with respect to
k-approval if and only if c is a possible (co-)winner for P1 ∪ P2 with respect to 2-approval.
2
Theorem 3 PW and PcW are NP-complete and NW and NcW are coNP-complete with
respect to Copeland, even when the number of undetermined pairs in each vote is at most
8.
Proof. We first prove the PW and NcW parts, in one reduction from X3C. Without loss
of generality, we can always assume that in the X3C instance, t is odd and t = q, because
if not, then we make the following changes to the X3C instance.
′
• If t > q, then we add 3(t − q) dummy elements v1′ , . . . , v3(t−q)
and 2(t − q) sets
′
′
′
′
′
′
′
′ }.
S1 , S1 , . . . , St−q , St−q , where for each i ≤ t − q, Si = {v3i−2 , v3i−1 , v3i
• If q > t, then we add q − t copies of S1 .
• If q = t and t is even, then we add three dummy elements v1′ , v2′ , v3′ , and three copies
of S1′ = {v1′ , v2′ , v3′ }.
In the new X3C instance, t = q, t is odd, the size of the instance is polynomial in the size
of the old one, and the new X3C instance has a feasible solution if and only if the old one
has.
Given an X3C instance V = {v1 , . . . , vq }, S = {S1 , . . . , St }, where q = t and t is odd, we
construct a PW instance as follows.
Alternatives: {c, w, d} ∪ V ∪ A ∪ B, where A = {a1 , . . . , at−2 }, B = {b1 , . . . , b7t }.
First part P1 of the profile: Let M be a cyclic permutation among B. That is, M =
b1 → b2 → . . . → b7t → b1 . Let VB = b1 ≻ b2 ≻ . . . ≻ b7t . For each i ≤ t, we obtain a partial
order by starting with O((V \ Si ), d, Si , w, c, M i (VB ), A), and then removing the ordering
relationships in ({d} ∪ Si ) × {w, c}.
Second part P2 of the profile:
2q
2q
+ 1 votes: for each i such that t + 1 ≤ i ≤ 2t −
+ 1, there is a vote that is
3
3
consistent with w ≻ c ≻ d ≻ V ≻ M i (VB ) ≻ A.
• t−
42
Determining Possible and Necessary Winners Given Partial Orders
•
•
q
2q
q
− 2 votes: for each i such that 2t −
+ 2 ≤ i ≤ 2t − − 1, there is a vote that is
3
3
3
consistent with w ≻ c ≻ d ≻ V ≻ M i (VB ) ≻ A.
q
q
− 2 votes: for each i such that 2t − ≤ i ≤ 2t − 3, there is a vote that is consistent
3
3
with w ≻ d ≻ c ≻ V ≻ M i (VB ) ≻ A.
• 2 votes: for each i such that 2t − 2 ≤ i ≤ 2t − 1, there is a vote that is consistent with
c ≻ w ≻ d ≻ V ≻ M i (VB ) ≻ A.
• 2 votes: for each i such that 2t ≤ i ≤ 2t + 1, there is a vote that is consistent with
d ≻ c ≻ V ≻ w ≻ M i (VB ) ≻ A.
•
•
1
1
(5t − 1) votes: for each i such that 2t + 2 ≤ i ≤ (9t + 1), there is a vote that is
2
2
consistent with w ≻ A ≻ c ≻ M i (VB ) ≻ V ≻ d.
1
1
(5t − 1) votes: for each i such that (9t + 3) ≤ i ≤ 7t, there is a vote that is
2
2
consistent with M i (VB ) ≻ V ≻ w ≻ d ≻ A ≻ c.
We note that the number of undetermined pairs in each vote is no more than 8.
Let P1′ denote the profile that extends P1 such that in each vote d and Si are ranked
higher than w and c, that is, P1′ = {O((V \ Si ), d, Si , w, c, B, A) : i ≤ t}. We make the
following observations on each pairwise election:
• w always defeats c, d, B, A, and for each i ≤ q, DP1′ ∪P2 (vi , w) = 3.
• c always defeats V, B, always loses to A, and DP1′ ∪P2 (d, c) =
2q
− 1.
3
• B always defeats d, V, A, and due to its cyclic order in the profile, bj always defeats
bj+1 , . . . , bj+ 1 (7t−1) , where for any i ∈ N, bi = bi+7t , and always loses to the other
2
alternatives in B.
Therefore, in P1′ ∪ P2 , the total number of pairwise elections won by each alternative is:
• w wins |B| + |A| + 2 = 8t,
• c wins |V| + |B| = q + 7t = 8t,
• d, any v ∈ V, and any a ∈ A wins at most 8t + q + 1 − 7t = t + q + 1, because they
all lose to B,
• any b ∈ B wins at most 21 (|B| − 1) + |A| + |V| + 1 = 12 (9t + 2q − 3) pairwise elections.
We recall that in the X3C instance t = q, which means in P1′ ∪ P2 , the winners are
{w, c}. In order for c to be the unique winner, the only possibility is for c to win the
q
pairwise election against d by putting c ≻ d in at least votes in P1 . However, when we
3
put c ahead of d in a vote corresponding to Si , for all v ∈ Si the pairwise score difference
between w and v increases by 2. Moreover, if w ≻ v for some v ∈ V at least twice in an
43
Xia & Conitzer
extension P ∗ of P1 , then DP ∗ ∪P2 (v, w) ≤ −1, which means that w defeats v in their pairwise
election. In this case, w would win 8m + 1 pairwise elections, which means that c cannot
be the unique winner. Therefore, c is a possible unique winner if and only if there exists
q
an extension P ∗ of P1 such that c ≻ d in exactly votes in P ∗ , and the corresponding Si
3
do not overlap, that is, they constitute an exact cover of V. This means that PW has a
solution if and only if the X3C problem has a solution. So PW is NP-complete.
Because in the above reduction, w would always be a co-winner if c is not the unique
winner, NcW is coNP-complete. For PcW and NW, we just need to slightly modify the
reduction for PW and NcW: let |A| = t − 1 and keep the rest unchanged. Then, w will
initially win 8t + 1 pairwise elections, and c is a possible co-winner (w is not the necessary
unique winner) if and only if there exists a feasible solution to the X3C instance.
2
Theorem 4 PW and PcW are NP-complete with respect to Bucklin, even when the number
of undetermined pairs in each vote is at most 16.
Proof.
First, we give a reduction from X3C to PW. Given any X3C instance V =
{v1 , . . . , vq }, S = {S1 , . . . , St }, we construct a PW instance as follows.
Alternatives: W ∪ D ∪ V ∪ {c, w}, where W = {w1 , . . . , wq+1 }, D = {d1 , . . . , dq+1 }.
First part P1 of the profile: for each i ≤ t, we start with O(w1 , . . . , wq+1 , Si , c, (V \
Si ), D), and then obtain a partial order by removing the relations in
{wq−2 , wq−1 , wq , wq+1 } × (Si ∪ {c})
Second part P2 of the profile:
– t copies of V ≻ c ≻ Others,
q
– − 1 copies of V ≻ w ≻ c ≻ Others,
3
q
– + 2 copies of D ≻ w1 ≻ Others.
3
We note that the number of undetermined pairs in each vote is no more than 16. Notice
2q
q
|P1 ∪ P2 | = 2t +
+ 1, and w1 is ranked within top q + 2 positions in t + + 2 votes
3
3
in any extension of P1 ∪ P2 . Therefore, in order for c to win, c ≻ wq−2 must hold in at
q
least votes in the extension of P1 . However, whenever we put c ahead of wq−2 in a vote,
3
we are forcing the alternatives in the Si corresponding to that vote be ranked within top q
positions. If some v ∈ V is ranked within top q positions at least twice in an extension of
q
P1 , then overall it will be ranked within top q positions in at least t + + 1 votes, which
3
means c will not be the unique winner.
If there exists a feasible solution to the X3C problem, then we can put c ahead of wq−2
in the votes corresponding to this solution, so that we obtain an extension P1∗ of P1 such
q
that c is ranked within top q + 1 positions in votes, while for any v ∈ V, v is ranked within
3
top q (and, in fact, the first q + 1) positions just once. As a result, c is the unique winner
of the profile P1∗ ∪ P2 , because no other alternative is ranked within top q + 1 positions in
44
Determining Possible and Necessary Winners Given Partial Orders
q
at least t + votes. Conversely, if c is the unique winner in some profile P1∗ ∪ P2 , then
3
P1∗ corresponds to a feasible solution to the X3C problem. Therefore, PW with respect to
Bucklin is NP-complete.
q
For PcW, we just need to modify the reduction slightly, by changing the last + 1 votes
3
from [D ≻ w1 ≻ Others] to [d1 ≻ . . . ≻ dq ≻ w1 ≻ Others]. In this case, the Bucklin score
of w1 is q + 1, which means c can at best hope to be a co-winner. As a result, PcW is also
NP-complete.
2
To prove our hardness results for maximin, ranked pairs, and voting trees, we present
two helpful lemmas. We first show that given any pair of alternatives c, c′ , there exist two
linear orders that increase D(c, c′ ) by two while keeping all other pairwise score differences
unchanged. This lemma has been used previously (McGarvey, 1953; Conitzer & Sandholm,
2005a). We will use this technique in the second (score-adjusting) part of the reductions
for maximin, ranked pairs, and voting trees.
Lemma 1 Given any profile P and any pair of different alternatives c, c′ , let the remaining
alternatives be {c1 , . . . , cm−2 }. Let P ′ be the profile consisting of P plus the following two
votes:
1. [c ≻ c′ ≻ c1 ≻ . . . ≻ cm−2 ], and
2. [cm−2 ≻ . . . ≻ c1 ≻ c ≻ c′ ].
Then, DP ′ (c, c′ ) = DP (c, c′ ) + 2, and for any alternatives d, d′ such that {d, d′ } =
6 {c, c′ },
′
′
DP ′ (d, d ) = DP (d, d ).
This lemma tells us that the pairwise score differences can be changed almost arbitrarily.
The only constraint is that the parity of the pairwise score differences remains the same.
The following lemma is a direct corollary.
Lemma 2 (The main theorem in McGarvey, 1953) Given a profile P and any skewsymmetric function F : C × C → Z (that is, F (c1 , c2 ) = −F (c2 , c1 ) for all c1 , c2 ), such
that for all pairs of alternatives c, c′ ∈ C, F (c, c′ ) − DP (c, c′ ) are all even (or all odd), then
there exists a profile P ′ such that
1. |P ′ | ≤
1P
′
′
′ (|F (c, c ) − DP (c, c )| + 1),
2 c,c
2. DP ∪P ′ = F .
That is, for any skew-symmetric function F such that for all pairs of alternatives (c, c′ )
(with c 6= c′ ), F (c, c′ ) − DP (c, c′ ) has the same parity, we can change the pairwise score
1P
′
′
differences from DP to F by adding no more than
′ (|F (c, c )−DP (c, c )|+1) votes to P .
2 c,c
Here, the factor 21 comes from the fact that for any pair of alternatives c and c′ , the absolute
value of the difference between F and DP is counted twice, i.e., |F (c, c′ ) − DP (c, c′ )| =
|F (c′ , c) − DP (c′ , c)|. In fact, it is possible to obtain even tighter bounds on the needed size
of P ′ (Erdös & Moser, 1964), but for the purpose of our NP-hardness proofs this does not
matter.
45
Xia & Conitzer
Now we are ready to prove the hardness results for maximin and ranked pairs. As we
mentioned in the beginning of this section, in all hardness proofs in this section, the profile
consists of P1 and P2 , where P1 is a set of partial orders used to encode the X3C instance,
and P2 is a set of linear orders used to adjust the “scores” of the alternatives. For maximin,
ranked pairs, and voting trees, P2 is used to adjust the pairwise score differences. We do not
explicitly give P2 in the reductions for these rules. Instead, we present the properties of P2 ,
then appeal to Lemma 2 to assert that P2 does exist, and can be constructed in polynomial
time.
Theorem 5 PW and PcW are NP-complete with respect to maximin, even when the number of undetermined pairs in each vote is at most 4.
Proof. We first prove that PW is NP-complete. Given an X3C instance V = {v1 , . . . , vq },
S = {S1 , . . . , St }, we construct a PW instance as follows.
Alternatives: V ∪ {c, w, w′ }.
First part P1 of the profile: for each i ≤ t, we start with O(w, Si , c, (V \Si ), w′ ), and
subsequently obtain a partial order Oi by removing the relations in {w} × (Si ∪ {c}).
Second part P2 of the profile: according to Lemma 2, P2 is defined to be a set of
votes such that the pairwise score differences of {O(w, Si , c, (V \ Si ), w′ ) : i ≤ t} ∪ P2
satisfy:
2q
−2; for each i ≤ q, D(w, vi ) = t+2; D(w′ , w) = D(v1 , w′ ) = t+4;
3
D(w′ , c) = t − 2.
(1) D(w, c) = t+
(2) For all other pairwise scores not defined in (1), D(l, r) ≤ 1.
We note that the number of undetermined pairs in each vote is no more than 4.
Lemma 2 implies that the size of P2 is polynomial in q + t.
We note that the minimum pairwise score difference of w is D(w, w′ ) = −t − 4; the
minimum pairwise score difference of w′ is also −t − 4 = D(w′ , v1 ).
Suppose there exists a profile P1∗ extending P1 such that c wins in P1∗ ∪ P2 . If c is raised
q
higher than w in at least one and at most − 1 votes in P1∗ , then, D(c, w) ≤ −t, and there
3
exists i ≤ q such that D(vi , w) ≥ −t (the smallest pairwise score difference of vi ), which
means that c is not the unique winner because vi is performing at least as well. If c is ranked
q
higher than w in at least + 1 votes in P1∗ , then we still have D(c, w′ ) = −t + 2, and there
3
exists i ≤ q such that vi is ranked higher than w in at least two votes in P1∗ , which means
that D(vi , w) ≥ −t + 2 (the smallest pairwise score difference of vi ). It follows that in this
case, c is not the unique winner because vi is performing at least as well. Therefore, the
q
only way for c to win is to decrease D(w, c) by raising c higher than w in exactly votes in
3
P1∗ . However, each time that we decrease D(w, c) by 2 due to adding c ≻ w to Oi ∈ P1 , for
each v ∈ Si , D(w, v) is also decreased by two. Because D(w′ , c) = t − 2, decreasing D(w, c)
to less than t − 2 would not raise the minimum pairwise score difference of c. But if for
some i ≤ q, D(w, vi ) is decreased by 4 or more, then the minimum pairwise score of vj is
46
Determining Possible and Necessary Winners Given Partial Orders
at least −t + 2, which means that in this case c cannot be the unique winner. Therefore,
the sets Si in the votes in P1∗ where c ≻ w cannot overlap. Because there must be at least
q/3 of these votes, the corresponding subsets Si constitute a feasible solution to the X3C
instance.
Conversely, suppose the X3C instance has a solution. Without loss of generality, let the
solution be {S1 , . . . , Sq/3 }. We define an extension P1∗ of P1 by adding c ≻ w in Oi for all
i ≤ q/3, and then adding w ≻ Si for all i > q/3. It follows that c is the unique winner for
the profile P1∗ ∪ P2 with respect to the maximin rule. Therefore PW is NP-complete.
For PcW, we just need to slightly modify the above reduction: we replace the condition
D(w, vi ) = t + 2 by D(w, vi ) = t when constructing P2 . Therefore PcW is NP-complete. 2
Theorem 6 PW and PcW are NP-complete and NW and NcW are coNP-complete with
respect to ranked pairs, even when the number of undetermined pairs in each vote is at most
8.
Proof. We first prove the NP-hardness of PW and NcW in one reduction. Given an X3C
instance V = {v1 , . . . , vq }, S = {S1 , . . . , St }, we construct a PW instance as follows.
Alternatives: V ∪ {c, a, b, w}.
First part P1 of the profile: for each i ≤ t, we start with O(a, c, Si , b, Others), and
subsequently obtain a partial order Oi by removing the relations in ({a, c}×(Si ∪{b})).
Second part P2 of the profile: according to Lemma 2, P2 is defined to be a set
of votes such that the pairwise score differences of {O(a, c, Si , b, Others) : i ≤ t} ∪ P2
satisfy:
1. For all i ≤ q, D(c, b) = D(w, a) = D(w, vi ) = 3t +
2q
.
3
2q
2q
2q
, D(c, w) = t +
− 2, D(vi , c) = t +
− 6, D(b, a) = t + 2.
3
3
3
3. D(l, r) = 0 in all other cases.
2. D(a, c) = t +
We note that the number of undetermined pairs in each vote is no more than 8.
Lemma 2 implies that the size of P2 is polynomial in q + t.
We note that D(c, b), D(w, a), and D(w, vi ) (for every i ≤ q) are much larger than the
remaining pairwise score differences in any extension of P1 ∪ P2 . Therefore, c ≻ b, w ≻ a,
and w ≻ vi (for every i ≤ q) are fixed first in any extension of P1 ∪ P2 . It follows that in
the output (a linear order over C) for any extension of P1 ∪ P2 , we must have that c ≻ b,
w ≻ a, and w ≻ vi (for every i ≤ q). We note that the only way for c to be the unique
2q
winner is to lock b ≻ a before a ≻ c. That is, D(b, a) must be at least t + 2 + . However,
3
whenever we let b ≻ a in an extension of Oi , we are forcing Si ≻ c. Let P1∗ be an extension
∗
of P1 such that c is the unique winner for the profile P1 ∪ P2 (or, equivalently, such that
w is not a co-winner for the profile P1∗ ∪ P2 ). We note that if there exists i ≤ q such that
2q
2q
vi ≻ c in at least two votes in P1∗ , then D(vi , c) ≥ t +
−6+4 = t+
− 2 = D(c, w),
3
3
which means that w is a co-winner (by locking vi ≻ c before c ≻ w). Therefore, in P1∗ , we
47
Xia & Conitzer
q
must have that b ≻ a in exactly votes, and for all i ≤ q, vi ≻ c in exactly one vote. This
3
naturally corresponds to a solution to the X3C instance.
Conversely, suppose that the X3C instance has a solution. Without loss of generality, let
the solution be {S1 , . . . , Sq/3 }. We define an extension P1∗ of P1 by adding b ≻ a in Oi for all
i ≤ q/3, and then for all i > q/3, letting the extension of Oi be [a ≻ c ≻ Si ≻ b ≻ Others].
It follows that c is the unique winner for this profile (and hence, w is not a co-winner).
Therefore, PW is NP-complete and NcW is coNP-complete with respect to ranked pairs.
For PcW and NW, we just need to slightly modify the above reduction by letting
2q
D(b, a) = t and for all i ≤ q, letting D(vi , c) = t +
− 4.
2
3
Next, we consider voting trees. Because a voting tree is defined for a fixed number
of alternatives, to study the complexity of the possible/necessary winner problems with
respect to voting trees, we need to consider an infinite sequence of trees, one for each
natural number (representing the number of alternatives).8 Therefore, we let a voting tree
rule T be composed of an infinite sequence of voting trees {T1 , T2 , . . .}, where for any m ∈ N,
Tm is a voting tree for m alternatives (that is, Tm is a binary tree that has m leaf nodes,
and each leaf is associated with an alternative).
For any t ∈ N, a voting tree Tm is t-well-spread if there exist t pairs of leaves (c1 , a1 ), . . . ,
(ct , at ), such that for each i ≤ t, ci and ai are siblings. We say that any leaf in such a pair
is a rich leaf. A voting tree is balanced if the depths of any pair of leaves differ at most by
one, and the number of leaves whose (unique) sibling is not a leaf is at most one.
Example 2 Two voting trees are illustrated in Figure 2. The voting tree in (a) is 1-wellspread, and c1 and c2 are rich leaves; the voting tree in (b) is balanced and 3-well-spread,
and all leaves except c5 are rich leaves.
c4
c3
c1
c2
c5
c1
c2
c3
(a)
c4
c6
c7
(b)
Figure 2: Voting trees.
Theorem 7 For any voting tree rule T = {T1 , T2 , . . .}, if there exists a polynomial function
f (x) such that for any x ∈ N, there exists l ∈ N with x ≤ l ≤ f (x) such that Tl is x-wellspread, then PW and PcW are NP-complete, and NW and NcW are coNP-complete with
respect to T , even when the number of undetermined pairs in each vote is at most 16.
8. This is similar to the case of positional scoring rules, which are technically defined only for a specific
number of alternatives.
48
Determining Possible and Necessary Winners Given Partial Orders
Proof. Let j2 , j3 , . . . be the index of the voting trees such that for any z ∈ N (z ≥ 2), Tjz
is 2(z + 1)-well-spread and jz ≤ f (2(z + 1)). For any z, we let c be an arbitrary rich leaf in
Tj z .
We first prove the NP-hardness of PW and PcW in a single reduction. Given an X3C
instance V = {v1 , . . . , vq }, S = {S1 , . . . , St }, we construct a PW instance as follows.
Alternatives: Let C be the leaves of Tjq , where C = {c, d, w} ∪ V ∪ A ∪ E, and
A = {a1 , . . . , aq }, E = {e1 , . . . , emq −2q−3 }, where mq is the number of leaves in Tjq .
Let the tree be such that {c, d}∪V ∪A are rich leaves in a subtree whose root is a child
of the root of Tjq (because Tjq is 2(q + 1)-well-spread, this is always possible); d is the
sibling of c; the only common ancestor of c and w is the root; and for each 1 ≤ i ≤ q,
vi and ai are siblings. The positions of {c, d, w}∪V ∪A are illustrated in Figure 3. E is
the set of all other alternatives in Tjq . For each i ≤ t, if Si = {vl(i,1) , vl(i,2) , vl(i,3) }, then
we let Ai = {al(i,1) , al(i,2) , al(i,3) }—that is, Ai consists of the siblings of the elements
in Si .
w
c
d
v1
a1
vq
aq
Figure 3: Positions of the alternatives in Tjq .
First part P1 of the profile: for each i ≤ t, we start with O(d, Ai , Si , c, Others), and
subsequently obtain a partial order Oi by removing relations in ({d} ∪ Ai )×(Si ∪{c}).
Second part P2 of the profile: according to Lemma 2, P2 is defined to be a
set of votes (linear orders) such that the pairwise score differences for the profile
{O(d, Ai , Si , c, Others) : i ≤ t} ∪ P2 satisfy:
(1) D(c, d) = −2q/3 + 1, D(c, w) = 2q + 1.
(2) For each i ≤ q, D(ai , vi ) = 3, D(vi , c) = D(c, ai ) = 2q + 1.
(3) For each c′ ∈ C (with c′ 6= c), D(w, c′ ) = 2q + 1.
(4) For each pair i, i′ ≤ q (with i 6= i′ ), D(vi , ai′ ) = 2q + 1.
(5) For each x ∈ C \ E, and each e ∈ E, D(x, e) = 2q + 1.
We note that the number of undetermined pairs in each vote is no more than 16.
Lemma 2 implies that the size of P2 is polynomial in q + t.
49
Xia & Conitzer
The only way for c to win is to beat d in the first round, and not to meet any of {v1 , . . . , vq }
in later rounds, which can only happen if every vi is beaten by the corresponding ai in
the first round. This is because by item (4), for each i 6= i′ , D(vi , ai′ ) = 2q + 1, which
means that if for some i ≤ q, vi wins in the first round, it will only be beaten by w or vj
for some j ≤ q in subsequent rounds.In this case the winner must be w. It follows that in
any extension of P1 that makes c win, c must be ranked higher than d at least q/3 times.
However, if we rank c higher than d in an extension of Oi , then in the same extension we
must have that Si ≻ Ai . In order for every ai to defeat vi , for every i ≤ q, vi can be ranked
higher than ai at most once in the extension of P1 . Therefore, if there exists a profile P1∗
extending P1 such that c is the unique winner (or co-winner) in P1∗ ∪ P2 , then the votes in
P1∗ where c ≻ d make up a feasible solution to the X3C problem instance. Conversely, for
any feasible solution to the X3C problem instance, we can find a P1∗ extending P1 such that
c is the unique winner of the profile P1∗ ∪ P2 with respect to Tij . Therefore, PW and PcW
are NP-complete.
Because if c is not the unique winner, then w is always the unique winner. Therefore,
NW and NcW are coNP-complete.
2
From Theorem 7, we immediately obtain the following hardness results for voting tree
rules composed of balanced trees, by setting f (x) = 4x (because there will exist some integer
y such that 2x ≤ 2y ≤ 4x, so in the balanced tree for 2y alternatives there will be at least
x pairs of siblings).
Corollary 2 PW and PcW are NP-complete and NW and NcW are coNP-complete with
respect to the voting tree rule that is composed of balanced binary trees, even when the
number of undetermined pairs in each vote is at most 16.
Finally, we have the following theorems on the complexity of PW and NcW with respect
to plurality with runoff.
Theorem 8 PW is NP-complete with respect to plurality with runoff.
Proof. We prove NP-hardness by a reduction from X3C. Given an X3C instance V =
{v1 , . . . , vq }, S = {S1 , . . . , St }, we construct a PW instance as follows.
Alternatives: C = {c, d, e} ∪ SV ∪ E, where SV = {s1 , . . . , st } and
E = {e1 , . . . , e(q+4)2 (t+4)4 }.
First part P1 of the profile: P1 = P11 ∪ P12 , where P11 and P12 are defined as follows.
– P11 : for each i ≤ q, we start with a linear order O(d, SV , c, Others), and subsequently obtain a partial order Oi by removing ({d} ∪ SV ) × {sj : vi ∈ Sj }.
That is, we remove a minimum set of constraints such that any alternative in
{sj : vi ∈ Sj } can be ranked in the top position in at least one extension of Oi .
Let P11 = {Oi : i ≤ q}.
– P12 : for each j ≤ t, we start with a linear order O(d, e, c, Others), and subsequently obtain a partial order Q1j by removing ({d} × {e}) ∪ (C × {sj }). That is,
in an extension of Q1j , only d, e, and sj can be ranked in the top position. We
let Q2j = Q1j , and P12 = {Q1j : j ≤ t} ∪ {Q2j : j ≤ t}.
50
Determining Possible and Necessary Winners Given Partial Orders
Second part P2 of the profile: P2 = P21 ∪ P22 , where P21 and P22 are defined as
follows.
– P21 : a set of q(t + 7/3) + 8 votes, in which c is ranked in the top position q + 4
times, d is ranked in the top position q + 2 times, e is ranked in the top position
q/3 + 2 times, and for each j ≤ t, sj is ranked in the top position q times. It
does not matter how the remaining alternatives are ranked in P21 .
– P22 : we first obtain, according to Lemma 2, a profile P̂22 such that the pairwise
score differences of the following profile:
{q copies of O(d, SV , c, Others)} ∪ {2t copies of O(d, e, c, Others)} ∪ P21 ∪ P̂22
satisfy the following conditions.
1. D(d, c) = D(e, c) = 1;
2. for all j ≤ t, D(c, sj ) = 1.
By Lemma 2, the size of P̂22 is polynomial in p + t. Next, we obtain P22 from P̂22
by moving an alternative in E to the top position in each vote of P̂22 , in such a
way that each vote in P22 ranks a different alternative in the top position. P22 is
well-defined, because |E| ≥ |P̂22 |.
For any profile P , and any alternative c′ , we let P luP (c′ ) denote the plurality score of c′ in P ,
that is, P luP (c′ ) is the number of times where c′ is ranked in the top position in P . The subscript P is omitted when there is no risk of confusion. We make the following observations
on the profile {q copies of O(d, SV , c, Others)} ∪ {2t copies of O(d, e, c, Others)} ∪ P21 ∪ P22 :
• D(d, c) = D(e, c) = 1, and for all j ≤ t, D(c, sj ) = 1;
• P lu(c) = q + 4, P lu(d) = 2t + 2q + 2, P lu(e) = q/3 + 2; for each j ≤ t, P lu(sj ) = q;
for each e′ ∈ E, P lu(e′ ) ≤ 1.
We also note that in any extension of P1 ∪ P2 , P lu(c) = q + 4.
If the X3C instance has a solution Sj1 , . . . , Sjq/3 , then we construct a solution to the
PW instance as follows.
• For each i ≤ q, let Vi = [sjl ≻ d ≻ (SV \ {sjl }) ≻ c ≻ Others], where jl is such that
ci ∈ Sjl ; we note that Vi extends Oi ;
• for each l ≤ q/3, let Vj1l = Vj2l = [e ≻ d ≻ c ≻ Others]; we note that Vj1l and Vj2l extend
Q1jl and Q2jl , respectively;
• for each j ≤ t (with j 6= jl for all l ≤ q/3), let Vj1 = Vj2 = [sj ≻ d ≻ e ≻ c ≻ Others];
we note that Vj1 and Vj2 extend Q1j and Q2j , respectively;
• then, we use these votes to extend the partial orders in P1 : let P1∗ = {Vi : i ≤
q} ∪ {Vj1 , Vj2 : j ≤ t}.
51
Xia & Conitzer
In P1∗ ∪ P2 , we have P lu(c) = q + 4, P lu(d) = P lu(e) = q + 2; for each l ≤ q/3, P lu(sjl ) =
q + 3; for each j 6= jl (l = 1, . . . , q/3), P lu(sj ) = q + 2; and for each e′ ∈ E, P lu(e′ ) ≤ 1.
Also, we have that for each l ≤ q/3, D(c, sjl ) = 1. It follows that the pairs that enter the
runoff (in some parallel universe) are (c, sj1 ), . . . , (c, sjq/3 ), and c wins all of these pairwise
elections. Therefore, c is the unique winner for P1∗ ∪ P2 .
Next, we show how to convert a solution to the PW instance to a solution to the X3C
instance. Let P1∗ = P11∗ ∪ P12∗ be an extension of P1 such that c is the unique winner for
P1∗ ∪ P2 , where P11∗ = {Vi : i ≤ q} extends P11 , and P12∗ = {Vj1 : j ≤ t} ∪ {Vj2 : j ≤ t}
extends P12 . We make the following sequence of claims.
Claim 2 Neither d nor e can enter the runoff, which means that the only pairs that could
potentially still enter the runoff are (c, sj ), for some j ≤ t.
Proof. If d or e entered the runoff in some parallel universe, then it would defeat c
in the runoff (unless c is not even in the runoff, in which case c also does not win in this
parallel universe), contradicting that c is the unique winner.
2
Claim 3 For each j ≤ t, P luP1∗ (sj ) ≤ 3.
Proof. If this does not hold, then we let j ∗ be an index that maximizes P luP1∗ (sj ∗ ).
It follows that P luP12∗ (sj ∗ ) ≥ 1, because P luP11∗ (sj ∗ ) ≤ 3. However, by putting sj ∗ in the
top position in a partial order in P12 , we are forcing D(c, sj ∗ ) to be reduced by 2, which
means that sj ∗ defeats c in their pairwise election. Moreover, because, by Claim 2, one of
the sj must enter the runoff, and because sj ∗ has the maximum plurality score among the
alternatives in SV , sj ∗ must be in the runoff in one of the parallel universes. However, c
cannot win in this parallel universe, which contradicts the assumption that c is the unique
winner.
2
Claim 4 P luP1∗ (d) = 0, P luP1∗ (e) ≤ 2q/3.
Proof. It follows from Claim 3 that for each j ≤ t, P luP1∗ ∪P2 (sj ) ≤ q + 3. Therefore,
by Claim 2 we must have that P luP1∗ ∪P2 (d) ≤ q + 2 and P luP1∗ ∪P2 (e) ≤ q + 2. The claim
follows.
2
Claim 5 For any j ≤ t, if P luP12∗ (sj ) ≥ 1, then P luP1∗ (sj ) ≤ 2.
Proof. If P luP12∗ (sj ) ≥ 1 and sj enters the runoff in some parallel universe, then c
cannot win in that parallel universe. For the sake of contradiction, suppose P luP1∗ (sj ) ≥ 3.
By Claim 3 and Claim 2, sj enters the runoff in some parallel universe, which contradicts
the assumption that c is the unique winner.
2
Claim 6 Let X1 = {sj : P luP11∗ (sj ) > 0, P luP12∗ (sj ) = 0}, and X2 = {sj : P luP11∗ (sj ) =
0, P luP12∗ (sj ) > 0}. We have X1 ∪ X2 = SV and |X1 | = q/3.
52
Determining Possible and Necessary Winners Given Partial Orders
Proof. Let x1 = |X1 |, x2 = |X2 |, and x3 = t − x1 − x2 . By Claim 5, for each
sj ∈ SV \ (X1 ∪ X2 ), P luP11∗ (sj ) = P luP12∗ (sj ) = 1. We recall that for each O ∈ P11 , the
top-ranked alternative in any extension of O must be either d or an element in SV ; for each
Q ∈ P12 , the top-ranked alternative in any extension of Q must be d, e, or an element in
SV . We then use these observations to obtain two inequalities.
First, in order for c to be the unique winner, d cannot be in the top position in any vote
in P11∗ . Therefore, all of the q top positions in P11∗ must be taken by alternatives in SV .
Now, any alternative in X1 can take at most three of these top positions; any alternative
in X2 takes none of these top positions by definition; and any alternative in SV \ (X1 ∪ X2 )
takes one of these top positions. It follows that 3x1 + x3 ≥ q.
Now, we apply a similar analysis to P12∗ . In order for c to be the unique winner, e
cannot be in the top position in more than 2q/3 votes in P12∗ , leaving at least 2t − 2q/3
top positions to be filled. Now, any alternative in X1 takes none of these top positions; any
alternative in X2 can take at most two of these top positions (Claim 5); and any alternative
in SV \ (X1 ∪ X2 ) takes one of these top positions. It follows that 2x2 + x3 ≥ 2t − 2q/3.
By substituting q in the second inequality by the q in the first inequality, we obtain
2x1 + 2x2 + 53 x3 ≥ 2t. We recall that x1 + x2 + x3 = t. Therefore, x3 = 0, x1 + x2 = t. Now
the first inequality becomes x1 ≥ q/3 and the second inequality becomes x2 ≥ t − q/3. It
follows from x1 + x2 = t that x1 = q/3 and x2 = t − q/3.
2
Based on all these claims, we can now construct a solution to the X3C instance. Let
X1 = {sj1 , . . . , sjq/3 }. From Claim 3, Claim 6, |P11∗ | = q, and the fact that every top position
in P11∗ must be occupied by one of the alternatives in X1 , it follows that Sj1 , . . . , Sjq/3 is
a solution to the X3C instance. Therefore, PW with respect to plurality with runoff is
NP-complete.
2
Theorem 9 NcW is coNP-complete with respect to plurality with runoff, even when the
number of undetermined pairs in each vote is at most 4.
Proof. We prove coNP-hardness by a reduction from X3C. Given an X3C instance V =
{v1 , . . . , vq }, S = {S1 , . . . , St }, we construct a NcW instance as follows.
Alternatives: {c, d} ∪ V ∪ E, where E = {e1 , . . . , et(q+2)3 }.
First part P1 of the profile: for each j ≤ t, we start with O(d, Sj , c, Others), and
subsequently obtain a partial order Oj by removing the orderings in ({d} ∪ Sj ) × {c}.
Second part P2 of the profile: P2 = P21 ∪ P22 , where P21 and P22 are defined as
follows.
– P21 : a set of t(q + 1) + q/3 votes, such that c is ranked in the top position t + 1
times; d is ranked in the top position q/3 − 1 times; and for each i ≤ q, vi is
ranked in the top position t times.
– P22 : we first obtain, according to Lemma 2, a profile P̂22 such that the pairwise
score differences of {O(d, Sj , c, Others) : j ≤ t} ∪ P21 ∪ P̂22 satisfy the following
conditions.
1. D(c, d) = 2t + 1;
53
Xia & Conitzer
2. for all i ≤ q, D(vi , c) = 3.
By Lemma 2, the size of P̂22 is polynomial in t + q. Next, we obtain P22 from
P̂22 by raising an alternative in E to the top position in each vote, in such a way
that each vote in P22 ranks a different alternative in the top position.
We recall that for any profile P and any alternative c′ , P luP (c′ ) denotes the number of
times that c′ is ranked in the top position in P . We make the following observations on
{O(d, Sj , c, Others) : j ≤ t} ∪ P2 .
• D(c, d) = 2t + 1, and for all i ≤ q, D(vi , c) = 3;
• P lu(c) = t + 1, P lu(d) = t − 1 + q/3; for each i ≤ q, P lu(vi ) = t; for each e ∈ E,
P lu(e) ≤ 1.
It follows from the observations that in any extension of P1 ∪ P2 , c must enter the runoff;
also, in any extension, c defeats d in the pairwise election. Let P1∗ ∪ P2 (where P1∗ is an
extension of P1 ) be a profile in which c is not a co-winner. We must have that d does not
enter the runoff, which means that P luP1∗ ∪P2 (d) ≤ t − 1. It follows that c ≻ d in at least q/3
votes in P1∗ . However, by ranking c ≻ d in a partial order Oi , we are forcing c ≻ Si . Now,
the pairs of alternatives that enter the runoff (in parallel universes) are (c, v1 ), . . . , (c, vq ).
Since c loses in all these pairwise elections in the runoff (because, by assumption, c is not
a co-winner), we must have that for each vj , c ≻ vj in at most one vote in P1∗ . Hence, a
solution to the complement of the NcW instance naturally corresponds to a solution to the
X3C instance. Conversely, a solution to the X3C instance corresponds to a solution to the
complement of the NcW instance. Therefore, NcW with respect to plurality with runoff is
coNP-complete.
2
5. Polynomial-time Algorithms for Possible and Necessary Winner
Problems
In this section we present polynomial-time algorithms for (1) NW and NcW with respect
to all positional scoring rules, maximin, and Bucklin, (2) PcW and NW with respect to
plurality with runoff. We recall that PW is NP-complete (Theorem 8) and NcW is coNPcomplete (Theorem 9), both with respect to plurality with runoff.
We note that positional scoring rules, maximin, and Bucklin are all based on some type
of scores, so if we can find an extension of the partial orders to linear orders so that the
score of c, denoted by S(c), is no more than the score of another alternative w, then c is
not the (unique) winner in this profile, and hence c is not a necessary winner. Therefore,
in the following algorithms for these rules, we check all alternatives w 6= c, and try to make
S(c) − S(w) as low as possible on a vote-by-vote basis (or equivalently, make S(w) − S(c)
as high as possible). For each vote O (partial order), there can be two cases. In the first
case, c 6≻O w. In this case, we only need to consider c and w separately, raising w as high
as possible and lowering c as low as possible. (This part of the algorithm has already been
considered in Konczak & Lang, 2005.) The following example, Example 3, illustrates this
idea.
54
Determining Possible and Necessary Winners Given Partial Orders
Example 3 A partial order O is illustrated in Figure 4 (a). Let c = c2 and w = c5 . Since
c2 6≻O c5 , we can raise c5 as high as possible while lowering c2 as low as possible, as shown
in Figure 4 (b).
c5
c6
c2
c3
c1
c4
c1
c5
(a) A partial order O.
c6
c2
c3
c4
(b) An extension of O.
Figure 4: A partial order and its extension.
In the second case, c ≻O w. This case is more complicated, and in what follows we
show how to minimize S(c) − S(w) for positional scoring rules, maximin, and Bucklin. For
plurality with runoff, we convert PcW into a maximum flow problem to solve it; this also
gives an algorithm for NW, simply by checking whether any other alternative is a possible
co-winner (see Proposition 1).
In this section, the input consists of C = {c, c1 , . . . , cm−1 }, c (the alternative for which
we wish to decide whether or not it is a necessary (co-)winner), a profile Pposet of n partial
orders over C, and the voting rule r.
We first define some notation that will be used in the algorithms.
Definition 8 Given a partial order O and an alternative c, let UpO (c) = {c′ ∈ C : c′ O c}
and DownO (c) = {c′ ∈ C : c O c′ }. Given another alternative w such that c ≻O w, let O’s
c ≻ w block be defined as follows: BlockO (c, w) = {c′ ∈ C : c O c′ O w}.
That is, UpO (c) is the set of alternatives that are weakly preferred to c in O (including c
itself), and DownO (c) is the set of alternatives that c is weakly preferred to in O (including
c itself). If c ≻O w, then BlockO (c, w) is the set of all the alternatives, including c and w,
that are ranked between c and w. It is easy to check that for any partial order O, and any
pair of alternatives c, w (with c ≻O w), BlockO (c, w) = DownO (c) ∩ UpO (w).
Example 4 Let O be the partial order illustrated in Figure 4 (a). We have that UpO (c2 ) =
{c1 , c2 }, UpO (c4 ) = {c1 , c2 , c3 , c4 , c5 }, DownO (c2 ) = {c2 , c3 , c4 }, DownO (c4 ) = {c4 }, and
BlockO (c2 , c4 ) = {c2 , c3 , c4 }.
The notion of a block is useful for the following reason. In the algorithm, we want to
think about an extension of the partial orders in which w does as well as possible, and c
does as poorly as possible. When c ≻O w in some partial order O, we cannot rank c below
w; but at least it makes sense to have as few alternatives between them as possible. The
alternatives in the block are exactly the ones that need to be between them; we will rank
the other alternatives outside of the block. Then, the question is where to position the
block, and we will “slide” the block through the ranking.
Now we are ready to present the algorithms. We note that given a partial order O,
computing the UpO and DownO sets takes polynomial time. Let ~sm denote the scoring
vector of the positional scoring rule.
Algorithm 1 (Computing NW with respect to a positional scoring rule)
55
Xia & Conitzer
1. For each partial order O ∈ Pposet and each alternative c, compute UpO (c) and
DownO (c).
2. Repeat Steps 3a–c for each w 6= c:
3a. Let S(w) = S(c) = 0.
3b. For each partial order O in Pposet ,
– if c 6≻O w, then (following Example 3) the lowest possible position for c is
the m + 1 − |DownO (c)|th position, and the highest possible position for w is
the |UpO (w)|th position, so we add the scores ~sm (|UpO (w)|) and ~sm (m + 1 −
|DownO (c)|) to S(w) and S(c), respectively;
– if c ≻O w, then the highest that we can slide O’s c ≻ w block (as measured by c’s
position, which is at the top of the block) is position |UpO (w) \ DownO (c)| + 1 (if
an alternative a is ranked above w in the partial order, then we will place it above
c, unless the partial order ranks c above a), and the lowest (as measured by w’s
position, which is at the bottom of the block) is position m−|DownO (c)\UpO (w)|
(if an alternative a is ranked below c in the partial order, then we will place it
below w, unless the partial order ranks a above w). Any position between these
extremes is also possible. We find the position that minimizes the score of c
minus the score of w, then add the scores that c and w get for these positions to
S(c) and S(w), respectively.
3c. If the result is that S(w) ≥ S(c), then output that c is not a necessary winner
(terminating the algorithm).
4. Output that c is a necessary winner (if we reach this point).
The algorithm for computing NcW is obtained simply by checking whether S(w) > S(c)
in Step 4.
Proposition 3 Algorithm 1 checks whether or not c is a necessary winner for Pposet with
respect to a given positional scoring rule in polynomial time.
Proof. It is equivalent to check whether there exists an extension P of Pposet and an
alternative w 6= c, such that s(P, w) ≥ s(P, c)—that is, whether c is not a necessary (unique)
winner. To this end, for each O ∈ Pposet , we maximize s(VO , w)−s(VO , c) over all extensions
VO of O.
We recall that for each i ≤ m, ~sm (i) is the score of the alternative that is ranked at
the ith position. For any extension VO of O, s(VO , w) ≤ ~sm (|UpO (w)|) (because w cannot
be ranked higher than the |UpO (w)|th position) and s(VO , c) ≥ ~sm (m + 1 − |DownO (c)|)
(because c cannot be ranked lower than the (m + 1 − |DownO (c)|)th position). These
two bounds can be achieved if c 6≻O w: for every d ∈ C \ UpO (w), we add w ≻ d to
O; and for every d ∈ C \ DownO (c), we add d ≻ c to O. We obtain a partial order O′
this way, and we let VO be an (arbitrary) linear order that extends O′ . It follows that
s(VO , w) − s(VO , c) = ~sm (|UpO (w)|) − ~sm (m + 1 − |DownO (c)|).
However, if c ≻O w, there may not exist VO in which s(VO , w) = ~sm (|UpO (w)|) and
s(VO , c) = ~sm (m + 1 − |DownO (c)|) hold simultaneously. We note that in any VO∗ that
56
Determining Possible and Necessary Winners Given Partial Orders
maximizes s(VO , w) − s(VO , c), the only alternatives between c and w must be those in
BlockO (c, w). Therefore, for each d ∈ C such that d ≻O w and c 6≻O d, we must have that
d ≻VO∗ c; and for each d ∈ C such that c ≻O d and d 6≻O w, we must have that w ≻VO∗ d. It
follows that s(VO , w) − s(VO , c) ≤ maxl (~sm (l + |BlockO (c, w)| − 1) − ~sm (l)), where l ranges
between |UpO (w) \ DownO (c)| + 1 and m − |DownO (c) \ UpO (w)|. Let VO′ be an extension
of O restricted to C \ BlockO (c, w) in which UpO (w) \ DownO (c) is ranked at the top and
DownO (c) \ UpO (w) is ranked at the bottom. For each d ∈ C \ (UpO (w) ∪ DownO (c))
and each d′ ∈ BlockO (c, w), we must have d 6≻O d′ and d′ 6≻O d. Therefore, for each
|UpO (w) \ DownO (c)| + 1 ≤ l ≤ m − |DownO (c) \ UpO (w)|, we can put BlockO (c, w) between
the (l − 1)th position and the lth position in VO′ , to obtain a linear order that extends O.
This proves the correctness of Step 3b, which computes maxVO (s(VO , w) − s(VO , c)). It
follows that the algorithm correctly checks whether or not c is a necessary winner.
2
We now move on to the maximin rule. We note that c is not a necessary winner for Pposet
with respect to maximin if and only if there exists a profile of linear orders P extending
Pposet , and two alternatives w and w′ , such that for all alternatives d, NP (w, d) ≥ NP (c, w′ ).
We recall that NP (w, d) is the number of votes in P where w ≻ d. Therefore, our algorithm
considers all pairs (w, w′ ), and then checks whether there exists an extension of the input
partial orders for which the inequality holds for all alternatives d. To perform such a check,
in each partial order, we would like to rank w′ ahead of c, and also to rank w as high as
possible. However, these two objectives may conflict: it may be the case that if we rank
c ahead of w′ , then we can rank w higher than in the case where we rank w′ ahead of c.
In this case, we first place w′ ahead of c, and then rank w as high as possible under this
additional constraint. This works for the following reason. Let O ∈ Pposet be a partial
order where c 6≻O w′ and w′ 6≻O c; let V be an arbitrary extension of O in which w′ ≻V c
and let V ′ be an arbitrary extension of O in which c ≻V ′ w′ . For any d ∈ C, we have
that N{V } (w, d) − N{V } (c, w′ ) ≥ 0 ≥ N{V ′ } (w, d) − N{V ′ } (c, w′ ), which means that enforcing
w′ ≻ c is always at least as good as enforcing c ≻ w′ .
Algorithm 2 (Computing NW with respect to maximin)
1. For each partial order O ∈ Pposet and each alternative c, compute UpO (c).
2. Repeat 3a–c for all pairs w, w′ , where c 6= w and c 6= w′ .
3a. Let S(c, w′ ) = 0, and for each alternative d 6= w, let S(w, d) = 0.
3b. For each partial order O in Pposet ,
– if c 6≻O w′ , then add w′ ≻ c to O and raise w as high as possible; for each
d 6= w, if, in the resulting vote, w is ahead of d (that is, d 6∈ UpO (w) and if
c ∈ UpO (w), then d 6∈ UpO (w′ )), then add 1 to S(w, d).
– if c ≻O w′ , then raise w as high as possible; add 1 to S(c, w′ ); for each d 6= w,
if, in the resulting vote, w is ahead of d (that is, d 6∈ UpO (w)), then add 1 to
S(w, d).
3c. Check if for all d 6= w, S(w, d) ≥ S(c, w′ ); if the answer is yes, then output that
c is not a necessary winner (terminating the algorithm).
4. Output that c is a necessary winner.
57
Xia & Conitzer
The algorithm for computing NcW with respect to maximin is similar: the only modification
is that in Step 3, we check if for all alternatives d 6= w, S(w, d) > S(c, w′ ).
Proposition 4 Algorithm 2 checks whether or not c is a necessary winner for Pposet with
respect to maximin in polynomial time.
Proof. The function S(x, y) computed in the algorithm is the number of times x is preferred
to y in an extension of Pposet . For any partial order O, we let VO be the extension computed
in Step 3b. Let g(V, d) = NV (w, d) − NV (c, w′ ). We next prove that for each d 6= w and
each extension VO′ of O, g(VO , d) ≥ g(VO′ , d). If c 6≻O w′ and c ≻VO′ w′ , then g(VO′ , d) ≤
0 ≤ g(VO , d) (because NVO (c, w′ ) = 0 and NVO′ (c, w′ ) = 1). If c 6≻O w′ and w′ ≻VO′ c, then
NVO′ (c, w′ ) = NVO (c, w′ ). We note that VO is obtained by raising w as high as possible in O
while w′ ≻ c, which means that NVO′ (w, d) ≤ NVO (w, d). It follows that g(VO , d) ≥ g(VO′ , d).
Similarly, if c ≻O w′ , then we also have that for all d 6= w, NVO′ (w, d) ≤ NVO (w, d).
Therefore,Pfor any extension P of Pposet and any d 6= w, S(w, d) − S(c, w′ ) = NP (w, d) −
NP (c, w′ ) ≤ O∈Pposet g(VO , d), and when P is the profile computed in Step 3b, the inequality becomes an equality. It follows that the algorithm is correct.
2
Now we move on to the Bucklin rule. We note that c is not a necessary winner of
Pposet with respect to Bucklin, if and only if there exists an extension P of Pposet and an
alternative w, such that either w’s Bucklin score is 1, or there exists 2 ≤ k ≤ m, such that
w is among the top k for more than n2 votes (meaning that w’s Bucklin score is no more
than k), and c is among the top k − 1 for at most n2 votes (meaning that c’s Bucklin score
is no less than k). Therefore, like Algorithm 1, the algorithm for Bucklin considers each
alternative w, computes the possible positions for the blocks BlockO (c, w), and then checks
for all k from 1 to m whether the above condition can be made to hold.
In the algorithm, if c 6≻Oj w, then High(j) is the highest position that w reaches in an
extension of Oj , and Low(j) is the lowest position that c reaches in an extension of Oj . If
c ≻Oj w, then High(j) is the highest position of c given that c and w are ranked as close to
each other as possible, Low(j) is the lowest position of c given that c and w are ranked as
close to each other as possible, and Length(j) is the size of BlockOj (c, w). For any i ≤ m
and any d ∈ {c, w}, let S(i, d) denote the minimum number of times that d is ranked in
the top i positions, where the minimum is taken over all optimal extensions of Pposet (we
will elaborate on the meaning of optimality later). U (k) is the number of partial orders
for which we will have to compute where to put the block BlockOj (c, w) to make c not a
necessary unique winner. That is, U (k) is the number of partial orders for which there
exists an extension in which c is in the top k − 1 positions and w is in the top k positions,
as well as another extension in which c is not in the top k − 1 positions and w is not in the
top k positions.
Algorithm 3 (Computing NW with respect to Bucklin)
1. For each partial order O ∈ Pposet and each alternative c, compute UpO (c) and
DownO (c).
2. Repeat Steps 3a–d for all w 6= c:
3a. For each j ≤ n, let High(j) = Low(j) = Length(j) = 0. For each i ≤ m, let
S(i, c) = S(i, w) = U (i) = 0.
58
Determining Possible and Necessary Winners Given Partial Orders
3b. For each partial order Oj in Pposet ,
– if c 6≻Oj w, then let Length(j) = 0, and let High(j) = |UpOj (w)|, Low(j) =
m + 1 − |DownOj (c)|;
– if c ≻Oj w, then let Length(j) = |BlockOj (c, w)|, High(j) = |UpOj (w) \
DownOj (c)| + 1, Low(j) = m + 1 − |DownOj (c)|.
3c. For each k ≤ m, each j ≤ n,
– if Length(j) = 0, then add 1 to S(k, w) if High(j) ≤ k, and add 1 to S(k − 1, c)
if Low(j) ≤ k − 1;
– if Length(j) > 0, then add 1 to S(k, w) if either Low(j) + Length(j) − 1 ≤ k, or
the following two conditions both hold: Low(j) ≤ k−1 and High(j)+Length(j)−
1 ≤ k. Also, add 1 to S(k−1, c) if Low(j) ≤ k−1; add 1 to U (k) if Low(j) > k−1
and High(j) + Length(j) − 1 ≤ k.
3d. If S(1, w) + U (1) > n2 , or there exists 2 ≤ k ≤ m such that S(k, w) > S(k − 1, c),
S(k − 1, c) ≤ n2 , and S(k, w) + U (k) > n2 , then output that c is not a necessary
winner (terminating the algorithm).
4. Output that c is a necessary winner.
The algorithm for computing NcW is obtained by making following changes to Steps 3c and
3d as follows.
3c′ . For each k ≤ m, each j ≤ n,
– if Length(j) = 0, then add 1 to S(k, w) if High(j) ≤ k, and add 1 to S(k, c) if
Low(j) ≤ k;
– if Length(j) > 0, then add 1 to S(k, w) if either Low(j) + Length(j) − 1 ≤ k, or
the following two conditions both hold: Low(j) ≤ k and High(j) + Length(j) − 1 ≤
k. Also, add 1 to S(k, c) if Low(j) ≤ k; add 1 to U (k) if Low(j) ≥ k + 1 and
High(j) + Length(j) − 1 ≤ k.
3d′ . If there exists 0 ≤ l ≤ U (1) such that S(1, w) + l > n2 ≥ S(1, c) + l, or there exists
2 ≤ k ≤ m and l ≤ U (k) such that S(k, w) + l > n2 ≥ S(k, c) + l, then output that c
is not a necessary co-winner (terminating the algorithm).
Proposition 5 Algorithm 3 checks whether or not c is a necessary winner for Pposet with
respect to Bucklin in polynomial time.
Proof. Similarly as in the case of positional scoring rules, for Bucklin, if c 6≻O w, then we
can simply rank c as low as possible while rank w as high as possible, independently. On
the other hand, if c ≻O w, then we can without loss of generality place as few alternatives
between c and w as possible, but the question is where to place the c ≻ w block. The
algorithm will consider a particular k, and try to make it so that w is among the top k for
more than half the votes, and c is among the top k − 1 for at most half the votes. For a
particular vote with c ≻O w, depending on where the block is placed, either (1) c is among
the top k − 1 and w is among the top k; or, (2) c is among the top k − 1 and w is not among
the top k; or, (3) c is not among the top k − 1 and w is not among the top k. However,
59
Xia & Conitzer
not all three of these possibilities may exist for a particular vote. The algorithm will never
choose (2) unless that is the only option, so that the only difficult case is when a decision
must be made between (1) and (3).
We recall that for any i ≤ m and any d ∈ {c, w}, S(i, d) is the minimum number of
times that d is ranked within top i positions, where the minimum is taken over all extensions
of Pposet that are consistent with the observations in the previous paragraph (specifically,
option (2) is never chosen unless there is no other choice). U (k) is the number of partial
orders for which there exists an extension in which c is ranked within top k − 1 positions
and w is ranked within top k positions, as well as an extension in which c is not ranked
within top k − 1 positions and w is not ranked within top k positions (that is, we have a
choice between (1) and (3)).
For each k ≤ m, and each j ≤ n, we consider how to extend Oj .
• If c 6≻Oj w, then the positions of c and w are already determined by our previous
observations (w is ranked as high as possible and c is ranked as low as possible).
• If c ≻Oj w and High(j) ≥ k, then c cannot be ranked within top k − 1 positions and
w cannot be ranked within top k positions; therefore, we add 0 to S(k − 1, c) and
S(k, w).
• If c ≻Oj w, High(j) < k and High(j) + Length(j) − 1 > k, then c can be ranked within
top k − 1 positions, but w cannot be ranked within top k positions. There are two
sub-cases: (1) if Low(j) ≥ k, then we rank c in the Low(j)th position, and henceforth
add 0 to both S(k − 1, c) and S(k, w); (2) if Low(j) < k, then c is inevitably ranked
within top k − 1 positions, and w cannot be ranked within top k positions, which
means that we add 1 to S(k − 1, c) and 0 to S(k, w).
• The final case is where c ≻Oj w, High(j) < k and High(j) + Length(j) − 1 ≤ k. Again,
there are two subcases: (1) if Low(j) < k, then it means that c must be ranked within
top k − 1 positions. Therefore we rank w in the top k positions, and add 1 to both
S(k −1, c) and S(k, w); (2) if Low(j) ≥ k, then it means that we have three options for
an extension of Oj , corresponding to the cases (1), (2), (3) discussed in the beginning
of the proof.
(1) c’s position is within top k − 1 and w’s position is within top k.
(2) c’s position is within top k −1 and w’s position is not within top k (which implies
that Length(i) > 2).
(3) c’s position is not within top k − 1 and w’s position is not within top k.
As we already discussed, option (2) is suboptimal. Therefore, we add 0 to both
S(k − 1, c) and S(k, w), and add 1 to U (k).
The only remaining decision is for how many of the votes corresponding to the number
U (k) to choose option (1) (as opposed to option (3)). This corresponds to Step 3d of the
algorithm, where it checks whether there exists a way of choosing the number of extensions
(but no more than U (k)) that choose (1) in such a way that c is not the winner.
Therefore, the algorithm is correct.
2
60
Determining Possible and Necessary Winners Given Partial Orders
Finally, we consider the possible co-winner problem with respect to plurality with runoff.
We will show that this problem can be solved in polynomial time. From this, it also follows
that the necessary (unique) winner problem can be solved in polynomial time (Proposition 1). In contrast, we have already shown that for plurality with runoff, the possible
unique winner problem is NP-complete (Theorem 8) and the necessary co-winner problem
is coNP-complete (Theorem 9).
Our algorithm for determining whether c is a possible co-winner is based on the following
key observation: c is a possible co-winner for Pposet with respect to plurality with runoff
if and only if there exists an extension of Pposet , denoted by P ∗ , an alternative d 6= c, and
two natural numbers l1 , l2 , such that (1) c is preferred to d in at least half of votes (linear
orders) in P ∗ , and (2) P luP ∗ (c) = l1 , P luP ∗ (d) = l2 , and for each alternative c′ (c′ 6= c and
c′ 6= d), P luP ∗ (c′ ) ≤ min{l1 , l2 }. That is, c and d can enter the runoff (there could be other
pairs of alternatives who enter the runoff in some parallel universe) and c can then defeat
d in the runoff.
For each i∗ ≤ m − 1, we let αi∗ denote the number of partial orders O ∈ Pposet such
that ci∗ ≻O c. We recall that T op(O) denote the set of alternatives c′ for which there exists
at least one extension of O where c′ is in the top position. Based on the observations in
the previous paragraph, we will consider all possibilities for l1 , l2 , and d (we will use i∗ to
denote possibilities for the index of d), and solve a maximum flow problem instance for each
possibility.9 Specifically, for every l1 , l2 ≤ n and every i∗ ≤ m − 1 (with αi∗ ≤ n/2), we
define a maximum flow problem Fl1 ,l2 ,i∗ as follows (illustrated in Figure 5, in which i∗ = 1).
c
1
O1
1
1
c′1
⌊n/2⌋ − α1
l1
c1
l2
1
c2
..
.
s
lmin
1
..
.
On
cm−1
t
t′
1
1
n − l1 − l2
lmin
Figure 5: The maximum flow problem Fl1 ,l2 ,1 .
Vertices: s, O1 , . . . , On , c′i∗ , c, c1 , . . . , cm−1 , t′ , t.
Edges: we have the following five types of edges.
– Edges from s to {O1 , . . . , On }: for every i ≤ n, there is an edge (s, Oi ) with
capacity 1.
9. Our original proof used a minimum cost flow problem, but one of the anonymous reviewers pointed out
how to modify this approach into the simpler maximum flow approach presented here, as well as two
papers (Gusfield & Martel, 2002; Russell & Walsh, 2009) where maximum flow problems were used to
solve other election problems, for which we thank the reviewer.
61
Xia & Conitzer
– Edges from {O1 , . . . , On } to {c′i∗ , c, c1 , . . . , cm−1 }: we have
∗ for every j ≤ n and every d ∈ C such that d 6= ci∗ , if d ∈ T op(Oj ), then there
is an edge (Oj , d) with capacity 1;
∗ for every j ≤ n, if ci∗ ∈ T op(O) and ci∗ ≻Oj c, then there is an edge (Oj , ci∗ )
with capacity 1;
∗ for any j ≤ n, there is an edge (Oj , c′i∗ ) with capacity 1 if ci∗ ∈ T op(O) and
ci∗ 6≻Oj c.
– Edge from c′i∗ to ci∗ : there is an edge (c′i∗ , ci∗ ) with capacity ⌊n/2⌋ − αi∗ .
– Edges from C \ {c, ci∗ } to t′ : for every c′ ∈ C \ {c, ci∗ }, we have an edge (c′ , t′ )
with capacity lmin = min{l1 , l2 }.
– Edges from {c, ci∗ , t′ } to t: we have
∗ an edge (c, t) with capacity l1 ;
∗ an edge (ci∗ , t) with capacity l2 ;
∗ an edge (t′ , t) with capacity n − l1 − l2 .
Next, we prove that c is a possible co-winner for Pposet with respect to plurality with runoff
if and only if there exist l1 , l2 ≤ n and i∗ ≤ m − 1 such that Fl1 ,l2 ,i∗ has a solution in which
the value of the flow is n.
Because all parameters in Fl1 ,l2 ,i∗ are integers, if there exists a solution to Fl1 ,l2 ,i∗ , then
there must also exists an integer solution. First, we show how to convert an integer solution
to Fl1 ,l2 ,i∗ to a solution to the PcW problem with respect to plurality with runoff. Let f
be an integer solution to Fl1 ,l2 ,i∗ , that is, f : Vertices × Vertices → Z. We construct an
extension P ∗ = (V1∗ , . . . , Vn∗ ) of Pposet as follows:
• for each j ≤ n, if f (Oj , c′i∗ ) = 1 then we let Vj∗ be an extension of Oj in which ci∗ is
ranked in the top position;
• for each j ≤ n and each d ∈ C \ {ci∗ }, if f (Oj , d) = 1 then we let Oj∗ be an extension
of Oj in which d is ranked in the top position, and c is ranked as high as possible.
Because the value of f is n, the plurality score of c is l1 and the plurality score of ci∗ is
l2 , while the plurality score of ci (i 6= i∗ ) is at most lmin . Therefore, c and ci∗ enter the
runoff together in one parallel universe. Now, the capacity constraint on the edge (c′i∗ , ci∗ )
ensures that c will win the runoff: the reason is that if we rank ci∗ first in a vote in which
we could have ranked c ahead of ci∗ , then it will contribute 1 to the flow on this edge.
Moreover, the capacity of the edge (c′i∗ , ci∗ ) is ⌊n/2⌋ − αi∗ , which means that ci∗ ≻ c in at
most αi∗ + (⌊n/2⌋ − αi∗ ) ≤ n/2 votes of P ∗ . Hence, c is a co-winner for P ∗ .
Conversely, if there exists an extension P ∗ of P such that c is a co-winner of P ∗ , then
there exists a ci∗ such that in some parallel universe, {c, ci∗ } enter the runoff, and c wins
this runoff. Let l1 , l2 be the plurality scores of c, ci∗ , respectively. Then, this extension can
be converted to a solution to Fl1 ,l2 ,i∗ (we omit the details because they are similar to the
details for the other direction).
Therefore, the following algorithm solves PcW with respect to plurality with runoff.
Algorithm 4 (Computing PcW with respect to plurality with runoff )
62
Determining Possible and Necessary Winners Given Partial Orders
1. For each O ∈ Pposet , compute T op(O) and UpO (c). For each i ≤ m − 1, let αi = |{O ∈
Pposet : ci ∈ UpO (c)}|.
2. Repeat Steps 3a–b for all i ≤ m − 1 and l1 , l2 ≤ n:
3a. Construct the maximum flow problem Fl1 ,l2 ,i .
3b. Solve Fl1 ,l2 ,i by the Ford–Fulkerson algorithm (Cormen, Leiserson, Rivest, &
Stein, 2001). If the maximum flow is n, then output that c is a possible cowinner. Terminate the algorithm.
4. Output that c is not a possible co-winner.
Proposition 6 Algorithm 4 checks whether or not c is a possible co-winner for Pposet with
respect to plurality with runoff in polynomial time.
We recall from the proof of Proposition 1 that c is a necessary unique winner if and only
if no other alternative is a possible co-winner. Therefore, we naturally obtain an algorithm
for NW, simply by using Algorithm 4 to check if any alternative other than c is a possible
co-winner.
Proposition 7 Algorithm 4 can be used to check whether or not c is a necessary unique
winner for Pposet with respect to plurality with runoff in polynomial time.
6. Conclusion and Future Work
We considered the following problem: given a set of alternatives, a voting rule, and a
set of partial orders, which alternatives are possible/necessary winners? That is, which
alternatives would win for some/all extension of the partial orders? We considered the case
where the votes are not weighted and the number of alternatives is not bounded. Table 1 in
the introduction summarizes our results. These results hold whether or not the alternative
must be the unique winner, or merely a co-winner, unless specifically mentioned.
In this paper, there was no restriction on the partial orders. However, if the reason
that we have partial orders is that preferences are submitted as CP-nets, this introduces
additional structure on the partial orders; that is, not all partial orders correspond to a
CP-net. Hence, while our positive results would still apply, it is not immediately obvious
that our negative results would still apply.
Another approach is to approximate the sets of possible/necessary winners. More precisely, we are asked to output a superset (respectively, subset) of possible (respectively,
necessary) winners such that the size of the output set should be within a fixed ratio of
the number of the possible (respectively, necessary) winners. Pini et al. (2007) proved the
inapproximability of the set of possible/necessary winners for the single transferable vote
rule (STV) rule. We conjecture that similar inapproximability results hold for most of
the common voting rules studied in this paper (for which the possible/necessary winner
problems are (co-)NP-complete).
63
Xia & Conitzer
Acknowledgments
We thank Nadja Betzler, Jérôme Lang, Toby Walsh, the anonymous reviewers for AAAI-08
and JAIR, and all participants of the Dagstuhl Seminar 07431: Computational Issues in
Social Choice for helpful discussions and comments. Lirong Xia is supported by a James
B. Duke Fellowship and Vincent Conitzer is supported by an Alfred P. Sloan Research Fellowship. This work is supported by NSF under award numbers IIS-0812113 and CAREER
0953756.
References
Bachrach, Y., Betzler, N., & Faliszewski, P. (2010). Probabilistic possible winner determination. In Proceedings of the National Conference on Artificial Intelligence (AAAI),
pp. 697–702, Atlanta, GA, USA.
Bartholdi, III, J., & Orlin, J. (1991). Single transferable vote resists strategic voting. Social
Choice and Welfare, 8 (4), 341–354.
Bartholdi, III, J., Tovey, C., & Trick, M. (1989a). The computational difficulty of manipulating an election. Social Choice and Welfare, 6 (3), 227–241.
Bartholdi, III, J., Tovey, C., & Trick, M. (1989b). Voting schemes for which it can be
difficult to tell who won the election. Social Choice and Welfare, 6, 157–165.
Baumeister, D., & Rothe, J. (2010). Taking the final step to a full dichotomy of the possible
winner problem in pure scoring rules. In Proceedings of The 19th European Conference
on Artificial Intelligence (ECAI), pp. 1019–1020, Lisbon, Portugal.
Betzler, N., & Dorn, B. (2010). Towards a dichotomy for the possible winner problem in
elections based on scoring rules. Journal of Computer and System Sciences, 76 (8),
812–836.
Betzler, N., Hemmann, S., & Niedermeier, R. (2009). A multivariate complexity analysis of
determining possible winners given incomplete votes. In Proceedings of the TwentyFirst International Joint Conference on Artificial Intelligence (IJCAI), pp. 53–58,
Pasadena, CA, USA.
Boutilier, C., Brafman, R., Domshlak, C., Hoos, H., & Poole, D. (2004). CP-nets: A tool
for representing and reasoning with conditional ceteris paribus statements. Journal
of Artificial Intelligence Research, 21, 135–191.
Chevaleyre, Y., Lang, J., Maudet, N., & Monnot, J. (2010). Possible winners when new candidates are added: the case of scoring rules. In Proceedings of the National Conference
on Artificial Intelligence (AAAI), Atlanta, GA, USA.
Chevaleyre, Y., Lang, J., Maudet, N., Monnot, J., & Xia, L. (2010). New candidates
welcome! Possible winners with respect to the addition of new candidates. Technical
report, Cahiers du LAMSADE 302, Université Paris-Dauphine.
Conitzer, V. (2009). Eliciting single-peaked preferences using comparison queries. Journal
of Artificial Intelligence Research, 35, 161–191.
64
Determining Possible and Necessary Winners Given Partial Orders
Conitzer, V., Rognlie, M., & Xia, L. (2009). Preference functions that score rankings and
maximum likelihood estimation. In Proceedings of the Twenty-First International
Joint Conference on Artificial Intelligence (IJCAI), pp. 109–115, Pasadena, CA, USA.
Conitzer, V., & Sandholm, T. (2002). Vote elicitation: Complexity and strategy-proofness.
In Proceedings of the National Conference on Artificial Intelligence (AAAI), pp. 392–
397, Edmonton, AB, Canada.
Conitzer, V., & Sandholm, T. (2005a). Common voting rules as maximum likelihood estimators. In Proceedings of the 21st Annual Conference on Uncertainty in Artificial
Intelligence (UAI), pp. 145–152, Edinburgh, UK.
Conitzer, V., & Sandholm, T. (2005b). Communication complexity of common voting rules.
In Proceedings of the ACM Conference on Electronic Commerce (EC), pp. 78–87,
Vancouver, BC, Canada.
Conitzer, V., Sandholm, T., & Lang, J. (2007). When are elections with few candidates
hard to manipulate?. Journal of the ACM, 54 (3), 1–33.
Cormen, T., Leiserson, C., Rivest, R., & Stein, C. (2001). Introduction to Algorithms
(Second edition). MIT Press.
Elkind, E., Faliszewski, P., & Slinko, A. (2009). Swap bribery. In Proceedings of the 2nd
International Symposium on Algorithmic Game Theory.
Elkind, E., & Lipmaa, H. (2005). Hybrid voting protocols and hardness of manipulation.
In Annual International Symposium on Algorithms and Computation (ISAAC), 3827
of Lecture Notes in Computer Science, pp. 206–215, Sanya, Hainan, China.
Erdélyi, G., Fernau, H., Goldsmith, J., Mattei, N., Raible, D., & Rothe, J. (2009). The complexity of probabilistic lobbying. In The 1st International Conference on Algorithmic
Decision Theory, pp. 86–97, Venice, Italy.
Erdös, P., & Moser, L. (1964). On the representation of directed graphs as unions of
orderings. Math. Inst. Hung. Acad. Sci., 9, 125–132.
Faliszewski, P. (2008). Nonuniform bribery. In Proceedings of the Seventh International
Joint Conference on Autonomous Agents and Multi-Agent Systems (AAMAS), pp.
1569–1572, Estoril, Portugal.
Faliszewski, P., Hemaspaandra, E., & Schnoor, H. (2008). Copeland voting: ties matter.
In Proceedings of the Seventh International Joint Conference on Autonomous Agents
and Multi-Agent Systems (AAMAS), pp. 983–990, Estoril, Portugal.
Faliszewski, P., Hemaspaandra, E., & Schnoor, H. (2010). Manipulation of copeland elections. In Proceedings of the Nineth International Joint Conference on Autonomous
Agents and Multi-Agent Systems (AAMAS), pp. 367–374, Toronto, Canada.
Garey, M., & Johnson, D. (1979). Computers and Intractability. W. H. Freeman and
Company.
Gibbard, A. (1973). Manipulation of voting schemes: a general result. Econometrica, 41,
587–602.
Gusfield, D., & Martel, C. (2002). The structure and complexity of sports elimination
numbers. Algorithmica, 32, 73–86.
65
Xia & Conitzer
Hazon, N., Aumann, Y., Kraus, S., & Wooldridge, M. (2008). Evaluation of election outcomes under uncertainty. In Proceedings of the Seventh International Joint Conference
on Autonomous Agents and Multi-Agent Systems (AAMAS), pp. 959–966, Estoril,
Portugal.
Hemaspaandra, E., & Hemaspaandra, L. A. (2007). Dichotomy for voting systems. Journal
of Computer and System Sciences, 73 (1), 73–83.
Hemaspaandra, E., Hemaspaandra, L. A., & Rothe, J. (1997). Exact analysis of Dodgson
elections: Lewis Carroll’s 1876 voting system is complete for parallel access to NP.
Journal of the ACM, 44 (6), 806–825.
Konczak, K., & Lang, J. (2005). Voting procedures with incomplete preferences. In Multidisciplinary Workshop on Advances in Preference Handling.
Lang, J. (2007). Vote and aggregation in combinatorial domains with structured preferences. In Proceedings of the Twentieth International Joint Conference on Artificial
Intelligence (IJCAI), pp. 1366–1371, Hyderabad, India.
Lang, J., Pini, M. S., Rossi, F., Venable, K. B., & Walsh, T. (2007). Winner determination
in sequential majority voting. In Proceedings of the Twentieth International Joint
Conference on Artificial Intelligence (IJCAI), pp. 1372–1377, Hyderabad, India.
Lang, J., & Xia, L. (2009). Sequential composition of voting rules in multi-issue domains.
Mathematical Social Sciences, 57 (3), 304–324.
McGarvey, D. C. (1953). A theorem on the construction of voting paradoxes. Econometrica,
21 (4), 608–610.
Parkes, D. (2006). Iterative combinatorial auctions. In Cramton, P., Shoham, Y., & Steinberg, R. (Eds.), Combinatorial Auctions, chap. 2, pp. 41–77. MIT Press.
Pini, M. S., Rossi, F., Venable, K. B., & Walsh, T. (2007). Incompleteness and incomparability in preference aggregation. In Proceedings of the Twentieth International Joint
Conference on Artificial Intelligence (IJCAI), pp. 1464–1469, Hyderabad, India.
Rothe, J., Spakowski, H., & Vogel, J. (2003). Exact complexity of the winner problem for
Young elections. In Theory of Computing Systems, Vol. 36(4), pp. 375–386. SpringerVerlag.
Russell, T., & Walsh, T. (2009). Manipulating tournaments in cup and round robin competitions. In Proceedings of the First International Conference on Algorithmic Decision
Theory (ADT), Lecture Notes in Artificial Intelligence 5783, pp. 26–37.
Sandholm, T., & Boutilier, C. (2006). Preference elicitation in combinatorial auctions. In
Cramton, P., Shoham, Y., & Steinberg, R. (Eds.), Combinatorial Auctions, chap. 10,
pp. 233–263. MIT Press.
Satterthwaite, M. (1975). Strategy-proofness and Arrow’s conditions: Existence and correspondence theorems for voting procedures and social welfare functions. Journal of
Economic Theory, 10, 187–217.
Walsh, T. (2007). Uncertainty in preference elicitation and aggregation. In Proceedings of
the National Conference on Artificial Intelligence (AAAI), pp. 3–8, Vancouver, BC,
Canada.
66
Determining Possible and Necessary Winners Given Partial Orders
Xia, L., Lang, J., & Monnot, J. (2011). Possible winners when new alternatives join:
New results coming up!. To apprea in Proceedings of the Tenth International Joint
Conference on Autonomous Agents and Multi-Agent Systems (AAMAS).
Xia, L., & Conitzer, V. (2008). Determining possible and necessary winners under common voting rules given partial orders. In Proceedings of the National Conference on
Artificial Intelligence (AAAI), pp. 196–201, Chicago, IL, USA.
Xia, L., Conitzer, V., & Procaccia, A. D. (2010). A scheduling approach to coalitional
manipulation. In Proceedings of the ACM Conference on Electronic Commerce (EC),
pp. 275–284, Boston, MA, USA.
Xia, L., Lang, J., & Ying, M. (2007a). Sequential voting rules and multiple elections paradoxes. In Proceedings of the Eleventh Conference on Theoretical Aspects of Rationality
and Knowledge (TARK), pp. 279–288, Brussels, Belgium.
Xia, L., Lang, J., & Ying, M. (2007b). Strongly decomposable voting rules on multiattribute
domains. In Proceedings of the National Conference on Artificial Intelligence (AAAI),
pp. 776–781, Vancouver, BC, Canada.
Xia, L., Zuckerman, M., Procaccia, A. D., Conitzer, V., & Rosenschein, J. (2009). Complexity of unweighted coalitional manipulation under some common voting rules. In
Proceedings of the Twenty-First International Joint Conference on Artificial Intelligence (IJCAI), pp. 348–353, Pasadena, CA, USA.
Zuckerman, M., Procaccia, A. D., & Rosenschein, J. S. (2009). Algorithms for the coalitional
manipulation problem. Artificial Intelligence, 173 (2), 392–412.
67