The Classes PPA-k: Existence from Arguments Modulo k

by   Alexandros Hollender, et al.
University of Oxford

The complexity classes PPA-k, k ≥ 2, have recently emerged as the main candidates for capturing the complexity of important problems in fair division, in particular Alon's Necklace-Splitting problem with k thieves. Indeed, the problem with two thieves has been shown complete for PPA = PPA-2. In this work, we present structural results which provide a solid foundation for the further study of these classes. Namely, we investigate the classes PPA-k in terms of (i) equivalent definitions, (ii) inner structure, (iii) relationship to each other and to other TFNP classes, and (iv) closure under Turing reductions.



There are no comments yet.


page 1

page 2

page 3

page 4


Completeness in Polylogarithmic Time and Space

Complexity theory can be viewed as the study of the relationship between...

A Topological Characterization of Modulo-p Arguments and Implications for Necklace Splitting

The classes PPA-p have attracted attention lately, because they are the ...

An Overview Of Some Semantic And Syntactic Complexity Classes

We review some semantic and syntactic complexity classes that were intro...

Communication Complexity of Discrete Fair Division

We initiate the study of the communication complexity of fair division w...

On Search Complexity of Discrete Logarithm

In this work, we study the discrete logarithm problem in the context of ...

Uniform Diagonalization Theorem for Complexity Classes of Promise Problems including Randomized and Quantum Classes

Diagonalization in the spirit of Cantor's diagonal arguments is a widely...

Approximating cube roots of integers, after Heron's Metrica III.20

Heron, in Metrica III.20-22, is concerned with the the division of solid...
This week in AI

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

1 Introduction

The complexity class TFNP is the class of all search problems such that every instance has a least one solution and any solution can be checked in polynomial time. It has attracted a lot of interest, because, in some sense, it lies between P and NP. Moreover, TFNP contains many natural problems for which no polynomial algorithm is known, such as Factoring (given a integer, find a prime factor) or Nash (given a bimatrix game, find a Nash equilibrium). However, no problem in TFNP can be NP-hard, unless NP co-NP [27]. Furthermore, it is believed that no TFNP-complete problem exists [30, 32]. Thus, the challenge is to find some way to provide evidence that these TFNP problems are indeed hard.

Papadimitriou [30] proposed the following idea: define subclasses

of TFNP and classify the natural problems of interest with respect to these classes. Proving that many natural problems are complete for such a class, shows that they are “equally” hard. Then, investigating how these classes relate to each other, yields a relative classification of all these problems. In other words, it provides a unified framework that gives a better understanding of how these problems relate to each other. TFNP subclasses are based on various non-constructive existence results. Some of these classes and their corresponding existence principle are:

  • PPAD : given a directed graph and an unbalanced vertex (i.e. out-degree in-degree), there must exist another unbalanced vertex.

  • PPA : given an undirected graph and vertex with odd degree, there must exist another vertex with odd degree (Handshaking Lemma).

  • PPP : given a function mapping a finite set to a smaller set, there must exist a collision (Pigeonhole Principle).

Other TFNP subclasses are PPADS, PLS [24], CLS [11], PTFNP [19], EOPL and UEOPL [15]. It is known that , and . Any separation of these classes would imply P NP, but various oracle separations exist [2, 29, 4, 5] (see Section 2 for more details).

TFNP subclasses have been very successful in capturing the complexity of natural problems. The most famous result is that the problem Nash is PPAD-complete [10, 7], but various other natural problems have also been shown PPAD-complete [9, 6, 8, 25]. Many local optimisation problems have been proved PLS-complete [24, 31, 26, 14, 13]. Recently, the first natural complete problems were found for PPA [16, 17] and PPP [33]. The famous Factoring problem has been partially related to PPA and PPP [22].


The natural problem recently shown PPA-complete is a problem in fair division, called the -Necklace-Splitting problem [17]. For , the premise of the -Necklace-Splitting problem is as follows. Imagine that thieves have stolen a necklace that has beads of different colours. Since the thieves are unsure of the value of the different beads, they want to divide the necklace into parts such that each part contains the same number of beads of each colour. However, the string of the necklace is made of precious metal, so the thieves don’t want to use too many cuts. Alon’s famous result [1] says that this can always be achieved with a limited number of cuts.

