Consensus Halving is PPA-Complete

Aris Filos-Ratsikas, Paul W. Goldberg

Computational complexity; TFNP; Tucker’s lemma

Introduction

The class TFNP of total search problems in NP (where every instance has an easily-checkable solution) does not seem to have complete problems. Moreover, no problem in TFNP can be NP-complete unless NP=co-NP. Consequently, alternative notions of computational hardness need to be developed and applied in our effort to understand the many and varied problems in TFNP that seem to be intractable.

The complexity class PLS (Johnson et al. ), and the classes PPAD, PPA, and PPP (Papadimitriou ) are subclasses of TFNP associated with various combinatorial principles that guarantee totality. Each principle has a corresponding definition of a computational problem whose totality applies that principle in the most general way possible, and a complexity class of problems reducible to it. In more detail:

PLS consists of problems whose totality invokes the principle that every directed acyclic graph has a sink vertex;

PPAD consists of problems whose totality is based on the principle that given a source in a directed graph whose vertices have in-degree and out-degree at most 1, there exists another degree-1 vertex;

PPA differs from PPAD in that the graph need not be directed; being a more general principle, PPA is thus a superset of PPAD;

PPP, based on the pigeonhole principle, consists of problems reducible to Pigeonhole Circuit.

Of these complexity classes, so far only PLS and PPAD has succeeded in capturing the complexity of “natural” computational problems, and the main point of the present paper is to show for the first time that this is also true for PPA.

The Consensus-halving problem involves a set of nn agents each of whom has a valuation function on a 1-dimensional line segment AA (the “cake”, in cake-cutting parlance). Consider the problem of selecting kk “cut points” in AA that partition AA into k+1k+1 pieces, then labelling each piece either “positive” or “negative” in such a way that each agent values the positive pieces equally to the negative ones. In 2003, Simmons and Su showed that this can always be done for k=nk=n; their proof applies the Borsuk-Ulam theorem and is a proof of existence analogous to Nash’s famous existence proof of equilibrium points of games, proved using Brouwer’s or Kakutani’s fixed point theorem. Significantly, Borsuk-Ulam is the undirected version of Brouwer, and already from we know that it relates to PPA, making Consensus-halving a candidate for PPA-completeness. As detailed in Definition 1, we assume that valuations are presented as step functions using the logarithmic cost model of numbers.

The complexity class PPAD has been successful in capturing the complexity of many versions of Nash equilibrium and market equilibrium computation , also cake-cutting . Kintali et al. extend PPAD-completeness to further domains including network routing, coalitional games, combinatorics, and social networks. Rubinstein introduced an exponential-time hypothesis for PPAD to rule out a PTAS for approximate Nash equilibrium computation on bimatrix games. The class PLS represents the complexity of an even larger number of local optimisation problems. These results speak to the importance of PPAD and PLS as complexity classes. By contrast, hitherto the only problems known to be PPA-complete are ones that involve circuits (or equivalently, polynomial-time Turing machines) in their definition, which represented a critique of PPA. Noting that consensus-halving is a kind of social-choice problem, our result can be seen as an example of computational social choice helping to populate “lonely” complexity classes, a phenomenon recently reviewed by Hemaspaandra . The complexity class PPP still suffers from that problem, although the present paper should raise our hope that problems such as Equal Subsets will turn out to be complete for PPP. Oracle separations of all these classes are known from .

The distinction between PPAD and PPA revolves around whether we are searching for a fixpoint in an oriented topological space, or an unoriented one. For example, while Papadimitriou showed that it’s PPAD-complete to find a Sperner solution in a 3D cube, Grigni showed that it’s PPA-complete to find a solution to Sperner’s lemma in a 3-manifold consisting of the product of a Möbius strip and a line segment. The 2-dimensional versions of these results are given in . Despite the apparent similarity between the definitions of PPAD and PPA, there is more progress in basing the hardness of PPA on standard cryptographic assumptions: Factoring can be reduced to PPA (with a randomised reduction) , while so far, the hardness of PPAD has relied on problems from indistinguishability obfuscation ; Garg et al. make progress in weakening the cryptographic assumptions on which to base the hardness of PPAD, but these are still less satisfying than in the case of PPA.

Examples of problems known to be PPA-complete include the following. Aisenberg et al. introduce the problem 2D-Tucker: suppose we have a colouring of an exponentially-fine grid on a square region, the colouring being concisely represented via a circuit. Tucker’s Lemma (the discrete version of Borsuk-Ulam) guarantees that if certain boundary conditions are obeyed, then two adjacent squares in the grid will get opposite colours. 2D-Tucker is the search for such a solution, or alternatively a violation of the boundary conditions. As it happens, we use 2D-Tucker as the starting-point for our reductions here. Deng et al. show PPA-completeness for finding fully-coloured points of triangulations of various non-oriented surfaces; the colourings are presented concisely via a circuit. Recently, Deng et al. showed that Octahedral Tucker is PPA-complete, reducing from 2D-Tucker and using a snake-embedding style technique that packages-up the exponential grid in 2 dimensions, into a grid of constant size in high dimension. Belovs et al. show PPA-completeness for novel problems presented in terms of arithmetic circuits representing instances of the Chevalley-Warning Theorem, and Alon’s Combinatorial Nullstellensatz. There remain other problems in PPA that are not defined in terms of circuits, and are conjectured to be PPA-complete. They include Smith, the problem of finding a second Hamiltonian cycle (given one as part of the input) in a odd-degree graph , and the discrete Ham Sandwich problem (given nn sets of 2n2n points in general position in nn-space, find a hyperplane that splits each of these sets into two subsets of size nn). Also the problem Necklace-splitting , discussed in , Simmons and Su note the connection with consensus-halving.

A precursor of this paper established that Consensus-halving is PPAD-hard, even when we allow constant-size approximation errors for the agents. Taken with the computational equivalence of Consensus-halving and Necklace-splitting established here, we immediately obtain PPAD-hardness of Necklace-splitting, thus in a well-established sense, Necklace-splitting is computationally intractable. This partially answers a question posed in about the hardness of Necklace-splitting.

2 Overview of the proof

We begin by explaining the ground covered by (where PPAD-hardness was established), and then give an overview of the proof in the present paper. In , each agent aa in a Consensus-halving instance, has a particular cut c(a)c(a) associated with aa. In an instance ICHI_{CH} of Consensus-halving, we refer to the interval AA on which agents have valuation functions, as the domain of ICHI_{CH}.

established PPAD-hardness by reduction from the PPAD-complete problem ϵ\epsilon-Gcircuit (ϵ\epsilon-approximate Generalised Circuit) in which the challenge is to find a fixpoint of a circuit in which each node computes (with error at most ϵ\epsilon) a real value in the range $,consistingofafunctionofatmosttwoothernodesinthecircuit;thesemaybecertainsimplearithmeticoperations,orbooleanoperations(regarding0and1asrepresentingfalseandtruerespectively).Insreductionfrom, consisting of a function of at most two other nodes in the circuit; these may be certain simple arithmetic operations, or boolean operations (regarding 0 and 1 as representing false and true respectively). In ’s reduction from\epsilonGcircuittoConsensushalving,eachnode-Gcircuit to Consensus-halving, each node\nuofageneralisedcircuithasacorrespondingagentof a generalised circuit has a corresponding agenta_{\nu},andthevaluecomputedat, and the value computed at\nuisrepresentedbythepositiontakenbythecutis represented by the position taken by the cutc(a_{\nu})..a_{\nu}svaluationfunctionisdesignedtoenforcetherelationshipthat’s valuation function is designed to enforce the relationship that\nusvaluehaswiththenode(s)providinginputto’s value has with the node(s) providing input to\nu$. Here we re-use some of the circuit “gate gadgets” of , in particular the boolean ones. A cut that encodes the value computed at a boolean gate is expected to lie in one of two short intervals, associated with true and false.

In moving from PPAD-hardness to PPA-hardness, we encounter a fundamental limitation to the above approach, which is that distinct cuts are constrained to lie in distinct (non-overlapping) regions of AA, and collectively, the cuts lie in an oriented domain. A new idea is needed, and we construct two special agents (the “coordinate-encoding agents”) along with two cuts that correspond to those agents, which are less constrained regarding where, in principle, they may occur, in a solution to the resulting Consensus-halving instance ICHI_{CH}. These two cuts are regarded as representing a point on a Möbius strip, and a distance metric between two pairs of positions for these cuts, does indeed correspond to distance between points on a Möbius strip. New problems arise from this freedom regarding where these cuts can occur, mainly the possibility that one of them may occur outside of the intended “coordinate-encoding region” of the domain of ICHI_{CH}. Consequently it may interfere with the circuitry that ICHI_{CH} uses to encode an instance of 2D-Tucker (which, recall, is the problem we reduce from). We deal with this possibility by making multiple copies of the circuit, so that an unreliable copy is “out-voted” by the reliable ones. The duplication (we use 100 copies) of the circuit serves a further purpose reminiscent of the the “averaging manoeuvre” introduced in : we need to deal with the possibility of values occurring at nodes of the circuit that fail to correspond to boolean values. The duplication corresponds to a sampling of a cluster of points on the Möbius strip, most of which get converted to boolean values.

One other significant obstacle addressed here, is due to coordinate-encoding cuts directly representing the location of a point on the Möbius strip with exponential precision. We construct a novel mechanism that reads off Θ(n)\Theta(n) bits of precision from the locations of these cuts, which are then fed in to the circuit-encoding part of the consensus-halving instance. (It is this part of the proof that requires us to work with a definition of ϵ\epsilon-Consensus-halving that may require ϵ\epsilon to be inverse exponential. PPA-hardness for inverse polynomial ϵ\epsilon would lead to PPA-completeness of Necklace-splitting, but there seems to be no way to achieve this while reducing from 2D-Tucker in a way that directly encodes the location of a solution to 2D-Tucker.)

Our reductions start out from the 2D-Tucker result of . In Section 3 we give a straightforward proof of PPA-completeness of a restricted version called 2D-MS-Tucker, in which two opposite sides of the domain are each monochromatic. We reduce from this to an artificial-looking problem called Variant Tucker, which is essentially a messy-looking version of 2D-MS-Tucker: the purpose of introducing Variant Tucker is to extract some of the technical clutter from the main event, which is the reduction from there to Consensus-halving (Section 4).

Preliminaries

Simmons and Su were not concerned with computational issues; their result is essentially topological and shows that a solution exists provided that agents’ valuations are infinitely divisible. A computational analogue requires us to identify how functions are represented, and we assume they are given as step functions, or piecewise constant functions, as have also been considered in the cake-cutting literature . A problem instance also includes an approximation parameter ϵ\epsilon, the allowed difference in value between the two sides of the partition, applicable to any agent.

ϵ\epsilon-Consensus-halving: An instance ICHI_{CH} incorporates, for each of i[n]i\in[n], a non-negative measure μi\mu_{i} of a finite line interval A=[0,x]A=[0,x], where each μi\mu_{i} integrates to 1 and x>0x>0 is part of the input. We assume that μi\mu_{i} are step functions represented in a standard way, in terms of the endpoints of intervals where μi\mu_{i} is constant, and the value taken in each such interval. We use the bit model (logarithmic cost model) of numbers. ICHI_{CH} also incorporates ϵ0\epsilon\geq 0 also represented using the bit model. We regard μi\mu_{i} as the value function held by agent ii for subintervals of AA.

A solution consists firstly of a set of nn cut points in AA (also given in the bit model of numbers). These points partition AA into (at most) n+1n+1 subintervals, and the second element of a solution is that each subinterval is labelled A+A_{+} or AA_{-}. This labelling is a correct solution provided that for each ii, μi(A+)μi(A)ϵ|\mu_{i}(A_{+})-\mu_{i}(A_{-})|\leq\epsilon, i.e. each agent has a value in the range [12ϵ2,12+ϵ2][\frac{1}{2}-\frac{\epsilon}{2},\frac{1}{2}+\frac{\epsilon}{2}] for the subintervals labelled A+A_{+} (thus, also values the subintervals labelled AA_{-} in that range).

A version where the domain AA is take to be $ispolynomialtimeequivalenttothatofDefinition1(byscalingthevaluationsappropriately).Intheinstancesthatweconstruct,is polynomial time equivalent to that of Definition 1 (by scaling the valuations appropriately). In the instances that we construct,xispolynomialinis polynomial innbutonecanequivalentlyallowbut one can equivalently allowxtobeexponentialinto be exponential inn$; the rescaling changes the size of the encoding of the problem instances by a polynomial factor.

