Consensus-Halving: Does It Ever Get Easier?

Aris Filos-Ratsikas, Alexandros Hollender, Katerina Sotiraki, Manolis Zampetakis

Introduction

The topic of fair division has been in the focus of research in economics and mathematics, since the late 1940s and the pioneering works of Banach, Knaster and Steinhaus [Steinhaus, 1949], who developed the associated theory. The related literature contains many interesting problems, with the most celebrated perhaps being the problems of envy-free cake-cutting and equitable cake-cutting, for which a plethora of results have been obtained. More recently, the computer science literature has made a significant contribution in studying the computational complexity of these problems, and attempting to design efficient algorithms for several of their variants [Aziz and Mackenzie, 2016a, b; Deng et al., 2012; Arunachaleswaran et al., 2019].

Another classical problem in fair division, whose study dates back to as early as the 1940s and the work of Neyman , is the Consensus-Halving problem [Simmons and Su, 2003]. In this problem, there is a set of nn agents with valuation functions over the I=I= interval. The goal is to divide the interval into pieces using at most nn cuts, and assign a label from {+,}\{+,-\} to each piece, such that every agent values the total amount of II labeled “++” and the total amount of II labeled “-” equally. The name “Consensus-Halving” is attributed to Simmons and Su , although the problem has been studied under different names in the past. For example, it is also known as The Hobby-Rice theorem [Hobby and Rice, 1965], or continuous necklace splitting [Alon, 1987]. Similarly to other well-known problems in fair division, the existence of a solution to the Consensus-Halving problem is always guaranteed, and can be proven via the application of a fixed-point theorem; here the Borsuk-Ulam theorem [Borsuk, 1933]. As a matter of fact, the problem is a continuous analogue of the well-known Necklace Splitting problem [Goldberg and West, 1985; Alon, 1987], whose existence of a solution is typically established via an existence proof for the continuous version.

The Consensus-Halving problem attracted attention in the literature of computer science recently, due to the recent results of Filos-Ratsikas and Goldberg who studied the computational complexity of the approximate version, in which there is a small allowable discrepancy ε\varepsilon between the values of the two portions. First, in [Filos-Ratsikas and Goldberg, 2018], the authors proved that ε\varepsilon-Consensus-Halving for inverse-exponential ε\varepsilon is complete for the computational class PPA, defined by Papadimitriou . This was the first PPA-completeness result for a “natural” problem, i.e., a computational problem that does not have a polynomial-sized circuit explicitly in its definition, answering an open question from Papadimitriou , reiterated multiple times over the years [Grigni, 2001; Aisenberg et al., 2020]. Then in [Filos-Ratsikas and Goldberg, 2019], the authors strengthened their hardness result to the case of inverse-polynomial ε\varepsilon, which also established the PPA-completeness of the Necklace Splitting problem for 22 thieves.

Despite the aforementioned results, the complexity of the problem is not yet well understood. Does the problem remain hard if one restricts attention to classes of simple valuation functions? Note that the reduction of [Filos-Ratsikas and Goldberg, 2018, 2019] uses instances with piecewise constant valuation functions with polynomially many pieces. On the opposite side, are there efficient algorithms for solving special cases of the problem? What if we allow a larger number of cuts?

Towards understanding the complexity of Consensus-Halving, we present the following results.

We prove that ε\varepsilon-Consensus-Halving is PPA-complete, even when the agents have two-block uniform valuations, i.e., valuation functions which are piecewise uniform over the interval and assign non-zero value on at most two pieces. This result holds even when ε\varepsilon is inverse-polynomial, and extends to the case where the number of allowable cuts is n+n1δn+n^{1-\delta}, for some constant δ>0\delta>0.

This is an important strengthening of the results in [Filos-Ratsikas and Goldberg, 2018, 2019] which require the agents to have piecewise constant valuations with polynomially many non-uniform blocks. En route to this result, we obtain a significant simplification to the proof of Filos-Ratsikas and Goldberg , which uses new gadgets for the encoding of the circuit of high-dimensional Tucker (see Definition 6), which we reduce from. Our new reduction also gives a simplified proof of PPA-completeness for Necklace Splitting with 22 thieves [Filos-Ratsikas and Goldberg, 2018, 2019].

We study the case of single-block valuations and provide the first algorithmic results for the problem.To be precise, we provide the first such results for the version of the problem with nn agents and nn cuts. For a large number of cuts, Brams and Taylor present algorithms for ε\varepsilon-approximate solutions. In fact, very recently and after the publication of the conference version of our paper, Alon and Graur provided the first polynomial-time algorithms for the general ε\varepsilon-Consensus-Halving problem with a limited number of cuts (but still more than 2n2n). Specifically, we present:

an algorithm for any ε\varepsilon, whose running time is polynomial in 1/ε1/\varepsilon and a parameter dd related to the maximum number of overlapping blocks.

a polynomial-time algorithm for 1/21/2-Consensus-Halving.

As an application of the new ideas developed in our reduction, we obtain the first hardness result for a generalization of ε\varepsilon-Consensus-Halving, known as ε\varepsilon-Consensus-1/k1/k-Division, for k3k\geq 3. Specifically, we prove that ε\varepsilon-Consensus-1/31/3-Division is PPAD-hard, when ε\varepsilon is inverse-exponential.

2 Discussion and Related Work

The study of the Consensus-Halving problem dates back to the early 1940s and the work of Neyman . The first proof of existence for nn cuts can be traced back to the 1965 theorem of Hobby and Rice [Hobby and Rice, 1965]. The problem was famously studied in the context of Necklace Splitting, being a continuous analogue of the latter problem; in fact, most known proofs for Necklace Splitting go via the continuous versionThis is true for the case of 22 thieves. For kk thieves, the proofs go via the Consensus-1/k1/k-Division problem instead. [Goldberg and West, 1985; Alon and West, 1986]. The name Consensus-Halving is attributed to Simmons and Su , who studied the continuous problem independently, and came up with a constructive proof of existence. Their construction, although yielding an exponential-time algorithm, was later adapted by Filos-Ratsikas et al. to prove that the problem lies in the computational class PPA.

The class PPA was defined by Papadimitriou in his seminal paper in 1994, in which he also defined several other important subclasses of TFNP [Megiddo and Papadimitriou, 1991], the class of Total Search Problems in NP, i.e., problems that always have solutions which are efficiently verifiable. Among those classes, the class PPAD has been very successful in capturing the complexity of many interesting computational problems [Mehta, 2018; Garg et al., 2018; Goldberg and Hollender, 2021; Chen et al., 2017], highlighted by the celebrated results of Daskalakis et al. and Chen et al. about the PPAD-completeness of computing a Nash equilibrium. On the contrary, since the definition of the class, PPA was not known to admit any natural complete problems, but rather mostly versions of PPAD-complete problems of a topological nature, defined on non-orientable spaces [Deng et al., 2021; Grigni, 2001]. In 2015, Aisenberg et al. showed that the computational version of Tucker’s Lemma [Tucker, 1945], already shown to be in PPA by Papadimitriou , is actually complete for the class.

Using the latter result as a starting point, Filos-Ratsikas and Goldberg proved that ε\varepsilon-Consensus-Halving is PPA-complete when ε\varepsilon is inverse exponential. This was the first PPA-completeness result for a “natural” computational problem, where the term “natural” takes the specific meaning of a problem that does not have a polynomial-sized circuit in its definition. The quest for such problems that would be complete for PPA was initiated by Papadimitriou himself [Papadimitriou, 1994] and was later brought up again by several authors, including Grigni and Aisenberg et al. . In the same paper, the authors also provided a computational equivalence between the ε\varepsilon-Consensus-Halving problem and the well-known Necklace Splitting problem of Alon for 22 thieves [Goldberg and West, 1985; Alon and West, 1986], when ε\varepsilon is inverse-polynomial. In [Filos-Ratsikas and Goldberg, 2019], the authors strengthened their result to ε\varepsilon being inverse-polynomial, which, together with the aforementioned result from [Filos-Ratsikas and Goldberg, 2018], also provided a proof for the PPA-completeness of Necklace Splitting. As we mentioned earlier, besides being a strengthening, our PPA-hardness proof for ε\varepsilon-Consensus-Halving is a notable simplification over that of [Filos-Ratsikas and Goldberg, 2019], and importantly, it holds for ε\varepsilon which is inverse-polynomial. Therefore, we also obtain a new, simplified proof of PPA-hardness for Necklace Splitting with 22 thieves.

For constant ε\varepsilon, the only hardness result that we know is the PPAD-hardness of Filos-Ratsikas et al. , who also show that when n1n-1 cuts are allowed, deciding whether a solution exists is NP-hard. Recently, Deligkas et al. studied the complexity of exact Consensus-Halving and showed that the problem is FIXP-hard. Interestingly, the authors also introduced a new computational class, called BU (for Borsuk-Ulam) and showed that the problem lies in that class, leaving open the question of whether it is BU-complete. Very recently, using our new reduction presented in Section 3 as a starting point, Batziou et al. showed that computing a strong approximate solution of Consensus-Halving (with valuations represented by algebraic circuits) is complete for the class BUa\textup{BU}_{a} (the strong approximation version of the class BU).

If we generalize the number of labels to {1,2,,k}\{1,2,\ldots,k\} rather that {+,}\{+,-\}, and we allow (k1)n(k-1)n cuts rather than only nn, then we obtain a generalization of the Consensus-Halving problem which was referred to as Consensus-1/k1/k-Division in [Simmons and Su, 2003]. The existence of a solution for this problem can be proved via fixed-point theorems that generalize the Borsuk-Ulam theorem [Bárány et al., 1981; Alon, 1987], however very little is known about its complexity. One might feel inclined to believe that Consensus-1/k1/k-Division is a harder problem that Consensus-Halving; however, note that in the former problem, we have more cuts at our disposal. In fact, Filos-Ratsikas and Goldberg conjectured that the complexities of the problems for different values of kk are incomparable, and are characterized by different complexity classes. The complexity classes that are believed to be the most related are called PPA-kk, defined also by Papadimitriou in his original paper; we refer the reader to the recent papers of [Göös et al., 2020; Hollender, 2021] for a more detailed discussion of these classes. As a matter of fact, in a recent paper we have shown [Filos-Ratsikas et al., 2021] that the problem is in PPA-kk, for any kk which is a prime power.

Before our paper, virtually nothing was known about the hardness of the problem when k3k\geq 3. While the techniques in [Filos-Ratsikas and Goldberg, 2019] were highly reliant on the presence of only two labels, our ideas do carry over to the case when k=3k=3, which enables us to prove our PPAD-hardness result. While we do not expect the problem for k3k\geq 3 to be PPAD-complete, our proof offers important intuition about the intricacies of the problem and could be useful for proving stronger hardness results in the future.

Preliminaries

We start with the definition of the ε\varepsilon-approximate version of the Consensus-Halving problem.

Let k2k\geq 2. We are given ε>0\varepsilon>0 and a set C\mathcal{C} of continuous probability measures μ1,,μn\mu_{1},\dots,\mu_{n} on I=I=. The probability measures are given by their density functions on II. The goal is to partition the unit interval into 22 (not necessarily connected) pieces I+I^{+} and II^{-} using at most nn cuts, such that μj(I+)μj(I)ε|\mu_{j}(I^{+})-\mu_{j}(I^{-})|\leq\varepsilon for all agents j{1,,n}j\in\{1,\ldots,n\}.

We will refer to the probability measures μ1,,μn\mu_{1},\ldots,\mu_{n} as valuation functions or simply valuations. While the existence and PPA-membership results hold more generally, in this paper, we will restrict our attention to the case when the valuation functions are piecewise constant. These can be represented explicitly in the input as endpoints and heights of value blocks.

A valuation function μi\mu_{i} is piecewise constant over an interval II, if the domain can be partitioned into a finite set of intervals such that the density of μi\mu_{i} is constant over each interval.

Piecewise constant functions are often referred to as step functions.

We will consider the following subclasses of piecewise constant valuation functions.

Piecewise Uniform:, The domain can be partitioned into a finite set of intervals such that the density of μi\mu_{i} is either viv_{i} or over each interval, for some constant viv_{i}.

dd-block Uniform: The domain can be partitioned into a finite set of intervals, such that in at most dd of those the density of μi\mu_{i} is viv_{i} and everywhere else it is , for some constant viv_{i}.

22-block Uniform: dd-block uniform valuations for d=2d=2.

Single-block: dd-block uniform valuations for d=1d=1. Here we omit the term “uniform”, as there is only a single value block.

Obviously, piecewise constant \supseteq piecewise uniform \supseteq 22-block uniform \supseteq single-block.

As we mentioned in the introduction, Consensus-Halving is a Total Search Problem in NP, i.e., a problem with a guaranteed solution which is verifiable in polynomial time. The corresponding class is the class TFNP [Megiddo and Papadimitriou, 1991]. Formally, a binary relation P(x,y)P(x,y) is in the class TFNP if for every xx, there exists a yy of size bounded by a polynomial in x|x| such that P(x,y)P(x,y) holds and P(x,y)P(x,y) can be verified in polynomial time. The problem is given xx, to find such a yy in polynomial time.

The subclasses of TFNP that will be relevant for this paper are PPAD and PPA [Papadimitriou, 1994]. These are defined via their canonical problems, End-of-Line and Leaf respectively.

The input to the End-of-Line problem consists of two Boolean circuits SS (for successor) and PP (for predecessor) with nn inputs and nn outputs such that P(0n)=0nS(0n)P(0^{n})=0^{n}\neq S(0^{n}), and the goal is to find a vertex xx such that P(S(x))xP(S(x))\neq x or S(P(x))x0nS(P(x))\neq x\neq 0^{n}.

A problem is in PPAD if it is polynomial-time reducible to End-Of-Line and it is PPAD-complete if End-Of-Line reduces to it in polynomial-time. Intuitively, PPAD is defined with respect to a directed graph of exponential size, which is given implicitly as input, via the use of the predecessor and successor circuits defined above. PPAD is a subclass of PPA, which is defined similarly, but with respect to an undirected graph and a circuit that outputs the neighbours of a vertex. Its canonical computational problem is called Leaf, which is defined below.

The input to the Leaf problem is a Boolean circuit CC with nn inputs and at most 2n2n outputs, outputting the set N(y)\mathcal{N}(y) of (at most two) neighbors of a vertex yy, such that N(0n)=1|\mathcal{N}(0^{n})|=1, and the goal is to find a vertex xx such that x0nx\neq 0^{n} and N(x)=1|\mathcal{N}(x)|=1.

A problem is the class PPA if it is polynomial-time reducible to Leaf and is PPA-complete if Leaf reduces to it in polynomial time.