The corresponding computational problem can be described as follows. We are given an open necklace (i.e. a segment) with beads of different colours, i.e. there are beads of colour and . Furthermore, assume that for each , is divisible by (the number of thieves). The goal is to cut the necklace in (at most) places and allocate the pieces to the thieves, such that every thief gets exactly beads of colour , for each colour . By Alon’s result [1], a solution always exists, and thus the problem lies in TFNP.

The complexity of this problem has been an open problem for almost 30 years [30]. While the 2-thieves version is now resolved, the complexity of the problem with thieves () remains open. The main motivation of the present paper is to investigate the classes PPA-, which are believed to be the most likely candidates to capture the complexity of -Necklace-Splitting. Indeed, in the conclusion of the paper where they prove that -Necklace-Splitting is PPA-complete, Filos-Ratsikas and Goldberg [17, arXiv version] mention:

“What is the computational complexity of -thief Necklace-splitting, for not a power of 2? As discussed in [28, 12], the proof that it is a total search problem, does not seem to boil down to the PPA principle. Right now, we do not even even know if it belongs to PTFNP [19].
Interestingly, Papadimitriou in [30] (implicitly) also defined a number of computational complexity classes related to PPA, namely PPA-, for a parameter . […] Given the discussion above, it could possibly be the case that the principle associated with Necklace-Splitting for -thieves is the PPA- principle instead.”


The TFNP subclasses PPA- were defined by Papadimitriou almost 30 years ago in his seminal paper [30]. Recall that the existence of a solution to a PPA problem is guaranteed by a parity argument, i.e. an argument modulo . The classes PPA- are a generalisation of this. For every prime , the existence of a solution to a PPA- problem is guaranteed by an argument modulo . In particular, . Surprisingly, these classes have received very little attention. As far as we know, they have only been studied in the following:

  • In [30] Papadimitriou defined the classes PPA- and proved that a problem called Chevalley-mod- lies in PPA- and a problem called Cubic-Subgraph lies in PPA-.

  • In an online thread on Stack Exchange [21], Jeřábek provided two other equivalent ways to define PPA-. The problems and proofs can be generalised to any prime .

  • In his thesis [23], Johnson defined the classes for any , which were intended to capture the complexity of counting arguments modulo . He proved various oracle separation results involving his classes and other TFNP classes. While the PPA- classes are not mentioned by Johnson, using Jeřábek’s results [21] it is easy to show that for any prime . In Section 6, we characterise in terms of the classes PPA- when is not prime. In particular, we show that only partially captures existence arguments modulo .

Our contribution.

In this paper, we use the natural generalisation of Papadimitriou’s definition of the classes PPA- to define PPA- for any . We then provide a characterisation of PPA- in terms of the classes PPA-. In particular, we show that PPA- is completely determined by the set of prime factors of . In order to gain a better understanding of the inner structure of the class PPA-, we also define new subclasses that we denote PPA- and investigate how they relate to the other classes. We show that PPA- is completely determined by the set of prime factors of .

Furthermore, we provide various equivalent complete problems that can be used to define PPA- and PPA- (Section 4). While these problems are not “natural”, we believe that they provide additional tools that can be very useful when proving that natural problems are complete for these classes. In Section 7, we provide an additional tool for showing that problems lie in these classes: we prove that PPA- ( prime, ) and PPA- () are closed under Turing reductions. On the other hand, we provide evidence that PPA- might not be closed under Turing reductions when is not a prime power.

Finally, in Section 6 we investigate the classes defined by Johnson [23] and provide a full characterisation in terms of the classes PPA-. In particular, we show that if is a prime power. However, when is not a prime power, we provide evidence that does not capture the full strength of existence arguments modulo , unlike PPA-. This characterisation of in terms of PPA- leads to some oracle separation results involving PPA- and other TFNP classes (using Johnson’s oracle separation results). We note that a significant fraction of our results were also obtained by Göös, Kamath, Sotiraki and Zampetakis in concurrent and independent work [20].

2 Preliminaries


Let denote the set of all finite length bit-strings and for let be its length. A computational search problem is given by a binary relation . The problem is: given an instance , find a such that , or return that no such exists. The search problem is in FNP (Functions in NP), if is polynomial-time computable (i.e.  can be decided in polynomial time in ) and there exists some polynomial such that . Thus, FNP is the search problem version of NP (and FNP-complete problems are equivalent to NP-complete problems under Turing reductions).