Note that it’s not hard to check that an instance of Consensus-halving is well-formed in the sense that the valuation functions should integrate to 1. Also, note that the bit complexity of numbers involved in an approximate solution need not be excessive, so, together with the proof of we have containment in PPA. A couple of relevant remarks are the following:

Definition 1 allows the accuracy parameter ϵ\epsilon to be inverse exponential in nn, which will be essential for our reduction. In fact, established PPAD-hardness of the problem even for constant ϵ\epsilon. An interesting open question is whether our PPA-hardness result can be extended for constant or even inverse polynomial ϵ\epsilon (which would lead to PPA-completeness for Necklace-splitting; Section 6).

The fact that the functions μi\mu_{i} are step-functions which integrate to 11 over the whole interval AA is desirable, since this makes the hardness result stronger, compared to arbitrary functions. Note that while the step functions μi\mu_{i} must have polynomially-many steps, the values they may take can differ by exponential (in nn) ratios. The “in PPA” result on the other hand is established for arbitrary (bounded, non-atomic) functions, which also makes it as strong as possible, given that it is a containment result.

We assume without loss of generality that we seek solutions to Consensus-halving in which the labels A+A_{+} and AA_{-} alternate as we consider the subintervals formed by the cuts, from left to right. If, say, there are two consecutive subintervals labelled A+A_{+} in a solution, we could combine them into a single subinterval, leaving us with a un-needed cut, which could be placed at the right-hand endpoint of AA. We can also assume without loss of generality that the labelling sequence starts with A+A_{+} on the leftmost subinterval of AA defined by the set of cuts.

2 The 2​D2𝐷2D-Tucker problem

We review the total search problem 2D2D-Tucker, as defined and shown PPA-complete in . (Definition 2 is a variant of it, that we use, that’s easily seen to be equivalent to the version of .) An instance of 2D2D-Tucker consists of a labelling λ:[m]×[m]{±1,±2}\lambda:[m]\times[m]\rightarrow\{\pm 1,\pm 2\} satisfying the boundary conditions: for 1i,jm1\leq i,j\leq m, λ(i,1)=λ(mi1,m)\lambda(i,1)=-\lambda(m-i-1,m) and λ(1,j)=λ(m,mj+1)\lambda(1,j)=-\lambda(m,m-j+1). A solution to such an instance of 2D-Tucker is a pair (x1,y1)(x_{1},y_{1}), (x2,y2)(x_{2},y_{2}) (x1,x2,y1,y2[m]x_{1},x_{2},y_{1},y_{2}\in[m]) with x1x21|x_{1}-x_{2}|\leq 1 and y1y21|y_{1}-y_{2}|\leq 1 such that λ(x1,y1)=λ(x2,y2)\lambda(x_{1},y_{1})=-\lambda(x_{2},y_{2}).

In the above definition, mm is exponential, and λ\lambda is presented via a circuit that computes it. We use Definition 2, a variant of the above whose PPA-completeness easily follows; it is a more convenient version for us to use.

An instance ITI_{T} of 2D2D-Tucker (with complexity parameter nn) is defined as follows. Consider the square region [0,2n]×[0,2n][0,2^{n}]\times[0,2^{n}]. For 1i,j2n1\leq i,j\leq 2^{n}, the (i,j)(i,j)-squarelet denotes the unit square whose top right vertex is at (i,j)(i,j). ITI_{T} consists of a boolean circuit CC having 2n2n input bits representing the coordinates of a squarelet, and 2 output bits representing values 1,1,2,21,-1,2,-2. CC’s labelling should obey the boundary conditions of noted above. A solution consists of two squarelets that touch at at least one point, and have opposite labels (i.e. labels that sum to 0).

The containment of the problem in PPA was known from . Aisenberg et al. proved that the problem is also PPA-hard.

3 Organization of the paper

In Section 3, we reduce from 2D-Tucker (the version of Definition 2) to a restricted version 2D-MS-Tucker where two opposite sides of the Tucker square are completely labelled 11 and 1-1 (a monochromatic sides version). From there, we reduce to an artificial looking variant, Variant Tucker, which however will prove to be very useful for our main reduction to Consensus-halving. Section 4 presents the main reduction and in Section 5, we establish the correctness of the reduction.

Finally, in Section 6, we show a computational equivalence between approximate Consensus Halving and the well-known Necklace Splitting problem.

Reducing from 2​D2𝐷2D-TUCKER to VARIANT-TUCKER

In this section, we reduce from 2D-Tucker to a variant of the Tucker problem, which will be more appropriate to use for proving PPA-hardness of approximate Consensus Halving. The PPA-hardness of the Variant Tucker problem will be established through a sequence of two reductions.

First, we reduce from 2D-Tucker to a version of the problem when two opposite sides of the square are assigned only a single label (with opposite signs), e.g. 11 and 1-1 (Definition 3). We will refer to this problem as the 2D-MS-Tucker (where MS stands for “monochromatic sides”). See Definition 3, Figure 1.

Then, we reduce from 2D-MS-Tucker to Variant Tucker, by embedding the regions of the 2D-MS-Tucker instance (the squarelets) into a triangle-domain and extending the labelling function to points outside these regions. In this process, there is a designated significant sub-domain which contains the embedded regions along with diagonal strips that emerge from the embedded regions and go out the edge of the triangle-domain. The embedding is such that the lines separating the regions are piecewise rectilinear, with sufficiently long pieces. Intuitively, the regions will not be separated by diagonal lines but rather by “zig-zag” rectilinear lines that approximate the diagonal ones, which results in set of regions that we refer to as tiles. See Figure 2.

An instance IMSI_{MS} of 2D-MS-Tucker (with complexity parameter nn) is defined as follows. Consider the square region [0,2n]×[0,2n][0,2^{n}]\times[0,2^{n}]. For 1i,j2n1\leq i,j\leq 2^{n}, the (i,j)(i,j)-squarelet denotes the unit square whose top right vertex is at (i,j)(i,j). IMSI_{MS} consists of a boolean circuit CC having 2n2n input bits representing the coordinates of a squarelet, and 2 output bits representing values 1,1,2,21,-1,2,-2. CC’s labelling should obey the boundary conditions of noted above, but in addition, all squarelets (x,y)(x,y) with y=1y=1 get labelled 1, and all squarelets (x,y)(x,y) with y=2ny=2^{n} get labelled -1. (So, two opposite sides are monochromatic.) As before, a solution consists of two squarelets that touch at at least one point.

We start from the PPA-hardness of 2D-MS-Tucker.

2D-Tucker is polynomial-time reducible to 2D-MS-Tucker.

Let ITI_{T} be an instance of 2D-Tucker of size m×mm\times m. We will construct an instance IMSI_{MS} of 2D-MS-Tucker of size 3m×3m3m\times 3m such that a solution to IMSI_{MS} will let us efficiently recover a solution to ITI_{T}. We will need to establish three facts, namely that (i) IMSI_{MS} will be defined on square that satisfies the labelling conditions of Definition 3, (ii) that we don’t introduce any solutions during the construction, i.e. that for any solutions to IMSI_{MS} there is a corresponding solution to ITI_{T} and (iii) that given such a solution to IMSI_{MS}, we can find a solution to ITI_{T} in polynomial time.

First, we augment instance ITI_{T} with squares of size m×mm\times m attached to the top side (denoted T\mathcal{T}) and the bottom side (denoted B\mathcal{B}) of the squareEquivalently, we can attach squares of size m×mm\times m to the left and right sides of the square., which results in a 3m×m3m\times m rectangle, where only the squarelets with coordinates (i,j)(i,j) with i=m+1,,2mi=m+1,\ldots,2m and j=1,,mj=1,\ldots,m are labelled (i.e. the squarelets of the original square, before the augmentation). For the labelling of the remaining squarelets, we will explain how to label squarelets (i,j)(i,j) with i=1,,mi=1,\ldots,m, j=1,,mj=1,\ldots,m, i.e. the top-attached square toptop; the colouring of the squarelets of the bottom-attached square bottombottom is symmetric by the fact that the labels of the squarelets of T\mathcal{T} and B\mathcal{B} satisfy the antipodal labelling of Tucker’s lemma.

To describe the labelling of the square, let L\mathcal{L} be the set of squarelets of toptop that have been assigned a label; obviously at the beginning of the labelling L=\mathcal{L}=\emptyset. The detailed labelling procedure is described in Algorithm 1.

It is not hard to see that the labelling function ensures that “neighbouring” squarelets are either assigned the same label or are assigned labels corresponding only to neighbouring labels of the top side T\mathcal{T} or the bottom side B\mathcal{B} of the original square. Therefore, if there is a complementary edge that appears in any of the added squares, we can follow the direction of the endpoints of the edge, first towards the centre of the corresponding squares toptop or bottombottom (i.e. left or right) and then towards the sides of (T\mathcal{T} or B\mathcal{B} with directions down or up respectively). This obviously can be done in time polynomial in mm.

Variant Tucker is essentially a technically-cluttered version of 2D-MS-Tucker. It’s helpful as an intermediate stage towards our eventual goal of Consensus-halving, since the technical clutter emanates from the way we encode 2D-Tucker in terms of Consensus-halving, and by reducing from Variant Tucker, we simplify the proof that our final reduction to Consensus-halving does indeed work.

A subregion of the plane consists of an equivalence class of points (x,y)(x,y) that are equivalent when their binary expansions are truncated after n+4n+4 bits of precision; thus any subregion is a square with an edge length of 1162n\frac{1}{16}2^{-n}.

Consider pairs (a,b)(a,b) of non-negative even numbers, for which either aa and bb are both multiples of 4, or neither are.

Define the (a,b)(a,b)-tile to be a union of 8 subregions arranged as in Figure 2, with central point at (116a2n,116b2n)(\frac{1}{16}a\cdot 2^{-n},\frac{1}{16}b\cdot 2^{-n}), having a height and width of 142n\frac{1}{4}2^{-n}. (Thus all horizontal and vertical line segments have coordinates that are multiples of 1162n\frac{1}{16}2^{-n}.) If aa or bb is equal to zero, the tile consists of just the parts of this region with non-negative coordinates.

Observe that (for the values of a,ba,b allowed in Definition 5) tiles tessellate the positive quadrant of the plane as in Figure 2.

An instance of Variant Tucker with complexity parameter nn, consists of a boolean circuit CC that takes as input 2n+222n+22 bits. These input bits represent the coordinates of a point (x,y)(x,y) for x,yx,y\in, each of xx and yy represented as a bit string with n+11n+11 binary places of precision. CC has 4 boolean outputs that we use to represent the values 1,1,2,21,-1,2,-2, respectively as 1110,0001,0111,10001110,0001,0111,1000.Note that we can enforce syntactically that these are only values that the output of the circuit can take. We use this convention instead of the usual 22-bit circuit output in order to simplify the construction of the Consensus-Halving instance in Section 4. CC obeys the following constraints that may be enforced syntactically:

if y<38xy<\frac{3}{8}-x then CC must output 11;

if y>58xy>\frac{5}{8}-x then CC must output 1-1;

if y>x+18y>x+\frac{1}{8} then the output of CC should be opposite to its output on (1x,1y)(1-x,1-y), and similarly for points with y<x18y<x-\frac{1}{8};

the output value of CC may not depend on the last 7 bits of xx or yy;

Moreover, CC’s output value is constant within tiles (Definition 5, Figure 2): a tile consists of 8 square regions with 128 discrete points along their edges, arranged as in Figure 2.

We allow the following exception to the above rules, which is that for input bit-strings that represent points that lie adjacent to the boundary of any subregion, CC’s output value is unrestricted.

A solution consists of a sequence of 100 points (xi,yi)(x_{i},y_{i}) for 1i1001\leq i\leq 100, where y11x1y_{1}\leq 1-x_{1}, and for i>1i>1 we have xi=xi1+2(n+11)x_{i}=x_{i-1}+2^{-(n+11)} and yi=yi12(n+11)y_{i}=y_{i-1}-2^{-(n+11)}, where addition and subtraction are taken modulo 1. These 100 points should contain a set of 10 points that all produce the same output, and another set of 10 points that produce the opposite output. In the case that y1<1002(n+11)y_{1}<100\cdot 2^{-(n+11)} and the sequence of points “wraps around”, this property must instead hold after we negate the outputs of the wrapped-around subsequence.

We reduce from 2D-MS-Tucker. Squarelets in an instance I2DMSTI_{2DMST} of 2D-MS-Tucker correspond to tiles in an instance IVTI_{VT} of Variant Tucker as follows.