2 High-dimensional Tucker

Our reduction in Section 3 will start from the following problem, which is an NN-dimensional variant of the 2D2D-Tucker problem [Papadimitriou, 1994; Aisenberg et al., 2020].

An instance of high-D-Tucker consists of a labeling λ:N{±1,,±N}\lambda:^{N}\to\{\pm 1,\dots,\pm N\} computed by a Boolean circuit. We further assume that the labeling is antipodally anti-symmetric (i.e. for all xx on the boundary of N^{N} it holds that λ(x)=λ(x)\lambda(\overline{x})=-\lambda(x) where xi=9xi\overline{x}_{i}=9-x_{i} for all ii), which can be enforced syntactically. A solution consists of two points x,yNx,y\in^{N} with λ(x)=λ(y)\lambda(x)=-\lambda(y) and xy1\|x-y\|_{\infty}\leq 1.

Filos-Ratsikas and Goldberg showed that the problem is PPA-hard, when the domain is N^{N} instead of N^{N}. We adapt the hardness to the case of Definition 6 in the theorem below.

Papadimitriou has shown that the problem lies in PPA. In order to show PPA-hardness, we use the fact that Filos-Ratsikas and Goldberg have proved that the problem is PPA-hard on the domain N^{N} (instead of N^{N}) by using a standard snake-embedding technique [Chen et al., 2009; Deng et al., 2017].

Let λ\lambda be an instance of High-D-Tucker but on the domain N^{N} instead of N^{N}. We will reduce this to an instance λ\lambda^{\prime} of High-D-Tucker (on our standard domain N^{N}). In the two-dimensional case (N=2N=2), the high level idea of the reduction is to take the domain N^{N} and duplicate the central vertical and horizontal lines of the grid (thus also duplicating the labels at these grid points).

Formally, we proceed as follows. Define the operator ^\widehat{\cdot} such that for any rr\in

Then, for any x=(x1,,xN)Nx=(x_{1},\dots,x_{N})\in^{N}, let x^=(x^1,,x^N)N\widehat{x}=(\widehat{x}_{1},\dots,\widehat{x}_{N})\in^{N}. Now define λ\lambda^{\prime} such that for all xNx\in^{N}, λ(x):=λ(x^)\lambda^{\prime}(x):=\lambda(\widehat{x}). This is well-defined and given a circuit that computes λ\lambda, we can construct a circuit for λ\lambda^{\prime} in polynomial time.

Let us first show that if λ\lambda is antipodally anti-symmetric on N^{N}, then λ\lambda^{\prime} is antipodally anti-symmetric on N^{N}. Consider any x(N)x\in\partial(^{N}), i.e. there exists j[N]j\in[N] such that xj{1,8}x_{j}\in\{1,8\}. Note that we then have x^(N)\widehat{x}\in\partial(^{N}), because x^j{1,7}\widehat{x}_{j}\in\{1,7\}. Thus, we know that λ(8x^1,,8x^N)=λ(x^1,,x^N)\lambda(8-\widehat{x}_{1},\dots,8-\widehat{x}_{N})=-\lambda(\widehat{x}_{1},\dots,\widehat{x}_{N}). Using the key observation that 9xi^=8x^i\widehat{9-x_{i}}=8-\widehat{x}_{i} for all i[N]i\in[N], we obtain that

It remains to show that given any solution to λ\lambda^{\prime}, we can retrieve in polynomial time a solution to λ\lambda. Let x,yNx,y\in^{N} be such that λ(x)=λ(y)\lambda^{\prime}(x)=-\lambda^{\prime}(y) and xy1\|x-y\|_{\infty}\leq 1. Then, we immediately obtain that λ(x^)=λ(y^)\lambda(\widehat{x})=-\lambda(\widehat{y}) and it remains to show that x^y^1\|\widehat{x}-\widehat{y}\|_{\infty}\leq 1. Consider any i[N]i\in[N]. If xi,yi5x_{i},y_{i}\geq 5 or if xi,yi4x_{i},y_{i}\leq 4, then in both cases xiyi1|x_{i}-y_{i}|\leq 1 implies x^iy^i1|\widehat{x}_{i}-\widehat{y}_{i}|\leq 1. If xi5x_{i}\geq 5 and yi4y_{i}\leq 4, then xiyi1|x_{i}-y_{i}|\leq 1 implies that xi=5x_{i}=5 and yi=4y_{i}=4 and we get x^iy^i=01|\widehat{x}_{i}-\widehat{y}_{i}|=0\leq 1. The remaining case is analogous. Thus, we have shown that x^,y^\widehat{x},\widehat{y} form a solution to λ\lambda. ∎

Consensus-Halving with two-block uniform valuations is PPA-hard

In this section, we present our first result, regarding the PPA-hardness of Consensus-Halving.

ε\varepsilon-Consensus-Halving is PPA-hard, when ε\varepsilon is inverse-polynomial and the agents have two-block uniform valuations.

As we mentioned in the Introduction, Theorem 2 is a strengthening of the result of Filos-Ratsikas and Goldberg , which requires the valuation functions to have a polynomial number of value blocks, and which is seemingly very difficult to extend to two-block uniform valuations. To achieve this stronger result, we have to develop new gadgetry, based on a new interpretation of the cut positions with respect to the positions of points in the domain of high-D-Tucker. As it turns out, this new interpretation allows us to obtain a new proof of the main theorem of Filos-Ratsikas and Goldberg , one which is conceptually much simpler, even though it actually applies to more restricted valuations.

Before we proceed, we first remark the following. In [Filos-Ratsikas et al., 2018] (where the PPAD-hardness of ε\varepsilon-Consensus-Halving was proven for constant ε\varepsilon) the authors presented a simple argument that allowed them to extend their hardness result to n+cn+c cuts, where cc is some constant. The idea is to make c+1c+1 completely disjoint copies of the instance of ε\varepsilon-Consensus-Halving, and solve it using n+cn+c cuts. One of the copies would have to be solved using at most nn cuts, which is a PPAD-hard problem. We observe that the same principle applies generically (beyond PPAD-hardness and also to the results of Filos-Ratsikas and Goldberg ), and in fact extends to n+n1δn+n^{1-\delta} cuts, where δ>0\delta>0 is some constant. From Theorem 2, we obtain the following corollary.

ε\varepsilon-Consensus-Halving is PPA-hard, when ε\varepsilon is inverse polynomial and the agents have two-block uniform valuations, even when one is allowed to use n+n1δn+n^{1-\delta} cuts, for constant δ>0\delta>0.

We are now ready to prove Theorem 2. We first provide an overview of the reduction and we highlight the main simplifications over the proof of Filos-Ratsikas and Goldberg . Then we proceed to formally present the proof of Theorem 2.

We are given an instance of high-D-Tucker, namely a labeling λ:N{±1,,±N}\lambda:^{N}\to\{\pm 1,\dots,\pm N\} computed by a Boolean circuit. We will show how to construct an instance of Consensus-Halving in polynomial time such that any ε\varepsilon-approximate solution yields a solution to the high-D-Tucker instance (for some inversely-polynomial ε\varepsilon). The complexity will be measured with respect to the representation size of the high-D-Tucker instance, i.e., the size of the circuit λ\lambda (which is also at least NN).

For clarity and convenience, the instance of Consensus-Halving we will construct will not be defined on the domain $,butinsteadonsomeinterval, but instead on some interval[0,M],where, whereMisboundedbyapolynomialinthesizeofthehighDTuckercircuitis bounded by a polynomial in the size of the high-D-Tucker circuit\lambda.Itiseasytotransformthisintoaninstanceon. It is easy to transform this into an instance onbyjustrescalingthevaluationfunctions,namelyscalingdownthepositionsoftheblocksbyby just re-scaling the valuation functions, namely scaling down the positions of the blocks byMandscalinguptheheightsoftheblocksbyand scaling up the heights of the blocks byM$.

Let us first provide a very high-level description of the instance we construct. Similarly to [Filos-Ratsikas and Goldberg, 2019], the left-most end of the instance will be the Coordinate-Encoding region. In any solution SS to the instance, the way in which this region is divided amongst the labels ++ and - will represent a point xNx\in^{N}. A circuit-simulator CC will read-in the coordinates of xx, perform some computations (including a simulation of λ\lambda) and output NN values [C(x)]1,,[C(x)]N[C(x)]_{1},\dots,[C(x)]_{N}\in. This circuit-simulator will be implemented by a set of agents where each agent will enforce one gate/operation of the circuit. Unfortunately, the circuit-simulator can sometimes fail to perform the desired computation, so instead of one circuit-simulator CC we will actually have a polynomial number p(N)p(N) of circuit-simulators C1,,Cp(N)C_{1},\dots,C_{p(N)}. Each of these circuit-simulators will be performing (almost) the same computation. Finally, we will introduce a Feedback region where NN feedback agents f1,,fNf_{1},\dots,f_{N} will implement the feedback mechanism. For each i{1,,N}i\in\{1,\dots,N\}, feedback agent fif_{i} will ensure that 1p(N)j=1p(N)[Cj(x)]i0\frac{1}{p(N)}\sum_{j=1}^{p(N)}[C_{j}(x)]_{i}\approx 0. Namely, it will ensure that the average of the outputs in dimension ii is close to zero. We will show that from any solution SS to the Consensus-Halving instance, we obtain a solution to the original high-D-Tucker instance. To be a bit more precise, from the point xNx\in^{N} encoded by the Coordinate-Encoding region in a solution SS, we will be able to extract a polynomial number of points on the high-D-Tucker grid, with the guarantee that two of these points form a solution (which can then be identified efficiently).

The sub-interval [0,N][0,N] of the domain is called the Coordinate-Encoding region. Indeed, the way in which this region is subdivided amongst the ++ and - labels in a solution SS will encode the coordinates of a point in xNx\in^{N}. In more detail, x1x_{1}\in will be given by v()v(), i.e., the value encoded by interval $.Similarly,. Similarly,x_{2}\inwillbegivenbywill be given byv(),,x_{3}\inbybyv()$, etc.

The sub-interval [N,N+p(N)][N,N+p(N)] of the domain is called the Constant-Creation region. This region will be used to create the constants that the circuit-simulators need. The circuit-simulator C1C_{1} will read-in the value v([N,N+1])=:const1v([N,N+1])=:\textup{const}_{1} and will assume that it corresponds to the value +1+1. Note that given the constant +1+1, the circuit-simulator can create any constant ζ\zeta\in by using a ×ζ\times\zeta-gate (multiplication by the constant ζ\zeta). Similarly, the circuit-simulator C2C_{2} will read-in the value v([N+1,N+2])=:const2v([N+1,N+2])=:\textup{const}_{2} and use it as the constant +1+1, and so on for C3,C4,,Cp(N)C_{3},C_{4},\dots,C_{p(N)}.

If SS is a solution such that the Constant-Creation region does not contain any cut, then the whole region will have the same label, and without loss of generality we can assume that this label is ++. Thus, in such a solution SS, all the circuit-simulators will indeed read-in the constant +1+1 from the Constant-Creation region, i.e., we will indeed have constj=+1\textup{const}_{j}=+1 for all j=1,,p(N)j=1,\dots,p(N).

For each j{1,2,,p(N)}j\in\{1,2,\dots,p(N)\}, the sub-interval [N+p(N)+(j1)q,N+p(N)+jq][N+p(N)+(j-1)q,N+p(N)+jq] of the domain will be used by the circuit-simulator CjC_{j}. The length qq used by every circuit-simulator will be upper-bounded by some polynomial in NN and the size of the circuit λ\lambda. Every circuit-simulator CjC_{j} will read-in the coordinates x1,,xNx_{1},\dots,x_{N}\in of the point xx from the Coordinate-Encoding region, as well as the value constj\textup{const}_{j}\in from the Constant-Creation region (and assume that it corresponds to the constant +1+1). Using these values, CjC_{j} will perform some computations, including a simulation of the Boolean circuit λ\lambda, and finally output NN values [Cj(x,constj)]1,,[Cj(x,constj)]N[C_{j}(x,\textup{const}_{j})]_{1},\dots,[C_{j}(x,\textup{const}_{j})]_{N}\in into the Feedback region.

The Feedback region is located at the right end of the domain and is subdivided into NN intervals F1,,FNF_{1},\dots,F_{N} of length p(N)p(N) each. For every j[p(N)]j\in[p(N)], let Fi(j)F_{i}(j) denote the jjth sub-interval of length 11 of FiF_{i}. The iith output of circuit-simulator CjC_{j} will be located in sub-interval Fi(j)F_{i}(j). In other words, v(Fi(j))=[Cj(x,constj)]iv(F_{i}(j))=[C_{j}(x,\textup{const}_{j})]_{i}.

Every interval FiF_{i} will have a corresponding feedback agent fif_{i}, who will ensure that the average of all the outputs in interval FiF_{i} is close to zero. In more detail, agent fif_{i} will have a single block of value that covers interval FiF_{i}. As a result, this agent will be satisfied only if 1p(N)j=1p(N)v(Fi(j))[ε,ε]\frac{1}{p(N)}\sum_{j=1}^{p(N)}v(F_{i}(j))\in[-\varepsilon,\varepsilon].

Any agent belonging to a circuit-simulator performs a gate operation. In Section 3.3, we introduce the different types of gates and how they are implemented by agents. One important feature of the agents implementing the gates is that every such agent ensures that at least one cut must lie in a specific interval JJ of the domain (in any solution SS). By construction, we will make sure that these intervals are pairwise disjoint for different agents. Thus, every agent introduced as part of a circuit-simulator will force one cut to lie in a specific interval.

The only agents that are not part of a circuit-simulator are the feedback agents f1,,fNf_{1},\dots,f_{N}. Since the number of cuts in any solution is at most the number of agents, there are at most NN cuts that are not constrained to lie in some specific interval. We call these the free cuts. The free cuts can theoretically “go” anywhere in the domain and interfere with the correct functioning of the circuit-simulators or the Constant-Creation region. The expected behavior of these NN free cuts is that they should lie in the Coordinate-Encoding region. As such, any of the free cuts that lies outside the Coordinate-Encoding region will be called a stray cut (following [Filos-Ratsikas and Goldberg, 2019]).

If there is at least one stray cut, then the point xNx\in^{N} encoded by the Coordinate-Encoding region lies on the boundary of N^{N} (i.e., there exists ii such that xi=1|x_{i}|=1).

There are two ways for a stray cut to cause trouble:

it can corrupt a circuit, i.e., interfere with the correct functioning of the gates of a circuit-simulator. If the cut lies in the region of circuit-simulator CjC_{j}, then it can make a gate output the wrong result (i.e., not perform the desired operation). If the cut lies in the Constant-Creation region and intersects the interval that is used by circuit-simulator CiC_{i} to read-in the constant constj\textup{const}_{j}, then it can have an effect such that constj1|\textup{const}_{j}|\neq 1. However, in any case, a single stray cut can only interfere with one circuit-simulator in this way. Thus, at most NN circuit-simulators can suffer from this kind of interference. We will choose p(N)p(N) large enough so that these corrupted circuit-simulators have a very limited influence.

it can interfere with the sign of constj\textup{const}_{j} for many circuit-simulators CjC_{j}. Indeed, even a single stray cut can ensure that half of our circuit-simulators read-in the constant +1+1 and the other half read-in the constant 1-1. We will show that this is actually not a problem, and that it does not produce bogus solutions. Since stray cuts can only occur when xx lies on the boundary of N^{N} (1), the Tucker boundary conditions will be important for this.

Stray cuts that end up in the Feedback region do not have any effect. Indeed, the feedback agents f1,,fNf_{1},\dots,f_{N} are immune to stray cuts. They always ensure that the average of the outputs is close to zero. Thus, a stray cut can only influence the outputs that a feedback agent sees (as detailed above), but not its functionality.

There are two ways in which a circuit-simulator can fail to have the desired output:

it is corrupted by a stray cut. This can happen to at most NN circuit-simulators.

it can fail in extracting the binary bits from (a point close to) xx. We will ensure that this can happen to at most NN circuit-simulators.

Thus, at most 2N2N circuit-simulators fail, i.e., at least p(N)2Np(N)-2N circuit-simulators have the desired output.

2 Major simplifications compared to the previous proof

The major simplifications compared to the previous proof of Filos-Ratsikas and Goldberg are as follows:

The PPA-hardness of high-D-Tucker was already established in [Filos-Ratsikas and Goldberg, 2019] and our version can be obtained from that one using minor modifications, see Theorem 1. The corresponding result of [Filos-Ratsikas and Goldberg, 2019] is a standard application of the “snake-embedding” technique developed in [Chen et al., 2009]. However, the reduction in [Filos-Ratsikas and Goldberg, 2019] requires (a) a further constraint on how the domain is colored and more importantly (b) the embedding of the high-D-Tucker instance into a Möbius-type simplex domain, in which two facets have been “identified” with each other - one can envision a high-dimensional Möbius strip with an instance of high-D-Tucker in its center, embedding in a high-dimensional simplex. A key step in the reduction is the extension of the labeling of high-D-Tucker to the remainder of the domain, in a way that does not introduce any artificial solutions, and such that solutions to high-D-Tucker can be traced back from solutions on other points on the domain. For this purpose, the authors of [Filos-Ratsikas and Goldberg, 2019] develop a rather complicated coordinate transformation, applied to the inputs read from the positions of the cuts. They establish how to compute the transformation and its inverse in polynomial time and how distances in the two coordinate systems (before and after the transformation) are polynomially related. In contrast, our reduction works with the rather clean domain of high-D-Tucker, avoiding all the unnecessary technical clutter of the domain used in [Filos-Ratsikas and Goldberg, 2019].

Another complication of the proof in [Filos-Ratsikas and Goldberg, 2019] is the use of blanket-sensor agents, which constrain the positions of the cuts in the coordinate-encoding region, to ensure that solutions to ε\varepsilon-Consensus-Halving do not encode points that lie too far from a specific region in the “middle” of the domain, called the “significant region”; this is achieved via appropriate feedback provided by these agents to the coordinate-encoding agents. To make sure that the blanket-sensor agents do not “cancel” each other, extra care must be taken on how the feedback of these agents is designed, giving rise to a series of technical lemmas. Our reduction does not need to use any such agents and is therefore significantly simpler in that regard as well.

The reduction in [Filos-Ratsikas and Goldberg, 2019] requires knowledge of the label sequence, i.e., whether the first cut that occurs in the c-e region has the label ++ or - on its left side. This is fundamental for the design of the gates, as they read the inputs as the distances from the left endpoints of the corresponding designated intervals, unlike our interpretation, which measures the difference between the value of the two labels. Thus, for the disorientation of the domain and to deal with sign flips that happen due to the stray cuts, the authors of [Filos-Ratsikas and Goldberg, 2019] employ a pre-processing circuit that uses the first coordinate-detecting agent as a reference agent, when performing computations. This is again not needed in our case; our equivariant gates ensure that even when the corresponding point lies on the boundary of the high-D-Tucker domain, the output is computed correctly in a much simpler way.

3 Arithmetic Gates

In this section we show how to construct gates which perform various operations on numbers in $witherroratmostwith error at mostg(\varepsilon)=16\varepsilon,where, where\varepsilon$ is the error we allow in a Consensus-Halving solution. Some of these gates will be immune to “corruption” by a stray cut, while others might get corrupted and not work properly.

Let δ[2ε,1]\delta\in[2\varepsilon,1]. Let II and OO be disjoint intervals of length 11. The agent for this gate has a block of length 1δ1-\delta and height 12δ\frac{1}{2-\delta} centered in interval II and a block of length 11 and (same) height 12δ\frac{1}{2-\delta} in interval OO.

It is easy to check that since δ2ε\delta\geq 2\varepsilon, at least one cut must lie strictly within OO in any solution. Furthermore, this gate has the notable property that it cannot be corrupted. From this construction, we obtain the following gates:

Multiplication by 1-1 [G×(1)][G_{\times(-1)}]: Set δ=2ε\delta=2\varepsilon. Then, in any solution it holds that v(O)=T[v(I)±4ε]v(O)=T[-v(I)\pm 4\varepsilon]. See Fig. 2 for an illustration.

For ζ0\zeta\leq 0, we let δ=max(1+ζ,2ε)\delta=\max(1+\zeta,2\varepsilon) and obtain that v(O)=T[ζ±4ε]v(O)=T[\zeta\pm 4\varepsilon].

For ζ>0\zeta>0, use GζG_{-\zeta} and then G×(1)G_{\times(-1)}, for a total error of at most 8ε8\varepsilon. Note that if v(I)=1|v(I)|=1, then this gate can also be used to obtain T[v(I)×ζ±8ε]T[v(I)\times\zeta\pm 8\varepsilon].

[G_{+}]: Let I1I_{1} and I2I_{2} be the two length-11 intervals encoding the two inputs. Let II^{\prime} be an interval of length 22 that is disjoint from I1I_{1} and I2I_{2}. Let JJ be an interval of length 33 that is disjoint from I1,I2I_{1},I_{2} and II^{\prime}. We first use a G×(1)G_{\times(-1)}-gate with input I1I_{1} and output II^{\prime}, and another one with input I2I_{2} and output II^{\prime}.

To compute addition we create a new agent with valuation function that has height 1/51/5 in II^{\prime} and in JJ, and height everywhere else. Note that since ε<1/5\varepsilon<1/5, in any solution there must be a cut in JJ. We say that the gate is corrupted, if there are at least two cuts lying strictly in the interval JJ. The output of the gate will be in interval O=JO=J. If the gate is not corrupted, then by construction we have v(O)=T[v(I1)+v(I2)±16ε]v(O)=T[v(I_{1})+v(I_{2})\pm 16\varepsilon]. See Fig. 4 for an illustration.

3.2 Additional Gates

Using the gates presented above, we can also implement the following operations.

We can copy a value by using two successive G×(1)G_{\times(-1)}-gates. The error will be at most 8ε8\varepsilon. This gate can not be corrupted.

This can be implemented by a chain of k1k-1 additions that repeatedly add the input to the intermediate summation. It is easy to check that the error is at most (k1)16ε(k-1)16\varepsilon.

For the Boolean gates, the bits {0,1}\{0,1\} will be represented by the values 1-1 (for ) and +1+1 (for 11). We say that an input value v(I)v(I)\in is a perfect bit, if v(I){1,1}v(I)\in\{-1,1\}. The Boolean gates we will construct have the following very nice property: if all inputs are perfect bits, then the output is a perfect bit (and is the correct output).

Negation Gate [G¬][G_{\lnot}]:. This can be done by first using a G×(1)G_{\times(-1)}-gate and then a G×2G_{\times 2}-gate. The error will be at most 20ε20\varepsilon, so this will work as intended as long as 20ε120\varepsilon\leq 1.

AND Gate: [G][G_{\land}]: Let b1b_{1} and b2b_{2} be the two inputs. We perform the computation ((b1+b2)1/2)×4((b_{1}+b_{2})-1/2)\times 4 by using two G+G_{+}-gates, a G1/2G_{-1/2}-gate and a G×4G_{\times 4}-gate. The error will be at most 12×16ε12\times 16\varepsilon, so the gate will work as intended as long as 12×16ε112\times 16\varepsilon\leq 1.

OR Gate [G][G_{\lor}]: This can easily be obtained by using GG_{\land} and G¬G_{\lnot}.

Note that all the arithmetic gates we have presented have error at most g(ε)=16εg(\varepsilon)=16\varepsilon, with the exception of G×kG_{\times k}, which has an error of (k1)g(ε)(k-1)g(\varepsilon). Thus, we have to be careful whenever we use this gate for some non-constant kk.

Note that the operation performed by any gate is equivariant. Namely, if we flip the sign of all inputs, the same output is still valid, but with a flipped sign. For G×1G_{\times-1} and G+G_{+} gates this is obvious. For GζG_{\zeta}, we have to recall that constj\textup{const}_{j} is the input to the gate. With this interpretation, the equivariance is once again obvious. For the GG_{\land}-gate the equivariance is a bit more subtle. Note that it uses a G1/2G_{-1/2}-gate, which uses constj\textup{const}_{j}. Thus, in this case again, if we flip the sign of the inputs b1b_{1}, b2b_{2} and constj\textup{const}_{j}, the sign of the output is flipped too.

This property of the gates is not a coincidence. It follows from the way we are encoding values. Note that in any solution SS, if we swap the labels ++ and -, the solution remains valid. The only thing that has changed is that for any gate, the sign of all inputs and outputs has been flipped.

It follows that any circuit that we construct out of these gates will be equivariant. Namely, the computation will still be valid if we flip the sign of all inputs (including constj\textup{const}_{j}) and all outputs.

4 Circuit-Simulators

In this section we describe the functionality of the circuit-simulators and what it achieves. Recall that every circuit-simulator CjC_{j} reads-in inputs x1,,xNx_{1},\dots,x_{N}\in from the Coordinate-Encoding region and constj\textup{const}_{j}\in from the Constant-Creation region. The circuit-simulator then performs some computations and outputs [Cj(x,constj)]1,,[Cj(x,constj)]N[C_{j}(x,\textup{const}_{j})]_{1},\dots,[C_{j}(x,\textup{const}_{j})]_{N}\in into the Feedback region. If the circuit-simulator CjC_{j} is corrupted (i.e., one of the stray cuts interferes with it), then we will not claim anything about the outputs of CjC_{j}. In that case, we will only use the fact that all the outputs must lie in $$ (which is guaranteed by the way values are represented).

If the circuit-simulator CjC_{j} is not corrupted, then we know that all gates will perform correct computations, and we also know that constj{1,+1}\textup{const}_{j}\in\{-1,+1\}. In our construction of CjC_{j}, we will be assuming that constj=+1\textup{const}_{j}=+1. However, we will show later that even if constj=1\textup{const}_{j}=-1, CjC_{j} will output something useful.

In the first phase, CjC_{j} applies a small displacement to its input xx. Namely, for every i[N]i\in[N], CjC_{j} computes x^iT[xi+jα]\widehat{x}_{i}\approx T[x_{i}+j\alpha], where α=116p(N)\alpha=\frac{1}{16p(N)}. This is achieved by using a GjαG_{j\alpha}-gate to create the constant jαj\alpha (by using constj\textup{const}_{j}), followed by a G+G_{+}-gate to perform the addition xi+jαx_{i}+j\alpha. However, since ε>0\varepsilon>0, the gates might make some error in the computations. Nevertheless, by construction of the gates, we immediately obtain:

Assume that the circuit-simulator CjC_{j} is not corrupted and constj=+1\textup{const}_{j}=+1. Then the equi-angle displacement phase outputs x^i=T[xi+jα±2g(ε)]\widehat{x}_{i}=T[x_{i}+j\alpha\pm 2g(\varepsilon)] for all ii.

In the second phase, CjC_{j} extracts the three most significant bits from each x^i\widehat{x}_{i}\in. These three bits tell us where x^i\widehat{x}_{i} lies in $,namelyinwhichoftheeightpossiblestandardintervalsoflength, namely in which of the eight possible standard intervals of length1/4::[-1,-3/4],,[-3/4,-1/2],,[-1/2,-1/4],,[-1/4,0],,[0,1/4],,[1/4,1/2],,[1/2,3/4],,[3/4,1].Insteadoftheusual. Instead of the usual\{0,1\},ourbitswilltakevaluesin, our bits will take values in\{-1,+1\}.Thefirstbit. The first bitb_{1}\in\{-1,+1\}indicateswhetherindicates whether\widehat{x}_{i}ispositiveornegative.Ifis positive or negative. Ifb_{1}=+1,then, then\widehat{x}_{i}\in.If. Ifb_{1}=-1,then, then\widehat{x}_{i}\in.Thesecondbit. The second bitb_{2}\in\{-1,+1\},thenindicatesinwhichhalfofthatinterval, then indicates in which half of that interval\widehat{x}_{i}lies.Thus,iflies. Thus, ifb_{1}=+1andandb_{2}=-1,then, then\widehat{x}_{i}\in[0,1/2].Notethatsomeofthebitsarenotwelldefinedif. Note that some of the bits are not well-defined if\widehat{x}_{i}\in BwherewhereB=\{-3/4,-1/2,-1/4,0,1/4,1/2,3/4\}.Thus,wecannotexpectthebitextractiontosucceedinthiscase.Infact,thebitextractionwillfailif. Thus, we cannot expect the bit extraction to succeed in this case. In fact, the bit extraction will fail if\widehat{x}_{i}issufficientlyclosetoanypointinis sufficiently close to any point inB$.

The bit extraction for x^i\widehat{x}_{i} is performed as follows.

b1T[x^i×1/g(ε)]b_{1}\approx T[\widehat{x}_{i}\times\lceil 1/g(\varepsilon)\rceil] (use G×1/g(ε)G_{\times\lceil 1/g(\varepsilon)\rceil}-gate)

x^iT[x^ib1/2]\widehat{x}_{i}^{\prime}\approx T[\widehat{x}_{i}-b_{1}/2] (use G1/2G_{-1/2}-gate and G+G_{+}-gate)