The class TFNP (Total Functions in NP [27]) contains all FNP search problems that are total: for every there exists such that . With a slight abuse of notation, we can say that P lies in TFNP. Indeed, if a decision problem is solvable in polynomial time, then both the “yes” and “no” answers can be verified in polynomial time. In this sense, TFNP lies between P and NP.

Note that the totality of problems in TFNP does not rely on any “promise”. Instead, there is a syntactic guarantee of totality: for any instance in , there is always at least one solution. Nevertheless, TFNP can capture various settings where the instance space is restricted. For example, if a problem in FNP is total only on a subset of the instances and , then we can transform it into a TFNP problem by adding to for all .


Let and be total search problems in TFNP. We say that (many-one) reduces to , denoted , if there exist polynomial-time computable functions such that

Note that if is polynomial-time solvable, then so is . We say that two problems and are (polynomial-time) equivalent, if and .

There is also a more general type of reduction. A Turing reduction from to

is a polynomial-time oracle Turing machine that solves problem

with the help of queries to an oracle for . Note that a Turing reduction that only makes a single oracle query immediately yields a many-one reduction.


The class PPA (Polynomial Parity Argument) [30] is defined as the set of all TFNP problems that many-one reduce to the problem Leaf [30, 2]: given an undirected graph with maximum degree 2 and a leaf (i.e. a vertex of degree 1), find another leaf. The important thing to note is that the graph is not given explicitly (in which case the problem would be very easy), but it is provided implicitly through a succinct representation.

The vertex set is and the edges are given by a Boolean circuit . For any , we abuse notation and interpret as the set . Thus, is the set of potential neighbours of . We say that there is an edge between and if and . Thus, every vertex has at most two neighbours. Note that the size of the graph can be exponential with respect to its description size.

The full formal definition of the problem Leaf is: given a Boolean circuit such that (i.e.  is a leaf), find

  • such that (another leaf)

  • or such that but (an inconsistent edge)

Type 2 Problems and Oracle Separations.

We work in the standard Turing machine model, but TFNP subclasses have also been studied in the black-box model. In this model, one considers the type 2 versions of the problems, namely, the circuits in the input are replaced by black-boxes. In that case, it is possible to prove unconditional separations between type 2 TFNP subclasses (in the standard model this would imply P NP). The interesting point here is that separations between type 2 classes yield separations of the corresponding classes in the standard model with respect to any generic oracle (see [2] for more details on this). This technique has been used to prove various oracle separations between TFNP subclasses [2, 29, 4, 5]. In Section 6 we provide some oracle separations involving PPA- and other TFNP subclasses.

On the other hand, any reduction that works in the type 2 setting, also works in the standard setting. Indeed, it suffices to replace the calls to the black boxes by the corresponding circuits that compute them. In this paper, our reductions are stated in the standard model, but they also work in the type 2 setting, because they don’t examine the inner workings of the circuits.

3 Definition of the Classes

3.1 Ppa- : Polynomial Argument modulo

For any prime , Papadimitriou [30] defined the class PPA- as the set of all TFNP problems that many-one reduce to the following problem, that we call Bipartite-mod- : We are given an undirected bipartite graph (implicitly represented by circuits) and a vertex with degree (which we call the trivial solution). The goal is to find another such vertex. This problem lies in TFNP: if all other vertices had degree , then the sum of the degrees of all vertices on each side would have a different value modulo , which is impossible.

The problem remains well-defined and total if is not a prime, and so we will instead define it for any . Let us now provide a formal definition of the problem. A vertex of the bipartite graph is represented as a bit-string in , where the first bit indicates whether the vertex lies on the “left” or “right” side of the bipartite graph. Given a vertex, a Boolean circuit outputs the set of its neighbours (at most , see Remark 1). Note that we can syntactically enforce that the graph is bipartite, i.e. a vertex can only have neighbours of the type and vice-versa.

Definition 1 (Bipartite-mod- [30]).

Let . The problem Bipartite-mod- is defined as: given a Boolean circuit that computes a bipartite graph on the vertex set with , find

  • such that

  • or such that but .