I2DMSTI_{2DMST} contains squarelets (i,j)(i,j) for 1i,j2n1\leq i,j\leq 2^{n}. Each (i,j)(i,j) squarelet determines the value taken by CC on the (22n+2i+2j,42n2i+2j)(2\cdot 2^{n}+2i+2j,4\cdot 2^{n}-2i+2j)-tile. With this rule, the squarelets of I2DMSTI_{2DMST} are mapped into tiles in the region RR in Figure 3 in such a way that adjacencies are preserved: two squarelets are adjacent if and only if their corresponding tiles are adjacent.

Suppose that the monochromatic sides of I2DMSTI_{2DMST} are squarelets (i,j)(i,j) with j=1j=1 having label 1, and squarelets (i,j)(i,j) with j=2nj=2^{n} having label 1-1. As a result, these squarelets get mapped to sides of the region RR that are adjacent to and match the monochromatic regions adjacent to RR (the regions where y<38xy<\frac{3}{8}-x, alternatively y>58xy>\frac{5}{8}-x).

Any tile in the remaining parts R,RR^{\prime},R^{\prime\prime} of the triangular domain of Figure 3 is allocated the same colour as its closest (Euclidean distance) tile in RR. That is, the colour of the (22n+2j,42n+2j)(2\cdot 2^{n}+2j,4\cdot 2^{n}+2j)-tile is allocated to the (22n+2j2k,42n+2j+2k)(2\cdot 2^{n}+2j-2k,4\cdot 2^{n}+2j+2k)-tile, for positive integers kk, and the colour of the (42n+2j,22n+2j)(4\cdot 2^{n}+2j,2\cdot 2^{n}+2j)-tile is allocated to the (42n+2j+2k,22n+2j2k)(4\cdot 2^{n}+2j+2k,2\cdot 2^{n}+2j-2k)-tile, for positive integers kk. Notice that this rule obeys Property 3 of Definition 6, due to the boundary condition on the colouring of squarelets in I2DMSTI_{2DMST}.

Given that I2DMSTI_{2DMST} has a concise circuit that labels its squarelets, it’s not hard to see that the corresponding instance IVTI_{VT} has a concise circuit that takes as input, points in the triangular region (at the slightly higher numerical precision), checks which tile a point belongs to, and labels it according to the above rules.

We claim that for a sequence of 100 points to contain two sets of 10 points having opposite labels, as required for a solution, this will only happen when that sequence crosses two adjacent tiles having opposite labels. Any sequence of 100 points constructed as in the problem definition, may cross the boundaries of subregions in at most 2 places, resulting in at most 4 points where CC can disobey the tile colouring due to the exception in item (6). So most of the points in the two sets of 10 oppositely-labelled points must indeed come from two oppositely-labelled tiles.

If this happens in region RR of Figure 3, the two tiles correspond directly to two adjacent squarelets in I2DMSTI_{2DMST} having opposite labels. It could also occur in the regions RR^{\prime} or RR^{\prime\prime}, in which case we find a solution in the closest edge of RR. Suppose the sequence of 100 points “wraps around”, i.e. straddles RR^{\prime} and RR^{\prime\prime}, crossing the line between (0,0)(0,0) and (1,0)(1,0) and appearing just to the right of the line between (0,0)(0,0) and (0,1)(0,1). Labels get negated at the point where we wrap around, but recall that in this case, we flip the suffix of the sequence occurring in RR^{\prime}, before applying the test that two sets of 10 points have equal and opposite labels. From such a sequence of points we can identify either of two solutions on the north-west or south-east sides of RR that are closest to the sequence of points.

Construction of the Consensus Halving Instance

In this section, we describe how to construct an instance ICHI_{CH} of ϵ\epsilon-Consensus-halving from an instance of Variant Tucker, for inverse-exponential precision parameter ϵ\epsilon. At a high level, the domain AA of ICHI_{CH} will have two designated regions – a small one, typically containing 22 cuts in a solution, which represent coordinates of points in the triangular domain of Figure 3 (the “coordinate-encoding region”) and a larger one for the encoding of the labelling circuit (the “circuit-encoding region”). Certain sensoring gadgets will detect the position of coordinate-encoding cuts and will feed this information to a set of gadgets which encode the inputs to the labelling circuit of the Variant Tucker instance. This information will be propagated through the circuit-encoding gadgets and fed back to the coordinate-encoding region. The idea is that two designated agents of the Consensus Halving instance, which will be associated with the coordinate-encoding region, will only be satisfied with the balance between A+A_{+} and AA_{-} if the detected cuts correspond to points on a sequence that is a solution to Variant Tucker (Sections 4.3 and 4.4).

The construction will actually encode multiple copies of the labelling circuit of Variant Tucker for two different reasons. The main reason is that for each copy of the circuit, the cuts in the coordinate-encoding region will encode a different point in the domain, with these points being sufficiently close to each other (this will be achieved by small shifts in the valuation blocks corresponding to the circuits in the coordinate-encoding region) and with all of them lying on the same line segment. We will ensure that a solution to ICHI_{CH} will correspond to (sufficiently many) points of this segment with coordinates in squarelets with equal and opposite labels. The other reason is to deal with “stray cuts”, i.e. cuts that are intended to lie in the coordinate-encoding region but actually cut through the circuit-encoding region. These cuts might “invalidate” the circuits that they cut through, but the construction will ensure that the rest of the circuits will remain unaffected, and there will still be sufficiently many reliable points in the sequence (Section 4.5 and Section 5).

More concretely, given an instance IVTI_{VT} of Variant Tucker with complexity parameter nn, we will construct an instance ICHI_{CH} of ϵ\epsilon-Consensus-halving for ϵ=22n\epsilon=2^{-2n}. Let AA denote the Consensus-Halving domain, an interval of the form [0,x][0,x] where xx is of size polynomial in nn. Any agent aa in ICHI_{CH} has a measure μa:A\mboxIR\mu_{a}:A\longrightarrow\mbox{{IR}} which will be represented by a step function (having a polynomial in nn number of steps).

. The domain AA will consist of two main regions:

The coordinate-encoding region $$ (abbreviated as the c-e region).

The circuit-encoding region (1,x](1,x] (abbreviated as R).

Our construction contains 100100 copies of an encoding of the labelling circuit CC of Variant Tucker and for the purpose, the circuit-encoding region RR will be further divided into 100100 non-intersecting sub-regions R1,,R100R_{1},\ldots,R_{100}, one for each copy of the circuit. The regions RiR_{i} are of equal length and constitute a partition of RR. We further divide each region RiR_{i} into three sub-regions RiinR_{i}^{in}, RimidR_{i}^{mid} and RioutR_{i}^{out}, which again are non-intersecting and partition RiR_{i}. These regions correspond with parts of a circuit that deal respectively with the input bits, the intermediate bits and the outputs.

The instance ICHI_{CH} will have the following sets of agents:

22 coordinate-encoding agents α1,α2\alpha_{1},\alpha_{2} whose valuation functions μa1\mu_{a_{1}}, μa2\mu_{a_{2}} are only positive in i=1100Riout\bigcup_{i=1}^{100}R_{i}^{out}. (See Subsection 4.3 and Figure 7).

100 circuit-encoders C1,,C100C_{1},\ldots,C_{100} (see Subsection 4.4).

Each CiC_{i} has an associated circuit-encoding region RiR_{i} of the domain.

With each RiR_{i}, there is a polynomial number of associated circuit-encoding agents. Let Ai{\cal{A}}_{i} be the set of those agents; the set Ai{\cal{A}}_{i} consists of the following sets of agents.

A set SiAi{\cal{S}}_{i}\subset{\cal A}_{i} of 8(n+8)+18(n+8)+1 sensor agents with value in Riin\cup R_{i}^{in}. Among those, there will be a designated agent that we will refer to as the blanket sensor agent. (See Subsection 4.4.1 and Figures 8 and 9).

A set GiAi{\cal G}_{i}\subset{\cal A}_{i} of polynomially-many gate agents, with value in RiinRimidRioutR_{i}^{in}\cup R_{i}^{mid}\cup R_{i}^{out}. (See Subsection 4.4.2 and Figure 10).

We associate one cut with each agent; recall that for agent α\alpha, c(α)c(\alpha) is the cut associated with the agent. In a solution to ICHI_{CH}, for any agent αiAi\alpha_{i}\in\mathcal{A}_{i}, these cuts will lie in a specific region, where most of the value of agent αi\alpha_{i} will be concentrated. We will use R(αi)R(\alpha_{i}) to denote this region. The cuts c(a1),c(a2)c(a_{1}),c(a_{2}) for the coordinate-encoding agents, are called the coordinate-encoding cuts and the associated region for them is the c-e region, i.e. R(α1)=R(α2)=R(\alpha_{1})=R(\alpha_{2})=. We will see that in any solution, either both or one of the coordinate-encoding cuts must lie in the coordinate-encoding region and the other cuts must lie in region RR. In the event that a coordinate-encoding cut lies outside the c-e region, we refer to it as a stray cut, and while such a cut may initially appear to interfere with the functioning of the circuitry, we will see that the duplication of the circuit using 100 circuit-encoders, allows it to be robust to this problem. (For the appropriate definitions and the details, see Section 5).

2 Useful gadgetry

Parity gadgets: We will use term “element” to refer to a sub-interval R(αi)R(\alpha_{i}) where most of the valuation of agent α1\alpha_{1} lies. For most elements of our construction, we will assume that for a cut that intersects the block (normally either a rectangle valuation block or two thin blocks of larger height or both), the label to the left of the cut is A+A_{+} and the label to the right of the cut is AA_{-}. Since the labels are generally alternating (as otherwise cuts can be merged), to achieve this, we will need to be able to switch the “parity” of the label sequence. This will be achieved with the following very simple parity gadget.

We construct an agent αpar\alpha_{par} that has a single valuation block (i.e. an interval where the agent has a constant, non-zero value) of sufficiently small height and width, in a region between two such distinct valuation blocks of some other agent or agents (where we need the parity switch to take place), and furthermore, no other agent has any value in that interval. Since we are only allowed to use nn cuts, in a solution to ICHI_{CH}, only one cut is allowed to lie in the region c(αpar)c(\alpha_{par}) and therefore intersect this valuation block; obviously the cut has to lie close to the midpoint of the valuation block interval and it will switch the parity of the cut sequence. Throughout the reduction, we will not explain how to explicitly place the parity gadgets in the instance of ICHI_{CH} but rather we will assume without loss of generality that the left-hand sides of the cuts are labelled A+A_{+}, unless stated otherwise.

Bit detection gadgets: Throughout the reduction, we will make use of specific blocks of valuations that we will refer to as bit detection gadgets. The bit detection gadgets will be two thin and dense valuation blocks of relatively large height and relatively small length, situated next to each other, with no other valuation block in between them (e.g. see Figure 7, the valuations of the top two agents in R1outR_{1}^{out} or Figure 6, the values in the outout intervals). The precise volume of each valuation block will depend on the corresponding agents, but they will always constitute most of the agent’s valuation over the related interval. The point of these gadgets is that if the discrepancy between A+A_{+} and AA_{-} is (significantly) in the favour of one against the other, there will be a cut intersecting one of the two valuation blocks; which block is intersected will correspond to a 0/10/1 value, i.e. a bit that indicates the “direction” of the discrepancy in the two labels.

Boolean gate gadgets: Consider a boolean gate that is either an AND an OR or a NOT gate, denoted gg_{\land}, gg_{\lor} and g¬g_{\neg} respectively. Let in1in_{1}, in2in_{2} and outout be intervals such that in1=in2=out=1|in_{1}|=|in_{2}|=|out|=1. We will encode these gates using the following gate-gadgets.

Note that the gadget corresponding to the NOT gate only has one input, whereas the gadgets for the AND and OR gates have two inputs. In the interval outout, each gadget has two bit detection gadgets - in the case of the NOT gate these are even, but in the case of the AND and OR gates, they are uneven. (see Figure 6). Also note that for the inputs, as well as the output of the NOT gate, the label on the left-hand side of the cut is A+A_{+} and the label on the right-hand side will be AA_{-}, whereas for the outputs to the OR and AND gate, the label on the left-hand side of the cut is AA_{-} and the label on the right hand side is A+A_{+} . This can be achieved with the appropriate use of parity gadgets (see Figure 6).

The boolean gate gadgets described above encode valid boolean NOT, OR and AND operations.

3 The coordinate-encoding agents