b2T[x^i×1/g(ε)]b_{2}\approx T[\widehat{x}_{i}^{\prime}\times\lceil 1/g(\varepsilon)\rceil]

x^iT[x^ib2/4]\widehat{x}_{i}^{\prime\prime}\approx T[\widehat{x}_{i}^{\prime}-b_{2}/4]

b3T[x^i×1/g(ε)]b_{3}\approx T[\widehat{x}_{i}^{\prime\prime}\times\lceil 1/g(\varepsilon)\rceil]

Note that to compute b1/2-b_{1}/2 and b2/4-b_{2}/4 we just use the corresponding constant gate, namely G1/2G_{-1/2} and G1/4G_{-1/4} (with input b1b_{1} or b2b_{2} respectively, instead of constj\textup{const}_{j}). The computation may be incorrect if b1b_{1} or b2b_{2} are not in {1,1}\{-1,1\}, but in that case the bit-extraction has already failed anyway.

We can show that the bit-extraction succeeds if x^i\widehat{x}_{i} is sufficiently far away from any point in BB. Letting dist(t,B)=minpBtp\textup{dist}(t,B)=\min_{p\in B}|t-p|, we obtain:

Assume that the circuit-simulator CjC_{j} is not corrupted and constj=+1\textup{const}_{j}=+1. If dist(T[xi+jα],B)8g(ε)\textup{dist}(T[x_{i}+j\alpha],B)\geq 8g(\varepsilon), then the bit-extraction phase for x^i\widehat{x}_{i} outputs the correct bits for T[xi+jα]T[x_{i}+j\alpha].

Since dist(T[xi+jα],B)8g(ε)\textup{dist}(T[x_{i}+j\alpha],B)\geq 8g(\varepsilon), it follows by 1 that dist(x^i,B)6g(ε)\textup{dist}(\widehat{x}_{i},B)\geq 6g(\varepsilon), and in particular x^i6g(ε)|\widehat{x}_{i}|\geq 6g(\varepsilon). In step 1 we use a G×1/g(ε)G_{\times\lceil 1/g(\varepsilon)\rceil}-gate on input x^i\widehat{x}_{i}. By construction of the gate, it follows that b1=T[x^i×1/g(ε)±(1/g(ε)1)g(ε)]=T[x^i×1/g(ε)±1]b_{1}=T[\widehat{x}_{i}\times\lceil 1/g(\varepsilon)\rceil\pm(\lceil 1/g(\varepsilon)\rceil-1)g(\varepsilon)]=T[\widehat{x}_{i}\times\lceil 1/g(\varepsilon)\rceil\pm 1] where we used (1/g(ε)1)g(ε)1|(\lceil 1/g(\varepsilon)\rceil-1)g(\varepsilon)|\leq 1. Since x^i6g(ε)|\widehat{x}_{i}|\geq 6g(\varepsilon), it holds that x^i×1/g(ε)62|\widehat{x}_{i}\times\lceil 1/g(\varepsilon)\rceil|\geq 6\geq 2. Thus, b1{1,+1}b_{1}\in\{-1,+1\} is the correct bit for x^i\widehat{x}_{i}.

In step 2 we compute x^i=T[x^ib1/2±2g(ε)]\widehat{x}_{i}^{\prime}=T[\widehat{x}_{i}-b_{1}/2\pm 2g(\varepsilon)]. Thus, we have dist(x^i,B)4g(ε)\textup{dist}(\widehat{x}_{i}^{\prime},B)\geq 4g(\varepsilon), and in particular x^i4g(ε)|\widehat{x}_{i}^{\prime}|\geq 4g(\varepsilon), which implies that b2=T[x^i×1/g(ε)±1]{1,+1}b_{2}=T[\widehat{x}_{i}^{\prime}\times\lceil 1/g(\varepsilon)\rceil\pm 1]\in\{-1,+1\} is the correct first bit for x^i\widehat{x}_{i}^{\prime} and the correct second bit for x^i\widehat{x}_{i}.

In step 4 we compute x^i=T[x^ib2/2±2g(ε)]\widehat{x}_{i}^{\prime\prime}=T[\widehat{x}_{i}^{\prime}-b_{2}/2\pm 2g(\varepsilon)]. Thus, x^i2g(ε)|\widehat{x}_{i}^{\prime\prime}|\geq 2g(\varepsilon), which implies that b3=T[x^i×1/g(ε)±1]{1,+1}b_{3}=T[\widehat{x}_{i}^{\prime\prime}\times\lceil 1/g(\varepsilon)\rceil\pm 1]\in\{-1,+1\} is the correct first bit for x^i\widehat{x}_{i}^{\prime\prime}, i.e., the correct second bit for x^i\widehat{x}_{i}^{\prime} and the correct third bit for x^i\widehat{x}_{i}.

Finally, note that if dist(T[xi+jα],B)8g(ε)\textup{dist}(T[x_{i}+j\alpha],B)\geq 8g(\varepsilon), then T[xi+jα]T[x_{i}+j\alpha] and x^i\widehat{x}_{i} must lie in the same standard interval of length 1/41/4, i.e., they must have the same three bits. ∎

Recall that λ:N{±1,,±N}\lambda:^{N}\to\{\pm 1,\dots,\pm N\} is the Boolean circuit computing the high-D-Tucker labeling. We interpret asasubdivisionofas a subdivision of into standard intervals of length 1/41/4. Namely, 11 corresponds to [1,3/4][-1,-3/4], 22 to [3/4,1/2][-3/4,-1/2], etc. Thus, N^{N} can be interpreted as a subdivision of N^{N} into hypercubes of side-length 1/41/4. With this in mind, we define λ:(B)N{±1,,±N}\overline{\lambda}:(\setminus B)^{N}\to\{\pm 1,\dots,\pm N\}, so that for any x(B)Nx\in(\setminus B)^{N}, λ(x)\overline{\lambda}(x) is the label that λ\lambda assigns to the hypercube containing xx.

We can assume that the inputs of λ\lambda consist of three bits each, such that the number represented by these three bits yields an element in $(byusing(by using\equiv\{0,1,\dots,7\}).Thethreebits). The three bitsb_{1},b_{2},b_{3}\in\{-1,+1\}extractedfromextracted fromT[x_{i}+j\alpha]tellusexactlyinwhichintervaltell us exactly in which intervalT[x_{i}+j\alpha]lies.Notethatifweweretomapthosebitstolies. Note that if we were to map those bits to\{0,1\}(where(where-1\mapsto 0andand+1\mapsto 1),thenthebitstring), then the bit-stringb_{1}b_{2}b_{3}$ would correspond to the number associated with the interval and would thus be the correct corresponding input to the circuit.

We re-interpret the circuit λ\lambda as working on bits {1,+1}\{-1,+1\}, where 1-1 corresponds to . Clearly, we can implement this circuit in CjC_{j} with our Boolean gates. As long as the inputs to every gate are perfect bits (i.e., in {1,+1}\{-1,+1\}), the output of the gate will also be a perfect bit, and will correspond to the result of the operation computed by the gate. The inputs to the circuit will be exactly the bits obtained in the bit extraction phase for each x^i\widehat{x}_{i}. Thus, it follows that if the bit extraction phase succeeds, then the simulation of λ\lambda will always have a correct output. In other words, using 2, we obtain:

Assume that the circuit-simulator CjC_{j} is not corrupted and constj=+1\textup{const}_{j}=+1. If dist(T[xi+jα],B)8g(ε)\textup{dist}(T[x_{i}+j\alpha],B)\geq 8g(\varepsilon) for all i[N]i\in[N], then the simulation phase outputs λ(T[x+jα])\overline{\lambda}(T[x+j\alpha]).

λi(z)=+1\overline{\lambda}_{i}(z)=+1 if λ(z)=+i\overline{\lambda}(z)=+i

λi(z)=1\overline{\lambda}_{i}(z)=-1 if λ(z)=i\overline{\lambda}(z)=-i

Then, by 3 we obtain that T[yia+yib]=λi(T[x+jα])T[y_{i}^{a}+y_{i}^{b}]=\overline{\lambda}_{i}(T[x+j\alpha]).

In this last phase, for each i[N]i\in[N] we compute T[yia+yib]T[y_{i}^{a}+y_{i}^{b}] and copy this value into the Feedback region, namely into interval Fi(j)F_{i}(j) (recall that CjC_{j} is the current circuit-simulator). For this we first use a G+G_{+}-gate and then a GcopyG_{\textup{copy}}-gate. Thus, we immediately obtain:

Assume that the circuit-simulator CjC_{j} is not corrupted and constj=+1\textup{const}_{j}=+1. If dist(T[xi+jα],B)8g(ε)\textup{dist}(T[x_{i}+j\alpha],B)\geq 8g(\varepsilon) for all i[N]i\in[N], then [Cj(x,constj)]i:=v(Fi(j))=T[λi(T[x+jα])±2g(ε)][C_{j}(x,\textup{const}_{j})]_{i}:=v(F_{i}(j))=T[\overline{\lambda}_{i}(T[x+j\alpha])\pm 2g(\varepsilon)] for all i[N]i\in[N].

5 Proof of Correctness

In this section we prove that the reduction works, i.e., from any solution to the Consensus-Halving instance, we can obtain a solution to the original high-D-Tucker instance in polynomial time. In order to do this, we consider two cases and show that we can retrieve a solution in both cases. The first case corresponds to a “well-behaved” solution where there are no stray cuts. The second case corresponds to a solution with stray cuts. In both cases, we show that, if xx denotes the point encoded by the Coordinate-Encoding region in a solution of the Consensus-Halving instance, then the set {T[x+jα]:j{±1,,±p(N)}}\{T[x+j\alpha]:j\in\{\pm 1,\dots,\pm p(N)\}\} must contain two points that have opposite labels in the original high-D-Tucker instance. Two such points can then easily be extracted in polynomial time by simply computing the labels of all 2p(N)2p(N) points in that set. Note also that all points in the set are very close to each other by construction and so the two selected points will lie in adjacent hypercubes of the high-D-Tucker instance (as defined in Phase 3).

We set p(N)=4N2p(N)=4N^{2} and pick ε\varepsilon such that 16g(ε)116p(N)16g(\varepsilon)\leq\frac{1}{16p(N)}, i.e., ε1214N2\varepsilon\leq\frac{1}{2^{14}N^{2}}.

Let SS be any ε\varepsilon-approximate solution for the Consensus-Halving instance. If SS does not have any stray cuts, then it yields a solution to the high-D-Tucker instance in polynomial time.

Since there are no stray cuts, none of the circuit-simulators is corrupted. In particular, there is no cut strictly inside the Constant-Creation region. Thus, without loss of generality we can assume that the whole Constant-Creation region is labeled ++. This means that all circuit-simulators read-in the constant +1+1, i.e., constj=+1\textup{const}_{j}=+1 for all jj.

Since the circuit-simulators are not corrupted, the only way in which they can fail is if the bit extraction phase fails. Let xNx\in^{N} be the point represented by the Coordinate-Encoding region in SS. Let z(j)=T[x+jα]z^{(j)}=T[x+j\alpha].

Since p(N)α1/16p(N)\alpha\leq 1/16 and α=116p(N)16g(ε)\alpha=\frac{1}{16p(N)}\geq 16g(\varepsilon), it follows that there exists at most one jj^{*} such that zi(j)z^{(j^{*})}_{i} lies too close to B={3/4,1/2,1/4,0,1/4,1/2,3/4}B=\{-3/4,-1/2,-1/4,0,1/4,1/2,3/4\}. Namely, there exists j[p(N)]j^{*}\in[p(N)] such that for all j[p(N)]{j}j\in[p(N)]\setminus\{j^{*}\}, we have dist(zi(j),B)8g(ε)\textup{dist}(z^{(j)}_{i},B)\geq 8g(\varepsilon). By 2 it follows that the bit extraction phase in dimension ii fails in at most one circuit-simulator.

We thus obtain that the bit extraction (in any dimension) fails in at most nn circuit-simulators. Let X[p(N)]X\subseteq[p(N)] be such that the bit extraction does not fail in CjC_{j} for all jXj\in X. Then, we have shown that Xp(N)Np(N)2N|X|\geq p(N)-N\geq p(N)-2N. By 3, we get that for all jXj\in X, phase 3 of the circuit-simulator CjC_{j} outputs λ(z(j))\overline{\lambda}(z^{(j)}), i.e., the correct label for z(j)z^{(j)} (which lies in (B)N(\setminus B)^{N}).

By 4, we have that for every jXj\in X the circuit-simulator CjC_{j} outputs

such that for all i[N]i\in[N] we have [Cj(x,constj)]iλi(z(j))[C_{j}(x,\textup{const}_{j})]_{i}\approx\overline{\lambda}_{i}(z^{(j)}) (up to error 2g(ε)2g(\varepsilon)). It holds that for every jXj\in X, there exists ij[N]i_{j}\in[N] such that λij(z(j))=1|\overline{\lambda}_{i_{j}}(z^{(j)})|=1. Thus, there exist i[N]i\in[N] and XiXX_{i}\subseteq X such that

Since we also have [Cj(x,constj)]i2g(ε)[C_{j}(x,\textup{const}_{j})]_{i}\geq-2g(\varepsilon) for all jXXij\in X\setminus X_{i}, we can write:

for NN sufficiently large, where we used p(N)=4N2p(N)=4N^{2} and ε1214N2\varepsilon\leq\frac{1}{2^{14}N^{2}}. However, recall that feedback agent fif_{i} ensures that j=1p(N)[Cj(x,constj)]i=j=1p(N)v(Fi(j))[p(N)ε,p(N)ε]\sum_{j=1}^{p(N)}[C_{j}(x,\textup{const}_{j})]_{i}=\sum_{j=1}^{p(N)}v(F_{i}(j))\in[-p(N)\varepsilon,p(N)\varepsilon]. So, we have obtained a contradiction. ∎

Let SS be any ε\varepsilon-approximate solution for the Consensus-Halving instance. If SS has at least one stray cut, then it yields a solution to the high-D-Tucker instance in polynomial time.

Let us now take a look at what happens if a circuit-simulator CjC_{j} has constj=1\textup{const}_{j}=-1. Since all the gates in CjC_{j} are equivariant (Remark 1), it follows that CjC_{j} with inputs x1,,xNx_{1},\dots,x_{N} and constj\textup{const}_{j} is also equivariant. This implies that