Here the trivial solution is the vertex . The first type of solution corresponds to a vertex with degree . The second type of solution corresponds to an edge that is not well-defined. We can always ensure that all edges are well-defined by doing some pre-processing. Indeed, in polynomial time we can construct a circuit such that all solutions are of the first type and yield a solution for . On input the circuit first computes and then for each removes from this list, if .

Remark 1.

Note that in this problem statement we take all degrees to lie in . This is easily seen to be equivalent to the more general formulation, since any vertex with degree higher than can be split into multiple vertices that each have degree at most , and a solution of the original problem is easily recovered from a solution in this new version. Note that since the set of neighbours is given as the output of a circuit, it will have length bounded by some polynomial in the input size and so this argument can indeed be applied.

Definition 2 (Ppa- [30]).

For any , the class PPA- is defined as the set of all TFNP problems that many-one reduce to Bipartite-mod-.

As a warm-up let us show the following:

Proposition 1 ([30]).



Recall that PPA can be defined using the canonical complete problem Leaf [30, 2]: given an undirected graph where every vertex has degree at most 2, and a leaf (i.e. degree ), find another leaf. This immediately yields PPA- PPA, since Bipartite-mod- is just a special case of Leaf where the graph is bipartite.

Given an instance of Leaf with graph we construct an instance of Bipartite-mod- on the vertex set as follows. For any we have a vertex on the left side of the bipartite graph. For any edge ( ordered lexicographically) we have a vertex on the right side of the bipartite graph and we create the edges and . All other vertices in are isolated. In polynomial time we can construct a circuit that computes the neighbours of any vertex. Furthermore, is a leaf, if and only if has degree 1. Finally, all vertices on the right-hand side have degree 0 or 2. ∎

3.2 Ppa- : Fixing the degree of the trivial solution

In the definition of the PPA--complete problem Bipartite-mod- (Definition 1) the degree of the trivial solution can be any number in . In this section we define more refined classes where the degree of the trivial solution is fixed. In Section 5, these classes will be very useful to describe how the PPA- classes relate to each other. These definitions are inspired by the corresponding “counting principles” studied in Beame et al. [3] that were also defined in a refined form in order to describe how they relate to each other. We believe that these refined classes will also be useful to capture the complexity of natural problems. Note that for , the degree of the trivial solution will be always be and thus the question does not even appear in the study of PPA.

Definition 3.

Let and . The problem Bipartite-mod- is defined as Bipartite-mod- (Definition 1) but with the additional condition .

Note that this condition can be enforced syntactically and so this problem also lies in TFNP.

Definition 4 (Ppa-).

Let and . The class PPA- is defined as the set of all TFNP problems that many-one reduce to Bipartite-mod-.

If is some prime , then these classes are not interesting. Indeed, it holds that PPA- PPA- for all . This can be shown using the following technique: take multiple copies of the instance and “glue” the trivial solutions together. If is prime, then any other degree of the glued trivial solution can be obtained (by taking the right number of copies). In fact this technique yields the stronger result:

Lemma 1.

If divides , then PPA- PPA-.


Since divides , there exists such that . Given an instance of Bipartite-mod-, take the union of copies of the instance, i.e.  vertices on each side (and any additional isolated vertices needed to reach a power of ). Then, merge the different copies of the trivial solution into one (by redirecting edges to a single one). This vertex will have degree . Finally, apply the usual trick to ensure all degrees are in (Remark 1). ∎

In particular, we also get the nice result PPA- PPA-. Applying the result to the case , we get that PPA- PPA-, PPA- PPA-, as well as PPA- PPA- and PPA- PPA-. Thus, we have three “equivalence classes” , and and the relationships and . In Section 5, we will show that corresponds to PPA-, to PPA- and to PPA- PPA-.

Now let us introduce some notation that will allow us to precisely describe the relationship between PPA- and the PPA-.

Definition 5 ( operation [5]).

Let and be two TFNP problems. Then the problem is defined as: given an instance of , an instance of and a bit , find a solution to .

This operation is commutative and associative (up to many-one equivalence). Indeed, is many-one equivalent to , and is many-one equivalent to . Since the operation is associative, the problem is well-defined up to many-one equivalence. It is also equivalent to the following problem: given instances of and an integer , find a solution to .