The coordinate-encoding region $istheregionfromwhichthevalueofthesolutiontois the region from which the value of the solution to\epsilonConsensushalvingwillbereadandwillbetranslatedtocoordinatesofagridpointon-Consensus-halving will be read and will be translated to coordinates of a grid point onI_{VT}.Associatedwiththisregion,thereare. Associated with this region, there are2coordinateencodingagentscoordinate-encoding agents\alpha_{1}andand\alpha_{2}.However,theseagentswillhavevalueinthesubinterval. However, these agents will have value in the subintervalandalloftheirvaluewilllieinthecircuitencodingregionand all of their value will lie in the circuit-encoding regionR_{i}andspecificallyinand specifically in\bigcup_{i=1}^{100}R_{i}^{out}$.

The value of the c-e agents in RioutR_{i}^{out} will corresponds to the feedback mechanism from the blanket sensor agent of RiR_{i} (see Subsection 4.4.1) and the feedback mechanisms from the gate-agents corresponding to the output gates of the circuit (see Subsection and 4.6). Concretely the valuation of the coordinate-encoding agents is defined as follows:

Note that for each i=1,,100i=1,\ldots,100, the value of the agent in RiR_{i} adds up to 1/1001/100 and therefore the agent’s total valuation in RR is 11. Intuitively, each coordinate encoding region has values that consist of the following components in each region RiR_{i}:

A bit detection gadget positioned in the interior of the interval where the bit detection gadget of the corresponding blanket sensor agent is situated (see also Subsection 4.4.1).

Two blocks of valuation situated in the interior of the intervals where the bit detection gadgets of the output gate agents are situated in RioutR_{i}^{out} (see also Subsection 4.4.2). There are four output gate agents in each RiR_{i}; αi\alpha_{i} has value in the corresponding intervals for two of those and α2\alpha_{2} has value in the corresponding intervals for the other two.

4 The circuit encoders

In this subsection, we explain how to design the circuit-encoders C1,,C100C_{1},\ldots,C_{100}. Recall that these are sets of agents of ICHI_{CH} that encode the labelling circuit CC of Variant Tucker, including the inputs and the outputs to the circuit, via the use of sets A1,A100{\cal A}_{1},\ldots{\cal A}_{100} of circuit-encoding agents. In the set Ai{\cal A}_{i}, there are two different types of circuit-encoding agents:

The sensor agents Si{\cal S}_{i} that are responsible for extracting the binary representation of the positions of the cuts in the c-e region, which will be used as inputs to the remaining circuit-encoding agents. These agents have value in Riin\cup R_{i}^{in}. Among those agents, there is a designated agent αibs\alpha_{i}^{bs} that we refer to as the blanket sensor agent.

In the next subsections, we design the values of those agents explicitly. We will first explain how to construct the circuit-encoder C1C_{1} and then based on this, we will construct the remaining circuit-encoders C2,,C100C_{2},\ldots,C_{100}.

In this subsection, we will design the set of sensor agents, which is perhaps the most vital part of the construction. Roughly speaking, these agents will be responsible for detecting the position of a cut in the c-e region and extracting its binary representation. The set S1{\cal S}_{1} contains 8(n+8)+18(n+8)+1 sensor agents, which consist of

the blanket sensor agent α1bs\alpha_{1}^{bs}, that is responsible for detecting large discrepancies in the lengths of A+A_{+} and AA_{-} in the c-e region,

For an illustration, see Figures 7, 8 and 9. We design these sets of agents below.

The blanket sensor agent

The valuation of the blanket sensor agent α1bs\alpha_{1}^{bs} is defined as:

The blanket sensor agent is responsible for detecting large enough discrepancies in A+A_{+} and AA_{-}. As we will see, if such a discrepancy exists, the blanket sensor agents will provide feedback to the c-e agents, making sure that this is not a solution to ICHI_{CH}. We state the lemma here but postpone its proof for Section 5.

Let A+(ce)A_{+}^{(c-e)} and A(ce)A_{-}^{(c-e)} be the total fraction of the c-e region labelled A+A_{+} and AA_{-} respectively. The blanket sensor agents ensure that in a solution to ICHI_{CH}, it holds that

Whenever the blanket sensor agent αibs\alpha_{i}^{bs} does detect such a discrepancy (and therefore the cut c(αibs)c(\alpha_{i}^{bs}) in R(αibs)R(\alpha_{i}^{bs}) assumes one of the extreme positions, left or right), we will say that the blanket sensor agent is active and that it overrides the circuit CiC_{i}. Otherwise, we will say that the blanket sensor agent is passive.

The bit extractors

The second set of agents in S1{\cal S}_{1} will be responsible for detecting the position of the cuts and extracting their binary expansion. To be more precise, these agents will extract 88 binary numbers of length n+8n+8, from 88 consecutive intervals of length 1/81/8 each, which span the c-e region, and this number will encode the position of the cut within the interval. We will refer to these extracted binary strings as the raw data.

Lemma 4.2 ensures that it is not possible for two cuts to intersect the same interval of length 1/81/8. If for some interval of length 1/81/8 there are no cuts intersecting it, the corresponding bit extractors will output a binary string which will consists of only 11’s or only ’s; we will refer to such bit strings as solid.

A binary string is called solid if either all of its bits are 11 or all of its bits are .

If the interval is intersected by one cut, the bit extractors will output a binary string consisting of a non-trivial mixture of ’s and 11’s.

The raw data extracted from the bit-extractors will be fed into the encoders of the input gates of CiC_{i}, and in particular to the pre-processing circuit CipreC_{i}^{\textrm{pre}} that will transform the extracted information into the binary representation of the coordinate of a point (x,y)(x,y) on the domain, which will then be fed into the encoding CiVTC_{i}^{VT} of the labelling circuit CC. We explain this in more detail in Section 4.4.2.

For each bit extractor, there are another n+7n+7 sensor agents that will have exactly the same value in $.Inparticular,thisvaluewillbe. In particular, this value will be1/10involume,spanningoveranintervaloflengthin volume, spanning over an interval of length1/8.Wewillrefertothose. We will refer to thosen+8sensoragentsasceidentical,preciselybecausetheyhavethesamevaluationintheceregion.Therewillbeexactlysensor agents as c-e identical, precisely because they have the same valuation in the c-e region. There will be exactly8setsofsets ofn+8ceidenticalsensoragents.Forc-e identical sensor agents. Fori=2,\ldots,8,thevaluesoftheceidenticalagentsfor, the values of the c-e identical agents foriwillbeshiftedbywill be shifted by1/8totheright,comparedtothevaluesoftheceidenticalagentsofto the right, compared to the values of the c-e identical agents ofi-1$. Therefore, the set of sensor agents covers the whole c-e region. (See Figure 9).

The agents in [0,1/8]\mathbf{[0,1/8]}: First, we will define the valuations of agents α1,ks,,α1,n+8s\alpha_{1,k}^{s},\ldots,\alpha_{1,n+8}^{s} and we will explain how to construct the valuations of the remaining agents from these agents. Note that these agents are c-e identical. First, let

Given a cut in the interval where n+8n+8 c-e identical bit extractors have their value in the c-e region (e.g. the interval [0,1/8][0,1/8] for the first n+8n+8 c-e identical agents), the bit extractors recover a binary string of length n+8n+8 which encodes the cut position in that interval.

μαjks(x)=μa(j1),ks(y)+1/8\mu_{\alpha_{jk}^{s}}(x)=\mu_{a_{(j-1),k}^{s}}(y)+1/8 if xRjx\in\mathcal{R}_{j} and

μαjks(x)=μa1ks(y)\mu_{\alpha_{jk}^{s}}(x)=\mu_{a_{1k}^{s}}(y) if xRjx\in\mathcal{R}_{j}, yR1y\in\mathcal{R}_{1} and y=hR1,Rj(x)y=h_{\mathcal{R}_{1},\mathcal{R}_{j}}(x).

The role of the bit extractors is to cover the whole c-e region in order to be able to detect the positions of cuts that lie anywhere in it. The reason for having 88 shifted versions instead of a single detector is that the bit-extraction units are only operative if their inputs are intersected by at most one cut. Using these smaller valuation blocks, this guarantee is provided by the blanket sensor agent, according to Lemma 4.2.

The bit-extractors Si\mathcal{S}_{i} can extract the binary representation of a point (x,y)(x,y) on the domain, represented by a set of cuts in the c-e region.

The proof of the proposition is left for Section 5.

4.2 The gate agents

Implementing the circuit using the gate gadgets

Concretely, we will use the gate gadgets from Subsection 4.2 that will encode the gates of the circuit. For each gate of C1C_{1}, we will associate a gate agent α1g,,αC1g\alpha_{1}^{g},\ldots,\alpha_{|C_{1}|}^{g} with valuation given by the gadget

where the output of the bit extractors of Subsection 4.4.1 lie (see Subsection 4.4.1 and Figure 8). In simple words, the intervals from which the binary outcomes of the bit extractors are read (via the position of the cuts) are the input intervals to the input gate gadgets of C1preC_{1}^{\textrm{pre}}. The output intervals outiout^{i} are subintervals of R1midR_{1}^{mid} that do not overlap with any other intervals in R1midR_{1}^{mid}.

Next, for any agent αig{αL+1g,,αC14g}\alpha_{i}^{g}\in\{\alpha^{g}_{L+1},\ldots,\alpha^{g}_{|C_{1}|-4}\},

in1iin_{1}^{i} and in2iin_{2}^{i} are the intervals outj1out^{j_{1}} and outj2out^{j_{2}} of agents αj1g,αj2gG1\alpha_{j_{1}}^{g},\alpha_{j_{2}}^{g}\in\mathcal{G}_{1}, where αj1g,αj2g\alpha_{j_{1}}^{g},\alpha_{j_{2}}^{g} correspond to the inputs gj1g_{j_{1}} and gj2g_{j_{2}} of gate gig_{i} in C1C_{1}

outiout^{i} is an interval of RimidR^{mid}_{i} which does not overlap with any interval in1k,in2kin_{1}^{k},in_{2}^{k} or outkout^{k}, for any k<ik<i.

The definitions for the intervals in1iin_{1}^{i} and outiout^{i} of the agents αig\alpha_{i}^{g} that correspond to NOT gates are very similar.

Finally, for the gate agents αig{αC13g,,αC1g}\alpha_{i}^{g}\in\{\alpha^{g}_{|C_{1}|-3},\ldots,\alpha^{g}_{|C_{1}|}\}, corresponding to the output gates gout1,gout2,gout1g_{out}^{1},g_{out}^{2},g_{out}^{-1} and gout2g_{out}^{-2} of C1C_{1}, we have that

in1iin_{1}^{i} and in2iin_{2}^{i} are the intervals outj1out^{j_{1}} and outj2out^{j_{2}} of agents αj1g,αj2gG1\alpha_{j_{1}}^{g},\alpha_{j_{2}}^{g}\in\mathcal{G}_{1}, where αj1g,αj2g\alpha_{j_{1}}^{g},\alpha_{j_{2}}^{g} correspond to the inputs gj1g_{j_{1}} and gj2g_{j_{2}} of gate gig_{i} in C1C_{1}.

outiout^{i} is one of the subintervals in which a 1/4001/400-fraction of the value of a coordinate-encoding agent lies, i.e.

Note that there are 44 such subintervals and the output of each of the four gates gig_{i} for i{C13,,C1}i\in\{|C_{1}|-3,\ldots,|C_{1}|\} lies in one of those subintervals.

As we mentioned earlier, the pre-processing circuit inputs the raw data extracted from the circuit encoders and outputs the binary expansion of the coordinate of the detected position (x,y)(x,y) in the c-e region. Then, the outcome of C1preC_{1}^{\textrm{pre}} is fed directly into the input gates of C1VTC_{1}^{VT} and the information is propagated through the circuit, resulting in the assignment of a label for the encoded point. Here, we explain the operation of the pre-processing circuit in more detail.

x=k18+Bk2n+8x=\frac{k-1}{8}+\frac{B_{k}}{2^{n+8}}, if b1b_{1} is a string of 11’s and

x=k18+2n+8Bk2n+8x=\frac{k-1}{8}+\frac{2^{n+8}-B_{k}}{2^{n+8}}, if b1b_{1} is a string of ’s.

In simple words, the circuit reads the raw data from the bit-encoders for regions R1,,Rk1R_{1},\ldots,R_{k-1} and depending on whether it is a string of 11’s or a string of ’s, it interprets the bit extracted from RkR_{k} as the distance from the left or the right endpoint of the interval respectively. In the event where c(α1)c(\alpha_{1}) intersects R11/8R_{1}^{1/8}, the information is obtained similarly from the bit-extractors of region R21/8R_{2}^{1/8} (which have to output a solid string by Lemma 4.2, as discussed previously). Specifically, the pre-processing circuit in that case sets:

x=Bk2n+8x=\frac{B_{k}}{2^{n+8}}, if b2b_{2} is a string of ’s and

x= 2n+8Bk2n+8x=\ \frac{2^{n+8}-B_{k}}{2^{n+8}}, if b2b_{2} is a string of 11’s.

where b2b_{2} is the binary string extracted from the bit-extractors of R21/8R_{2}^{1/8}.

Now consider the case when there is only one cut in the c-e region. In that case, in a solution to ICHI_{CH}, the cut can not intersect regions R11/8R_{1}^{1/8} or R81/8R_{8}^{1/8} as that would violate Lemma 4.2 and there exist regions both to the left and to the right of the region Rk1/8R_{k}^{1/8} intersected by the cut which provide solid strings as inputs to the pre-processing circuit. In that case, the pre-processing circuit sets x=0x=0 and

y=k8Bk2n+8y=\frac{k}{8}-\frac{B_{k}}{2^{n+8}}, if b1b_{1} is a string of ’s and

y=k82n+8Bk2n+8y=\frac{k}{8}-\frac{2^{n+8}-B_{k}}{2^{n+8}}, if b1b_{1} is a string of 11’s.

In the event that some cut lies exactly in the boundary of two consecutive regions Rj11/8R_{j-1}^{1/8} and Rj1/8R_{j}^{1/8} for some j{2,,8}j\in\{2,\ldots,8\}, the only difference is that the circuit does not receive an input with a non-trivial mix of 11’s and ’s for this cut, but rather a sequence of k1k-1 solid strings consisting of zz’s followed by a solid string of 1z|1-z|’s, extracted by the bit-extractors of region Rk1/8R_{k}^{1/8}. In that case, the circuit operates exactly as before, with the cut lying in region Rk1/8R_{k}^{1/8}.

The encoding of the circuit C1mainC_{1}^{\textrm{main}} will consist of the encodings of two subcircuits, the labeling circuit CiVTC_{i}^{VT} of Variant Tucker and the XOR operator circuit.

The input to the circuit C1VTC_{1}^{VT} is the binary representations of the coordinates of a grid point within a squarelet of IVTI_{VT} outputted by the pre-processing circuit. Recall that each squarelet contains a set of grid points with a resolution of 272^{7} in each dimension (see Figure 2). The output is a label {±1,±2}\{\pm 1,\pm 2\}; in particular, the output gates of CC are gout1,gout1,gout2g_{out}^{1},g_{out}^{-1},g_{out}^{2} and gout2g_{out}^{-2} and the following correspondence is syntactically enforced (Definition 6):

The XOR operator circuit: This circuit will perform a simple operation, using the raw data gathered from the bit-extractors and the ouputs of C1VTC_{1}^{VT}. Recall the definition of the solid strings as well as the regions Rj1/8R_{j}^{1/8} for j=1,,8j=1,\ldots,8 from earlier, with bjb_{j} denoting the raw data outputted by the bit-extractors of region Rj1/8R_{j}^{1/8}. Let rep(b)rep(b) denote any bit of a solid bit-string bb (since they are all the same) and let rep(b)\overline{rep(b)} denote its complement. First, a sub-circuit CidetC_{i}^{\textrm{det}} will perform the following operation on the raw data.

If the output b1b_{1} of the bit-extractors in [0,1/8][0,1/8] is solid, then output a bit z=rep(b1)z=\overline{rep(b_{1})}.

If the output b1b_{1} of the bit-extractors in [0,1/8][0,1/8] is not solid, then output a bit z=rep(b2)z=rep(b_{2}).

Note that by Lemma 4.2, if b1b_{1} is not solid, b2b_{2} has to be solid. Finally, if z1z2z3z4z_{1}z_{2}z_{3}z_{4} are the outputs of CiVTC_{i}^{VT}, the XOR operator outputs a string y1y2y3y4y_{1}y_{2}y_{3}y_{4} with yi=zizy_{i}=z_{i}\oplus z, for i={1,2,3,4}i=\{1,2,3,4\}, where \oplus denotes the Exclusive-OR operation. The effect of this operation is that either the circuit produces the same label or all the outputs are flipped and the circuit produces the opposite label, depending on the raw data. This will be particularly useful when arguing about the stray cut in Section 5.

For an illustration of the encoded circuits, see Figure 11.

It is not hard to see that our gadgets simulate the operation of the circuit. The proof of the following proposition basically follows from the construction and is included in Section 5.

We construct the circuit-encoder CiC_{i} as follows. For j=1,,Aij=1,\ldots,|A_{i}|, let aija_{ij} denote the jj’th circuit-encoding agent in Ai\mathcal{A}_{i}. Then for all i=2,,100i=2,\ldots,100, for all j{1,,Ai}j\in\{1,\ldots,|A_{i}|\},

let μaij(x)=μa1j(y)\mu_{a_{ij}}(x)=\mu_{a_{1j}}(y) if xRix\in R_{i}, yR1y\in R_{1} and y=hR1,Ri(x)y=h_{R_{1},R_{i}}(x).

let μaij((x+(i1)2(n+11))mod(1))=μa1j(x)\mu_{a_{ij}}((x+(i-1)\cdot 2^{-(n+11)})\mod(1))=\mu_{a_{1j}}(x), if xx\in, i.e. if xx is in the c-e region.

The second of these items says that in the c-e region, the valuation function of the agents that make up CiC_{i} differ from those of C1C_{1} by having been shifted to the left by 2(n+11)(i1)2^{-(n+11)}\cdot(i-1), where this shift “wraps around” in the event that we shift below 11 (the left-hand point of the c-e region). In other respects, CiC_{i} is an exact copy of C1C_{1}, save that CiC_{i}’s internal circuitry lies in RiR_{i} rather than R1R_{1}.

The virtual cuts: For the circuit encoders C2,,C100C_{2},\ldots,C_{100} it will often be useful to think of the following alternative interpretation of their inputs. Consider the two cuts (the case of one cut is similar) in the c-e region, at positions c11,c21c^{1}_{1},c^{1}_{2}, encoding a point (x,y)(x,y) of the domain (also see Section 4.5). Since C2C_{2} is a version of C1C_{1} where all the values in the c-e region are shifted by 2(n+11)2^{-(n+11)} to the left (wrapping around for some valuations), we can equivalently think of the output of C2C_{2} as what the output of C1C_{1} would have been if the cuts had been moved slightly to the right, i.e. to c12=c1+2(n+11)c^{2}_{1}=c_{1}+2^{-(n+11)} and c22=c2+2(n+11)c^{2}_{2}=c_{2}+2^{-(n+11)} respectively. In other words, for each circuit-encoder CiC_{i}, we can think of its output as the output of C1C_{1} if the cut were placed at c1ic^{i}_{1} and c2ic^{i}_{2}. We will refer to such cuts as virtual cuts.

In this subsection, we explain how to obtain a solution to IVTI_{VT} from a solution to ICHI_{CH}. Recall from Section 3 that a solution to IVTI_{VT} is a sequence of points (x1,y1),(x2,y2),,(x100,y100)(x_{1},y_{1}),(x_{2},y_{2}),\ldots,(x_{100},y_{100}) of the (discrete) domain, lying on a line segment such that two sets of at least 1010 of these points each have coordinates in squarelets of equal and opposite labels. Specifically, for each point (xi,yi)(x_{i},y_{i}) on the segment, with i<100i<100, it holds that xi+1=xi+2(n+11)x_{i+1}=x_{i}+2^{-(n+11)} and yi+1=yi2(n+11)y_{i+1}=y_{i}-2^{-(n+11)} (See Figure 2).

Now consider a solution H\mathcal{H} to ICHI_{CH}. As we will establish in Section 5, in H\mathcal{H} there must exist one or two cuts situated in the coordinate-encoding region $$.

If there is only one cut in $,situatedat, situated atz\in,let, letx=0andandy=1-z$ be the coordinates of a point on the domain.

If there are 2 cuts in $,situatedat, situated atz,z^{\prime},let, letx=zandandy=1-z^{\prime}$ be the coordinates of a point in the domain.

If we use n+11n+11 bits of precision to represent the coordinates (x,y)(x,y) of the point that correspond to the solution H\mathcal{H} above, we end up with the closest point pp on the discrete domain to (x,y)(x,y). Then, we can obtain a solution to IVTI_{VT} by generating a sequence of points p1,p2,,p100p_{1},p_{2},\ldots,p_{100} by setting p1=pp_{1}=p and pi=(xi1+2(n+11),yi12(n+11))p_{i}=(x_{i-1}+2^{-(n+11)},y_{i-1}-2^{-(n+11)}) for 2i1002\leq i\leq 100.

For an illustration of the mapping between the solutions to the two problems, see Figure 12.

6 The feedback mechanism to the c-e agents

Now that we have explained what the construction of ICHI_{CH} looks like, we can explain how the c-e agents receive feedback from the circuit. The agents will only be satisfied with the partition of labels if the line segment of points (x,y)(x,y) crosses a boundary of tiles with same and opposite labels and there are sufficiently many points indisputably labelled with each one of those labels.

First note that for a point (x1,y1)(x_{1},y_{1}) of the domain recovered as described in Section 4.5, each point (xi,yi)(x_{i},y_{i}) in the sequence of 100100 points will be labelled by a different copy of the circuit CiC_{i}. Consider such a copy and let Ci(xi,yi)C_{i}(x_{i},y_{i}) be its output; recall that Ci(xi,yi){1110,0001,0111,1000}C_{i}(x_{i},y_{i})\in\{1110,0001,0111,1000\} (which can be syntactically enforced) and furthermore, we have the following correspondence of labels to outputs:

Assume that the Ci(xi,yi)=jC_{i}(x_{i},y_{i})=j, for some j{1110,0001,0111,1000}j\in\{1110,0001,0111,1000\} and let λj{1,1,2,2}\lambda_{j}\in\{1,-1,2,-2\} be the corresponding label. For each of the c-e agents α1\alpha_{1} and α2\alpha_{2}, the contribution to A+A_{+} from its valuation on RoutiR_{out}^{i} isAssuming that CiC_{i} behaves as expected, i.e. it receives good inputs and is reliable - see Section 5 for the definitions.

where a contribution of μ-\mu to A+A_{+} here denotes a contribution of μ\mu to AA_{-}. To see this, note that a set of the 44 cuts corresponding to the output 11101110 of CiC_{i} would lie respectively:

To the right of the leftmost valuation block of Agent α1\alpha_{1} in RioutR_{i}^{out}, thus labelling the whole block A+A_{+}.

To the right of the rightmost valuation block of Agent α1\alpha_{1} in RioutR_{i}^{out}, thus labelling the whole block A+A_{+}.

To the right of the leftmost valuation block of Agent α2\alpha_{2} in RioutR_{i}^{out}, thus labelling the whole block AA_{-}.

To the left of the leftmost valuation block of Agent α2\alpha_{2} in RioutR_{i}^{out}, thus labelling the whole block A+A_{+}.

See Figure 7 for an illustration. Since all of these valuation blocks have volume 1/4001/400 each, the total contribution to A+A_{+} from an output of 11101110 (and therefore a label of 11) is 2/4002/400 for Agent α1\alpha_{1}, whereas for Agent α2\alpha_{2}, the total contribution is and the sub-partition restricted to RioutR_{i}^{out} is balanced. The argument for the remaining output/labels is very similar.

The “wrap-around” labels: In some cases, the circuit-encoders CiC_{i} will detect points close to the boundary of the triangular domain of Variant Tucker in which case the sequence of points 1,,1001,\ldots,100 extracted from the bit-extractors of the circuits will be part of a “wrap-around” line segment, i.e. a line segment that starts with some point with yy close to zero and ends with a point with xx close to (i.e. it crosses the bottom boundary of the triangle region). In this case, Definition 6 requires that the “equal-and-opposite” property holds after we flip the labels of the wrapped-around subsequence.

In terms of ICHI_{CH}, this situation occurs when (i) either there are two cuts c1c_{1} and c2c_{2} in the c-e region and c2c_{2} sits very close to 11 or (ii) when there is only one cut in the c-e region (which can be thought of as another cut being situated exactly at ). In either case, since each circuit encoder CiC_{i} detects a virtual cut, (which is a shifted version of the cut detected by Ci1C_{i-1} as explained earlier), this sequence of points will be correctly generated by the reduction. For example, where there is only one cut cc in the c-e region, while the bit-extractors of C1C_{1} only “see” that cut, the bit-extractors of each circuit-encoder C2,,C100C_{2},\ldots,C_{100} “see” another cut, situated at position i2n11i\cdot 2^{-n-11}. This is because the “wrapped-around” valuation of the first n+8n+8 c-e identical sensors of CiC_{i} “sees” both A+A_{+} (on the left side of cc) and AA_{-} (on the right side of cc), and therefore detect that a cut intersects the region - this is the virtual cut cvc_{v} detected by Si\mathcal{S}_{i} (similarly for the case of two cuts).