Thus, the output of CjC_{j} is the negation of a valid output that CjC_{j} would have had if its inputs were x-x and constj=+1\textup{const}_{j}=+1 instead. We use the term “a valid output” instead of “the output”, because CjC_{j} can have multiple valid outputs for a single input (because every gate is allowed a small error). So, we are saying that the output of CjC_{j} on inputs x,1x,-1 is the negation of a valid output on inputs x,+1-x,+1. Thus, we immediately obtain that the analogous statements for Claims 1,2,3 and 4 also hold in this case. In other words, we get that if circuit-simulator CjC_{j} is not corrupted, and if dist(T[xi+jα],B)8g(ε)\textup{dist}(T[x_{i}+j\alpha],B)\geq 8g(\varepsilon), then

Consider any i[N]i\in[N]. Using the same argument as in the proof of Lemma 4, it is easy to show that at most one of the points

lies within distance at most 8g(ε)8g(\varepsilon) of BB. It follows that at most one of the points

lies within distance at most 8g(ε)8g(\varepsilon) of BB. Thus, we again have that the bit extraction phase fails in at most NN circuit-simulators.

Thus, we again have obtained two points in adjacent hypercubes that have opposite labels.

Algorithms for single-block valuations

We say that a single-block instance of ε\varepsilon-Consensus-Halving has maximum intersection dd if for every xx\in it holds that the set R(x)={i[n]fi(x)>0}\mathcal{R}(x)=\{i\in[n]\mid f_{i}(x)>0\}, has cardinality R(x)d\left|\mathcal{R}(x)\right|\leq d. We also say that the instance has maximum value MM if for every i[n]i\in[n] and every xx\in it holds that fi(x)Mf_{i}(x)\leq M. This is equivalent to biai1/Mb_{i}-a_{i}\geq 1/M.

For the rest of the section, we often refer to the following quantity.

For any ε\varepsilon-Consensus-Halving instance C={μ1,,μn}\mathcal{C}=\{\mu_{1},\dots,\mu_{n}\}, any vector of cuts s\vec{s} and any zz\in let bi(s;z)b_{i}(\vec{s};z) be the mass with respect to μi\mu_{i} of the part of the interval [z,1][z,1] labeled “++” minus the part of the interval labeled “-”, when split with the cuts s\vec{s}. Formally, bi(s;z)=μi([z,1]+)μi([z,1])b_{i}(\vec{s};z)=\mu_{i}([z,1]^{+})-\mu_{i}([z,1]^{-}), given the set of cuts s\vec{s}.

Because of Claim 5 we will assume for the rest of this section that we are working with C\mathcal{C}^{\prime} and we will focus on finding an (ε=ε/2)(\varepsilon^{\prime}=\varepsilon/2)-Consensus-Halving solution with cuts in QmQ_{m}, where m=2M/εm=2M/\varepsilon. This will give us an ε\varepsilon-approximate solution for the single-block instance C\mathcal{C}. We also need the following definitions:

for any zz\in and any instance C={μ1,,μn}\mathcal{C}=\{\mu_{1},\dots,\mu_{n}\} we define the set of measures that have positive mass in [z,1][z,1] as follows: U(z;C)={i[n]μiCμi([z,1])>0}\mathcal{U}(z;\mathcal{C})=\{i\in[n]\mid\mu_{i}\in\mathcal{C}\wedge\mu_{i}([z,1])>0\} where we might drop C\mathcal{C} when it is clear from the context, see also Figure 5,

for any zz\in and any instance C={μ1,,μn}\mathcal{C}=\{\mu_{1},\dots,\mu_{n}\} we define the set of measures that have positive density at zz as follows: R(z;C)={i[n]μiCfi(z)>0}\mathcal{R}(z;\mathcal{C})=\{i\in[n]\mid\mu_{i}\in\mathcal{C}\wedge f_{i}(z)>0\} where we might drop C\mathcal{C} when it is clear from the context, see also Figure 5.

We also define Qˉm={zzQmzQm}\bar{Q}_{m}=\{z\mid z\in Q_{m}\vee-z\in Q_{m}\}. Now we are ready to define our main recursive relation for solving the instance C\mathcal{C}^{\prime}. For this we define the function α(q1,,qd,z,t)\alpha(q_{1},\dots,q_{d},z,t) where qjQˉmq_{j}\in\bar{Q}_{m}, zQmz\in Q_{m}, and t[n]t\in[n] and α:Qˉmd×Qm×[n]{0,1}\alpha:\bar{Q}_{m}^{d}\times Q_{m}\times[n]\to\{0,1\}. The intuitive explanation of the value of α\alpha is the following:

α(q1,,qd,z,t)\alpha(q_{1},\dots,q_{d},z,t) denotes whether it is possible to find tt cuts s\vec{s} to split the interval [z,1][z,1] such that: (1) if ii is the jjth element of R(z)\mathcal{R}(z) it holds that bi(s;z)qjε|b_{i}(\vec{s};z)-q_{j}|\leq\varepsilon, (2) for every iU(z)R(z)i\in\mathcal{U}(z)\setminus\mathcal{R}(z) it holds that bi(s;0)=bi(s;z)ε|b_{i}(\vec{s};0)|=|b_{i}(\vec{s};z)|\leq\varepsilon.

The value of α(q1,,qd,z,t)\alpha(q_{1},\dots,q_{d},z,t) can be recursively computed via the following procedure.

if there exists iR(z)i\in\mathcal{R}(z) and ii is the jjth element of R(z)\mathcal{R}(z) but i∉R(r)i\not\in\mathcal{R}(r) and by adding the cut rr to the set of cuts then the condition bi(r;z)qj>ε|b_{i}(r;z)-q_{j}|>\varepsilon holds then continue,

if there exists iU(z)R(z)i\in\mathcal{U}(z)\setminus\mathcal{R}(z) but i∉U(r)R(r)i\not\in\mathcal{U}(r)\setminus\mathcal{R}(r) then continue

else for every iR(r)i\in\mathcal{R}(r), where ii is the jjth element of R(r)\mathcal{R}(r)

if i∉R(z)i\not\in\mathcal{R}(z) then we set qj=(1)tμi([z,r])q^{\prime}_{j}=(-1)^{t}\mu_{i}([z,r])

call the function α(q1,,qd,r,t1)\alpha(q^{\prime}_{1},\dots,q^{\prime}_{d},r,t-1)

return true if at least one of the recursive calls is successful, and false otherwise.

This procedure evaluates the binary function α\alpha, but our goal is to solve the search problem that finds a set of cuts that form a solution to ε\varepsilon^{\prime}-Consensus-Halving. This can be easily done by storing one possible solution whenever α=true\alpha=\textbf{true}. We call this possible solution β(q1,,qd,z,t)\beta(q_{1},\dots,q_{d},z,t). More formally, the algorithm is shown in Algorithm 1.

From the above recursive algorithm we see that the evaluation order for the dynamic programming algorithm that computes α(q1,,qd,z,t)\alpha(q_{1},\dots,q_{d},z,t) starts from t=0t=0 to t=nt=n, z=1z=1 to z=0z=0 and qj=1|q_{j}|=1 to qj=0|q_{j}|=0.

There exists a dynamic programming algorithm that for any single-block instance C\mathcal{C} of ε\varepsilon-Consensus-Halving with maximum value MM and maximum intersection dd, computes a set of cuts that define a solution. The running time of the algorithm is O((2Mε)d+2n(n+d))O\left(\left(\frac{2M}{\varepsilon}\right)^{d+2}n(n+d)\right).

2 A polynomial-time algorithm for 1/2121/2-Consensus-Halving

In this subsection, we present a polynomial-time algorithm for 1/21/2-Consensus-Halving, for the case of single-block valuations. We state the main theorem, which will be proven in the subsection.

There exists a polynomial-time algorithm for 1/21/2-Consensus-Halving, when agents have single-block valuations.

The high-level idea of the algorithm is the following greedy strategy. We will consider the agents in order of non-decreasing height of their valuation blocks. Since each agent has a single block of value, this means that for two agents ii and jj with i<ji<j that have their value block in intervals IiI_{i} and IjI_{j}, agent ii will be considered before agent jj. For each agent, we will attempt to “reserve” a large enough sub-interval of her value block (of total value at least 1/21/2 for the agent) and split it in half (to two parts of equal value at least 1/41/4 to the agent) using a cut, assigning each half to ++ and - respectively. At that point, this split will ensure that μi(Ii+)μi(Ii)1/2|\mu_{i}(I_{i}^{+})-\mu_{i}(I_{i}^{-})|\leq 1/2, regardless of the labeling of the remaining part of the agent’s value block IiI_{i}. A reserved sub-interval, or reserved region (RR) will never be intersected by any subsequent cut. This ensures that the guarantee μi(Ii+)μi(Ii)1/2|\mu_{i}(I_{i}^{+})-\mu_{i}(I_{i}^{-})|\leq 1/2 for every agent ii previously considered will continue to hold.

Reserving a large enough region for the first considered agent is straightforward. For any subsequent agent ii, part of her value block interval IiI_{i} might already be “covered” by regions that were reserved in previous steps. Before inserting any new cut, we will expand some of the RRs which are contained in IiI_{i} (those that exhibit a different label on each of their endpoints), until we either ensure that the agent is approximately satisfied with the imbalance of labels that she sees, or these RRs cannot be expanded any longer. In the latter case, we will place the cut corresponding to agent ii in IiI_{i}, on the midpoint of the “virtual” interval UiIiU_{i}\subseteq I_{i}, consisting of all the intervals of IiI_{i} not covered by RRs, “glued” together. Then, we will create a new RR, which will potentially also contain some of the RRs already present in IiI_{i}, which will be such that (a) the total value covered by RRs for agent ii is 1/21/2 and (b) the agent is approximately satisfied (up to a 1/21/2) with the value she has for RRs in IiI_{i}.

2.1 The algorithm

First, we will use the following terminology: A reserved region (RR) RR is a designated interval in which no further cuts are allowed to be placed, other than those that already lie in the region. We will define the parity of RR to be odd if the left-hand side of the leftmost cut intersecting RR and the right-hand side of the rightmost cut intersecting RR have different labels; otherwise, we will say that the parity of RR is even.

We will let IiI_{i} denote the (single) interval in which agent ii has positive value, and we will let Ri=Rj is an RR(RjIi)R_{i}=\bigcup_{R_{j}\text{ is an RR}}(R_{j}\cap I_{i}) be the part of IiI_{i} that is “covered” by RRs. We will also let Ui=IiRiU_{i}=I_{i}\setminus R_{i} denote the unreserved part of IiI_{i}. Finally, we will say that an RR RR is an internal RR of IiI_{i}, if it is entirely contained in IiI_{i} (including the case where the endpoint of the RR is the endpoint of the interval); otherwise, we will say that RR is a boundary RR. Note that since RRs can be contained in other RRs, it is possible that an internal RR is contained in a boundary RR (see Fig. 6). An overview of the algorithm is given in Algorithm 2.

The algorithm considers the agents in non-increasing order of the heights of their value blocks. We will say that an agent ii is 1/21/2-satisfied at step jj, if, after considering agent jj, it holds that μi(I+)μi(I)1/2|\mu_{i}(I^{+})-\mu_{i}(I^{-})\leq 1/2, i.e., at least half of the value of the agent is balanced between ++ and -. Let step ii be the step when agent ii is considered. At step ii the algorithm does the following.

Expand internal RRs of odd parity, until agent ii is 1/21/2-satisfied, or until any internal RRs of odd parity can no longer be extended. See Section 4.2.2 below.

Place the cut in the midpoint of Ui\mathcal{U}_{i} (where Ui\mathcal{U}_{i} is obtained by considering UiU_{i} as a continuous interval, and disregarding RiR_{i}). See Section 4.2.3 below.

Create a new RR, by considering only UiU_{i}, possibly merging the intervals of the new RR with some RRs in RiR_{i}. See Section 4.2.4 below.

2.2 Expanding internal Reserved Regions of odd parity

Consider step ii, when we are considering agent ii, and her corresponding value block interval IiI_{i}. We will consider internal RRs of odd parity in IiI_{i}. For any such RR, we extend its endpoints at the same rate towards the left and the right, until we either:

reach a point where the agent is 1/21/2-satisfied or

reach the endpoint of one or two other RRs, or,

If Condition (a) above is satisfied, then we do not consider any other RR and continue with the next agent. Otherwise, we continue with the next internal RR of odd parity, if any. Note that after this part of the algorithm, the cut corresponding to agent ii has not been placed yet. See Fig. 7.

2.3 Placing the cut

After we consider all internal RRs of odd parity, and if Condition (a) above has not been satisfied yet, we will use the agent’s corresponding cut to balance out the remaining value block IiI_{i}, to ensure that the agent becomes 1/21/2-satisfied. To do that, we consider agent ii’s valuation in IiI_{i} on UiU_{i}, and we place the cut on the midpoint yy of UiU_{i} - one can envision this operation as considering UiU_{i} as a continuous interval (merging any sub-intervals separated by RRs in RiR_{i}) and splitting this interval in half via the placement of the cut. See Fig. 8.

2.4 Creating the new Reserved Region

After the cut has been placed, we need to reserve a corresponding region for agent ii, to ensure that she is 1/21/2-satisfied from the updated union of reserved regions RiR_{i} in IiI_{i}. To do that, we reserve an equal portion of UiU_{i} to the left and to the right of the position yy of the cut, until the agent becomes 1/21/2-satisfied. We argue in the proof of Lemma 10 that this is always possible. Intuitively, one can visualize that we extend the region from yy to the left and to the right at the same rate, “jumping over” RRs, until we have reserved enough area to 1/21/2-satisfy the agent. The effect of this process is a new RR, possibly containing previously reserved RRs and the newly reserved regions. See Fig. 8.

2.5 Correctness of the algorithm

Below, we argue about the correctness of the algorithm. We will prove the correctness via a series of lemmas.

After step ii of the algorithm, the value of agent ii for any internal RR in RiR_{i} is at most 1/21/2.

We will prove the lemma using induction. For i=1i=1, the statement is clearly true; there are no pre-existing RRs, so we place a cut in the midpoint y1y_{1} of I1I_{1} and reserve a region of total value 1/41/4 for the agent to the left of y1y_{1}, and a region of total value 1/41/4 to the right of y1y_{1}, which together form the first RR R1R_{1}. This is the only internal RR in I1I_{1} and hence the lemma follows.

Next, we will argue that the lemma holds for some 1<jn1<j\leq n. Consider agent jj and its value interval IjI_{j}. Since we consider agents in non-increasing order of the height of their valuation blocks, from the induction hypothesis, it holds that the value of agent jj for any RR which is internal for IiI_{i}, for any i<ji<j, is at most 1/21/2 as well. Therefore, it is not possible for agent jj to value any RR which is internal for IjI_{j}, at the beginning of step jj, at more than 1/21/2. During step jj, the algorithm might either expand existing internal RRs, create a new RR, or both, but in any case, by construction, the union of these RRs will never amount to more than 1/21/2 of agent jj’s value. ∎