We extend the operation to TFNP subclasses in the natural way. Let and be TFNP subclasses with complete problems and respectively. Then is the class of all TFNP problems that many-one reduce to . Note that the choice of complete problems does not matter. Intuitively, this class contains all problems that can be solved in polynomial time by a Turing machine with a single oracle query to either or . The following result is easy to prove:

Lemma 2.

For all we have PPA- PPA-.

Together with Lemma 1, this yields e.g. PPA- PPA- PPA-.

4 Equivalent Definitions

In this section we show that PPA- can be defined by using other problems instead of Bipartite-mod-. The totality of these problems is again based on arguments modulo . By showing that these problems are indeed PPA--complete, we provide additional support for the claim that PPA- captures the complexity of “polynomial arguments modulo ”. While these problems are not “natural” and thus not interesting in their own right, they provide equivalent ways of defining of PPA-, which can be very useful when working with these classes. In particular, we make extensive use of this equivalence in this work.

The TFNP problems we consider are the following:

  • Imbalance-mod- : given a directed graph and a vertex that is unbalanced-mod-, i.e. out-degree in-degree , find another such vertex.

  • Hypergraph-mod- : given a hypergraph and a vertex that has degree , find another such vertex or a hyperedge that has size .

  • Partition-mod- : given a set of size and a partition into subsets, find a subset that has size .

As usual, the size of the graph (respectively hypergraph, set) can be exponential in the input size, and the edges (resp. hyperedges, subsets) can be computed efficiently locally. We also define the corresponding problems Imbalance-mod-, Hypergraph-mod- and Partition-mod- analogously. The formal definitions of all these problems are provided in Section 4.1.

Theorem 1.

Let and .

  • Imbalance-mod-, Hypergraph-mod-, Partition-mod- are PPA--complete,

  • Imbalance-mod-, Hypergraph-mod-, Partition-mod- are PPA--complete.

In his online post [21], Jeřábek proves that Bipartite-mod-, Imbalance-mod- and Partition-mod- are equivalent and (correctly) claims that the proof generalises to any other prime. Thus, our contribution is the definition of the problems for any (and the -parameter versions) and the generalisation of the result to any (not only primes) and to the -parameter versions of the problems, as well as to the new problem Hypergraph-mod-. The proof of Theorem 1 can be found in Section 4.2.

The problem Imbalance-mod- is a generalisation of the PPAD-complete problem Imbalance [2, 18] : given a directed graph and a vertex that is unbalanced (i.e. out-degree in-degree ), find another unbalanced vertex. Since the latter trivially reduces to the former, Theorem 1 also yields111This observation was also made by Jeřábek for the classes PPA- ( prime).:

Corollary 1.

For all , we have PPAD PPA-.

Furthermore, if we set , then Imbalance-mod- actually corresponds to Imbalance. Thus, in a certain sense we could define . On the other hand, Imbalance-mod- is a trivial problem.

4.1 Formal definitions

A directed graph on the vertex set is represented by Boolean circuits that output the successor and predecessor list (respectively) of a given vertex. As usual, it is enough to consider the case where in- and out-degree of any vertex is at most , since the general case reduces to this (analogously to Remark 1). Note that even though we take the output of the circuits to be in , we can also have successors/predecessors, e.g. by filling out the list with copies of the string until it reaches length . The following problem was defined by Jeřábek [21], but only for prime and without the -parameter version.

Definition 6.

Let . The problem Imbalance-mod- is defined as: given Boolean circuits with , find

  • such that

  • or such that but , or but .

For , Imbalance-mod- is defined with the additional condition .

A hypergraph is represented as follows. For every vertex in , a circuit outputs (explicitly) the list of all hyperedges containing . As usual, we only need to consider the case where every vertex is contained in at most hyperedges and every hyperedge has size at most . Thus, output bits are indeed enough.

Definition 7.

Let . The problem Hypergraph-mod- is defined as: given a Boolean circuit that represents a hypergraph with , find

  • such that

  • or such that contains a hyperedge of size

  • or such that and are not consistent with one another.

For , Hypergraph-mod- is defined with the additional condition .

Note that for this problem corresponds to the PPA-complete problem Odd [30, 2]: given an undirected graph and a vertex with odd degree, find another one.