Interpreting the virtual cut cvc_{v} as the actual cut, the circuit-encoder CiC_{i} now “sees” the label AA_{-} on the left-hand side of cvc_{v} and A+A_{+} on the right-hand side. Intuitively, CiC_{i} interprets the input as if the left endpoint of the region was 1i2n111-i\cdot 2^{-n-11} (i.e. as if we cut the c-e region at the point where the wrap-around value starts and glued the cut piece to the end of the c-e region), with the sequence of labels starting with AA_{-}. The pre-processing circuit CipreC_{i}^{\textrm{pre}} ensures that the correct point of the wrapped-around subsequence is encoded, and the XOR operator circuit of CiC_{i} flips the label of this point, as desired by Definition 6.This is similar to the operation of the “double-negative effect” (see Lemma 5.4), but without the flip of the label sequence introduced by the stray cut, so it is rather a “single negative”, flipping the label of the outcome, as intended.

Proof of the Reduction

In this section, we prove the correctness of the reduction, i.e. that given a solution H\mathcal{H} of ϵ\epsilon-Consensus-halving, we can recover a solution to Variant Tucker (and therefore to Tucker, given our results in Section 3.) The main result of this section is the following:

Variant Tucker is polynomial-time reducible to Consensus-halving.

We state the following useful definition regarding the copies of the circuit CC.

Let CiC_{i}, be one of the 100 copies of the circuit CC in an instance ICHI_{CH} of ϵ\epsilon-Consensus-halving as constructed in Section 4. We say that CiC_{i} receives good inputs with respect to positions (x,y)(x,y) of the c-e cuts, if CiC_{i} receives valid boolean-encoding inputs extracted from xx and yy.

For example, in the case of i=1i=1, C1C_{1} receives good inputs provided that the point (x,y)(x,y) of the domain of Variant Tucker is not too close to the boundary of a sub-region. A simple observation is the following.

In ICHI_{CH}, at most 4 copies of CC do not receive good inputs.

The observation is based on the density of the domain of Variant Tucker. Given the resolution used for the grid points within the square regions, there can be at most 44 points that are very close to the boundary of a subregion.

Next, we prove Lemma 4.2 (firstly stated in Section 4.4.1), which establishes that the blanket-sensor agent detects large discrepancies in the total length of the A+A_{+} and AA_{-} intervals.

Assume that in the c-e region, there is a discrepancy of labels which is larger than 1/41/4, i.e. A+(ce)A(ce)>1/4|A_{+}^{(c-e)}-A_{-}^{(c-e)}|>1/4. Then, since the blanket sensor agent α1bs\alpha_{1}^{bs} has valuation 0.10.1 distributed uniformly on $,thisimpliesthat, this implies that|\mu_{\alpha_{1}^{bs}}(A_{+}\cap)-\mu_{\alpha_{1}^{bs}}(A_{-}\cap)|>1/40,i.ethediscrepancythattheblanketsensordetectsinthevolumeofthetwolabelsisatleast, i.e the discrepancy that the blanket sensor detects in the volume of the two labels is at least1/40.Then,inasolutionto. Then, in a solution toI_{CH},itmustbethecasethatthecutin, it must be the case that the cut inc(\alpha_{1}^{bs})intersectsoneofthetwothinvaluationblocksintheinterval,eithertheleftone,ifintersects one of the two thin valuation blocks in the interval, either the left one, if\mu_{\alpha_{1}^{bs}}(A_{+}\cap)-\mu_{\alpha_{1}^{bs}}(A_{-}\cap)|<0ortherightone,ifor the right one, if\mu_{\alpha_{1}^{bs}}(A_{+}\cap)-\mu_{\alpha_{1}^{bs}}(A_{-}\cap)|>0,asotherwiseagent, as otherwise agent\alpha_{1}^{bs}wouldbedissatisfiedwiththebalanceofthelabelsinwould be dissatisfied with the balance of the labels inA.Inthatcasehowever,Agents. In that case however, Agents\alpha_{1}andand\alpha_{2}willhavealloftheirvaluationinwill have all of their valuation inR_{1}receivethesamelabel,andthisvalueconstitutesreceive the same label, and this value constitutes3/4oftheirtotalvalueinof their total value inR_{1}(seeFigure7).Sinceforall(see Figure 7). Since for alli=1,\ldots,100,thevalueofeachblanketsensoragent, the value of each blanket-sensor agent\alpha_{i}^{bs}isthesameintheceregion,thesamewillbetrueformostcopiesofthecircuitis the same in the c-e region, the same will be true for most copies of the circuitC_{i}$, in particular for each reliable copy of the circuit.

A bit more concretely, since there are at most 22 stray cuts, there are at most 22 unreliable copies CjC_{j} and CjC_{j^{\prime}} of the circuit. For any k{1,,100}k\in\{1,\ldots,100\} such that kj,jk\neq j,j^{\prime}, the blanket sensor agent αkbs\alpha_{k}^{bs} will detect a value of 11, as the cut associated with αkbs\alpha_{k}^{bs} in Rαkbs\mathcal{R}_{\alpha_{k}^{bs}} must intersect the right thin valuation block of the blanket sensor agent’s value in R1inR_{1}^{in} (see Figure 7), or otherwise H\mathcal{H} would not be a solution to ICHI_{CH}. But then, in the cut-encoding regions RiR_{i}, all of the valuation blocks of agent α1\alpha_{1} in i{1,,100},i{j,j}Riin\cup_{i\in\{1,\ldots,100\},i\notin\{j,j^{\prime}\}}R_{i}^{in} (see Figure 7), will receive the same label. Since in each RiR_{i}, the value of agent αi\alpha_{i} in RiinR_{i}^{in} is a (3/4)(3/4)-fraction of its total value in RiR_{i} and since at least 98 copies are reliable, at least a (147/200)(147/200)-fraction of agent α1\alpha_{1}’s valuation will receive the same label and therefore the agent is dissatisfied with the partition and H\mathcal{H} is not a consensus halving solution.

Using Lemma 4.2, we can now prove the following lemma regarding the number of cuts in the c-e region, in any solution to ICHI_{CH}.

In a solution to an instance ICHI_{CH} of ϵ\epsilon-Consensus-halving constructed as in Section 4, the two c-e cuts are the only cuts that may occur in the c-e region, and at least one c-e cut must occur in the c-e region.

To see this, note first that in any solution H\mathcal{H} to ICHI_{CH}, all cuts apart from the c-e cuts, are constrained to lie in various intervals outside the c-e region. In particular, for every agent αjAi\alpha_{j}\in\mathcal{A}_{i} (i.e. every agent besides the two c-e agents α1,α2\alpha_{1},\alpha_{2}), it holds that most of the valuation of the agent (in particular, sufficiently more than a (1/2)(1/2)-fraction) lies in a designated interval, which we will denote by Rαj\mathcal{R}_{\alpha_{j}}. Agent αj\alpha_{j} is not the only agent that has non-zero value in Rαj\mathcal{R}_{\alpha_{j}}, but it holds that for jjj^{\prime}\neq j, RαjRαj=\mathcal{R}_{\alpha_{j}}\cap\mathcal{R}_{\alpha_{j^{\prime}}}=\emptyset i.e. each agent in Ai\mathcal{A}_{i} has a different designated interval. Also, note that none of this intervals intersects with the c-e region, i.e. Rαj=\mathcal{R}_{\alpha_{j}}\cap=\emptyset, for all agents αjAi\alpha_{j}\in\mathcal{A}_{i}.

Obviously, by construction, for such an interval Rαj\mathcal{R}_{\alpha_{j}}, if there is no cut that intersects the interval, then agent αj\alpha_{j} will be dissatisfied with the balance of A+A_{+} and AA_{-} and H\mathcal{H} will not be a solution to ICHI_{CH}. Additionally, since there are N2N-2 such designated intervals which do not intersect with the c-e region, H\mathcal{H} must place at most 22 cuts in the c-e region. This establishes the first statement of the Lemma.

Now for the second statement, suppose that neither c-e cut lies in the c-e region, in which case the c-e region gets labelled entirely A+A_{+}. By Lemma 4.2, the blanket sensor agents will detect the discrepancy and H\mathcal{H} can not be a solution.

Next, we prove the lemmas regarding the operation of the bit-extractors, which we stated in Section 4.4.1. See 4.3

It should be noted that for the other copies CiC_{i} , i=1,,100i=1,\ldots,100 of the circuit, the valuation blocks of the c-e identical agents in the c-e region might “wrap around”, i.e. they can consist of valuation blocks in [0,z2][0,z_{2}] and [z2,1][z_{2},1] where [0,z2][z1,1]=1/8|[0,z_{2}]\cup[z_{1},1]|=1/8. In that case, exactly the similar arguments apply if we consider the interval to be [z1,z2][z_{1},z_{2}], i.e. the first half of the interval is considered to be [z1,z1+1/4][z_{1},z_{1}+1/4] if z1+1/41z_{1}+1/4\leq 1 and [z1,1][0,z21/4][z_{1},1]\cup[0,z_{2}-1/4] if z1+1/4>1z_{1}+1/4>1.

Consider a set SijSi\mathcal{S}_{i}^{j}\subset\mathcal{S}_{i} of c-e identical agents with value in [j/8,(j+1)/8][j/8,(j+1)/8] of the c-e region, for some j[0,,7]j\in[0,\ldots,7]. Assume first that a cut lies in [j/8,(j+1)/8][j/8,(j+1)/8] and that no other cut lies in [0,j/8)[0,j/8). Then, (since by convention the first cut in the c-e region has A+A_{+} on its left-hand side), the n+8n+8 c-e identical agents of region [j/8,(j+1)/8][j/8,(j+1)/8] will detect the position of the cut in the interval and their outputs will feed that to the gate-agents, exactly as described for the c-e identical agents of [0,1/8][0,1/8] in Section 4.4.1, and according to Proposition 4.3.

Now assume that that the second cut in the c-e region lies in [j/8,(j+1)/8][j/8,(j+1)/8] and the first cut lies somewhere in [0,j/8)[0,j/8). Observe that the first cut must have been detected by another set Sij\mathcal{S}_{i}^{j^{\prime}} of c-e identical bit-extractors, with j<jj^{\prime}<j. Since the agents in Sij\mathcal{S}_{i}^{j} are now extracting the position of the second cut, notice that the label on the left-hand side of the cut is now AA_{-}, which effectively “flips” the outputs of the bit-extractors (the bit-detection gadgets) Sij\mathcal{S}_{i}^{j} in RiinR_{i}^{in}. However, since all this information is provided to the pre-processing circuit, the circuit can infer how to interpret the outputs (and particularly it can lead the outputs of the set Sij\mathcal{S}_{i}^{j} through a set of NOT gates).

In simpler words, if a cut has already been detected by a set of sensors, this informs the circuit on how to interpret the remaining inputs that correspond to the second cut. Similarly, the circuit can use the information that no cuts occur in the region [j/8,(j+1)/8][j/8,(j+1)/8], which will be either a string of 11s (if no cut has been detected in a previous interval) or a string of s (if a cut has been detected in a previous interval). Since the circuit knows whether a cut has been detected in an interval [j/8,(j+1)/8][j^{\prime}/8,(j^{\prime}+1)/8], with j<jj^{\prime}<j, it also knows how to interpret these trivial inputs.

Finally, the pre-processing circuit CipreC_{i}^{\textrm{pre}} can combine the inputs from all the different intervals into a (n+4)(n+4)-bit string which encodes the coordinates of a point (x,y)(x,y) in the domain.

Next, recall the following proposition about the gate-agents, first stated in Subsection 4.4.2. See 4.5

This is a rather straightforward observation based on the following facts.

The bit-extractors of S1\mathcal{S}_{1} extract the binary representation of the cuts in the sub-regions of length 1/81/8 of the c-e region.

This input is fed to the circuit C1C_{1}.

The gate-gadgets implement the valid AND,OR and NOT circuit operations.

