Finding Preference Profiles of Condorcet Dimension k via SAT

02/18/2014 ∙ by Christian Geist, et al. ∙ Technische Universität München 0

Condorcet winning sets are a set-valued generalization of the well-known concept of a Condorcet winner. As supersets of Condorcet winning sets are always Condorcet winning sets themselves, an interesting property of preference profiles is the size of the smallest Condorcet winning set they admit. This smallest size is called the Condorcet dimension of a preference profile. Since little is known about profiles that have a certain Condorcet dimension, we show in this paper how the problem of finding a preference profile that has a given Condorcet dimension can be encoded as a satisfiability problem and solved by a SAT solver. Initial results include a minimal example of a preference profile of Condorcet dimension 3, improving previously known examples both in terms of the number of agents as well as alternatives. Due to the high complexity of such problems it remains open whether a preference profile of Condorcet dimension 4 exists.



There are no comments yet.


page 1

page 2

page 3

page 4

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

The contribution of this paper is twofold. Firstly, we provide a practical implementation for finding a preference profile for a given Condorcet dimension by encoding the problem as a boolean satisfiability (SAT) problem [Biere et al., 2009], which is then solved by a SAT solver. This technique has proven useful for a range of other problems in social choice theory [Tang and Lin, 2009, Geist and Endriss, 2011, Brandt et al., 2014, Brandt and Geist, 2014, see, ] and can easily be adapted. For instance, only little needs to be altered in order answer similar questions for dominating sets rather than Condorcet winning sets. Secondly, we give an answer to an open question by Elkind et al. [2011] and provide a minimal example of a preference profile of Condorcet dimension , which we computed using our implementation. This profile involves alternatives and agents only, improving the size of previous examples both in terms of agents and alternatives.111For instance, the example in Elkind et al. [2011] required alternatives and agents. The formalization in SAT turns out to be efficient enough, not only to discover this particular profile of Condorcet dimension , but also to show its minimality.

2 Preliminaries

Let  be a set of alternatives and a set of agents. The preferences of agent  are represented by a linear (reflexive, complete, transitive, and antisymmetric) preference relation . The interpretation of , usually denoted by , is that agent  values alternative  at least as much as alternative . A preference profile is an -tuple containing a preference relation for each agent .

Let be a preference profile. As introduced by Elkind et al. [2011], we now define the notion of a Condorcet winning set through an underlying covering relation between sets of alternatives and alternatives: A set of alternatives -covers an alternative (short: ) if

A set of alternatives is called a Condorcet winning set if for each alternative the set -covers . The set of all Condorcet winning sets of will be denoted by . The Condorcet dimension is defined as the size of the smallest Condorcet winning set the profile admits,


Consider the preference profile depicted in fig:example. As does not have a Condorcet winner . It can easily be checked that (like any other two-element set in this case) is a Condorcet winning set of and, thus, .

Figure 1: A preference profile of Condorcet dimension .

In this work, we address the computational problem of finding a preference profile of a given Condorcet dimension. To this end, we define the problem of checking whether for a given number of agents and alternatives there exists a preference profile with .

Name: Check-Condorcet-Dimension-
Instance: A pair of natural numbers and .
Question: Does there exist a preference profile with agents and alternatives that has Condorcet dimension of at least ?

Preference profiles
Table 1: Number of objects involved in the Check-Condorcet-Dimension- problem. For the subsets of size are the candidates for Condorcet winning sets.

Note that the following simple observation can be used to

If there is a preference profile of Condorcet dimension involving alternatives, then there is also one of the same dimension involving alternatives.


Let be a preference profile on a set of alternatives with . We need to construct a preference profile on a set of alternatives with such that . For each , define , add in the last place of agent ’s preference ordering. It is then immediately clear that , which establishes . On the other hand, if we assume , then there exist a Condorcet winning set for of size . This set, however, must–by the construction of –also be a Condorcet winning set for ; a contradiction. ∎

3 Methodology

The number of objects potentially involved in the Check-Condorcet-Dimension- problem are given in tab:magnitudes for . It is immediately clear that a naïve algorithm will not solve the problem in a satisfactory manner. This section describes our algorithmic efforts to solve this problem for reasonably large instances.

3.1 Translation to propositional logic (SAT)

In order to solve the problem Check-Condorcet-Dimension- for arbitrary , we follow a similar approach as Tang and Lin [2009], Geist and Endriss [2011], and Brandt and Geist [2014]: we translate the problem to propositional logic (on a computer) and use state-of-the-art SAT solvers to find a solution. At a glance, the overall solving steps are shown in alg:SATcheck.