In the definition of the following problem we identify and in the natural way. This problem is inspired by the problems defined by Buss and Johnson [5] (for prime ) and by Johnson [23] (for any ). In Section 6 we argue that, unlike the problem defined below, the problems only partially capture the complexity of arguments modulo (when is not a prime power). The problem was also defined by Jeřábek [21], but only for prime and without the -parameter version.

Definition 8 (Partition-mod-).

Let . The problem Partition-mod- is defined as: given with and a Boolean circuit , such that for all , find

  • and such that and ,

  • or such that

where ( times) and means that divides .

For , Partition-mod- is defined with the additional condition .

The circuit encodes a partition as follows: lies in the subset given by the orbit of with respect to , i.e. . For this problem corresponds to the PPA-complete problem Lonely [2].

4.2 Proof of Theorem 1

We omit some details that are easy to fill in. For example, when given an instance of Imbalance-mod-, we assume that all the edges are well-defined, i.e. solutions of the second type never occur. Indeed, given a generic instance of the problem, it can be reduced to an instance where this holds by modifying the circuits so that they check and correct the successor/predecessor list before outputting it. Note that in the new instance only solutions of the first type can occur, but they can yield a solution of the second type of the original problem. The same observation also holds for Bipartite-mod- (edges well-defined), Hypergraph-mod- (hyperedges well-defined) and Partition-mod- (size of any subset divides ).

Bipartite-mod- Hypergraph-mod- :

We construct a hypergraph on the vertex set . We identify every vertex of the hypergraph with the vertex on the left-hand side of the bipartite graph. The hyperedges are given by the vertices on the right-hand side of the bipartite graph. More precisely, if for every right-hand side vertex we let be the set of neighbours (on the left-hand side), then the set of hyperedges is exactly . Note that given , we can find all the hyperedges containing in polynomial time. Furthermore, since the vertex has degree in the bipartite graph, the corresponding vertex in the hypergraph will also have degree . It is easy to check that any solution of the Hypergraph-mod- instance (in particular also any hyperedge that has not size ) yields a solution to the Bipartite-mod- instance.

Hypergraph-mod- Imbalance-mod- :

We construct a directed graph on the vertex set . For each vertex of the hypergraph there is a vertex in the directed graph (e.g. ) and for each hyperedge of the hypergraph there is a vertex in the directed graph (e.g.  where ordered lexicographically). We put a directed edge from to iff (i.e. iff appears in the hyperedge list of ). All other vertices are isolated. Note that has imbalance and for any vertex in we can compute the predecessors and successors in polynomial time. If there is an imbalance modulo in a vertex , then the corresponding hyperedge does not have size . If there is an imbalance modulo in a vertex , then has degree in the hypergraph.

Imbalance-mod- Partition-mod- :

Consider an instance of Imbalance-mod-. Split every vertex into two vertices and , such that gets all the incoming edges and gets all the outgoing edges. If was balanced, i.e. in-deg() out-deg() , then we add edges from to . We can assume that out-deg() and in-deg() (just create a copy of that takes in-deg() incoming and outgoing edges), and thus out-deg() and in-deg() . Note that we are using multi-edges, which are not allowed in the definition of the problem. However, this is fine, since this is just an intermediate step of the reduction. This new instance has the property that no vertex has both incoming and outgoing edges. Furthermore, any solution (i.e. a vertex with in- or out-degree not in , except ) yields a solution of the original instance.

Thus, we can assume wlog that the Imbalance-mod- instance (with multi-edges) is such that no vertex has both incoming and outgoing edges. We construct an instance of Partition-mod- on the set . Every vertex of the directed graph has corresponding elements in the set , namely , , . If does not have any outgoing edges, then form a subset of the partition, i.e. . If has outgoing edges to (, ordered lexicographically), then for every we put in a subset that we denote . are put into isolated subsets, i.e.  for all . Note that if has incoming edges, then will contain elements. Given any element , we can compute all the elements in its subset in polynomial time (and thus efficiently construct that cycles through them in lexicographic order). Furthermore, since out-deg() , the vertices will be in singleton sets. Consider the subset of . Then . It is easy to check that any element in that is not contained in a subset of size (according to ), must yield a solution to the Imbalance-mod- instance. Finally, the last step is to construct an efficient bijection between and the set of all integers , which is easy to do. Thus, we have reduced the original instance to an instance of Partition-mod- with inputs and (modified according to the bijection).