The first statement is argued in Proposition 4.3 and 4.4 and the second statement can easily be verified from the construction of the input gate gadgets of this section. In particular, a cut intersecting the bit-detection gadget of a bit extractor agent is directly supplied as an input to the corresponding input gate gadget of C1C_{1} (see Figure 10). The last statement follows from the correctness of these boolean gate gadgets that are used in each step, which was explained in Section 4.2 and the fact that the the gate agents in R1R_{1} are being used to implement the pre-processing circuit CipreC_{i}^{\textrm{pre}} and the circuit CimainC_{i}^{\textrm{main}}, which is an exact copy of CC, using the corresponding gadgets as the gates (also see Figure 10).

As we mentioned in Section 1, all agents other than the coordinate-encoding ones are associated with separate cuts. For all the circuit-encoding agents, these cuts are constrained to lie in different regions in RR, but for the c-e agents, it is not a-priori clear that these cuts will lie in the c-e region. Lemma 5.3 establishes that in any solution of ICHI_{CH}, at least one of these cuts will actually lie in the c-e region, but the other might actually move into the circuit-encoding region RR. We will use the following definition.

In a solution H\mathcal{H} of ICHI_{CH} as described in Section 4, a c-e cut will be called a stray cut if it is occurs outside of the c-e region.

A stray cut may have two effects on H\mathcal{H}.

It intersects the circuit-encoding region RiR_{i} of some circuit encoder CiC_{i}, for i{1,,100}i\in\{1,\ldots,100\}.

It flips the parity of the circuit encoders CiC_{i}, with Ri<cR_{i}<c, where cc is the position of the stray cut in Ri1R_{i-1}. In other words, if the first cut in RiR_{i} was expecting to see A+A_{+} on its left-hand side, it now sees AA_{-} and vice-versa.

The first effect is not much of a problem; we simply deem this circuit unreliable:

We will say that a copy CiC_{i} of the circuit CC (i{1,,100}i\in\{1,\ldots,100\}) is reliable if none of the c-e cuts intersects RiR_{i}. A copy CiC_{i} of the circuit is unreliable if it is not reliable.

Since there is only one stray cut, there is at most one unreliable circuit CiC_{i}. The error that this copy will introduce to the volumes of the labels A+A_{+} and AA_{-} for the c-e agents (see Section 4.6) will be relatively small due to the fact that there are many reliable points that receive good inputs. This is argued formally in the proof of Lemma 5.6.

The second effect from the ones above is potentially more troublesome however, since the parity flip could alter the outputs of the bit-extractors. This problem however is actually being taken care of by the pre-processing circuit (and the XOR operator of the main circuit). If outputs of the bit-extractors are flipped, the pre-processing circuit actually inputs the bit-wise complements of the raw data that it would input before the flip; these consist of binary strings that encode the positions of the cuts within regions [(j1)/8,j/8][(j-1)/8,j/8], as well as the accompanying information (the solid strings) that indicate how to interpret the aforementioned binary strings as coordinates (x,y)(x,y) that get some label by CiVTC_{i}^{VT}. The effects of these flips cancel out and the circuit outputs exactly the same label, which is then flipped by the XOR sub-circuit, to ensure that the c-e agents receive the same feedback. This is proven in detail in the following lemma.

Since the stray cut lies between the c-e region and RiR_{i}, there is one cut in the c-e region (the cut c(α1)c(\alpha_{1})) at some position c[38,58]c\in[\frac{3}{8},\frac{5}{8}], which is ensured by Lemma 5.3 and Lemma 4.2. Circuit CiC_{i} evaluates the label at a point (x,y)(x,y) where x=i2n11x=i\cdot 2^{-n-11} and y=1(c+i2n11)y=1-(c+i\cdot 2^{-n-11}), i.e. outputs the evaluation of circuit C1C_{1} on the set of virtual cuts c1ic_{1}^{i} and c2ic_{2}^{i} respectively.

Consider the operation of adding a cut between the c-e region and RiR_{i}. This effectively causes the output bits of the the bit extractors of CipreC_{i}^{\textrm{pre}} to flip, as the cut in R(αis)R(\alpha_{i}^{s}) for every bit extractor αisSi\alpha_{i}^{s}\in S_{i} is now “seeing” A+A_{+} on its left-hand side, rather than AA_{-}. We claim that the outputs of CiVTC_{i}^{VT} will be the same as before, regardless of the flip.

Consider first the output of CiVTC_{i}^{VT} in the absence of the stray cut and assume without loss of generality that the solid strings b1,,bk1b_{1},\ldots,b_{k-1} outputted by the bit-extractors of the regions R11/8,,Rk11/8R_{1}^{1/8},\ldots,R_{k-1}^{1/8} are strings of 11’s (the argument for when they are strings of ’s is completely symmetric). Then, according to the operation of the pre-processing circuit, the position of the cut is calculated by adding up (k1)/8(k-1)/8 and the distance zz between the detected position and (k1)/8(k-1)/8. See Figure 13 for an example when k=3k=3.

Now consider the output of CiVTC_{i}^{VT} in the presence of the stray cut in (0,Ri)(0,R_{i}). As we mentioned earlier, the raw data that the pre-processing circuit inputs have been bit-wise flipped. In effect, the following two things happen:

The solid strings b1,bk1b_{1}\ldots,b_{k-1} outputted by the bit-extractors of regions R11/8,,Rk11/8R_{1}^{1/8},\ldots,R_{k-1}^{1/8} are strings of ’s,

The bit extractors of Rk1/8R_{k}^{1/8} now extract the string bk\overline{b_{k}}, i.e., the bit-wise complement of bkb_{k}. Note that if the bit-string bkb_{k} encodes the position of a cut at (k1)/8+z(k-1)/8+z, then bk\overline{b_{k}} encodes the position of a cut at (k1)/8+z=k/8z(k-1)/8+z^{\prime}=k/8-z. Therefore, if the cut is actually placed at (k1)/8+z(k-1)/8+z, the effect of the flip is that the bit-extractors of Rk1/8R_{k}^{1/8} now detect the cut as being placed at k/8zk/8-z.

If we used the output of CiVTC_{i}^{VT} directly to provide feedback to the c-e agents, then the following undesired effect would take place. Comparing the situations before and after the cut, the balance of A+A_{+} and AA_{-} shown to the c-e agents in RiR_{i} would flip, because (i) the output of CiVTC_{i}^{VT} is unaffected by the flip but (ii) the stray cut changes the parity of the label sequence, causing the parts of RiR_{i} that were labelled A+A_{+} to now be labelled AA_{-} and vice-versa. That would introduce a false discrepancy of the balance of A+A_{+} and AA_{-} for one of the c-e agents, or more precisely, the correct “amount” of discrepancy but in the wrong direction.

