Appendix
Proof: Theorem 1
Let us assume that for some l holds \(pw_{l+1}\succ pw_l\). Consider a partial joint profile, \({\mathcal {R}}_{-i}\), where \({\displaystyle {score}}(pw_l,{\mathcal {R}}_{-i})={\displaystyle {score}}(pw_{l+1},{\mathcal {R}}_{-i})=\eta \) and all other voters have a score of at most \(\eta -m\). \({\mathcal {R}}_{-i}\) is a possible (partial) joint profile given the set \(PW_i\). Now, if the voter i submits \(P_i\), then \(pw_l\) will become the winner. If \(P_i'\) is submitted, then \(pw_{l+1}\) will win the elections. This contradicts the definition of dominance: \(P_i'\) does not dominate \(P_i\).
Let us now assume that for some l holds \(|[pw_l\ ;P_i'\ ;pw_{l+1}]|< |[pw_l\ ;P_i\ ;pw_{l+1}]|\). Similar to the previous case, construct a possible (partial) joint profile \({\mathcal {R}}_{-i}\) so that \({\displaystyle {score}}(pw_{l+1},{\mathcal {R}}_{-i})-{\displaystyle {score}}(pw_l,{\mathcal {R}}_{-i})=|[pw_l\ ;P_i\ ;pw_{l+1}]|-\eta \). Where \(\eta =1\) if \(pw_l\) beats \(pw_{l+1}\) in tie-breaking and \(\eta =2\) otherwise. Furthermore, \({\mathcal {R}}_{-i}\) can be such that the score of all other candidates is at least m points less than \({\displaystyle {score}}(pw_l,{\mathcal {R}}_{-i})\). As before, if \(P_i\) is submitted by the voter i, then \(pw_l\) wins the elections, and if \(P_i'\) is submitted, then \(pw_{l+1}\) wins. Again, this contradicts \(P_i'\) dominating \(P_i\).
Lastly, assuming that \(|[pw_l\ ;P_i'\ ;pw_{l+1}]|\ge |[pw_l\ ;P_i\ ;pw_{l+1}]|\) for all \(l\in [1,\ldots ,k-1]\) holds, but there is no\(l\in [1,\ldots ,k-1]\) so that \(|[pw_l\ ;P_i'\ ;pw_{l+1}]|\gneq |[pw_l\ ;P\ ;pw_{l+1}]|\). In this case for any \({\mathcal {R}}=({\mathcal {R}}_{-i},P_i)\) holds that \({{\mathcal {F}}}({\mathcal {R}})={{\mathcal {F}}}({\mathcal {R}}_{-i},P_i')\). Hence \(P_i'\) can not dominate \(P_i\).
We conclude that all three conditions are necessary for \(P_i'\) to dominate \(P_i\). Furthermore, a simple reinspection of the proof quickly leads to the sufficiency of the conditions. \(\square \)
Interactive Local Dominance Response Analysis
Theorem 1 has given a higher level structure to the set of possible manipulations in our model. It has allowed the reader to build intuition, comprehend our algorithm construction and understand their application examples. Now, it is possible to provide the detailed theoretical treatment, and in this section we will provide complete definitions supporting the algorithmic design. Proofs of all the theorems and
Theorem 2
Assume that ”Common Givens” w.l.o.g. conditions hold. Algorithm 1 works in polynomial time in the number of voters and candidates, and finds a \(P_i'\) that satisfies Condition-1 and Condition-2, if such a preference profile exists.
Before we prove Theorem 2, i.e. the correctness of Algorithm 1, we provide a set of lemmas that are needed for supporting the proof. All lemmas adopt the “Common Givens” w.l.o.g. assumptions mentioned in Sect. 4.1. Let us examine voter \(v_i\)’s profile. The preferred order of possible winners according to \(v_i\) is: \(P_i=[pw_1,pw_2,\ldots ,pw_l\)]. When \(v_i\) is queried for her preference between \(c_j\) and \(c_k\), her response is: \(c_j\succ c_k\). We would like to build a new profile \(P_i'\) where voter \(v_i\)’s response to the same query is: \(c_k\succ c_j\). We need \(P_i'\) to satisfy conditions Condition-1 and Condition-2, i.e. \(P_i'\) should be a local dominant profile over \(P_i\) and also have the minimal swap distance to \(P_i\) out of all possible profiles.
The only way to create a profile \(P_i'\), that is local dominant and has a minimal swap distance, is if in profile \(P_i\):
\(c_j\) is above \(pw_1\) and \(c_k\) is below \(pw_l\): \(P_i\ \ :\ \ \dots \succ c_j\succ \dots \succ pw_1\succ \dots \succ pw_l\succ \dots \succ c_k\succ \dots \)
\(c_j\) is between \(pw_1\) and \(pw_l\) and \(c_k\) is below \(pw_l\): \(P_i\ \ :\ \ \dots \succ pw_1\succ \dots \succ c_j\succ \dots \succ pw_l\succ \dots \succ c_k\succ \dots \)
\(c_j\) is above \(pw_1\) and \(c_k\) is between \(pw_1\) and \(pw_l\): \(P_i\ \ :\ \ \dots \succ c_j\succ \dots \succ pw_1\succ \dots \succ c_k\succ \dots \succ pw_l\succ \dots \)
As an example of the latter case, if \(P_i=[c_j,\ldots ,pw_1,\ldots ,c_k,...pw_l]\) then switching between \(c_j\) and \(c_k\) by adding \(c_j\) to the sequence that is below \(pw_1\) and above \(pw_l\): \(P_i'= [pw_1,\ldots ,c_k,c_j ,\ldots , pw_l]\) results in a profile \(P_i'\) that is a local dominant with a minimal swap distance, i.e. satisfies both conditions Condition-1 and Condition-2.
Let us consider the alternatives. If in profile \(P_i\) both \(c_j\) and \(c_k\) are either:
below \(pw_1\) and above \(pw_l\): \(P_i\ \ :\ \ \dots \succ pw_1\succ \dots \succ c_j\succ \dots \succ c_k\succ \dots \succ pw_l\succ \dots \)
below \(pw_l\): \(P_i\ \ :\ \ \dots \succ pw_1\succ \dots \succ pw_l\succ \dots \succ c_j\succ \dots \succ c_k\succ \dots \)
above \(pw_1\): \(P_i\ \ :\ \ \dots \succ c_j\succ \dots \succ c_k\succ \dots \succ pw_1\succ \dots \succ pw_l\succ \dots \)
Then for \(P_i'\) to be a local dominant profile over \(P_i\), the total distance between \(pw_1\) and \(pw_l\) should increase with respect to the total distance between \(pw_1\) and \(pw_l\) in profile \(P_i\). Therefore, in these cases one must not only switch between \(c_j\) and \(c_k\) but must also insert at least one candidate between \(pw_1\) and \(pw_l\) so that the total distance is increased. However, inserting a candidate between \(pw_1\) and \(pw_l\) results in a profile \(P_i'\) that is local dominant but does not have a minimal swap distance.
Formally, the above descriptions can be expressed as:
Lemma 1
Assume that there is \(P_i'\ne P_i\) that satisfies Condition-1 and Condition-2. Then either of the following holds:
\(P_i(c_j,pw_1)\) and \(P_i(pw_l,c_k)\);
\(P_i(c_j,pw_1)\) and \(c_k\in [pw_1\ ;P_i\ ;pw_l]\);
\(P_i(pw_l,c_k)\) and \(c_j\in [pw_1\ ;P_i\ ;pw_l]\).
Proof: Lemma 1
Let us assume the contrary, i.e. that, in addition to Condition-1 and Condition-2, either of the following holds :
\(c_j,c_k\in [pw_1\ ;P_i\ ;pw_l]\)
\(c_j,c_k\in (+\infty \ ;P_i\ ;pw_l]\)
\(c_j,c_k\in [pw_l\ ;P_i\ ;-\infty )\)
Because Condition-1 holds for \(P_i'\), i.e. \(P_i'\) locally dominates \(P_i\), it follows from Theorem 1 that
$$\begin{aligned} \left| [pw_1\ ;P_i\ ;pw_l]\right| <|[pw_1\ ;P_i'\ ;pw_l]|. \end{aligned}$$
Hence, there is a candidate \(c\in C\) so that either \(P_i(c,pw_1)\) and \(P_i'(pw_1,c)\), or \(P_i(pw_l, c)\) and \(P_i'(c,pw_l)\). Due to the symmetry of these two cases, let us assume without loss of generality that the former case holds, i.e. \(P_i(c,pw_1)\) and \(P_i'(pw_1,c)\). Let us assume that c is the highest candidate for which this condition holds with respect to \(P_i'\). Formally:
$$\begin{aligned} \forall {\widehat{c}}\ne c\ \ P_i({\widehat{c}},pw_1) \wedge P_i'(pw_1,{\widehat{c}}) \Rightarrow P_i'(c,{\widehat{c}}) \end{aligned}$$
(1)
Let \(c'\) be the candidate immediately above c w.r.t \(P_i'\), i.e. \(P_i'(c',c)\) and the segment \((c'\ ;P_i'\ ;c)=\emptyset \). Let us show that the candidate pair \((c',c)\ne (c_k,c_j)\), in each of the contrary sub-cases:
If \(c_j,c_k\in [pw_1\ ;P_i\ ;pw_l]\), then \(c\ne c_j\) and \(c\ne c_k\) since \(c\in (+\infty \ ;P_i\ ;pw_1]\).
If \(c_j,c_k\in (+\infty \ ;P_i\ ;pw_1]\), then \(c\ne c_j\), otherwise we obtain contradiction to the Eq. 1, because \(P_i'(c_k,c_j)\).
If \(c_j,c_k\in [pw_l\ ;P_i\ ;-\infty )\), then \(c\ne c_j\) and \(c\ne c_k\) since \(c\in (+\infty \ ;P_i\ ;pw_1]\).
Furthermore, c and \(c'\) are such that \(P_i(c,c')\). Otherwise we again obtain contradiction to Eq. 1, since by the choice of c and \(c'\) holds that \(P_i(c,pw_1)\) and \(\left| (pw_1\ ;P_i\ ;c']\right| \ge 1\) (i.e. \(c'\) is either \(pw_1\) or below it).
Let us then consider \(P_i''\) obtained from \(P_i'\) by swapping c and \(c'\). It is easy to see that \({d_{swap}}(P_i,P_i'')\lneq {d_{swap}}(P_i,P_i')\), yet \(P_i''\models CL(Q_i\cup {(c_k,c_j)})\). This contradicts the assumption that Condition-2 holds for \(P_i'\). \(\square \)
As before, let us assume that in \(P_i\), \(c_j\succ c_k\). In \(P_i'\) the order of these two candidates is switched so that \(c_k\succ c_j\). Let us denote the set of all profiles that have a minimal swap distance from \(P_i\) as \(\mu (P_i)\). In order for \(P_i' \in \mu (P_i)\), i.e, in order for \(P_i'\) to have a minimal swap distance from \(P_i\), \(c_k\) and \(c_j\) need to be ordered directly one after the other, with no other candidates separating them. Formally:
Lemma 2
Let \((c_j,c_k)\) be the query, and let there be c so that \(P_i'(c_k,c)\) and \(P_i'(c,c_j)\), i.e. \((c_k; P_i'; c_j)\ne \emptyset \), then \(P_i'\not \in \mu (P_i)\).
Proof: Lemma 2
Let us have a closer look at the closed interval \([c_k; P_i'; c_j]\). There is a pair of candidates \((c,c')\in [c_k; P_i';c_j]\), so that \(P_i(c',c)\) and \((c; P_i', c')=\emptyset \). Because \((c_k; P_i'; c_j)\ne \emptyset \), it holds that \((c,c')\ne (c_k,c_j)\). Let \(P_i''\) be a preference order obtained from \(P_i'\) by swapping c and \(c'\). It is easy to see that \(P_i''\models Q_i\) and \({d_{swap}}(P_i,P_i'')\lneq {d_{swap}}(P_i,P_i')\). I.e. \(P_i'\not \in \mu (P_i)\). \(\square \)
Besides the proximity of \(c_j,c_j\), we can also show that certain sets of elements remain in their original order. In particular, the following lemma show that two sub-sets of elements, those with the closest consistent \(P_i'\in \mu (P_i)\) places either above \(c_k\) or below \(c_j\), inherit their relative order from \(P_i\).
Lemma 3
Let \(P_i'\in \mu (P_i)\), then the following two equations hold
$$\begin{aligned} P_i'\downarrow _{(\infty \ ;P_i'\ ;c_k]}= & {} P_i\downarrow _{(\infty \ ;P_i'\ ;c_k]} \end{aligned}$$
(2)
$$\begin{aligned} P_i'\downarrow _{[c_j\ ;P_i'\ ;-\infty )}= & {} P_i\downarrow _{[c_j\ ;P_i'\ ;-\infty )} \end{aligned}$$
(3)
Proof: Lemma 3
Let us assume that the Eq. 2 does not hold. Then, there are two candidates, \(c,c'\) so that \((c';P_i';c)=\emptyset \), \(P_i'(c',c)\) and \(P_i(c,c')\). Furthermore, it holds that \(P_i'(c,c_k)\). Let us define a new preference order \(P_i''\) obtained from \(P_i'\) by swapping c and \(c'\). Then \({d_{swap}}(P_i,P_i'')<{d_{swap}}(P_i,P_i')\) and \(P_i''\models CL\left( Q_i\cup \{(c_k,c_j)\}\right) \), i.e. \(P_i'\not \in \mu (P_i)\), contradicting the lemma’s premise.
We obtain the same kind of contradiction by assuming that Eq. 3 does not hold. Hence the Lemma’s conclusion: both Eqs. 2 and 3 must hold. \(\square \)
Furthermore, if we consider two candidates that the original preference order \(P_i\) places outside the span between \(c_j\) and \(c_k\), then they demarcate an upper and a lower candidate intervals that maintain both their order and composition in \(P_i'\).
Lemma 4
Let \(P_i'\in \mu (P_i)\), and let \(c_j',c_k'\in C\) so that \(P_i(c_j',c_j)\) and \(P_i(c_k,c_k')\). Then the following equations hold
$$\begin{aligned} (\infty \ ;P_i\ ;c_j']= & {} (\infty \ ;P_i'\ ;c_j'] \end{aligned}$$
(4)
$$\begin{aligned}{}[c_k'\ ;P_i\ ;-\infty )= & {} [c_k'\ ;P_i'\ ;-\infty ). \end{aligned}$$
(5)
Proof: Lemma 4
Let us assume that the Eq. 4 does not hold, in spite of the lemma’s premise being true. That is, there exists a candidate \(c_j'\) so that \(P_i(c_j',c_j)\) and \((\infty \ ;P_i\ ;c_j']\ne (\infty \ ;P_i'\ ;c_j']\).
Three possible sub-cases exist in this context:
- 1.
\(\exists c\in C\ s.t.\ P_i(c_j',c)\wedge P_i'(c,c_j')\)
- 2.
\(\exists c\in C\ s.t.\ P_i(c,c_j')\wedge P_i'(c_j',c)\)
- 3.
Neither of the above holds.
If \(\exists c\in C\ s.t.\ P_i(c_j',c)\wedge P_i'(c,c_j')\), then it is easy to see that a pair of candidates \((c,c')\) exists so that \((c\ ;P_i'\ ;c')=\emptyset \), \(P_i'(c,c')\), and either \(P_i(c',c_j')\) or \(c'=c_j'\). Let us then obtain a preference order \(P_i''\) from \(P_i'\) by swapping c and \(c'\). It holds that \({d_{swap}}(P_i,P_i'')<{d_{swap}}(P_i,P_i')\) and, in addition, \(P_i' \models CL\left( Q_i\cup \{(c_k,c_j)\}\right) \). Hence, we contradict the lemma’s premise that \(P_i'\in \mu (P_i)\).
The sub-case where it holds that \(\exists c\in C\ s.t.\ P_i(c,c_j')\wedge P_i'(c_j',c)\) is similar to the above.
Let us now investigate the third sub-case. It occurs if there is no element that has switched from being above (below) \(c_j'\) in \(P_i\) to being below (above) \(c_j'\) in \(P_i'\). In particular the following two sets are equal (as sets):
$$\begin{aligned} B=\{c\in C| P_i(c,c_j')\}=\{c\in C| P_i'(c,c_j')\} \end{aligned}$$
If \((\infty \ ;P_i\ ;c_j')=\emptyset \), then the assumption of Eq. 4 not being true can not hold. If, however, \((\infty \ ;P_i\ ;c_j')\ne \emptyset \), then \(P_i\downarrow _{B}\ne P_i'\downarrow _{B}\). That is, there is a pair of candidates \(c,c'\in B\) so that \((c'\ ;P_i'\ ;c)=\emptyset \), \(P_i(c,c')\) and \(P_i'(c',c)\). Defining an alternative order \(P_i''\) obtained from \(P_i'\) by swapping c and \(c'\), we once again obtain a contradiction to the premise \(P_i'\in \mu (P_i)\).
We conclude that Eq. 4 must hold. Symmetric proof establishes Eq. 5. \(\square \)
Now, as Lemma 2 showed, \(c_j\) and \(c_k\) are placed next to each other, when changing the preference order from \(P_i\) to \(P_i'\). However, to achieve this some other elements may need to be separated. The following lemma shows that this does not occur without need. That is, if two elements were placed next to each other in \(P_i\), but not in \(P_i'\), then they were separated to accommodate the placement of \(c_k\) and \(c_j\) between them.
Lemma 5
Let \(P_i'\in \mu (P_i)\), and let \(a,b\in C\) be two candidates so that \(P_i\downarrow _{\{a,b\}}=P_i'\downarrow _{\{a,b\}}\), \((a\ ;P_i\ ;b)=\emptyset \), and \((a\ ;P_i'\ ;b)\ne \emptyset \). Then \(a\in (\infty \ ;P_i'\ ;c_k]\) and \(b\in [c_j\ ;P_i'\ ;-\infty )\).
Proof: Lemma 5
Let us assume that the Lemma’s conclusion does not hold. In particular this would mean that \(c_j,c_k\not \in (a\ ;P_i'\ ;b)\). On the other hand, \((a\ ;P_i'\ ;b)\ne \emptyset \), so there is a candidate \(c\in (a\ ;P_i'\ ;b)\). Because a and b are next to each other in the preference ordering \(P_i\), i.e. \((a\ ;P_i\ ;b)=\emptyset \), it holds that either \(P_i(c,a)\) or \(P_i(b,c)\). Which, in turn, implies that \(P_i\downarrow _{[a\ ;P_i'\ ;b]}\ne P_i'\downarrow _{[a\ ;P_i'\ ;b]}\). Therefore, there is \(c'\in [a\ ;P_i'\ ;b]\) so that \(c'\ne c\) and \((c'\ ;P_i'\ ;c)=\emptyset \), i.e. c and \(c'\) are next to each other in the ordering \(P_i'\). Furthermore, it must hold that these two elements were switched betwen \(P_i\) and \(P_i'\), that is \(P_i(c,c')\) and \(P_i'(c',c)\). Let us define a new preference order \(P_i''\) by swapping c and \(c'\) in \(P_i'\). It would hold that \({d_{swap}}(P_i'',P_i)\lneq {d_{swap}}(P_i',P_i)\), while \(P_i''\models CL\left( Q_i\cup \{(c_k,c_j)\}\right) \), thus contradicting the premise that \(P_i'\in \mu (P_i)\). \(\square \)
One final observation that we will need to prove Theorem 2 has to do with the general change in the relative position of elements committed by \(Q_i\) to a particular order w.r.t \(c_k\) or \(c_j\). Lemma 6 shows that among all elements above (correspondingly, below) \(c_k\) (correspondingly, \(c_j\)) only those committed to be ordered after \(c_j\) (correspondingly, before \(c_k\)) will change their relative position when moving from preference order \(P_i\) to \(P_i'\). All other elements will maintain their order.
Lemma 6
Let us assume that \(P_i'\in \mu (P_i)\). Let c be some candidate so that \(P_i'(c,c_k)\) and \((c,c_k)\not \in Q_i\). Then the following equality holds:
$$\begin{aligned} (\infty \ ;P_i'\ ;c]=(\infty \ ;P_i\ ;c]{\setminus }[c_j\ ;Q_i\ ;-\infty ). \end{aligned}$$
Symmetrically, let c be some candidate so that \(P_i'(c_j,c)\) and \((c_j,c)\not \in Q_i\). Then:
$$\begin{aligned}{}[c\ ;P_i'\ ;-\infty )=[c\ ;P_i\ ;-\infty ){\setminus }(\infty \ ;Q_i\ ;c_k]. \end{aligned}$$
Proof: Lemma 6
First, notice that if \(c\not \in (c_j\ ;P_i\ ;c_k)\), then the lemma is a direct conclusion if Lemma 4. In more detail, if \(P_i(c,c_j)\), then only the premise of the first equation holds. Furthermore, since \(P_i\models Q_i\), \((\infty \ ;P_i\ ;c]\cap [c_j\ ;Q_i\ ;-\infty )=\emptyset \). Thus, the lemma’s conclusion requires that \((\infty \ ;P_i'\ ;c]=(\infty \ ;P_i\ ;c]\), which holds due to Lemma 4. Symmetrically, if \(P_i(c_k,c)\), then the premise of the second equation is true, and the conclusion similarly holds according to Lemma 4. Therefore, in the remainder of this proof, we will assume that \(c\in (c_j\ ;P_i\ ;c_k)\).
Now, let us assume that there is in fact a candidate \(c\in C\) that satisfies the first premise of the lemma, but violates its conclusion. Denote by X the following set:
$$\begin{aligned} X=\{c\in C| P_i'(c,c_k), (c,c_k)\not \in Q_i, (+\infty \ ;P_i'\ ;c]\ne (+\infty \ ;P_i\ ;c]{\setminus }[c_j\ ;Q_i\ ;-\infty )\} \end{aligned}$$
Let x denote the least preferred candidate of X w.r.t the preference order \(P_i'\), i.e., for any \(x\ne c\in X\) holds that \(P_i'(c,x)\).
From Lemma 3 we know that \(P_i'\downarrow _{(+\infty \ ;P_i'\ ;x]}=P_i\downarrow _{(+\infty \ ;P_i'\ ;x]}\). Which also means that \((+\infty \ ;P_i'\ ;x]\subseteq (+\infty \ ;P_i\ ;x]\). Furthermore, since \(P_i'\models CL\left( Q_i\cup \{(c_k,c_j)\}\right) \), for all \(c\in [c_j\ ;Q_i\ ;-\infty )\) holds that \(P_i'(c_j,c)\) or \(c=c_j\). Since \(P_i'(x,c_j)\), by the transitivity of \(P_i'\) it is also true that \(P_i'(x,c)\) for all \(c\in [c_j\ ;Q_i\ ;-\infty )\). Hence, we obtain \((+\infty \ ;P_i'\ ;x]\cap [c_j\ ;Q_i\ ;-\infty )=\emptyset \). In addition, since we have assumed that the lemma’s conclusion does not hold, we obtain the following strong subsumption:
$$\begin{aligned} (+\infty \ ;P_i'\ ;x]\subset (+\infty \ ;P_i\ ;x]{\setminus }[c_j\ ;Q_i\ ;-\infty ) \end{aligned}$$
(6)
This means, in particular, that there is a candidate \(y\in C\) so that \(P_i(y,x)\), \(P_i'(x,y)\), and \((c_j,y)\not \in Q_i\). Taking into account Lemma 3, \(P_i\) and \(P_i'\) have the following overall structures:
Let us denote A the number of candidates between x and \(c_k\) with respect to \(P_i'\), i.e. \(A=|(x\ ;P_i'\ ;c_k]|\), and, correspondingly \(B=|[c_j\ ;P_i'\ ;y)|\).
Consider now alternative preference orderings R and \(R'\), obtained from \(P_i'\) by either moving x below y or, alternatively, moving y just below x. That is, P and \(P'\) have the following structures:
Furthermore, \(P_i'\downarrow _{C{\setminus }\{x,y\}}=R\downarrow _{C{\setminus }\{x,y\}}=R'\downarrow _{C{\setminus }\{x,y\}}\). Let us now denote by \(D={d_{swap}}(P_i,P_i')\), and consider \({d_{swap}}(P_i,R)\) and \({d_{swap}}(P_i,R')\).
It holds that \(P_i\downarrow _{[c_j\ ;P_i'\ ;y)}=R\downarrow _{[c_j\ ;P_i'\ ;y)}\), while \(P_i'(x,c)\) for any \(c\in [c_j\ ;P_i'\ ;y)\), hence P is closer to \(P_i\) by B element swaps. At the same time \(P_i\downarrow _{(x\ ;P_i'\ ;c_k]}=P_i'\downarrow _{(x\ ;P_i'\ ;c_k]}\), yet R(c, x) for all \(c\in (x\ ;P_i'\ ;c_k]\). Similarly the order of x and y is also ”restored”, i.e. it holds that R(y, x), \(P_i(y,x)\) and \(P_i'(x,y)\). As a result we have \({d_{swap}}(P_i,P)=D-B+A-1\). Similarly \({d_{swap}}(P_i,R')=D-A+B-1\). Since either \(-A+B-1<0\) or \(-B+A-1<0\), we have that either R or \(R'\) is closer to \(P_i\) than \(P_i'\). Because no pair of candidates \(x,y,c_j,c_k\) is restricted by \(Q_i\), we also have that both \(R\models CL\left( Q_i\cup \{(c_k,c_j)\}\right) \) and \(R'\models CL\left( Q_i\cup \{(c_k,c_j)\}\right) \), therefore violating the assumption of \(P_i'\in \mu (P_i)\). \(\square \)
These lemmas are the setting for the proof of Theorem 2—the correctness of our algorithm.
Proof: Theorem 2
First, let us do away with the question of computational complexity of the Algorithm 1, as the simpler portion of the algorithm’s analysis.
Prior to the main loop of the algorithm, a preliminary feasibility of manipulation is run in Line 2 , based on Lemma 1. The Lemma includes a finite number of membership checks, each of which runs in time linear in the number of candidates. It does, however, presume that the set of possible winners can be obtained efficiently. Since we use the definition of the PW set from (Konczak and Lang 2005, Lu and Boutilier 2013, Naamani-Dery et al. 2014), it can be found efficiently in the number of voters and candidates. Therefore, the overall preliminary check of Line 2 is polynomial in both voter and candidate set sizes.
Once the pre-check is complete the main loop of the algorithm is repeated for every candidate in the worst case. If we show that each loop is polynomial in the size of the problem as well, the overall algorithm’s complexity will be obtained.
Lines 7-10 operate on ordered subsets of the candidate set, and each such operation takes at most 2|C| basic steps to complete. The arguments of these operations are also polynomial-time constructed. One, \(P_i\), is given explicitly as input, and taking a sub-interval of it is linear in |C|. The other is obtained, e.g., by a spanning tree traversal of \(Q_i\). However, \(Q_i\) set is at most quadratic in the number of candidates. Hence, the calculates of sets \(X_{good},X_{bad}, Y_{good}\) and \(Y_{bad}\) take time, polynomial in the candidate set size. Line 11 is a sanity check, since the aforementioned subsets of C were obtained from an ordered sequence of candidates, hence linear in |C|. Similarly, construction of the new preference order \(P_i'\) takes linear time. Calculating the distance \({d_{swap}}(P_i,P_i')\) (line 13) takes at most \(|C|^2\) steps, as it is equivalent to running the bubble-sort algorithm. The last non-trivial step, line 17, depends on how efficiently we can confirm the Local Dominance property of \(P_i'\) with respect to \(P_i\). This confirmation, however, can be performed by using the three conditions of Theorem 1. As we have already accounted for the calculation of the PW set, each condition of the Theorem takes time linear in |C|. We conclude that the main loop runs at most in \(O(|C|^3)\). Hence, the overall run time of the algorithm is polynomial in the sizes of V and C sets.
Now, given that we know that the Algorithm 1 operates in polynomial time, let us prove that it operates correctly.
Let \(P_i'\in \mu (P_i)\), and let us analyze its structure.
Let us assume for the moment, that there are two elements \(a_1,b_2\in C\) that satisfy the conditions of Lemma 6, i.e., \(P_i'(a_1,c_k), P_i'(c_j,b_2)\) and \((a_1,c_k)\not \in Q_i\), \((c_j,b_2)\not \in Q_i\). Furthermore, let us assume that \(a_1\) is the minimum (\(b_2\) is the maximum) such element with respect to \(P_i'\). Combining this assumption with Lemma 2, \(P_i'\) can be broken down into the following structure \(P_i'=(F_j,G_k,c_k,c_j,G_j,F_k)\), where the intervals \(F_j,F_k,G_j,G_k\) are characterized as follows:
\(F_j=(\infty \ ;P_i'\ ;a_1]\),
\(F_k = [b_2\ ;P_i'\ ;-\infty )\),
\(G_k\subset (\infty \ ;Q_i\ ;c_k)\)
\(G_j\subset (c_j\ ;Q_i\ ;-\infty )\)
Let us now denote \(a_2,b_1\in C\), so that \(P_i(a_1,a_2), P_i(b_1,b_2)\) and \((a_1\ ;P_i\ ;a_2)=\emptyset \), \((b_1\ ;P_i\ ;b_2)=\emptyset \). Such \(a_2\) and \(b_1\) exist, since \(P_i(a_1,c_k)\) and \(P_i(c_j,b_2)\) due to Lemma 3. Furthermore, it also entails that \(P_i(a_2,c_k)\) and \(P_i(b_1,c_j)\).
The following three subcases are possible.
W.l.g., let us first assume that \((a_1\ ;P_i'\ ;a_2)\ne \emptyset \). Then, according to Lemma 5, \(P_i'(c_j,a_2)\). Combining this with Lemma 3, we obtain that \(P_i(c_j,a_2)\). Thus, we also conclude that \(a_2\in [c_j\ ;P_i\ ;c_k]\).
Sub-Case A If in addition, \(a_2=b_2\), then the following holds according to Lemma 6 and seting \(z=a_2\) in Algorithm 1:
$$\begin{aligned} F_j= & {} (\infty \ ;P_i'\ ;a_1]=(\infty \ ;P_i\ ;a_1]{\setminus }[c_j\ ;Q_i\ ;-\infty )\\= & {} (\infty \ ;P_i\ ;a_2){\setminus }[c_j\ ;Q_i\ ;-\infty )=X_{good} \\ F_k= & {} [a_2\ ;P_i'\ ;-\infty )=[a_2\ ;P_i\ ;-\infty ){\setminus }(\infty \ ;Q_i\ ;c_k]=Y_{good} \end{aligned}$$
By its definition \(G_j\subset (c_j\ ;Q_i\ ;-\infty )\). Furthermore, \(G_j\subset [c_j\ ;P_i'\ ;a_2]\). Thus, by Lemma 3, \(G_j\subset [c_j\ ;P_i\ ;a_2]\). Since \(a_2\not \in G_j\), we conclude that \(G_j\subset (\infty \ ;P_i\ ;a_2)\). Hence, by setting \(z=a_2\) in Algorithm 1, we have:
$$\begin{aligned} G_j=(\infty \ ;P_i\ ;a_2)\cap (c_j\ ;Q_i\ ;-\infty )=X_{bad} \end{aligned}$$
Similarly, \(G_k\subset (\infty \ ;Q_i\ ;c_k)\) by definition. Furthermore, \(G_k\subset [a_1\ ;P_i'\ ;c_k]\). Thus, by Lemma 3, \(G_k\subset [a_1\ ;P_i\ ;c_k]\). Since \(a_1\not \in G_k\) and \((a_1\ ;P_i\ ;a_2)=\emptyset \), we can conclude that \(G_k\subset [a_2\ ;P_i\ ;-\infty )\). Letting \(z=a_2\) in Algorithm 1, we have:
$$\begin{aligned} G_k=[z\ ;P_i\ ;-\infty )\cap (\infty \ ;Q_i\ ;c_k)=Y_{bad} \end{aligned}$$
Thus we have \(P_i'=(X_{good},Y_{bad},c_k,c_j,X_{bad},Y_{good})\) during a run of the Algorithm 1, where \(z=a_2\). That is, this sub-case of \(P_i'\in \mu (P_i)\) will be recovered by the Algorithm 1.
Sub-Case B Let us now consider the situation where, rather than \(a_2=b_2\), we have \(P_i'(a_2,b_2)\). Similar to the case where \(a_2=b_2\), we will have that \(a_2\in [c_j\ ;P_i\ ;c_k]\) and that \(X_{good}=F_j\), \(Y_{bad}=G_k\) when Algorithm 1 constructs a hypothetical manipulative preference profile with \(z=a_2\). It remains to show that \(X_{bad}\) and \(Y_{good}\) combine into the segment \((c_j\ ;P_i'\ ;-\infty )=(G_j,F_k)\), and then conclude that, even if \(P_i'(a_2,b_2)\), the preference profile \(P_i'\) will be discovered by Algorithm 1 for \(z=a_2\). To this end, let us have a closer look at segments \([a_2\ ;P_i'\ ;b_2]\) and \([a_2\ ;P_i\ ;b_2]\).
Let there be \(x\in [a_2\ ;P_i\ ;b_2]{\setminus }[a_2\ ;P_i'\ ;b_2]\). If \(P_i'(c_j,x)\), then, according to Lemma 3, we obtain a contradiction that \(x\in [a_2\ ;P_i'\ ;b_2]\). Hence \(P_i'(x,c_k)\). On the other hand, it must be that \(P_i(a_1,x)\), since \(P_i(a_1,a_2)\) and \(x\in [a_2\ ;P_i\ ;b_2]\). Hence, \(x\in G_k\subset (\infty \ ;Q_i\ ;c_k)\). Notice also that, due to Lemma 3, we have \([a_2\ ;P_i'\ ;b_2]{\setminus }[a_2\ ;P_i\ ;b_2]=\emptyset \). As a result, \([a_2\ ;P_i'\ ;-\infty )=[a_2\ ;P_i\ ;-\infty ){\setminus } (\infty \ ;Q_i\ ;c_k)=Y_{bad}\), where \(Y_{bad}\) is computed for \(z=a_2\).
Finally, notice that it is impossible to have \(P_i'(b_2,a_2)\), and that the reasoning is symmetric for the case where \((b_1\ ;P_i'\ ;b_2)\ne \emptyset \). Hence, if either \((a_1\ ;P_i'\ ;a_2)\ne \emptyset \) or \((b_1\ ;P_i'\ ;b_2)\ne \emptyset \), then \(P_i'\) is discovered by Algorithm 1.
Sub-Case C Let us now have a closer look at a \(P_i'\) where \((a_1\ ;P_i'\ ;a_2)=(b_1\ ;P_i'\ ;b_2)=\emptyset \).
Denote \(d_1,d_2\) a pair of candidates that satisfy conditionsFootnote 2 of Lemma 6, and, in addition, that \(P_i(a_1,d_1)\) and \((a_1; P_i; d_1)\) is minimal.
Then the reasoning of Sub-Case B above can be repeated, replacing \(b_2\) by \(d_2\) in its arguments. We conclude that \(P_i'\) with \((a_1; P_i'; a_2)=\emptyset \) and \((b_1;P_i';b_2)=\emptyset \) will also be discovered by Algorithm 1. In other worlds Algorithm 1 will discover all elements of \(\mu (P_i)\). As the algorithm selects a locally dominant order \(P_i'\) among all those that it finds, the final outcome will satisfy both condition Condition-1 and Condition-2. \(\square \)