Partition-mod- Bipartite-mod- :

Let us consider any instance of Partition-mod- with parameter . In particular, it holds that and . We construct a bipartite graph as follows. On each side there are vertices. Most of those vertices will be isolated. Let and denote the set of vertices on the left and right side respectively. We can define a canonical partition of the numbers into sets of size (and one set of size ). For example, , , etc. A vertex in is valid, if it contains a lexicographically ordered list of vertices that all lie in the same set in the canonical partition. For the set of size in the canonical partition, we introduce a special case: it is represented by . Thus, for any , we can define , which is the valid vertex in that is associated to it.

Every subset in the partition of given by the Partition-mod- instance, yields a vertex in (e.g. , where is the bitstring of the lowest number in the subset). For every such vertex we add an edge to , for all in this subset of the partition. Note that we can have and and lying in the same subset in the Partition-mod- instance too. Thus, the bipartite graph we have constructed may have multi-edges. We resolve this by using the Mitosis gadgets described below. Note that the vertex will have degree . It is easy to check that any other vertex with degree yields a solution to the original Partition-mod- instance.

Mitosis gadgets.

Let . We now show how to construct a small bipartite graph such that exactly one vertex on each side has degree and all other vertices have degree (or ). This “gadget” can then be used to increase the degree of two vertices (one on each side of the bipartite graph) without adding any solutions, i.e. vertices with degree .

The gadget is a bipartite graph with vertices on each side: and . It contains all the edges for , except the edge . It also contains the edges and . Thus, all vertices have degree , except for and which have degree .

We call this the “Mitosis” gadget, because it allows us to duplicate edges that already exist. Let and be two vertices in a bipartite graph, one on each side. Furthermore, consider the case where there is an edge . We would like to increase the degree of and by , but without introducing any new solutions, in particular without introducing any vertex with degree . Using the Mitosis gadget, we can just add new vertices and , and identify with and with . Adding the corresponding vertices of the gadget yields a bipartite graph where the degree of and has increased by , but no new solutions have been introduced. Note that this gadget can, in particular, be used to turn a bipartite graph with multi-edges into one without them, without changing the degree of existing vertices and without adding any new solutions.

5 Relationship Between the Classes

In this section, we present some results that provide deeper insights into how the classes relate to each other. For any , denotes the set of all prime factors of . The main conceptual result is that PPA- is entirely determined by the set of prime factors of :

Theorem 2.

For any we have PPA- PPA-.

This equation can be understood as saying the following:

  • Given a single query to an oracle for PPA-, we can solve any problem in PPA- for any

  • Given a single query to an oracle that solves any PPA- problem for any , we can solve any problem in PPA-.

Corollary 2.

In particular, we have:

  • For , if , then PPA- PPA-.

  • For all , PPA- PPA- PPA-.

  • For all and all we have PPA- PPA-.

Using the PPA- classes, we can formulate an even stronger and more detailed result. For any , , we define . In this case the conceptual result says that PPA- is entirely determined by the set of prime factors of .

Theorem 3.

Let , . Then

The proof of Theorem 3 can be found in the next section. Before we move on to that, let us briefly show that Theorem 2 follows from Theorem 3.

Proof of Theorem 2.

Using Lemma 2 and Theorem 3 we can write

where the last equality follows by noting that for all , and for all . ∎

5.1 Proof overview

Proof of Theorem 3.

All containment results follow from Theorem 4 below, except

Let . We will show how to combine a set of instances , where is an instance of Partition-mod-, into a single instance of Partition-mod-, where , such that any solution to this instance yields a solution to one of the instances. Without loss of generality, we can assume that the parameter is the same for all instances. Without loss of generality, we can assume that for all , because we can add at most classes of size to achieve this (see the proof of Lemma 5). Note that we then have . Furthermore, for and with we can define if and only if for all , where means that and lie in the same set in instance . If for all , lies in a set of size in , then will lie in a set of size . Thus any solution yields a solution to one of the original instances. The details to fully formalise this are very similar to the proof of Lemma 6. ∎