This is taken care of by the XOR operator circuit; the circuit detects the value of the solid string and applies an appropriate XOR operation to the outcomes of CiVTC_{i}^{VT}. For example, if before the insertion of the stray cut, the solid strings b1,bk1b_{1}\ldots,b_{k-1} outputted by the bit-extractors of regions R11/8,,Rk11/8R_{1}^{1/8},\ldots,R_{k-1}^{1/8} are strings of ’s after the insertion of the stray cut, the outputs of the circuit CiC_{i} are zjrep(b1)z_{j}\oplus\overline{rep(b_{1})}, for j{1,2,3,4}j\in\{1,2,3,4\}, where ziz_{i}, i{1,2,3,4}i\in\{1,2,3,4\} are the outputs of CiVTC_{i}^{VT}. In other words, the output of CiC_{i} is the bit-wise complement of the ouput of CiVTC_{i}^{VT} (or alternatively, CiC_{i} outputs label λ-\lambda if the label ouputted by CiVTC_{i}^{VT} is λ\lambda. The effect of this “double negative” operation is that

Given how labels correspond to discrepancies on A+A_{+} and AA_{-} for the c-e agents, as explained in Section 4.6, the c-e agents receive exactly the same feedback before and after the insertion of the stray cut. Note that if the XOR operator circuit received different input from the raw data (i.e. a solid string of 11’s which indicates that no flip has taken place), then the XOR operation leaves the outputs of C1VTC_{1}^{VT} unaffected (and there is no flipping of the label sequence in RioutR_{i}^{out} either).

For an illustration of the “double negative” effect, see Figure 14.

2 Correctness lemmas

By Lemma 5.3, we are left with two cases to consider: the first case when both c-e cuts lie in the c-e region, and the second case when just one of the lies in the c-e region.

Consider a solution H\mathcal{H} to ICHI_{CH} in which both c-e cuts lie in the c-e region and consider a set of points (x1,y1),,(x100,y100)(x_{1},y_{1}),\ldots,(x_{100},y_{100}) recovered from H\mathcal{H} as described in Section 4.5. Then (x1,y1),,(x100,y100)(x_{1},y_{1}),\ldots,(x_{100},y_{100}) is a solution to Variant Tucker.

Let c1(α1)c_{1}(\alpha_{1}) and c2(α2)c_{2}(\alpha_{2}) be the positions of the c-e cuts, which are assumed in the statement of the lemma to both lie in $.Sincetherearetwocutsintheceregion,bytherecoveryofthesolutiontoVariantTucker,wehave. Since there are two cuts in the c-e region, by the recovery of the solution to Variant Tucker, we havex=c_{1}(\alpha_{1})andandy=1-c_{2}(\alpha_{2}),andthesequenceof100pointsthatformsasolutionto, and the sequence of 100 points that forms a solution toI_{VT}$ consists of

where addition/subtraction are taken modulo 1.

By construction of the solution according to Section 4.5 and by the resolution of the domain, the bit extractors of C1C_{1} extract the binary representation of the coordinates (x1,y1)(x_{1},y_{1}), according to Proposition 4.3 in Subsection 4.4.1. Then, as explained in Section 4.4.2 and Proposition 4.5, these coordinates are propagated via the gate agents in G1\mathcal{G}_{1} and correspond to an output of C1C_{1} (a bit-string of length 44, where there is a one-to-one correspondence between the labels {1,1,2,2}\{-1,1,2,-2\} and 44 distinguished output bit-strings, namely 0001,1110,0111,10000001,1110,0111,1000 respectively).

Since each copy of the circuit in the c-e region is a shifted version of the previous copy by 2(n+11)2^{-(n+11)}, it is not hard to see that the bit extractors of a reliable circuit CiC_{i} that receives good inputs, actually detect the representation of point (xi,yi)(x_{i},y_{i}) in the sequence of 100 points originating with (x1,y1)(x_{1},y_{1}). In precisely the same way, the output of this circuit feeds a discrepancy back to the c-e agents. Therefore, in a solution H\mathcal{H} to ICHI_{CH}, the points that are detected from the bit extractors of the circuits C1,,C100C_{1},\ldots,C_{100} will actually correspond to the points in the sequence (x1,x2),,(x100,y100)(x_{1},x_{2}),\ldots,(x_{100},y_{100}).

As explained in Section 4.6, each such output string corresponds to a labelling of the valuations of the c-e agents in R1outR_{1}^{out} (the volumes of A+A_{+}/AA_{-} are balanced in R1inR_{1}^{in}, since the blanket sensor agent α1bs\alpha_{1}^{bs} is passive) and therefore there is a discrepancy in R1outR_{1}^{out} for exactly one c-e agent. Specifically, for Agent αj\alpha_{j}, with j{1,2}j\in\{1,2\}, the discrepancy is in favour of AkA_{k}, with k{+,}k\in\{+,-\}, if the label of the circuit output is kjkj.

One can easily check that for a c-e agent to be satisfied with the balance of the labels, it has to be the case that the excess in A+A_{+} or AA_{-} due to a specific output in region RioutR_{i}^{out} has to be “cancelled out” from an excess of the opposite label (AA_{-} or A+A_{+} respectively) in another interval RjoutRjR_{j}^{out}\subseteq R_{j}. For this to be possible, by construction, it has to be the case that the output of the corresponding circuit CjC_{j} corresponds to the opposite label of the output of CiC_{i}, if that copy of the circuit operates as intended. Therefore, if the points (xi,yi)(x_{i},y_{i}) and (xj,yj)(x_{j},y_{j}) are detected by reliable copies CiC_{i} and CjC_{j} that receive good inputs, they must have coordinates in different tiles of the domain, which are labelled with opposite labels. However, by the density of the domain and since there are at most 100100 points of the domain in the line-segment between (xi,yi)(x_{i},y_{i}) and (xj,yj)(x_{j},y_{j}), this is only possible if these points lie in neighbouring tiles of equal and opposite labels, i.e. in a solution to Variant Tucker.

A degenerate case occurs when some of the points (xi,yi)(x_{i},y_{i}) in the sequence correspond to circuits that do not achieve good inputs (note that since both c(α1)c(\alpha_{1}) and c(α2)c(\alpha_{2}) lie in the c-e region, there are no stray cuts by definition). These are the points that lie close to the boundary of two tiles and their labels assigned by the circuit are unconstrained. This in principle can cause a cancellation effect and “balance out” the discrepancies of some unambiguously labelled point, when both of these points lie in the same tile (the former near the boundary and the latter in the interior). For example, for a point p1p_{1} labelled 1-1 in some tile jj, there can be a point p2p_{2} close to the boundary with some neighbouring tile jj^{\prime} (with tile jj^{\prime} labelled 1-1 as well), that receives label 11 by the circuit (due to the fact that the labelling rules of boundary points are unconstrained). In a sequence of points that contain both p1p_{1} and p2p_{2}, the A+/AA_{+}/A_{-} discrepancy due to p2p_{2} will cancel out the A+/AA_{+}/A_{-} discrepancy due to p1p_{1}, although we are not at a solution.

This is being take care of by the averaging manoeuvre, which uses 100100 copies of the circuit and requires that at least 1010 of the points in the sequence receive a label and 1010 other points receive an equal and opposite label. More concretely, assume by contradiction that we are at a solution H\mathcal{H} of ICHI_{CH}, but the sequence of 100100 points do not correspond to a solution to IVTI_{VT}. Let λ\lambda be the label of the majority of the points in the sequence (breaking ties arbitrarily) and assume wlog that λ=1\lambda=1. Observe that by the chosen resolution of the domain, it holds that at least 4040 points in the sequence must be labelled 11. By the discussion above, since H\mathcal{H} is a solution, for every point labelled 11, there must be another point in the sequence labelled 1-1, for the cancellation to take place. By Observation 5.2, there are at most 44 such points that are arbitrarily labelled and therefore they can contribute to a cancellation of at most 1/101/10 of the excess of A+A_{+} due to the contribution of the points labelled 11. This means that there must be at least 3636 points labelled 1-1 in the sequence and the sequence (x1,y2),(x100,y100)(x_{1},y_{2}),\ldots(x_{100},y_{100}) is actually a solution to IVTI_{VT}.

Consider a solution H\mathcal{H} to ICHI_{CH} in which only one c-e cut lies in the c-e region and consider a set of points (x1,y1),,(x100,y100)(x_{1},y_{1}),\ldots,(x_{100},y_{100}) recovered from H\mathcal{H} as described in Section 4.5. Then (x1,y1),,(x100,y100)(x_{1},y_{1}),\ldots,(x_{100},y_{100}) is a solution to Variant Tucker.

The proof of the lemma is very similar to the proof of Lemma 5.5. Here, if cc is the position of the single cut in the c-e region, we have that x=0x=0 and y=1cy=1-c. Again, the binary expansion of (x,y)(x,y) is extracted from the bit extractors of C1C_{1} and the output of the encoded circuit will correspond to a discrepancy for the c-e agents in R1outR_{1}^{out} similarly as before. Again, the same is true for the remaining 9999 circuits, with the exception of possibly one circuit that might be unreliable due to the stray cut. From Lemma 5.4, it holds that the feedback of any reliable copy to the c-e agents is unaffected by the stray cut.

A stray cut intersecting interval RiR_{i} might introduce some additional discrepancy in the volume of the two labels in RiR_{i}, which is upper bounded by the valuation of the coordinate-encoding agents in RiR_{i}, i.e. 1/1001/100. The effect that this could have is that this discrepancy might cancel out the discrepancies in favour of A+A_{+} or AA_{-} introduced by at most 33 reliable circuits that receive good inputs (which happens if all of the valuation of the c-e agent in RiR_{i} is labelled AA_{-} or A+A_{+} respectively).

However, similarly to before, this can “invalidate” at most 77 points overall and there will still be 3333 points labelled 11 whose contribution to A+A_{+} needs to be cancelled out by points labelled 1-1 and we will be at a solution to IVTI_{VT}.

Equivalence of Consensus Halving and Necklace Splitting

In this section, we will prove that approximate Consensus Halving and the well-known Necklace Splitting problem are computationally equivalent, in the sense that the reduce to each other in polynomial time. It is important to point out that while our construction is quite general, it does not imply that the Necklace Splitting problem is PPA-hard, because the reduction requires the approximate Consensus Halving problem to have an inverse-polynomial precision parameter ϵ\epsilon, but it certainly indicates in that direction. In particular, a PPA-hardness result for Consensus Halving with inverse-polynomial accuracy would imply PPA-completeness of the Necklace Splitting problem as well (containment in PPA is known from ).

Note also that given that proved that approximate Consensus Halving is PPAD-hard for constant precision parameter ϵ\epsilon, we obtain as a corollary here that Necklace Splitting is PPA-hard, which partially answers an open question raised in .

Input: The value measures μi:OR+,i=1,,n\mu_{i}:O\rightarrow R_{+},i=1,\cdots,n, for nn agents and knk\leq n.

We will use the terms “consensus division” and “necklace splitting” loosely to refer to these problems without specifying the number of partitions or cuts.

All the agents’ valuations are represented as piecewise constant functions.

The number of pieces of these functions is upper bounded by some pM(n)p_{\mathcal{M}}(n) where pMp_{\mathcal{M}} is a polynomial.

The volume of each piece is upper bounded by some pV(n)p_{\mathcal{V}}(n) where pVp_{\mathcal{V}} is a polynomial.

Repeat for all of agent ii’s valuation blocks:

Let VV be the volume of the block and let α\alpha be the interval on which the block is defined. Divide the block into V/δV/\delta sub-blocks of volume δ\delta each, where

except possibly the last sub-block which will have volume δδ\delta^{\prime}\leq\delta. We will call such a sub-block an imperfect sub-block. Let αj\alpha_{j} denote the corresponding intervals, for j=1,,V/δj=1,\ldots,\lceil V/\delta\rceil.

Place a bead of colour cic_{i} in the middle of each interval αj\alpha_{j}.

If the total number bib_{i} of beads of colour cic_{i} placed is not a multiple of kk, remove bimodkb_{i}\bmod k beads of colour cic_{i}. We will refer to these beads as the parity beads.

Note that by the construction above, if (i) all sub-blocks of agent ii have volume exactly δ\delta (i.e. there are no imperfect sub-blocks), (ii) there are no parity beads and (iii) each cut in S\mathcal{S} either doesn’t intersect any valuation block or is placed on the midpoint (dj+dj+1)/2(d_{j}+d_{j+1})/2 of some interval [dj,dj+1][d_{j},d_{j+1}] (i.e. at the boundary of one or two valuation sub-blocks, e.g. see the first cut in Figure 15), then S\mathcal{S} is an exact solution to the consensus 1/k1/k-division problem. However, in addition to the potential existence of imperfect sub-blocks and the parity beads, the cuts in S\mathcal{S} might actually be placed on different points in [dj,dj+1][d_{j},d_{j+1}], because of the presence of beads of different colours which might be placed inside the intervals (e.g. see the second cut in the interval between the last two green (dark) beads in Figure 15 for an example).

2 From Necklace Splitting to Approximate Consensus Division

In this subsection, we prove that the Approximate Consensus Division solution is at least as hard as Necklace Splitting; together with the result of the previous subsection, this establishes the computational equivalence of the two problems.

The idea that we will use for the reduction is very similar to the one presented by Alon for proving that a solution to (discrete) Necklace Splitting can be obtained from a solution for the continuous version. The proof in starts from an (exact) solution to the continuous problem and proves using induction that it can be transformed into a solution for the discrete version, but appropriately moving some of the cuts, if needed. Here, we explain how to obtain a solution to Necklace Splitting from an approximate solution of the continuous division problem and that this process runs in time polynomial in the number of beads of the necklace.

For every colour ci{1,2,,n}c_{i}\in\{1,2,\ldots,n\} of B\mathcal{B}, we associate an agent ii.

For every bead of colour cic_{i}, we create a valuation block of width δ\delta and height 1/δ1/\delta for some sufficiently small δ\delta, such that the bead lies in the midpoint of the interval corresponding to the valuation block. Note that without loss of generality, we can assume that in B\mathcal{B}, the beads are sufficiently spread (this does not affect the solution) and therefore there is no overlap between any two valuation blocks and in fact, the distance between any two valuation blocks is at least β\beta, for some sufficiently large β\beta.

Note that by taking β\beta to be larger than 2ϵ2\epsilon, we can ensure that in any solution S\mathcal{S} of C\mathcal{C}, each cut intersects with at most one valuation block and therefore all agents have their own designated cuts. In other words, manipulating the positions of the cuts that intersect some valuation interval [l,r][l,r] of one agent does not affect the quality of the solution for any other agent, as long as the cuts remain within [lβ/2,r+β/2][l-\beta/2,r+\beta/2] (i.e. they do not move into other valuation blocks).

Following , we will consider a set of multigraphs (one for each agent) Gi=(Vi,Ei)G_{i}=(V_{i},E_{i}), where Vi={F1,F2,,Fk}V_{i}=\{F_{1},F_{2},\ldots,F_{k}\}, i.e. we have one vertex for each one of the kk possible labels. Each edge of the graph will correspond to a cut; in particular, there is an edge (Fa,Fb)(F_{a},F_{b}) for each bad cut between two pieces with labels aa and bb, and note that there might be multiple such edges. Note that by the discussion above, if vi(Oa)vi(Ob)ϵ|v_{i}(O_{a})-v_{i}(O_{b})|\geq\epsilon, then the degree of both FaF_{a} and FbF_{b} is at least 22 and therefore the graph has at least one cycle.

For each agent ii, we will use two subroutines, one to eliminate all cuts in BiB_{i} except for possibly the inaccuracy cuts and the second one to eliminate the remaining bad cuts. For the first subroutine, we will work with the graph GiG_{i} and we will eliminate cuts in BiB_{i} in steps, by removing edges of the graph, i.e. the graph will be evolving. After each step, the following invariant will be maintained: The total volume of each partition remains unchanged and the number of bad cuts will be reduced by at least 11. The subroutine is stated below.

Some cut coincides with another cut. In that case, merge all the coinciding cuts and remove the labels of the pieces of volume .

Some cut coincides with the endpoint of an interval.

It is clear that at the end of each step of the procedure above, the number of bad cuts is decreased by at least one, either because the cut was merged with another bad cut, or because the cut was moved to the boundary of the interval. Additionally, since all the cuts have been moved by the same amount and for a each vertex in the cycle, one move was in an increasing direction and one was in a decreasing direction, the total volume of each portion OjO_{j}, for j=1,,kj=1,\ldots,k, remains unchanged. Finally, at the end of the routine, all cycles have been resolved and the graph GiG_{i} is acyclic.

This subroutine will be simple, just move each cut to the closest endpoint of the interval [l,r][l,r] whose interior it intersects. Note that the imbalance in volume between any two labels j1j_{1} and j2j_{2} is due to a single bad cut, otherwise the graph GiG_{i} would have a cycle. Since each valuation block is constructed to have total volume 11, the cut must lie in [l,l+γ][rγ,r][l,l+\gamma]\cup[r-\gamma,r], where γ<ϵδ\gamma<\epsilon\cdot\delta and therefore it can unambiguously be moved to the closest endpoint of [l,r][l,r]. Additionally, this sequence of moves produces an exact solution to C\mathcal{C}, as otherwise, the original solution would have a discrepancy larger than ϵ\epsilon with respect to at least two partitions Oj1,Oj2O_{j_{1}},O_{j_{2}}. Since there are only polynomially many cuts, the second subroutine also runs in polynomial time. This completes the proof.

3 Hardness results for (approximate) Necklace Splitting

First, we remark that we can define an approximate version of Necklace Splitting, where the goal is to partition the necklace into pieces that contain approximately the same number of beads of colour cic_{i}, for each i=1,2,,ni=1,2,\ldots,n. Formally:

In , it was proven that the approximate Consensus Halving problem is PPA-hard when n+tn+t cuts are used, for some constant tt and NP-hard when only n1n-1 cuts are used. From these results and from the results of this section 6.4 we obtain the following corollary.

Conclusions

We hope that the present work will lead to more PPA-completeness results, starting with the Necklace Splitting problem. The reason for believing that Necklace-splitting is PPA-complete, is that it would be surprising if, in relaxing the approximation parameter ϵ\epsilon from inverse-exponential to inverse-polynomial, we should lose PPA-hardness but retain PPAD-hardness. That is what would be the case if Necklace-splitting were merely PPAD-complete.

References