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 agents each of whom has a valuation function on a 1-dimensional line segment (the “cake”, in cake-cutting parlance). Consider the problem of selecting “cut points” in that partition into 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 ; 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 sets of points in general position in -space, find a hyperplane that splits each of these sets into two subsets of size ). 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 in a Consensus-halving instance, has a particular cut associated with . In an instance of Consensus-halving, we refer to the interval on which agents have valuation functions, as the domain of .
established PPAD-hardness by reduction from the PPAD-complete problem -Gcircuit (-approximate Generalised Circuit) in which the challenge is to find a fixpoint of a circuit in which each node computes (with error at most ) a real value in the range $\epsilon\nua_{\nu}\nuc(a_{\nu})a_{\nu}\nu\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 , 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 . 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 . Consequently it may interfere with the circuitry that 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 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 -Consensus-halving that may require to be inverse exponential. PPA-hardness for inverse polynomial 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 , the allowed difference in value between the two sides of the partition, applicable to any agent.
-Consensus-halving: An instance incorporates, for each of , a non-negative measure of a finite line interval , where each integrates to 1 and is part of the input. We assume that are step functions represented in a standard way, in terms of the endpoints of intervals where is constant, and the value taken in each such interval. We use the bit model (logarithmic cost model) of numbers. also incorporates also represented using the bit model. We regard as the value function held by agent for subintervals of .
A solution consists firstly of a set of cut points in (also given in the bit model of numbers). These points partition into (at most) subintervals, and the second element of a solution is that each subinterval is labelled or . This labelling is a correct solution provided that for each , , i.e. each agent has a value in the range for the subintervals labelled (thus, also values the subintervals labelled in that range).
A version where the domain is take to be $xnxn$; 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 to be inverse exponential in , which will be essential for our reduction. In fact, established PPAD-hardness of the problem even for constant . An interesting open question is whether our PPA-hardness result can be extended for constant or even inverse polynomial (which would lead to PPA-completeness for Necklace-splitting; Section 6).
The fact that the functions are step-functions which integrate to over the whole interval is desirable, since this makes the hardness result stronger, compared to arbitrary functions. Note that while the step functions must have polynomially-many steps, the values they may take can differ by exponential (in ) 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 and alternate as we consider the subintervals formed by the cuts, from left to right. If, say, there are two consecutive subintervals labelled 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 . We can also assume without loss of generality that the labelling sequence starts with on the leftmost subinterval of defined by the set of cuts.
2 The 2D2𝐷2D-Tucker problem
We review the total search problem -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 -Tucker consists of a labelling satisfying the boundary conditions: for , and . A solution to such an instance of 2D-Tucker is a pair , () with and such that .
In the above definition, is exponential, and 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 of -Tucker (with complexity parameter ) is defined as follows. Consider the square region . For , the -squarelet denotes the unit square whose top right vertex is at . consists of a boolean circuit having input bits representing the coordinates of a squarelet, and 2 output bits representing values . ’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 and (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 2D2𝐷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. and (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 of 2D-MS-Tucker (with complexity parameter ) is defined as follows. Consider the square region . For , the -squarelet denotes the unit square whose top right vertex is at . consists of a boolean circuit having input bits representing the coordinates of a squarelet, and 2 output bits representing values . ’s labelling should obey the boundary conditions of noted above, but in addition, all squarelets with get labelled 1, and all squarelets with 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 be an instance of 2D-Tucker of size . We will construct an instance of 2D-MS-Tucker of size such that a solution to will let us efficiently recover a solution to . We will need to establish three facts, namely that (i) 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 there is a corresponding solution to and (iii) that given such a solution to , we can find a solution to in polynomial time.
First, we augment instance with squares of size attached to the top side (denoted ) and the bottom side (denoted ) of the squareEquivalently, we can attach squares of size to the left and right sides of the square., which results in a rectangle, where only the squarelets with coordinates with and 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 with , , i.e. the top-attached square ; the colouring of the squarelets of the bottom-attached square is symmetric by the fact that the labels of the squarelets of and satisfy the antipodal labelling of Tucker’s lemma.
To describe the labelling of the square, let be the set of squarelets of that have been assigned a label; obviously at the beginning of the labelling . 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 or the bottom side 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 or (i.e. left or right) and then towards the sides of ( or with directions down or up respectively). This obviously can be done in time polynomial in .
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 that are equivalent when their binary expansions are truncated after bits of precision; thus any subregion is a square with an edge length of .
Consider pairs of non-negative even numbers, for which either and are both multiples of 4, or neither are.
Define the -tile to be a union of 8 subregions arranged as in Figure 2, with central point at , having a height and width of . (Thus all horizontal and vertical line segments have coordinates that are multiples of .) If or is equal to zero, the tile consists of just the parts of this region with non-negative coordinates.
Observe that (for the values of allowed in Definition 5) tiles tessellate the positive quadrant of the plane as in Figure 2.
An instance of Variant Tucker with complexity parameter , consists of a boolean circuit that takes as input bits. These input bits represent the coordinates of a point for , each of and represented as a bit string with binary places of precision. has 4 boolean outputs that we use to represent the values , respectively as .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 -bit circuit output in order to simplify the construction of the Consensus-Halving instance in Section 4. obeys the following constraints that may be enforced syntactically:
if then must output ;
if then must output ;
if then the output of should be opposite to its output on , and similarly for points with ;
the output value of may not depend on the last 7 bits of or ;
Moreover, ’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, ’s output value is unrestricted.
A solution consists of a sequence of 100 points for , where , and for we have and , 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 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 of 2D-MS-Tucker correspond to tiles in an instance of Variant Tucker as follows.
contains squarelets for . Each squarelet determines the value taken by on the -tile. With this rule, the squarelets of are mapped into tiles in the region 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 are squarelets with having label 1, and squarelets with having label . As a result, these squarelets get mapped to sides of the region that are adjacent to and match the monochromatic regions adjacent to (the regions where , alternatively ).
Any tile in the remaining parts of the triangular domain of Figure 3 is allocated the same colour as its closest (Euclidean distance) tile in . That is, the colour of the -tile is allocated to the -tile, for positive integers , and the colour of the -tile is allocated to the -tile, for positive integers . Notice that this rule obeys Property 3 of Definition 6, due to the boundary condition on the colouring of squarelets in .
Given that has a concise circuit that labels its squarelets, it’s not hard to see that the corresponding instance 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 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 of Figure 3, the two tiles correspond directly to two adjacent squarelets in having opposite labels. It could also occur in the regions or , in which case we find a solution in the closest edge of . Suppose the sequence of 100 points “wraps around”, i.e. straddles and , crossing the line between and and appearing just to the right of the line between and . 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 , 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 that are closest to the sequence of points.
Construction of the Consensus Halving Instance
In this section, we describe how to construct an instance of -Consensus-halving from an instance of Variant Tucker, for inverse-exponential precision parameter . At a high level, the domain of will have two designated regions – a small one, typically containing 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 and 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 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 of Variant Tucker with complexity parameter , we will construct an instance of -Consensus-halving for . Let denote the Consensus-Halving domain, an interval of the form where is of size polynomial in . Any agent in has a measure which will be represented by a step function (having a polynomial in number of steps).
. The domain will consist of two main regions:
The coordinate-encoding region $$ (abbreviated as the c-e region).
The circuit-encoding region (abbreviated as R).
Our construction contains copies of an encoding of the labelling circuit of Variant Tucker and for the purpose, the circuit-encoding region will be further divided into non-intersecting sub-regions , one for each copy of the circuit. The regions are of equal length and constitute a partition of . We further divide each region into three sub-regions , and , which again are non-intersecting and partition . These regions correspond with parts of a circuit that deal respectively with the input bits, the intermediate bits and the outputs.
The instance will have the following sets of agents:
coordinate-encoding agents whose valuation functions , are only positive in . (See Subsection 4.3 and Figure 7).
100 circuit-encoders (see Subsection 4.4).
Each has an associated circuit-encoding region of the domain.
With each , there is a polynomial number of associated circuit-encoding agents. Let be the set of those agents; the set consists of the following sets of agents.
A set of sensor agents with value 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 of polynomially-many gate agents, with value in . (See Subsection 4.4.2 and Figure 10).
We associate one cut with each agent; recall that for agent , is the cut associated with the agent. In a solution to , for any agent , these cuts will lie in a specific region, where most of the value of agent will be concentrated. We will use to denote this region. The cuts for the coordinate-encoding agents, are called the coordinate-encoding cuts and the associated region for them is the c-e region, i.e. . 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 . 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 where most of the valuation of agent 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 and the label to the right of the cut is . 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 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 cuts, in a solution to , only one cut is allowed to lie in the region 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 but rather we will assume without loss of generality that the left-hand sides of the cuts are labelled , 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 or Figure 6, the values in the 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 and 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 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 , and respectively. Let , and be intervals such that . 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 , 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 and the label on the right-hand side will be , whereas for the outputs to the OR and AND gate, the label on the left-hand side of the cut is and the label on the right hand side is . 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 $\epsilonI_{VT}2\alpha_{1}\alpha_{2}R_{i}\bigcup_{i=1}^{100}R_{i}^{out}$.
The value of the c-e agents in will corresponds to the feedback mechanism from the blanket sensor agent of (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 , the value of the agent in adds up to and therefore the agent’s total valuation in is . Intuitively, each coordinate encoding region has values that consist of the following components in each region :
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 (see also Subsection 4.4.2). There are four output gate agents in each ; has value in the corresponding intervals for two of those and 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 . Recall that these are sets of agents of that encode the labelling circuit of Variant Tucker, including the inputs and the outputs to the circuit, via the use of sets of circuit-encoding agents. In the set , there are two different types of circuit-encoding agents:
The sensor agents 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 . Among those agents, there is a designated agent 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 and then based on this, we will construct the remaining circuit-encoders .
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 contains sensor agents, which consist of
the blanket sensor agent , that is responsible for detecting large discrepancies in the lengths of and 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 is defined as:
The blanket sensor agent is responsible for detecting large enough discrepancies in and . 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 . We state the lemma here but postpone its proof for Section 5.
Let and be the total fraction of the c-e region labelled and respectively. The blanket sensor agents ensure that in a solution to , it holds that
Whenever the blanket sensor agent does detect such a discrepancy (and therefore the cut in 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 . Otherwise, we will say that the blanket sensor agent is passive.
The bit extractors
The second set of agents in will be responsible for detecting the position of the cuts and extracting their binary expansion. To be more precise, these agents will extract binary numbers of length , from consecutive intervals of length 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 . If for some interval of length there are no cuts intersecting it, the corresponding bit extractors will output a binary string which will consists of only ’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 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 ’s.
The raw data extracted from the bit-extractors will be fed into the encoders of the input gates of , and in particular to the pre-processing circuit that will transform the extracted information into the binary representation of the coordinate of a point on the domain, which will then be fed into the encoding of the labelling circuit . We explain this in more detail in Section 4.4.2.
For each bit extractor, there are another sensor agents that will have exactly the same value in $1/101/8n+88n+8i=2,\ldots,8i1/8i-1$. Therefore, the set of sensor agents covers the whole c-e region. (See Figure 9).
The agents in : First, we will define the valuations of agents 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 c-e identical bit extractors have their value in the c-e region (e.g. the interval for the first c-e identical agents), the bit extractors recover a binary string of length which encodes the cut position in that interval.
if and
if , and .
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 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 can extract the binary representation of a point 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 , we will associate a gate agent 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 . The output intervals are subintervals of that do not overlap with any other intervals in .
Next, for any agent ,
and are the intervals and of agents , where correspond to the inputs and of gate in
is an interval of which does not overlap with any interval or , for any .
The definitions for the intervals and of the agents that correspond to NOT gates are very similar.
Finally, for the gate agents , corresponding to the output gates and of , we have that
and are the intervals and of agents , where correspond to the inputs and of gate in .
is one of the subintervals in which a -fraction of the value of a coordinate-encoding agent lies, i.e.
Note that there are such subintervals and the output of each of the four gates for 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 in the c-e region. Then, the outcome of is fed directly into the input gates of 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.
, if is a string of ’s and
, if is a string of ’s.
In simple words, the circuit reads the raw data from the bit-encoders for regions and depending on whether it is a string of ’s or a string of ’s, it interprets the bit extracted from as the distance from the left or the right endpoint of the interval respectively. In the event where intersects , the information is obtained similarly from the bit-extractors of region (which have to output a solid string by Lemma 4.2, as discussed previously). Specifically, the pre-processing circuit in that case sets:
, if is a string of ’s and
, if is a string of ’s.
where is the binary string extracted from the bit-extractors of .
Now consider the case when there is only one cut in the c-e region. In that case, in a solution to , the cut can not intersect regions or as that would violate Lemma 4.2 and there exist regions both to the left and to the right of the region intersected by the cut which provide solid strings as inputs to the pre-processing circuit. In that case, the pre-processing circuit sets and
, if is a string of ’s and
, if is a string of ’s.
In the event that some cut lies exactly in the boundary of two consecutive regions and for some , the only difference is that the circuit does not receive an input with a non-trivial mix of ’s and ’s for this cut, but rather a sequence of solid strings consisting of ’s followed by a solid string of ’s, extracted by the bit-extractors of region . In that case, the circuit operates exactly as before, with the cut lying in region .
The encoding of the circuit will consist of the encodings of two subcircuits, the labeling circuit of Variant Tucker and the XOR operator circuit.
The input to the circuit is the binary representations of the coordinates of a grid point within a squarelet of outputted by the pre-processing circuit. Recall that each squarelet contains a set of grid points with a resolution of in each dimension (see Figure 2). The output is a label ; in particular, the output gates of are and 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 . Recall the definition of the solid strings as well as the regions for from earlier, with denoting the raw data outputted by the bit-extractors of region . Let denote any bit of a solid bit-string (since they are all the same) and let denote its complement. First, a sub-circuit will perform the following operation on the raw data.
If the output of the bit-extractors in is solid, then output a bit .
If the output of the bit-extractors in is not solid, then output a bit .
Note that by Lemma 4.2, if is not solid, has to be solid. Finally, if are the outputs of , the XOR operator outputs a string with , for , where 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 as follows. For , let denote the ’th circuit-encoding agent in . Then for all , for all ,
let if , and .
let , if , i.e. if 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 differ from those of by having been shifted to the left by , where this shift “wraps around” in the event that we shift below (the left-hand point of the c-e region). In other respects, is an exact copy of , save that ’s internal circuitry lies in rather than .
The virtual cuts: For the circuit encoders 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 , encoding a point of the domain (also see Section 4.5). Since is a version of where all the values in the c-e region are shifted by to the left (wrapping around for some valuations), we can equivalently think of the output of as what the output of would have been if the cuts had been moved slightly to the right, i.e. to and respectively. In other words, for each circuit-encoder , we can think of its output as the output of if the cut were placed at and . We will refer to such cuts as virtual cuts.
In this subsection, we explain how to obtain a solution to from a solution to . Recall from Section 3 that a solution to is a sequence of points of the (discrete) domain, lying on a line segment such that two sets of at least of these points each have coordinates in squarelets of equal and opposite labels. Specifically, for each point on the segment, with , it holds that and (See Figure 2).
Now consider a solution to . As we will establish in Section 5, in there must exist one or two cuts situated in the coordinate-encoding region $$.
If there is only one cut in $z\inx=0y=1-z$ be the coordinates of a point on the domain.
If there are 2 cuts in $z,z^{\prime}x=zy=1-z^{\prime}$ be the coordinates of a point in the domain.
If we use bits of precision to represent the coordinates of the point that correspond to the solution above, we end up with the closest point on the discrete domain to . Then, we can obtain a solution to by generating a sequence of points by setting and for .
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 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 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 of the domain recovered as described in Section 4.5, each point in the sequence of points will be labelled by a different copy of the circuit . Consider such a copy and let be its output; recall that (which can be syntactically enforced) and furthermore, we have the following correspondence of labels to outputs:
Assume that the , for some and let be the corresponding label. For each of the c-e agents and , the contribution to from its valuation on isAssuming that behaves as expected, i.e. it receives good inputs and is reliable - see Section 5 for the definitions.
where a contribution of to here denotes a contribution of to . To see this, note that a set of the cuts corresponding to the output of would lie respectively:
To the right of the leftmost valuation block of Agent in , thus labelling the whole block .
To the right of the rightmost valuation block of Agent in , thus labelling the whole block .
To the right of the leftmost valuation block of Agent in , thus labelling the whole block .
To the left of the leftmost valuation block of Agent in , thus labelling the whole block .
See Figure 7 for an illustration. Since all of these valuation blocks have volume each, the total contribution to from an output of (and therefore a label of ) is for Agent , whereas for Agent , the total contribution is and the sub-partition restricted to is balanced. The argument for the remaining output/labels is very similar.
The “wrap-around” labels: In some cases, the circuit-encoders will detect points close to the boundary of the triangular domain of Variant Tucker in which case the sequence of points 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 close to zero and ends with a point with 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 , this situation occurs when (i) either there are two cuts and in the c-e region and sits very close to 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 detects a virtual cut, (which is a shifted version of the cut detected by as explained earlier), this sequence of points will be correctly generated by the reduction. For example, where there is only one cut in the c-e region, while the bit-extractors of only “see” that cut, the bit-extractors of each circuit-encoder “see” another cut, situated at position . This is because the “wrapped-around” valuation of the first c-e identical sensors of “sees” both (on the left side of ) and (on the right side of ), and therefore detect that a cut intersects the region - this is the virtual cut detected by (similarly for the case of two cuts).
Interpreting the virtual cut as the actual cut, the circuit-encoder now “sees” the label on the left-hand side of and on the right-hand side. Intuitively, interprets the input as if the left endpoint of the region was (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 . The pre-processing circuit ensures that the correct point of the wrapped-around subsequence is encoded, and the XOR operator circuit of 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 of -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 .
Let , be one of the 100 copies of the circuit in an instance of -Consensus-halving as constructed in Section 4. We say that receives good inputs with respect to positions of the c-e cuts, if receives valid boolean-encoding inputs extracted from and .
For example, in the case of , receives good inputs provided that the point of the domain of Variant Tucker is not too close to the boundary of a sub-region. A simple observation is the following.
In , at most 4 copies of 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 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 and intervals.
Assume that in the c-e region, there is a discrepancy of labels which is larger than , i.e. . Then, since the blanket sensor agent has valuation distributed uniformly on $|\mu_{\alpha_{1}^{bs}}(A_{+}\cap)-\mu_{\alpha_{1}^{bs}}(A_{-}\cap)|>1/401/40I_{CH}c(\alpha_{1}^{bs})\mu_{\alpha_{1}^{bs}}(A_{+}\cap)-\mu_{\alpha_{1}^{bs}}(A_{-}\cap)|<0\mu_{\alpha_{1}^{bs}}(A_{+}\cap)-\mu_{\alpha_{1}^{bs}}(A_{-}\cap)|>0\alpha_{1}^{bs}A\alpha_{1}\alpha_{2}R_{1}3/4R_{1}i=1,\ldots,100\alpha_{i}^{bs}C_{i}$, in particular for each reliable copy of the circuit.
A bit more concretely, since there are at most stray cuts, there are at most unreliable copies and of the circuit. For any such that , the blanket sensor agent will detect a value of , as the cut associated with in must intersect the right thin valuation block of the blanket sensor agent’s value in (see Figure 7), or otherwise would not be a solution to . But then, in the cut-encoding regions , all of the valuation blocks of agent in (see Figure 7), will receive the same label. Since in each , the value of agent in is a -fraction of its total value in and since at least 98 copies are reliable, at least a -fraction of agent ’s valuation will receive the same label and therefore the agent is dissatisfied with the partition and 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 .
In a solution to an instance of -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 to , 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 (i.e. every agent besides the two c-e agents ), it holds that most of the valuation of the agent (in particular, sufficiently more than a -fraction) lies in a designated interval, which we will denote by . Agent is not the only agent that has non-zero value in , but it holds that for , i.e. each agent in has a different designated interval. Also, note that none of this intervals intersects with the c-e region, i.e. , for all agents .
Obviously, by construction, for such an interval , if there is no cut that intersects the interval, then agent will be dissatisfied with the balance of and and will not be a solution to . Additionally, since there are such designated intervals which do not intersect with the c-e region, must place at most 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 . By Lemma 4.2, the blanket sensor agents will detect the discrepancy and 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 , 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 and where . In that case, exactly the similar arguments apply if we consider the interval to be , i.e. the first half of the interval is considered to be if and if .
Consider a set of c-e identical agents with value in of the c-e region, for some . Assume first that a cut lies in and that no other cut lies in . Then, (since by convention the first cut in the c-e region has on its left-hand side), the c-e identical agents of region 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 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 and the first cut lies somewhere in . Observe that the first cut must have been detected by another set of c-e identical bit-extractors, with . Since the agents in are now extracting the position of the second cut, notice that the label on the left-hand side of the cut is now , which effectively “flips” the outputs of the bit-extractors (the bit-detection gadgets) 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 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 , which will be either a string of s (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 , with , it also knows how to interpret these trivial inputs.
Finally, the pre-processing circuit can combine the inputs from all the different intervals into a -bit string which encodes the coordinates of a point 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 extract the binary representation of the cuts in the sub-regions of length of the c-e region.
This input is fed to the circuit .
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 (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 are being used to implement the pre-processing circuit and the circuit , which is an exact copy of , 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 , 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 , 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 . We will use the following definition.
In a solution of 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 .
It intersects the circuit-encoding region of some circuit encoder , for .
It flips the parity of the circuit encoders , with , where is the position of the stray cut in . In other words, if the first cut in was expecting to see on its left-hand side, it now sees and vice-versa.
The first effect is not much of a problem; we simply deem this circuit unreliable:
We will say that a copy of the circuit () is reliable if none of the c-e cuts intersects . A copy of the circuit is unreliable if it is not reliable.
Since there is only one stray cut, there is at most one unreliable circuit . The error that this copy will introduce to the volumes of the labels and 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 , as well as the accompanying information (the solid strings) that indicate how to interpret the aforementioned binary strings as coordinates that get some label by . 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 , there is one cut in the c-e region (the cut ) at some position , which is ensured by Lemma 5.3 and Lemma 4.2. Circuit evaluates the label at a point where and , i.e. outputs the evaluation of circuit on the set of virtual cuts and respectively.
Consider the operation of adding a cut between the c-e region and . This effectively causes the output bits of the the bit extractors of to flip, as the cut in for every bit extractor is now “seeing” on its left-hand side, rather than . We claim that the outputs of will be the same as before, regardless of the flip.
Consider first the output of in the absence of the stray cut and assume without loss of generality that the solid strings outputted by the bit-extractors of the regions are strings of ’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 and the distance between the detected position and . See Figure 13 for an example when .
Now consider the output of in the presence of the stray cut in . 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 outputted by the bit-extractors of regions are strings of ’s,
The bit extractors of now extract the string , i.e., the bit-wise complement of . Note that if the bit-string encodes the position of a cut at , then encodes the position of a cut at . Therefore, if the cut is actually placed at , the effect of the flip is that the bit-extractors of now detect the cut as being placed at .
If we used the output of 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 and shown to the c-e agents in would flip, because (i) the output of is unaffected by the flip but (ii) the stray cut changes the parity of the label sequence, causing the parts of that were labelled to now be labelled and vice-versa. That would introduce a false discrepancy of the balance of and 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 . For example, if before the insertion of the stray cut, the solid strings outputted by the bit-extractors of regions are strings of ’s after the insertion of the stray cut, the outputs of the circuit are , for , where , are the outputs of . In other words, the output of is the bit-wise complement of the ouput of (or alternatively, outputs label if the label ouputted by is . The effect of this “double negative” operation is that
Given how labels correspond to discrepancies on and 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 ’s which indicates that no flip has taken place), then the XOR operation leaves the outputs of unaffected (and there is no flipping of the label sequence in 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 to in which both c-e cuts lie in the c-e region and consider a set of points recovered from as described in Section 4.5. Then is a solution to Variant Tucker.
Let and be the positions of the c-e cuts, which are assumed in the statement of the lemma to both lie in $x=c_{1}(\alpha_{1})y=1-c_{2}(\alpha_{2})I_{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 extract the binary representation of the coordinates , 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 and correspond to an output of (a bit-string of length , where there is a one-to-one correspondence between the labels and distinguished output bit-strings, namely respectively).
Since each copy of the circuit in the c-e region is a shifted version of the previous copy by , it is not hard to see that the bit extractors of a reliable circuit that receives good inputs, actually detect the representation of point in the sequence of 100 points originating with . In precisely the same way, the output of this circuit feeds a discrepancy back to the c-e agents. Therefore, in a solution to , the points that are detected from the bit extractors of the circuits will actually correspond to the points in the sequence .
As explained in Section 4.6, each such output string corresponds to a labelling of the valuations of the c-e agents in (the volumes of / are balanced in , since the blanket sensor agent is passive) and therefore there is a discrepancy in for exactly one c-e agent. Specifically, for Agent , with , the discrepancy is in favour of , with , if the label of the circuit output is .
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 or due to a specific output in region has to be “cancelled out” from an excess of the opposite label ( or respectively) in another interval . For this to be possible, by construction, it has to be the case that the output of the corresponding circuit corresponds to the opposite label of the output of , if that copy of the circuit operates as intended. Therefore, if the points and are detected by reliable copies and 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 points of the domain in the line-segment between and , 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 in the sequence correspond to circuits that do not achieve good inputs (note that since both and 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 labelled in some tile , there can be a point close to the boundary with some neighbouring tile (with tile labelled as well), that receives label by the circuit (due to the fact that the labelling rules of boundary points are unconstrained). In a sequence of points that contain both and , the discrepancy due to will cancel out the discrepancy due to , although we are not at a solution.
This is being take care of by the averaging manoeuvre, which uses copies of the circuit and requires that at least of the points in the sequence receive a label and other points receive an equal and opposite label. More concretely, assume by contradiction that we are at a solution of , but the sequence of points do not correspond to a solution to . Let be the label of the majority of the points in the sequence (breaking ties arbitrarily) and assume wlog that . Observe that by the chosen resolution of the domain, it holds that at least points in the sequence must be labelled . By the discussion above, since is a solution, for every point labelled , there must be another point in the sequence labelled , for the cancellation to take place. By Observation 5.2, there are at most such points that are arbitrarily labelled and therefore they can contribute to a cancellation of at most of the excess of due to the contribution of the points labelled . This means that there must be at least points labelled in the sequence and the sequence is actually a solution to .
Consider a solution to in which only one c-e cut lies in the c-e region and consider a set of points recovered from as described in Section 4.5. Then is a solution to Variant Tucker.
The proof of the lemma is very similar to the proof of Lemma 5.5. Here, if is the position of the single cut in the c-e region, we have that and . Again, the binary expansion of is extracted from the bit extractors of and the output of the encoded circuit will correspond to a discrepancy for the c-e agents in similarly as before. Again, the same is true for the remaining 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 might introduce some additional discrepancy in the volume of the two labels in , which is upper bounded by the valuation of the coordinate-encoding agents in , i.e. . The effect that this could have is that this discrepancy might cancel out the discrepancies in favour of or introduced by at most reliable circuits that receive good inputs (which happens if all of the valuation of the c-e agent in is labelled or respectively).
However, similarly to before, this can “invalidate” at most points overall and there will still be points labelled whose contribution to needs to be cancelled out by points labelled and we will be at a solution to .
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 , 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 , we obtain as a corollary here that Necklace Splitting is PPA-hard, which partially answers an open question raised in .
Input: The value measures , for agents and .
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 where is a polynomial.
The volume of each piece is upper bounded by some where is a polynomial.
Repeat for all of agent ’s valuation blocks:
Let be the volume of the block and let be the interval on which the block is defined. Divide the block into sub-blocks of volume each, where
except possibly the last sub-block which will have volume . We will call such a sub-block an imperfect sub-block. Let denote the corresponding intervals, for .
Place a bead of colour in the middle of each interval .
If the total number of beads of colour placed is not a multiple of , remove beads of colour . We will refer to these beads as the parity beads.
Note that by the construction above, if (i) all sub-blocks of agent have volume exactly (i.e. there are no imperfect sub-blocks), (ii) there are no parity beads and (iii) each cut in either doesn’t intersect any valuation block or is placed on the midpoint of some interval (i.e. at the boundary of one or two valuation sub-blocks, e.g. see the first cut in Figure 15), then is an exact solution to the consensus -division problem. However, in addition to the potential existence of imperfect sub-blocks and the parity beads, the cuts in might actually be placed on different points in , 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 of , we associate an agent .
For every bead of colour , we create a valuation block of width and height for some sufficiently small , 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 , 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 , for some sufficiently large .
Note that by taking to be larger than , we can ensure that in any solution of , 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 of one agent does not affect the quality of the solution for any other agent, as long as the cuts remain within (i.e. they do not move into other valuation blocks).
Following , we will consider a set of multigraphs (one for each agent) , where , i.e. we have one vertex for each one of the possible labels. Each edge of the graph will correspond to a cut; in particular, there is an edge for each bad cut between two pieces with labels and , and note that there might be multiple such edges. Note that by the discussion above, if , then the degree of both and is at least and therefore the graph has at least one cycle.
For each agent , we will use two subroutines, one to eliminate all cuts in 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 and we will eliminate cuts in 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 . 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 , for , remains unchanged. Finally, at the end of the routine, all cycles have been resolved and the graph is acyclic.
This subroutine will be simple, just move each cut to the closest endpoint of the interval whose interior it intersects. Note that the imbalance in volume between any two labels and is due to a single bad cut, otherwise the graph would have a cycle. Since each valuation block is constructed to have total volume , the cut must lie in , where and therefore it can unambiguously be moved to the closest endpoint of . Additionally, this sequence of moves produces an exact solution to , as otherwise, the original solution would have a discrepancy larger than with respect to at least two partitions . 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 , for each . Formally:
In , it was proven that the approximate Consensus Halving problem is PPA-hard when cuts are used, for some constant and NP-hard when only 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 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.