Let RbR_{b} be any boundary RR in IiI_{i} at step ii. Then, it holds that μi(Rb+)μi(Rb)1/4|\mu_{i}(R_{b}^{+})-\mu_{i}(R_{b}^{-})|\leq 1/4.

First, note that since RbR_{b} is a boundary RR in IiI_{i}, it is part of some larger RR; let RR be that RR, i.e., RbRR_{b}\subseteq R. Also, note that RR is “balanced”, meaning that the total length of RR labeled “++” and the total length of RR labeled “-” are equal; this follows from the fact that in any of the steps (1) and (3) of the algorithm (Section 4.2.2 and Section 4.2.4) where the RRs are created or expanded, these operations are only done symmetrically with respect to the position of some cut. In other words, if RR is internal for some agent jj, it holds that μj(R+)=μj(R)\mu_{j}(R^{+})=\mu_{j}(R^{-}).

Assume by contradiction that μi(Rb+)μi(Rb)>1/4|\mu_{i}(R_{b}^{+})-\mu_{i}(R_{b}^{-})|>1/4 and assume without loss of generality that the excess is in favor of “++” over “-”. This in particular means that more than 1/41/4 of the value of agent jj in RbR_{b} is labeled “++”, which means that RbR_{b} contains an interval of length larger than 1/4vi1/4\cdot v_{i} that is labeled “++”, where vjv_{j} is the height of agent ii’s valuation block. Since RR is balanced, this means that RR must have length at least 1/2vi1/2\cdot v_{i}. However, consider the step jj when the RR was last modified (either created or expanded) before step ii and observe that RR was an internal RR for IjI_{j} at the point. This means that agent jj had value larger than vj1/(2vi)1/2v_{j}\cdot 1/(2\cdot v_{i})\geq 1/2 for RR at the point, contradicting Lemma 8. ∎

After step (3) of the algorithm (Section 4.2.4), agent ii is 1/21/2-satisfied.

Consider the imbalance between the portions of IiI_{i} assigned to the two labels after step (1) of the algorithm, and assume without loss of generality that there is an excess of the label “++” over the label “-”, i.e., μi(Ii+)>μi(Ii)\mu_{i}(I_{i}^{+})>\mu_{i}(I_{i}^{-}), as otherwise the agent is perfectly satisfied and we are done. Since by definition, there can be at most 22 external RRs for IiI_{i}, and since all internal RRs have a perfect balance of “++” and “-” for agent ii, it follows from Lemma 9 that μi(Ri+)μi(Ri)1/2\mu_{i}(R_{i}^{+})-\mu_{i}(R_{i}^{-})\leq 1/2, i.e., the difference in value for the agent in the reserved regions of IiI_{i} is at most 1/21/2. If μi(Ri)1/2\mu_{i}(R_{i})\geq 1/2, then we are done, as the agent is 1/21/2-satisfied. Otherwise, we place the cut in step (2) of the algorithm on the midpoint yy of Ui=IiRiU_{i}=I_{i}\setminus R_{i} and we reserve an equal portion of IiI_{i} to the left and to the right of yy, until we establish that μi(Ri)=1/2\mu_{i}(R_{i})=1/2.

The only thing left to argue is that the creation of the RR RR in step (3) of the algorithm that will make the agent 1/21/2-satisfied is possible. First, observe that RR will only strictly contain RRs that are of even parity, as all RRs of odd parity were considered in step (1) of the algorithm and were either (a) transformed to RRs of even parity via merging or (b) expanded until their reached some endpoint of the interval, and therefore can not be strictly contained in RR. From this, it follows that every sub-interval of UiU_{i} that will be included in RR on the left side of the cut on yy will receive the same label (e.g., “++”) and every sub-interval of UiU_{i} that will be included in RR on the right side of the cut on yy will receive the opposite label (e.g., “-”). ∎

After any step jij\geq i, agent ii is 1/21/2-satisfied.

First, it follows straightforwardly from Lemma 10 that agent ii is 1/21/2-satisfied after step ii. For any j>ij>i, let Ri(k)R_{i}(k) be the union of RRs of IiI_{i} after step kk and consider Ri(i)R_{i}(i) and Ri(j)R_{i}(j). By the way RRs are constructed, and since they are never intersected by a new cut, it follows that Ri(i)Ri(j)R_{i}(i)\subseteq R_{i}(j) and in particular, the balance of labels in Ri(i)R_{i}(i) has remained unchanged in Ri(j)R_{i}(j) (although the labels themselves might have the opposite parity). It follows that the agent is 1/21/2-satisfied after step jj. ∎

The correctness of the algorithm follows by applying Lemma 11 for j=nj=n.

Before we conclude the subsection, we mention that the algorithm can actually be applied to instances with piecewise constant valuations with dd blocks, as long as we have dnd\cdot n cuts at our disposal. The idea is quite simple: Any agent that has (at most) dd value blocks will be replaced by (at most) dd agents, with single-block valuations. This requires the appropriate scaling of the heights of the blocks, to make sure that the functions are still probability measures. Then, we will run the algorithm, now on ndnn^{\prime}\leq d\cdot n agents, and we will obtain a solution using nn^{\prime} cuts. This set of cuts will also be a solution to the original instance, since the parameter ε\varepsilon is constant (1/21/2) in both cases. We obtain the following corollary.

There exists a polynomial-time algorithm for 1/21/2-Consensus-Halving, when the agents have piecewise constant valuations with dd blocks and we are allowed to use dnd\cdot n cuts.

correctly outputs that no such solution exists.

Given the single-block valuations of the nn agents, we can determine numbers 0a1<a2<<am<am+110\leq a_{1}<a_{2}<\dots<a_{m}<a_{m+1}\leq 1 for some m[2n1]m\in[2n-1] such that for every agent i[n]i\in[n]:

μi([0,a1])=μi([am+1,1])=0\mu_{i}([0,a_{1}])=\mu_{i}([a_{m+1},1])=0, and

for any j[m]j\in[m], the density of μi\mu_{i} in interval (aj,aj+1)(a_{j},a_{j+1}) is constant.

The upper bound m2n1m\leq 2n-1 comes from the fact that all agents have single-block valuations.

Let us now describe how the linear programming subroutine for a given subset SS works. We are going to put one cut in each interval [aj,aj+1][a_{j},a_{j+1}] for jSj\in S, and alternate the labels ++ and - between the cuts. In other words, whenever we “cross a cut”, the label changes. We assume that the left-most label is ++. First of all, note that for any j[m]Sj\in[m]\setminus S, the whole interval [aj,aj+1][a_{j},a_{j+1}] will be assigned to the same label, and, in fact, we can determine which label, since we know the exact number of cuts to the left of that interval. Similarly, we also know to which label the intervals [0,a1][0,a_{1}] and [am+1,1][a_{m+1},1] will be assigned. Thus, let A+A_{+} denote the union of all intervals for which we already know that they will be assigned to label ++. Define AA_{-} analogously for label -. Note that (A+A)=jS[aj,aj+1]\setminus(A_{+}\cup A_{-})=\bigcup_{j\in S}[a_{j},a_{j+1}] (where we ignore endpoints of intervals, since they do not matter for the valuations).

The LP will have one variable xjx_{j} for each jSj\in S, and xjx_{j} will represent the position of the cut in the interval [aj,aj+1][a_{j},a_{j+1}]. Since we will alternate labels between cuts, we can partition S=S+SS=S_{+}\cup S_{-}, such that for any jS+j\in S_{+}, the interval [aj,xj][a_{j},x_{j}] is labeled ++ and the interval [xj,aj+1][x_{j},a_{j+1}] is labeled -. For any jSj\in S_{-}, the interval [aj,xj][a_{j},x_{j}] is labeled - and the interval [xj,aj+1][x_{j},a_{j+1}] is labeled ++.

We can now write down the LP, which, in fact, does not even have an objective function (any feasible solution will do).

Let c[m]c\in[m]. If for all subsets S[m]S\subseteq[m] with S=c|S|=c, the LP (4.3) has no feasible solution, then the Consensus-Halving instance does not admit a solution with at most cc cuts.

Let cminc_{min} denote the minimum number of cuts cc such that there exists a solution to the Consensus-Halving instance that uses cc cuts. Note that cminnc_{min}\leq n. The statement in the claim clearly holds for all c<cminc<c_{min}, since there indeed is no Consensus-Halving solution that uses at most cc cuts. Furthermore, the statement also holds for c=mc=m, since the (in that case, single) LP (4.3) admits a feasible solution, as explained above. We begin by proving that the statement holds for c=cminc=c_{min}. Then, we show that if it holds for some ccminc\geq c_{min}, then it also holds for c+1c+1, as long as c+1mc+1\leq m. By induction, this proves the claim.

Let I+,II^{+},I^{-} denote an exact solution to the Consensus-Halving instance that uses the minimum number of cuts possible for this instance, i.e., cminc_{min} cuts. First of all, note that the intervals [0,a1][0,a_{1}] and [am+1,1][a_{m+1},1] cannot contain any cut. Indeed, since all agents have value for these intervals, which lie at the edge of the cake, we could remove any such cut without destroying the perfect balance between ++ and -. Since cminc_{min} is the minimum number of cuts in any solution, this is impossible. Furthermore, all the cuts have to lie at distinct positions and the labels have to alternate between ++ and -. Otherwise, it is easy to see that we can again remove cuts, without destroying the perfect balance.

At the beginning, all cuts are at the positions indicated by I+,II^{+},I^{-} and they are unclaimed. For all j[m]j\in[m], starting with j=1j=1 and going up to j=mj=m, we perform the following operations to construct SS and (xj)jS(x_{j})_{j\in S}. Consider the interval [aj,aj+1][a_{j},a_{j+1}].

If the interval does not contain any unclaimed cut, then move on to the next jj.

If the interval contains exactly one unclaimed cut, at some position ss, then mark the cut as claimed, add jj to the set SS, let xj:=sx_{j}:=s, and move on to the next jj.

If the interval contains exactly two unclaimed cuts, at positions s1<s2s_{1}<s_{2}, then move the first cut to aj+1(s2s1)a_{j+1}-(s_{2}-s_{1}) and claim it, and move the second cut to aj+1a_{j+1}. Then, add jj to the set SS, let xj:=aj+1(s2s1)x_{j}:=a_{j+1}-(s_{2}-s_{1}) and move on to the next jj. Note that the distance between the two cuts is still s2s1s_{2}-s_{1}, and since both cuts also still lie in [aj,aj+1][a_{j},a_{j+1}], where all agents have constant density, we keep the perfect balance between ++ and -.

No other case can occur. In particular, it is not possible that s1=s2s_{1}=s_{2} in the third bullet point, since that would mean that the two cuts can be removed without destroying the perfect balance. Furthermore, it is not possible for the interval to contain more than two cuts (claimed or unclaimed), since then we can definitely remove at least two cuts without destroying the perfect balance. Indeed, if there are three cuts, then it is easy to see that they can be replaced by a single cut. If there are four cuts, then they can be replaced by two cuts.

When we reach j=mj=m, the interval [am,am+1][a_{m},a_{m+1}] can contain at most one cut. If it is unclaimed, it will be claimed by xmx_{m} and we will add mm to the set SS. If the interval contained more than one cut, then using the same arguments as above we could either remove one cut, or, if there were two cuts, we could shift them to the right until the second cut reaches am+1a_{m+1}, but then this cut can again be removed.

Note that after we have finished our pass, all cuts must have been claimed. Thus, we obtain a set S[m]S\subseteq[m] of size S=cmin|S|=c_{min} and values (xj)jS(x_{j})_{j\in S} that satisfy the LP (4.3). This proves that the statement of the claim holds for c=cminc=c_{min}.

𝑐1c+1: Consider any ccminc\geq c_{min} such that the statement of the claim holds and c+1mc+1\leq m. Since the statement holds for cc and, by definition of cminc_{min}, there exists a solution to the Consensus-Halving instance that uses at most cc cuts, it follows that there exists a set S[m]S\subseteq[m] with S=c|S|=c, and values (xj)jS(x_{j})_{j\in S} that satisfy the LP (4.3).

We show how to construct a set S[m]S^{\prime}\subseteq[m] with S=c+1|S^{\prime}|=c+1, and values (xj)jS(x_{j})_{j\in S^{\prime}} that satisfy the LP (4.3). It immediately then follows that the statement of the claim also holds for c+1c+1.

At the beginning, all cuts are at the positions indicated by (xj)jS(x_{j})_{j\in S} and they are claimed. We add an additional unclaimed cut at position a1a_{1}. Note that we now have c+1c+1 cuts and they still form a solution to the Consensus-Halving instance. For all j[m]j\in[m], starting with j=1j=1 and going up to j=mj=m, we perform the following operations. Consider the interval [aj,aj+1][a_{j},a_{j+1}]. The unclaimed cut is at position aja_{j}.

If jSj\notin S, then let S=S{j}S^{\prime}=S\cup\{j\}, set xj:=ajx_{j}:=a_{j}, and terminate.

If jSj\in S, then update xj:=aj+(aj+1xj)x_{j}:=a_{j}+(a_{j+1}-x_{j}), put the unclaimed cut at position aj+1a_{j+1} and move on the next jj. Note that the cuts still form a solution to the Consensus-Halving instance, since the distance between the two cuts in the interval has not changed.

Since cm1c\leq m-1, there exists j[m]Sj\in[m]\setminus S, and the procedure will terminate when it reaches the smallest such jj. It is easy to see that SS^{\prime} and (xj)jS(x_{j})_{j\in S^{\prime}} satisfy the LP (4.3). ∎

Consensus-1/3131/3-Division is PPAD-hard

As we mentioned in the Introduction, our newly developed tools that allowed us to obtain a strengthening of the PPA-completeness result for Consensus-Halving, turn out to be very useful for proving a hardness result for a more general version of the problem, the Consensus-1/k1/k-Division problem, for k=3k=3. We provide the definition below.

For ε\varepsilon-Consensus-1/31/3-Division, for ease of notation, we will use the labels A/B/C instead of 1/2/31/2/3. We state the main theorem of the section.

ε\varepsilon-Consensus-1/31/3-Division is PPAD-hard, for inverse exponential approximation parameter ε\varepsilon.

As we discussed in the Introduction, the problem for k3k\geq 3 is not necessarily harder than the case of k=2k=2, because we have more cuts at our disposal. Before we present the proof, we highlight some fundamental challenges that arise when one moves from k=2k=2 to larger kk.