Input: positive integers and
Output: whether there exists a preference profile with agents and alternatives and
/* Encoding of problem in CNF */
File cnfFile;
foreach agent  do
       cnfFile += Encoder.reflexivePreferences();
       cnfFile += Encoder.completePreferences();
       cnfFile += Encoder.transitivePreferences();
       cnfFile += Encoder.antisymmetricPreferences();
foreach set with  do
       cnfFile += Encoder.noCondorcetWinningSet();
/* Symmetry breaking */
cnfFile += Encoder.neutrality();
/* SAT solving */
satisfiable = SATsolver.solve(cnfFile);
if instance is satisfiable then
       return true;
       return false
Algorithm 1 SAT-Check-Condorcet-Dimension-

Generally speaking, the problem at hand can be understood as the problem of finding a preference profile that satisfies certain conditions—here: having a Condorcet dimension of at least ). Thus, a satisfying instance of the propositional formula to be designed should represent a preference profile. To capture this, a formalization based on two types of variables suffices. The boolean variable represents , agent ranking alternative at least as high as alternative ; and the variable stands for the set covering alternative .

In more detail, the following conditions/axioms need to be formalized:222The further axiom for neutrality is not required for correctness, but speeds up the solving process. It is discussed in subsec:opt.

  1. All agents have linear orders over the alternatives as their preferences (short: linear preferences)

  2. For each set with , it is not the case that is a Condorcet winning set (short: no Condorcet set)

For the first axiom, we encode reflexivity, completeness, transitivity, and anti-symmetry of the relation for all agents . The complete translation to CNF (conjunctive normal form, the established standard input format for SAT solvers) is given exemplarily for the case of transitivity; the other axioms are converted analogously.

In formal terms transitivity can be written as

which then translates to the pseudo code in alg:transitivity for generating the CNF file. The key in the translation of the inherently higher order axioms to propositional logic is (as pointed out by Geist and Endriss [2011] already) that because of finite domains, all quantifiers can be replaced by finite conjunctions or disjunctions, respectively.

foreach agent  do
       foreach alternative  do
             foreach alternative  do
                   foreach alternative  do
Algorithm 2 Encoding of transitivity of individual preferences

In all algorithms, a subroutine r takes care of the compact enumeration of variables.333The DIMACS CNF format only allows for integer names of variables. But since we know in advance how many agents and alternatives there are, we can simply use a standard enumeration method for tuples of objects.

The axiom “no Condorcet set” can be formalized in a similar fashion, but requires further subroutines to avoid an exponential blow-up of the size of the formula in CNF. In short, the axiom can be written as

It remains as part of this axiom to define a sufficient condition for . In the following, we denote the smallest number of agents required for a strict -majority by . In formal terms, we write for each set with and each alternative :

In order to avoid an exponential blow-up when converting this formula to CNF, variable replacement (a standard procedure also known as Tseitin transformation) is applied. In our case, we replaced by new variables of the form and introduced the following defining clauses:444Note that one direction of the standard bi-implication suffices here.

In this case, the helper variables even have an intuitive meaning as enforces that for no alternative it is the case that agent prefers alternative over alternative , agent does not contribute to -covering .

Note that the conditions like can easily be fulfilled during generation of the corresponding CNF formula on a computer. For enumerating all subsets of alternatives of a given size we, for instance, used Gosper’s Hack [Knuth, 2011].

The corresponding pseudo code for the “no Condorcet set” axiom can be found in alg:noCondSet.

foreach set with  do
       foreach alternative  do
       /* Definition of variable */
       foreach set with  do
             foreach agent  do
      /* Definition of auxiliary variable */
       foreach agent  do
             foreach  do
Algorithm 3 Encoding of the axiom “no Condorcet set”

With all axioms formalized in propositional logic, we are now ready to search for preference profiles of Condorcet dimension . Before we do so, however, we describe a (standard) optimization technique called symmetry breaking, which speeds up the solving process of the SAT solver.

3.2 Optimized computation

Observe that from a given example of a preference profile with we can always generate further examples simply by permuting the (names of the) alternatives. One could say that all positive witnesses to the SAT-Check-Condorcet-Dimension- problem are invariant under permutations of the alternatives. Therefore, we implemented a standard technique in SAT solving called symmetry breaking; here in the form of setting agent 1’s preferences to a fixed preference ordering, for instance to lexicographic preferences. This trims the search space for the SAT solver and therefore reduces the runtime of the solving process. An encoding can be achieved simply by adding a subformula of the form

which sets the first agents preferences to lexicographic ordering.

4 Initial Results

All computations were run on a Intel Core i5, 2.66GHz (quad-core) machine with 12 GB RAM using the SAT solver plingeling [Biere, 2013].