In [3] Beame et al. investigated the relative proof complexity of so-called “counting principles”. These counting principles are formulas that represent the fact that a set of size cannot be partitioned into sets of size . They investigated the relationship between these principles in terms of whether one can be proved from the other by using a constant-depth, polynomial-size Frege proof. Their main result is a full characterisation of when this is possible or not. As noted by Johnson [23], these counting formulas do not yield NP search problems, but they can be related to corresponding NP search problems (TFNP, in fact). Indeed, Johnson uses this connection to obtain some separation results between his classes (see Section 6) from Beame et al.’s negative results. Our contribution is using Beame et al.’s positive results in order to prove inclusion results about the PPA- classes. More precisely, we modify their proofs to obtain polynomial-time reductions between our Partition-mod- problems. Thus, we obtain the following analogous result:

Theorem 4.

Let and for . If , then .


From Lemma 1 we know that PPA- = PPA- for . The result then follows from a few technical lemmas proved in Appendix A:

6 Johnson’s Classes and Oracle Separations

Inspired by the definition of the PPA-complete problem Lonely [2], Buss and Johnson [5] defined TFNP problems called to represent arguments modulo some prime . Their main motivation was to use these problems to show separations (in the type 2 setting) between Turing reductions with oracle queries and Turing reductions with oracle queries. In his thesis [23], Johnson generalised the definition of to any and defined corresponding classes . He also proved some separations between these classes and other TFNP classes in the type 2 setting (which yield oracle separations in the standard setting). It seems that Johnson was not aware of Papadimitriou’s [30] PPA- classes.

In this section, we study the classes and prove a characterisation in terms of the classes PPA-. In particular, we show that does not capture the full strength of arguments modulo , when is not a prime power. This characterisation also allows us to use Johnson’s separations to obtain some oracle separations involving PPA- and other TFNP classes.

Informally, the problem can be defined as follows. We are given a partition of into subsets and the goal is to find one of these subsets that has size . If is not a power of , then such a subset must exist. If is a power of , then we instead consider and the problem remains total.

Definition 9 ( [5, 23]).

Let . The problem is defined as: given a Boolean circuit with inputs and outputs,

  • If is not a power of : Find

    • and such that and ,

    • or such that

  • If is a power of : Let additionally and find

    • and such that and ,

    • or such that

where ( times) and means that divides .

Definition 10 ( [23]).

For any , the class is defined as the set of all TFNP problems that many-one reduce to .

Note that the problem is a special case of our problem Partition-mod- (which was indeed inspired by this definition). As a result, we immediately get that . Unless is a prime power, we don’t expect this to hold with equality. The intuition is that restricting the size of the base set to always be a power has the effect of only achieving a subset of the possible -parameter values of PPA-. Namely, only are achieved (for not a power of 2).

Johnson proves a lemma [23, Lemma 7.4.5] that gives some idea of how the classes relate to each other. It can be stated as follows: if , where the are distinct primes, then . He proves this if all and claims that the proof also works if some . However, if some then the proof does not work. This is easy to see, since our results below prove that which is not equal to , unless . However, Johnson proves that in the type 2 setting.

The following result provides a full characterisation of in terms of the classes PPA-.

Theorem 5.

Let .

  • if is not a power of , then where is the largest odd divisor of

  • if is a power of , then .

The proof of Theorem 5 is given below in Section 6.1.

Corollary 3.

In particular, we have:

  • for all primes and ,

  • for all ,

  • for all odd ,

If is a prime power, then is the same as PPA-. However, for other values of , we argue that fails to capture the full strength of arguments modulo . For example, , whereas . This means that PPA- can solve any problem that lies in PPA- or PPA-, while can only solve problems that lie both in PPA- and PPA-. In particular, if , then it would follow that , which is not believed to hold (see oracle separations below). Even worse perhaps, is the fact that for any . In particular, this means that , which indicates that does not really capture arguments modulo .

Nevertheless, Johnson’s oracle separation results (obtained from the corresponding type 2 separations as in [2]) also yield corresponding results for the PPA- classes (using Theorem 5). We briefly mention a few of the results obtained this way. See Johnson [23, Chapter 8] for additional results. Relative to any generic oracle (see [2]):

  • for any distinct primes

  • , , for any

  • , for any prime

6.1 Proof of Theorem 5

For , corresponds to the PPA-complete problem Lonely [2], and thus . Let . Consider an instance of Partition-mod- on the set