First, when moving to k3k\geq 3, we move from a simple +/+/- parity to a more general setting with at least 33 labels. This is already severely problematic when it comes to the reduction of [Filos-Ratsikas and Goldberg, 2019], which is highly dependent on the solution having two labels. Indeed, the interpretation of the inputs in [Filos-Ratsikas and Goldberg, 2019] and the corresponding design of the gates needs to know which label will appear on the left side of the cut, and special “parity-flip“ gadgets are used throughout the reduction to ensure this. On the contrary, with our new value interpretation, we design gadgets which take the label sequence “internally” into account, by adjusting the position of the cut accordingly.

The sequence of the labels however gives rise to a second and more challenging issue: While in the case of k=2k=2 we can assume without loss of generality that the labels between cuts alternate between “++” and “-”, we cannot make any such assumptions even when k=3k=3. In fact, it is known that if one restricts the solution to exhibit a cyclic sequence of labels A/B/CA/B/C, then the problem is no longer a total search problem [Pálvölgyi, 2009]. This seems to be a fundamental obstacle to the design of gates for the case of k3k\geq 3. For k=3k=3, we manage to side-step this obstacle by using a clever “trick”: we make sure that the intervals of the Consensus-1/31/3-Division instance where we read the two inputs (of the 22-dimensional PPAD-complete problem that we reduce from, see Definition 11) are placed next to each other, therefore fixing the position of one of the three labels. We prove PPAD-hardness for the exact version of the problem (in which we are looking for a perfect balance of the labels, with no allowable discrepancy ε\varepsilon), which will guarantee that in a solution, the value of this label will be fixed to 1/31/3 throughout the instance. Since our instance is constructed to have piecewise constant valuation functions, the result can be extended to the case of inverse-exponential ε\varepsilon using the following lemma, which is based on an argument of Etessami and Yannakakis .

Let k2k\geq 2. For piecewise constant valuations, exact Consensus-1/k1/k-Division reduces in polynomial time to ε\varepsilon-Consensus-1/k1/k-Division with inverse-exponential ε\varepsilon.

We use the proof idea introduced by Etessami and Yannakakis . Given an instance of Consensus-1/k1/k-Division with piecewise constant valuations that we want to solve exactly, we first find an ε\varepsilon-approximate solution SS for some sufficiently small ε\varepsilon. Then, using SS, we construct an LP in polynomial time. Finally, we show that any solution to this LP yields an exact solution to the Consensus-1/k1/k-Division instance.

Let II be an instance of Consensus-1/k1/k-Division with agents {1,2,,n}\{1,2,\dots,n\} that have piecewise constant valuations. Then, we can efficiently find positions 0=p0<p1<<pm1<pm=10=p_{0}<p_{1}<\dots<p_{m-1}<p_{m}=1 such that for all agents i[n]i\in[n] and all j[m]j\in[m], the density of the valuation function μi\mu_{i} in interval [pj1,pj][p_{j-1},p_{j}] is constant. Denote that constant by fi,jf_{i,j}. Note that mm and the bit-length of fi,jf_{i,j} are polynomially upper bounded by the size of the instance II.

Let S=(x^,label)S=(\widehat{x},\textup{label}) be a candidate solution, where the cut positions are 0=x^0x^1x^2x^(k1)n1x^(k1)nx^(k1)n+1=10=\widehat{x}_{0}\leq\widehat{x}_{1}\leq\widehat{x}_{2}\leq\dots\leq\widehat{x}_{(k-1)n-1}\leq\widehat{x}_{(k-1)n}\leq\widehat{x}_{(k-1)n+1}=1 and for t[(k1)n+1]t\in[(k-1)n+1], label(t)\textup{label}(t) is the label in [k][k] assigned to interval [x^t1,x^t][\widehat{x}_{t-1},\widehat{x}_{t}].

We construct an LP that has variables x0,,x(k1)n+1x_{0},\dots,x_{(k-1)n+1} and a variable zz. We denote it by LP(I,S)\textup{LP}(I,S). In the LP we minimize zz under the constraints:

x0=0x_{0}=0 and x(k1)n+1=1x_{(k-1)n+1}=1 (these variables are only used for notational convenience)

for every t[(k1)n]t\in[(k-1)n]: cut xtx_{t} must lie between cuts xt1x_{t-1} and xt+1x_{t+1}

for every t[(k1)n]t\in[(k-1)n]: for every jj such that x^t[pj1,pj]\widehat{x}_{t}\in[p_{j-1},p_{j}] (at most two such jj exist), xtx_{t} must also lie in [pj1,pj][p_{j-1},p_{j}]

let A1,,AkA_{1},\dots,A_{k} denote the partition of the domain $givenbythecutsgiven by the cutsx_{0},\dots,x_{(k-1)n+1}$ and the labeling label. Then the constraint is:

We could also add a constraint z0z\geq 0, but this is already implicitly enforced by the existing constraints.

interval [pj1,xt1][p_{j-1},x_{t_{1}}] yields value fij(xt1pj1)f_{ij}(x_{t_{1}}-p_{j-1}) to label(t1)\textup{label}(t_{1}) (and value to all other labels)

interval [xtp,xtp+1][x_{t_{p}},x_{t_{p+1}}] (for 1ps11\leq p\leq s-1) yields value fij(xtp+1xtp)f_{ij}(x_{t_{p+1}}-x_{t_{p}}) to label(tp+1)\textup{label}(t_{p+1})

interval [xts,pj][x_{t_{s}},p_{j}] yields value fij(pjxts)f_{ij}(p_{j}-x_{t_{s}}) to label(ts+1)\textup{label}(t_{s}+1)

Note that any feasible solution to this LP with z=0z=0 is an exact solution to our Consensus-1/k1/k-Division instance II. Furthermore, note that there exist polynomials p1p_{1} and p2p_{2} such that for any candidate solution SS, the number of equations in LP(I,S)\textup{LP}(I,S) is at most p1(I)p_{1}(|I|) and the bit-size of any number appearing in LP(I,S)\textup{LP}(I,S) is at most p2(I)p_{2}(|I|). Here I|I| denotes the representation size of the input II. Thus, there exists some polynomial qq such that we can efficiently compute an optimal solution of LP(I,S)\textup{LP}(I,S) where the bit-size of the variables is at most q(I)q(|I|). Note that this does not depend on SS.

Now assume that we have picked ε<1/2q(I)\varepsilon<1/2^{q(|I|)} and obtain a solution S=(x^,label)S=(\widehat{x},\textup{label}) to ε\varepsilon-Consensus-1/k1/k-Division(II). We then construct LP(I,S)\textup{LP}(I,S) and compute an optimal solution (x,z)(x^{*},z^{*}). Note that (x^,ε)(\widehat{x},\varepsilon) is a feasible solution to LP(I,S)\textup{LP}(I,S). Thus, it must hold that zε<1/2q(I)z^{*}\leq\varepsilon<1/2^{q(|I|)}. But since the bit-size of zz^{*} is at most q(I)q(|I|) and z0z^{*}\geq 0, it must hold that z=0z^{*}=0. Thus, S=(x,label)S^{\prime}=(x^{*},\textup{label}) is an exact solution to our Consensus-1/k1/k-Division instance II. ∎

We start with the following problem, proven to be PPAD-complete by Mehta .

The problem 2D-Linear-FIXP is defined as follows. We are given a circuit CC using gates {+,×ζ,max}\{+,\times\zeta,\max\} and rational constants, that computes a function FC:22F_{C}:^{2}\to^{2}. The goal is to find x2x\in^{2} such that FC(x)=xF_{C}(x)=x.

The computational problem 2D-Truncated-Linear-FIXP is defined as follows. We are given a circuit CC using gates {+T,×Tζ}\{+_{T},\times_{T}\zeta\} and rational constants in $,thatcomputesafunction, that computes a functionF_{C}:^{2}\to^{2}.Thegoalistofind. The goal is to findx\in^{2}suchthatsuch thatF_{C}(x)=x$.

By applying some simple modifications to any 2D-Linear-FIXP circuit, we are able to show the following theorem.

2D-Truncated-Linear-FIXP is PPAD-complete.

Containment in PPAD follows from the containment of the more general problem Linear-FIXP in PPAD [Etessami and Yannakakis, 2010]. In particular, note that the truncated gates can be simulated by using their non-truncated versions, along with max\max and constant-gates.

To show PPAD-hardness, we reduce from 2D-Linear-FIXP. Let CC be a circuit that computes a function FC:22F_{C}:^{2}\to^{2} that uses gates {+,max,×ζ}\{+,\max,\times\zeta\} and rational constants. First, let us change the domain to 2^{2}. We modify the circuit CC into C^\widehat{C} by applying the following transformation (also used in [Mehta, 2018]) to every output: xmax{min{1,x},0}=max{1×max{1,1×x},0}x\mapsto\max\{\min\{1,x\},0\}=\max\{-1\times\max\{-1,-1\times x\},0\}. Then, for any input (x,y)2(x,y)\in^{2}, we must have that FC^(x,y)2F_{\widehat{C}}(x,y)\in^{2} and for (x,y)2(x,y)\in^{2} we have FC^(x,y)=FC(x,y)F_{\widehat{C}}(x,y)=F_{C}(x,y). It follows that C^\widehat{C} computes a function FC^:22F_{\widehat{C}}:^{2}\to^{2} and any fixed-point of FC^F_{\widehat{C}} must be in 2^{2} and thus also a fixed-point of FCF_{C}. This means that without loss of generality, we can assume that the domain is 2^{2} instead of 2^{2}.

Next, let us show how to replace the gates {+,×ζ}\{+,\times\zeta\} by {+T,×Tζ}\{+_{T},\times_{T}\zeta\}, and ensure that the constant-gates all have value in $.Let. Letc\geq 2beanupperboundontheabsolutevalueofalltheconstantsappearinginthecircuit,i.e.boththeconstantgatesandthebe an upper bound on the absolute value of all the constants appearing in the circuit, i.e. both the constant-gates and the\times\zetagates.Notethat-gates. Note thatchasbitrepresentationlengththatispolynomialinthesizeofhas bit representation length that is polynomial in the size ofC(sincethesizeof(since the size ofCincludestherepresentationlengthofallconstants).Letincludes the representation length of all constants). Letnbethenumberofgatesbe the number of gates\{+,\max,\times\zeta\}ininC$.

Begin with the circuit C0C_{0} that only contains the two input gates of CC and all the constant-gates of CC. Pick an arbitrary gate in CC with input(s) in C0C_{0} and add it to C0C_{0} to obtain circuit C1C_{1}. Then, pick an arbitrary gate in CC (and not yet in C1C_{1}) with input(s) in C1C_{1} and add it to C1C_{1} to obtain C2C_{2}. If we repeat this nn, we obtain an incremental sequence of circuits C0C_{0}, C1C_{1}, \dots, Cn=CC_{n}=C, where a single gate is added at each step.

For i{0,1,,n}i\in\{0,1,\dots,n\}, let v(Ci)v(C_{i}) denote the maximum absolute value of any gate in CiC_{i}, over all inputs in 2^{2}. Clearly, we have v(C0)max{1,c}=cv(C_{0})\leq\max\{1,c\}=c. To obtain C1C_{1} from C0C_{0}, we have added a single gate. If this gate is a ++-gate, then maximum absolute value appearing in the circuit is at most multiplied by 2c2\leq c. If it is a max\max-gate, then the maximum absolute remains the same. Finally, if it is a ×ζ\times\zeta-gate, the maximum absolute value is at most multiplied by ζc|\zeta|\leq c. Thus, in any case, we have v(C0)cv(C1)v(C_{0})\leq cv(C_{1}). By induction it follows that v(C)=v(Cn)cnv(C0)=cn+1v(C)=v(C_{n})\leq c^{n}v(C_{0})=c^{n+1}. Note that M:=cn+1M:=c^{n+1} has representation length that is polynomial with respect to the size of CC.

From the arguments above, it follows that if the input is in 2^{2}, all the intermediate values in the computation of the circuit are upper bounded by MM in absolute value. Now modify CC to obtain CC^{\prime} as follows. For every constant-gate, replace its constant ζ\zeta by ζ/M\zeta/M. For every input, introduce a ×(1/M)\times(1/M)-gate that multiplies it by 1/M1/M and then use the output of that gate as the corresponding input for CC. By induction, it is easy to see that on any input (x,y)2(x,y)\in^{2}, CC^{\prime} computes FC(x,y)/MF_{C}(x,y)/M. Importantly, all the intermediate values in the computation of the circuit are now upper bounded by 11 in absolute value. In particular, all the constant-gates have value in $$.

For any (x,y)2(x,y)\in^{2}, we know that FC(x,y)2F_{C}(x,y)\in^{2}, i.e. FC(x,y)/M[1/M,1/M]2F_{C}(x,y)/M\in[-1/M,1/M]^{2}. Obtain circuit CC^{\prime\prime} by taking CC^{\prime} and multiplying all the outputs by MM (by using ×M\times M-gates). Then, on any input (x,y)2(x,y)\in^{2}, CC^{\prime\prime} outputs FC(x,y)F_{C}(x,y) and all intermediate values in the computation of the circuit are upper bounded by 11 in absolute value.

Thus, we have transformed CC into a circuit that computes the same function FC:22F_{C}:^{2}\to^{2}, but only uses gates {+T,×Tζ,max}\{+_{T},\times_{T}\zeta,\max\}, and all the constant-gates have value in $$.

The last step is to get rid of max\max-gates. To do this observe that for any x,yx,y\in, we have

Using these two equations we can implement any max\max-gate by using the gates {+T,×Tζ}\{+_{T},\times_{T}\zeta\} and rational constants in $$.

Putting everything together, we have provided a reduction from 2D-Linear-FIXP to 2D-Truncated-Linear-FIXP. ∎

2 Description of the reduction

In order to show that Consensus-1/3-Division is PPAD-hard, we reduce from 2D-Truncated-Linear-FIXP. Namely, given a 2D-Truncated-Linear-FIXP circuit CC, we will construct an instance ICI_{C} of Consensus-1/3-Division, such that any solution of ICI_{C} yields a solution to CC (i.e., a fixed-point of FC:22F_{C}:^{2}\to^{2}). As before, we will construct a Consensus-1/3-Division instance on some domain [0,M][0,M] for some polynomial MM, which is easy to transform into an equivalent instance on domain $$.