When called with the parameters , our implementation of SAT-Check-Condorcet-Dimension- returns the preference profile within about one second. is a smallest preference profile of Condorcet dimension and is shown in fig:dim3.555The witnesses for all sets with not being Condorcet winning sets are also returned by SAT-Check-Condorcet-Dimension- and can be obtained from the output in fig:dim3out. That there is a larger set () which forms a Condorcet winning set can easily be confirmed manually (or by calling SAT-Check-Condorcet-Dimension-).

Furthermore, it turns out that this preference profile is a smallest profile of Condorcet dimension . All strictly smaller profiles (with less agents and at most as many alternatives, or with less alternatives and at most as many agents) can be shown to have a Condorcet dimension of at most 2 via SAT-Check-Condorcet-Dimension-.666The check all cases, again the running time is only a few seconds.

Figure 2: A smallest preference profile of Condorcet dimension (with agents alternatives).

An overview of further (preliminary) results can be found in tab:complete.

[frame=single,fontsize=] Model (decoding of satisfying assignment) found: Agent 0: 0 > 1 > 2 > 3 > 4 > 5 Agent 1: 2 > 3 > 5 > 0 > 4 > 1 Agent 2: 5 > 4 > 0 > 1 > 2 > 3 Agent 3: 3 > 5 > 1 > 4 > 0 > 2 Agent 4: 4 > 0 > 3 > 1 > 2 > 5 Agent 5: 1 > 2 > 4 > 3 > 5 > 0 does not have a Condorcet winning set of size 2 (6 agents and 6 alternatives). Witnesses: 0, 1 does not cover alternative(s): 5 0, 2 does not cover alternative(s): 4 1, 2 does not cover alternative(s): 0 0, 3 does not cover alternative(s): 4 1, 3 does not cover alternative(s): 0 2, 3 does not cover alternative(s): 0 0, 4 does not cover alternative(s): 5 1, 4 does not cover alternative(s): 5 2, 4 does not cover alternative(s): 1 3, 4 does not cover alternative(s): 2 0, 5 does not cover alternative(s): 3 1, 5 does not cover alternative(s): 3 2, 5 does not cover alternative(s): 1 3, 5 does not cover alternative(s): 2 4, 5 does not cover alternative(s): 3

Figure 3: Output of SAT-Check-Condorcet-Dimension- for agents and alternatives.
1 2 3 4 5 6 7 8 9 10 11 12
6 + +
7 + + +
8 + + +
9 + + +
10 + + +
Table 2: Preliminary collection of results obtained with SAT-Check-Condorcet-Dimension- for different numbers of alternatives and voters . A plus (+) stands for a preference profile found; a minus (–) for the fact that all preference profiles have a Condorcet winning set of size .


This material is based upon work supported by Deutsche Forschungsgemeinschaft under grant BR 2312/9-1. The author thanks Felix Brandt and Hans Georg Seedig for helpful discussions and their support.


  • Biere [2013] A. Biere. Lingeling, plingeling and treengeling entering the sat competition 2013. In A. Balint, A. Belov, M. Heule, and M. Järvisalo, editors, Proceedings of the SAT Competition 2013, pages 51–52, 2013.
  • Biere et al. [2009] A. Biere, M. Heule, H. van Maaren, and T. Walsh, editors. Handbook of Satisfiability, volume 185 of

    Frontiers in Artificial Intelligence and Applications

    IOS Press, 2009.
  • Brandt and Geist [2014] F. Brandt and C. Geist. Finding strategyproof social choice functions via SAT solving. In Proceedings of the 13th International Conference on Autonomous Agents and Multi-Agent Systems (AAMAS). IFAAMAS, 2014. Forthcoming.
  • Brandt et al. [2014] F. Brandt, C. Geist, and H. G. Seedig. Identifying -majority digraphs via SAT solving. 2014. Working paper.
  • Elkind et al. [2011] E. Elkind, J. Lang, and A. Saffidine. Choosing collectively optimal sets of alternatives based on the condorcet criterion. In IJCAI, pages 186–191, 2011.
  • Geist and Endriss [2011] C. Geist and U. Endriss. Automated search for impossibility theorems in social choice theory: Ranking sets of objects. Journal of Artificial Intelligence Research, 40:143–174, 2011.
  • Knuth [2011] D. E. Knuth. Combinatorial Algorithms, volume 4A, part 1 of The Art of Computer Programming. Addison-Wesley, 2011.
  • Tang and Lin [2009] P. Tang and F. Lin. Computer-aided proofs of Arrow’s and other impossibility theorems. Artificial Intelligence, 173(11):1041–1053, 2009.