First, let us give a high-level description of the ideal reduction that we would like to construct. First, we would show how any interval of the Consensus-1/3-Division domain encodes a value in $.Namely,inanysolution. Namely, in any solutionStoinstanceto instanceI_{C},foreveryinterval, for every intervalI,,v_{S}(I)\inwouldbethevalueencodedbyintervalwould be the value encoded by intervalI.Then,wewouldconstructagentsthatimplementthearithmeticgatesneededby2DTruncatedLinearFIXP,namely. Then, we would construct agents that implement the arithmetic gates needed by 2D-Truncated-Linear-FIXP, namely\{+_{T},\times_{T}\zeta\}$ and rational constants in .Theseagentsreadsomevalue(s)in. These agents read some value(s) in from one or two intervals and output the result of the gate-operation into some other interval of the domain.

With these gates we could implement the circuit CC inside our Consensus-1/3-Division instance. In particular, we would have two intervals In1In_{1} and In2In_{2} each representing the two inputs, and two intervals Out1Out_{1} and Out2Out_{2} each representing the two outputs. These intervals are pairwise disjoint. In the final step we would then “connect” the outputs to the inputs. Namely, we would introduce an agent implementing a ×T1\times_{T}1-gate with input Out1Out_{1} and output In1In_{1}, and a second agent implementing a ×T1\times_{T}1-gate with input Out2Out_{2} and output In2In_{2}. This ensures that from any solution of the Consensus-1/3-Division instance we can extract a fixed-point of FCF_{C}.

If we could do all this, then this reduction would be very similar to the reduction of Filos-Ratsikas et al. showing that ε\varepsilon-Consensus-Halving is PPAD-hard for constant ε\varepsilon. Unfortunately, there is a significant obstacle. Namely, we don’t know how to find an encoding of values in intervals such that we can implement arithmetic gates that always work. Because we don’t know in what order the labels AA, BB and CC will appear in any given interval, implementing arithmetic gates is actually much harder than in the case of Consensus-Halving. Thus, the gates we are able to implement only work if the input interval encodes a value in a very specific way. In this case, we say that the interval is a valid encoding of a value. Not all intervals will be a valid encoding of a value. In general, it is very hard to enforce valid encodings. This is the reason why our reduction does not seem to generalize to yield hardness for inversely polynomial ε\varepsilon, or to Consensus-1/k1/k-Division with k>3k>3.

In the instance ICI_{C} we construct, it holds that:

the two intervals In1In_{1} and In2In_{2} are valid encodings, and

if Out1Out_{1} and Out2Out_{2} are valid encodings, then v(Out1)=v(In1)v(Out_{1})=v(In_{1}) and v(Out2)=v(In2)v(Out_{2})=v(In_{2}).

In instance ICI_{C}, we can implement arithmetic gates {G+T,G×Tζ,Gζ}\{G_{+_{T}},G_{\times_{T}\zeta},G_{\zeta}\} for operations {+T,×Tζ}\{+_{T},\times_{T}\zeta\} and constant-gate respectively, such that:

if the input to G×TζG_{\times_{T}\zeta} is a valid encoding of value xx\in, then the gate outputs a valid encoding of x×Tζx\times_{T}\zeta

if the two inputs to G+TG_{+_{T}} are valid encodings of x,yx,y\in, then the gate outputs a valid encoding of x+Tyx+_{T}y.

If these two lemmas indeed hold, then the reduction is correct. First of all, by Lemma 18, the two inputs to the circuit are valid encodings. Thus, using Lemma 19, it follows by induction that all the gates in the circuit perform their operation correctly and output a valid encoding. In particular, the two outputs of the circuit are valid encodings. Thus, by Lemma 18, we get that each of the two outputs is equal to the corresponding input. As a result, we have identified a fixed-point of FC:22F_{C}:^{2}\to^{2}.

3 Details of the proof

We construct an instance with a set of agents {1,2,,n}\{1,2,\dots,n\} for some nn that is polynomial in the size of CC (the exact value of nn can easily be inferred from the rest of the proof). For every i[n]i\in[n], agent ii will have an output interval OiO_{i} of length 99 on the domain with the following properties:

for all jij\neq i it holds OjOi=O_{j}\cap O_{i}=\emptyset (output intervals are pairwise disjoint)

agent ii’s density function has height 3/103/10 in OiOiOiO_{i}\cup O_{i}\cup O_{i}.

where the notation Oi[a,b]O_{i}[a,b] is used to denote a sub-interval of OiO_{i}, and Oi=OiO_{i}=O_{i}.

From the second point, it follows that in any solution SS, for each i[n]i\in[n], OiO_{i} must contain at least two cuts. Indeed, since the interval OiO_{i} contains at least 3×3/10=9/103\times 3/10=9/10 value for agent ii (out of the total 11), it is impossible for that agent to be satisfied unless there are at least two cuts in OiO_{i}. From the first point, namely the pairwise disjointness of the intervals OiO_{i}, it follows that all 2n2n cuts are accounted for and thus for each i[n]i\in[n], OiO_{i} contains exactly two cuts. But then it is easy to check that OiO_{i} must be well-cut: one cut lies in Oi[7/4,17/4]O_{i}[7/4,17/4] and the other one in Oi[19/4,29/4]O_{i}[19/4,29/4]. In particular, there are no stray cuts in this reduction.

In the next section, we show how to construct the arithmetic gates. With these gates, we can implement the circuit CC in our instance ICI_{C}. We will implement the circuit such that the first output of the circuit is encoded in the left-most interval of the domain Out1=Out_{1}=, and the second output of the circuit is encoded in the next interval, i.e. Out2=Out_{2}=. We will ensure that the next two intervals are not used by any gate of the circuit, namely Temp1=Temp_{1}= and Temp2=Temp_{2}= are available. Finally, the next two intervals correspond to the two inputs of the circuit, i.e. In1=In_{1}= and In2=In_{2}=.

By construction, we know that Out1Out_{1} is well-cut, because it is the output interval of some agent. In particular, it contains exactly two cuts. By convention, we will assume that the labels appear in order AA, BB, CC from left to right in Out1Out_{1}. Given any solution SS of ICI_{C}, we can always ensure that this holds by renaming the labels. Since Out1Out_{1} is well-cut, we know that interval Out1[0,1/2]Out_{1}[0,1/2] is labeled AA, interval Out1[17/4,19/4]Out_{1}[17/4,19/4] is labeled BB, and interval Out1[17/2,9]Out_{1}[17/2,9] is labeled CC. Furthermore, since interval Out2Out_{2} is also well-cut and right next to Out1Out_{1}, we know that Out2[0,1/2]Out_{2}[0,1/2] is labeled CC. This observation is crucial for this reduction. However, note that we do not know the labels of Out2[17/4,19/4]Out_{2}[17/4,19/4] and Out2[17/2,9]Out_{2}[17/2,9], except that one of them is AA and the other BB (but not which one is which).

In order to ensure that Lemma 18 holds, we are going to introduce two special agents, that we call projection agents. Let I:=Out1I:=Out_{1} and O:=Temp1O:=Temp_{1}. The first projection agent’s valuation function has height 3/103/10 in OOOO\cup O\cup O, height 1/1201/120 in X(O)X(O), height 1/301/30 in I[17/2,9]I[17/2,9], height 1/1201/120 in II, height 1/601/60 in I[0,1/2]I[17/4,19/4]I[0,1/2]\cup I[17/4,19/4], and height everywhere else. See Fig. 9 for an illustration of the first projection agent’s valuation function. Since Out1Out_{1} is well-cut and we know the labels of the pieces, this agent ensures that:

if interval Out1Out_{1} is a valid encoding, then v(Temp1)=v(Out1)v(Temp_{1})=-v(Out_{1})

The first property holds because exactly 1/31/3 of the projection agent’s value in interval Out1Out_{1} goes to label CC. Thus, label CC also needs to get exactly 1/31/3 of the agent’s value in interval Temp1Temp_{1}. By construction of the valuation function in Temp1Temp_{1}, it follows that CC must get exactly 1/31/3 of X(Temp1)X(Temp_{1}). To show the second property, consider the three possible cases:

label CC is the right-most label in Temp1Temp_{1}: then there is a cut at position Temp1Temp_{1}. In this case, it is easy to see that the other cut in Temp1Temp_{1} will exactly reflect what the first cut in Out1Out_{1} does.

label CC is the middle label in Temp1Temp_{1}: since CC gets 1/31/3 of X(Temp1)X(Temp_{1}), it follows that the cuts in Temp1Temp_{1} have distance exactly 33 between them. From this, it follows that both cuts reflect what the first cut in Out1Out_{1} does.

label CC is the left-most label in Temp1Temp_{1}: then there is a cut at position Temp1Temp_{1}. Again, as in the first case, the other cut in Temp1Temp_{1} will exactly reflect what the first cut in Out1Out_{1} does. (Note that this case is actually not possible here, but we have included it, because it might occur for the second projection agent).

In order to show that Lemma 18 holds for In1In_{1} and Out1Out_{1}, it suffices to use a G×T1G_{\times_{T}-1}-gate (see next section) with input Temp1Temp_{1} and output In1In_{1}.

Now let I:=Out2I:=Out_{2} and O:=Temp2O:=Temp_{2}. The second projection agent’s valuation function has height 3/103/10 in OOOO\cup O\cup O, height 1/1201/120 in X(O)X(O), height 1/301/30 in I[0,1/2]I[0,1/2], height 1/1201/120 in II, height 1/601/60 in I[17/4,19/4]I[17/2,9]I[17/4,19/4]\cup I[17/2,9], and height everywhere else. In other words, the second projection agent’s valuation function in interval Out2Out_{2} is the same as the first projection agent’s in Out1Out_{1}, except that it is mirrored. By using the same arguments we used for the first projection agent, we get that Lemma 18 also holds for In2In_{2} and Out2Out_{2}.

3.1 Arithmetic gates

Let II and OO be two disjoint intervals of length 99. First consider the case ζ0\zeta\leq 0. We create an agent with the following valuation function. The agent’s density function has height 3/103/10 in OOOO\cup O\cup O, height ζ60(ζ+1)\frac{|\zeta|}{60(|\zeta|+1)} in X(I)X(I), height 160(ζ+1)\frac{1}{60(|\zeta|+1)} in X(O)X(O), and height everywhere else. If II is a valid encoding, then OO is a valid encoding of the value v(O)=T[v(I)×ζ]v(O)=T[v(I)\times\zeta]. If ζ>0\zeta>0, then use a G×TζG_{\times_{T}-\zeta}-gate and then a G×T1G_{\times_{T}-1}-gate.

Let us see why this works. Since II encodes a valid value, exactly 1/31/3 of the agent’s value in interval II goes to label CC. It follows that exactly 1/31/3 of the agent’s value in interval OO must go to label CC. By construction of the valuation function in OO, it follows that 1/31/3 of X(O)X(O) must go to label CC. As a result, OO is also a valid encoding. Now, if label CC gets the left-most piece in OO, then there is a cut at position OO. The other cut, which is located in O[19/4,29/4]O[19/4,29/4], will thus encode the value of interval OO and the truncation will work similarly to our Consensus-Halving gadgets. The analogous argument also holds if CC gets the right-most piece in OO. If label CC gets the middle piece in OO, then the distance between the two cuts will be exactly 33. Thus, the two cuts “move together” and will touch a big block at the same time. As a result, the truncation works here as well.

𝑇[G_{+_{T}}]: Let I1I_{1}, I2I_{2} and OO be three pairwise disjoint intervals of length 99. The agent’s density function has height 3/103/10 in OOOO\cup O\cup O, height 1/1801/180 in X(I1)X(I2)X(O)X(I_{1})\cup X(I_{2})\cup X(O), and height everywhere else. If I1I_{1} and I2I_{2} are valid encodings, then OO is a valid encoding of the value v(O)=T[v(I1)+v(I2)]v(O)=-T[v(I_{1})+v(I_{2})]. To obtain G+TG_{+_{T}}, just apply a G×T1G_{\times_{T}-1}-gate on the output. A similar reasoning to the case of G×TζG_{\times_{T}\zeta} proves the correctness of this gate too.

For this we use the left-most interval of length 99 of the domain, namely Out1Out_{1}. We know that interval I:=Out1I:=Out_{1} is the output interval of some gate, so it is well-cut. Furthermore, we know that the labels appear in order AA, BB, CC from left to right (by convention). Thus, we know that interval I[0,1/2]I[0,1/2] is labeled AA, interval I[17/4,19/4]I[17/4,19/4] is labeled BB, and interval I[17/2,9]I[17/2,9] is labeled CC.

Introduce an agent with output interval OO of length 99. The agent’s density function has height 3/103/10 in OOOO\cup O\cup O, height 1/1201/120 in X(O)X(O), height 1/301/30 in I[17/2,9]I[17/2,9], height 1ζ/230\frac{1-\zeta/2}{30} in I[0,1/2]I[0,1/2], height 1+ζ/230\frac{1+\zeta/2}{30} in I[17/4,19/4]I[17/4,19/4], and height everywhere else. From this construction, it follows that interval OO is a valid encoding of the value v(O)=ζv(O)=\zeta.

As a result, Lemma 19 holds and Theorem 14 follows.

Future directions

The main technical question is whether ε\varepsilon-Consensus-Halving for single-block valuations is PPA-hard or polynomially solvable, or perhaps even complete for some other class. Another interesting direction is to extend the PPA-hardness result of Theorem 2 (or even for a larger number of blocks) to constant ε\varepsilon; such a result however would seemingly require radically new ideas, namely an averaging argument over a constant set of outputs that is robust to stray cuts.

In a slightly different direction, Deligkas et al. very recently showed that the problem for a constant number of agents is PPA-complete, if we allow agents to have more general valuations, in particular non-additive. This leaves open the fundamental question of showing PPA-hardness of ε\varepsilon-Consensus-Halving for a constant number of agents with additive valuations.

Finally, it would be interesting to study the complexity of the Consensus-1/k1/k-Division problem when k3k\geq 3 and possibly strengthen or extend our hardness result to other values of kk. Given the membership of the problem in PPA-kk [Filos-Ratsikas et al., 2021], for any kk which is a prime power, the important question is whether Consensus-1/k1/k-Division (and consequently Necklace Splitting with kk thieves [Filos-Ratsikas and Goldberg, 2018]) is actually complete for PPA-kk.

Alexandros Hollender was supported by an EPSRC doctoral studentship (Reference 1892947). Katerina Sotiraki was supported in part by NSF/BSF grant #1350619, an MIT-IBM grant, and a DARPA Young Faculty Award, MIT Lincoln Laboratories and Analog Devices. Part of this work was done while the author was visiting the Simons Institute for the Theory of Computing. Manolis Zampetakis was supported by a Google Ph.D. Fellowship and NSF Award #1617730.

We would like to thank Paul Goldberg for helpful discussions and comments, as well as the anonymous reviewers at EC’20 and SICOMP for their suggestions that helped improve the presentation of the paper.

References