On the Complexity of Modulo-q Arguments and the Chevalley-Warning Theorem

Mika Göös, Pritish Kamath, Katerina Sotiraki, Manolis Zampetakis

Introduction

The study of total NP ⁣\mathsf{NP}\! search problems (TFNP\mathsf{TFNP}) was initiated by Megiddo and Papadimitriou [MP91] and Papadimitriou [Pap94] to characterize the complexity of search problems that have a solution for every input and where a given solution can be efficiently checked for validity. Meggido and Papadimitriou [MP91] showed that the notion of NP\mathsf{NP}-hardness is inadequate to capture the complexity of total NP\mathsf{NP} search problems. By now, this theory has flowered into a sprawling jungle of widely-studied syntactic complexity classes (such as PLS\mathsf{PLS} [JPY88], PPA/PPAD/PPP\mathsf{PPA}/\mathsf{PPAD}/\mathsf{PPP} [Pap94], CLS\mathsf{CLS} [DP11]) that serve to classify the complexities of many relevant search problems.

The goal of identifying naturalFollowing the terminology of many TFNP\mathsf{TFNP} papers, including [Gri01, FG18, FG19, SZZ18], a natural problem is one that does not have explicitly a circuit or a Turing machine as part of the input. complete problems for these complexity classes lies in the foundation of this sub-field of complexity theory and not only gives a complete picture of the computational complexity of the corresponding search problems, but also provides a better understanding of the complexity classes. Such natural complete problems have also been an essential middle-step for proving the completeness of other important search problems, the same way that the NP\mathsf{NP}-completeness of Sat is an essential middle step in showing the NP\mathsf{NP}-completeness of many other natural problems. Some known natural complete problems for TFNP\mathsf{TFNP} subclasses are: the PPAD\mathsf{PPAD}-completeness of NashEquilibrium [DGP09], the PPA\mathsf{PPA}-completeness of ConsensusHalving, NecklaceSplitting and HamSandwich problems [FG18, FG19] and the PPP\mathsf{PPP}-completeness of natural problems related to lattice-based cryptography [SZZ18]. Finally, the theory of total search problems has found connections beyond its original scope to areas like communication complexity and circuit lower bounds [GKRS19], cryptography [BPR15, KNY19, CHK+19] and the Sum-of-Squares hierarchy [KM18].

Our main result is to identify the first natural complete problem for the classes PPAq\mathsf{PPA}_{q}, a variant of the class PPA\mathsf{PPA}. We also illustrate the relevance of these classes through connections with important search problems from combinatorics and cryptography.

Class PPAq\mathsf{PPA}_{q}. The class PPAq\mathsf{PPA}_{q} was defined, in passing, by Papadimitriou [Pap94, p. 520]. It is a modulo-qq analog of the well-studied polynomial parity argument class PPA\mathsf{PPA} (which corresponds to q=2q=2). The class embodies the following combinatorial principle:

If a bipartite graph has a node of degree not a multiple of qq, then there is another such node.

In more detail, PPAq\mathsf{PPA}_{q} consists of all total NP\mathsf{NP} search problems reducibleHere, we consider a many-one reduction, which is a polynomial time algorithm with one oracle query to the said problem. In contrast, a Turing reduction allows polynomially many oracle queries. See Section 1.5 for a comparison. to the problem \textscBipartiteq\textsc{Bipartite}_{q} defined as follows. An instance of this problem is a balanced bipartite graph G=(VU,E)G=(V\cup U,E), where VU={0,1}nV\cup U=\{0,1\}^{n} together with a designated vertex vVUv^{\star}\in V\cup U. The graph GG is implicitly given via a circuit CC that computes the neighborhood of every node in GG. Let deg(v)\deg(v) be the degree of the node vv in GG. A valid solution is a node v{0,1}nv\in\{0,1\}^{n} such that, either

In Section 2 we provide some other total search problems (\textscLonelyq\textsc{Lonely}_{q}, \textscLeafq\textsc{Leaf}_{q}) that are reducible to and from \textscBipartiteq\textsc{Bipartite}_{q}. Any one of these problems could be used to define PPAq\mathsf{PPA}_{q}. In fact, \textscLonelyq\textsc{Lonely}_{q} and \textscLeafq\textsc{Leaf}_{q} are natural variants of the standard problems Lonely and Leaf which are used to define the class PPA\mathsf{PPA}.

Our contributions. We illustrate the importance of the complexity classes PPAq\mathsf{PPA}_{q} by showing that many important search problems whose computational complexity is not well understood belong to PPAq\mathsf{PPA}_{q} (see §1.6 for details). These problems span a wide range of scientific areas, from algebraic topology to cryptography. For some of these problems we conjecture that PPAq\mathsf{PPA}_{q}-completeness is the right notion to characterize their computational complexity. The study of PPAq\mathsf{PPA}_{q} is also motivated from the connections to other important and well-studied classes like PPAD\mathsf{PPAD}.

In this paper, we provide a systematic study of the complexity classes PPAq\mathsf{PPA}_{q}. Our main result is the identification of the first natural complete problem for PPAq\mathsf{PPA}_{q} together with some structural results. Below we give a more precise overview of our results.

We characterize PPAq\mathsf{PPA}_{q} in terms of PPAp\mathsf{PPA}_{p} for prime pp.

Our main result is that an explicitFollowing the terminology in [BIQ+17], by explicit we mean that the system of polynomials, which is the input of the computational problems we define, are given as a sum of monic monomials. version of the Chevalley-Warning theorem is complete

for PPAp\mathsf{PPA}_{p} for prime pp. This problem is natural in that it does not involve circuits as part of the input and is the first known natural complete problem for PPAp\mathsf{PPA}_{p} when p3p\geq 3.

As a consequence of the PPAp\mathsf{PPA}_{p}-completeness of our natural problem, we show that restricting

the input circuits in the definition of PPAp\mathsf{PPA}_{p} to just constant depth arithmetic formulas doesn’t change the power of the class.

We show a connection between PPAq\mathsf{PPA}_{q} and the Short Integer Solution (SIS) problem from

the theory of lattices. This connection implies that SIS with constant modulus qq belongs to PPAqPPP\mathsf{PPA}_{q}\cap\mathsf{PPP}, but also provides a polynomial time algorithm for solving SIS when the modulus qq is constant and has only 22 and 33 as prime factors.

We sketch how existing results already paint a near-complete picture of the relative power

of PPAp\mathsf{PPA}_{p} relative to other TFNP\mathsf{TFNP} subclasses (via inclusions and oracle separations). We also show that PPAq\mathsf{PPA}_{q} is closed under Turing reductions.

In Section 1.6, we include a list of open problems that illustrate the broader relevance of PPAq\mathsf{PPA}_{q}. We note that a concurrent and independent work by Hollender [Hol19] also establishes the structural properties of PPAq\mathsf{PPA}_{q} corresponding to §1.1 and §1.5.

PPAq=&pqPPAp\mathsf{PPA}_{q}=\textsf{\&}_{p|q}\,\mathsf{PPA}_{p}.

A special case of Theorem 1 is that PPApk=PPAp\mathsf{PPA}_{p^{k}}=\mathsf{PPA}_{p} for every prime power pkp^{k}. Showing the inclusion PPApkPPAp\mathsf{PPA}_{p^{k}}\subseteq\mathsf{PPA}_{p} is the crux of our proof. This part of the theorem can be viewed as a total search problem analog of the counting class result of Beigel and Gill [BG92] stating that ModpkP=ModpP\mathsf{Mod}_{p^{k}}{\text{P}}=\mathsf{Mod}_{p}{\text{P}}; “an unexpected result”, they wrote at the time. Throughout this paper, we use qq to denote any integer 2\geq 2 and pp to denote a prime integer.

2 A Natural Complete Problem via Chevalley-Warning Theorem

There have been several works focusing on completeness results for the class PPA\mathsf{PPA} (i.e. PPA2\mathsf{PPA}_{2}). Initial works showed the PPA\mathsf{PPA}-completeness of (non-natural) total search problems corresponding to topological fixed point theorems [Gri01, ABB15, DEF+16]. Closer to our paper, Belovs et al. [BIQ+17] show the PPA\mathsf{PPA}-completeness of computational analogs of Combinatorial Nullstellensatz and the Chevalley–Warning Theorem, but which explicitly involve a circuit as part of the input. More recently, breakthrough results showed PPA\mathsf{PPA}-completeness of problems without a circuit or a Turing Machine in the input such as Consensus-Halving, Necklace-Splitting and Ham-Sandwich [FG18, FG19] resolving an open problem since the definition of PPA\mathsf{PPA} in [Pap94].

Our main contribution is to provide a natural complete problem for PPAp\mathsf{PPA}_{p}, for every prime pp; thereby also yielding a new complete problem for PPA\mathsf{PPA}. Our complete problem is an extension of the problem \textscChevalleyp\textsc{Chevalley}_{p}, defined by Papadimitriou [Pap94], which is a search problem associated to the celebrated Chevalley-Warning Theorem. We first present an abstract way to understand the proof of the Chevalley-Warning Theorem that motivates the definition of our natural complete problem for PPAp\mathsf{PPA}_{p}.

In 1935, Claude Chevalley [Che35] resolved a hypothesis stated by Emil Artin, that all finite fields are quasi-algebraically closed. Later, Ewald Warning [War36] proved a slight generalization of Chevalley’s theorem. This generalized statement is usually referred to as the Chevalley-Warning Theorem (CWT, for short). Despite its initial algebraic motivation, CWT has found profound applications in combinatorics and number theory as we discuss in §1.4 (and Section 6).

In the above definition, it is important to consider the symbolic expansion of CWf\mathsf{CW}_{\bm{f}} and ignore any cancellation of coefficients that might occur. Observe that, although the expansion of CWf\mathsf{CW}_{\bm{f}} is exponentially large in the description size of f\bm{f}, each monic monomial of CWf\mathsf{CW}_{\bm{f}} can be succinctly described as a combination of monic monomials of the polynomials f1,,fmf_{1},\ldots,f_{m}. We formally discuss this in Section 4.

Using the definition of max-degree monic monomials, we state the main technical lemma underlying the proof of CWT (with proof in Section 4).

2.2 Proofs of Cancellation

Thus, any condition on f\bm{f} that implies the (Extended CW Condition) can replace (CW Condition) in the Chevalley-Warning Theorem. Note that the (Extended CW Condition) is equivalent to all the max-degree monic monomials in CWf\mathsf{CW}_{\bm{f}} cancelling out. Thus, we call any such condition on f\bm{f} that implies (Extended CW Condition) to be a “proof of cancellation” for the system f\bm{f}.

We can now reinterpret the result of Belovs et al. [BIQ+17] in this framework of “proof of cancellation” conditions. In particular, [BIQ+17] considers the case p=2p=2 and defines the problem PPA-Circuit-Chevalley, in which a “proof of cancellation” is given in a specific form of circuits. These circuits describe the system (f1,,fm)(f_{1},\ldots,f_{m}) in the PPA-Circuit-Chevalley problem. It is then shown that PPA-Circuit-Chevalley is PPA2\mathsf{PPA}_{2}-complete.

2.3 Computational Problems Based on Chevalley-Warning Theorem

Every “proof of cancellation” that is syntactically refutable can be used to define a total search problem that lies in PPAp\mathsf{PPA}_{p}. By syntactically refutable we mean that whenever the “proof of cancellation” is false, there exists a small witness that certifies so. In this section, we define three computational problems with their corresponding “proof of cancellation”: (1) the \textscChevalleyp\textsc{Chevalley}_{p} problem defined by [Pap94], (2) the \textscGeneralChevalleyp\textsc{GeneralChevalley}_{p} problem that is a generalization of \textscChevalleyp\textsc{Chevalley}_{p}, and (3) the problem \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p} that we show to be PPAp\mathsf{PPA}_{p}-complete. All these problems are defined for every prime modulus pp and are natural in the sense that they do not explicitly involve a circuit or a Turing Machine in their input. In particular, the polynomial systems in the input are explicit in that they are given as a sum of monic monomials.

This is the direct computational analog of the Chevalley-Warning Theorem and was defined by Papadimitriou [Pap94] as the following total search problem:

[Refuting witness] (CW Condition) is not satisfied.

xVf{x}\bm{x}\in\mathcal{V}_{\bm{f}}\smallsetminus\left\{\bm{x}^{\star}\right\}.

We will particularly consider a special case where all the fif_{i}’s have zero constant term (zecote, for short). In this case, x=0Vf\bm{x}^{\star}=\mathbf{0}\in\mathcal{V}_{\bm{f}}, so there is no need to explicitly include x\bm{x}^{*} in the input.

As mentioned already, we can define a search problem corresponding to any syntactically refutable condition that implies the (Extended CW Condition). One such condition is to directly assert that

In particular, note that (CW Condition) implies this condition. Moreover, this condition is syntactically refutable by a max-degree monic monomial, which is efficiently representable as a combination of at most m(p1)m(p-1) monomials of the fif_{i}’s. Thus, we can define the following total search problem generalizing \textscChevalleyp\textsc{Chevalley}_{p}.

\textscGeneralChevalleyp\underline{\textsc{GeneralChevalley}}_{p}

[Refuting Witness] A max-degree monic monomial of CWf\mathsf{CW}_{\bm{f}}.

xVf{x}\bm{x}\in\mathcal{V}_{\bm{f}}\smallsetminus\left\{\bm{x}^{\star}\right\}.

Hence, we further generalize \textscGeneralChevalleyp\textsc{GeneralChevalley}_{p} into a problem that incorporates this additional “proof of cancellation” in the form of a permutation σSn\sigma\in S_{n}.

We now define the following natural total search problem.

\textscChevalleyWithSymmetryp\underline{\textsc{ChevalleyWithSymmetry}}_{p}

[Refuting Witness – 1] A max-degree monic monomial of CWg\mathsf{CW}_{\bm{g}}.

[Refuting Witness – 2] xVgVh\bm{x}\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}} such that σ(x)(VgVh){x}\sigma(\bm{x})\notin(\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}})\smallsetminus\left\{\bm{x}\right\}.

xVf{x}\bm{x}\in\mathcal{V}_{\bm{f}}\smallsetminus\left\{\bm{x}^{\star}\right\}.

The above problem is natural, because the input consists of a system of polynomial in an explicit form, i.e. as a sum of monic monomials, together with a permutation in SnS_{n} given say in one-line notation. Also, observe that when h\bm{h} is empty, the above problem coincides with \textscGeneralChevalleyp\textsc{GeneralChevalley}_{p} (since Vh=\overline{\mathcal{V}_{\bm{h}}}=\emptyset when h\bm{h} is empty). Our main result is the following (proved in Section 4).

For any prime pp, \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p} is PPAp\mathsf{PPA}_{p}-complete.

3 Complete Problems via Small Depth Arithmetic Formulas

We hope that this theorem will be helpful in the context of proving PPAp\mathsf{PPA}_{{p}}-hardness of other problems. There it would be enough to consider only constant depth arithmetic formulas (and hence NC1\mathsf{NC}^{1} Boolean formulas) in the definitions of PPAp\mathsf{PPA}_{{p}} as opposed to unbounded depth circuits. Such a simplification has been a key-step for proving hardness results for other TFNP\mathsf{TFNP} subclasses, e.g. in the PPAD\mathsf{PPAD}-hardness proofs of approximate-Nash (cf. [Rub16]).

4 Applications of Chevalley-Warning

Apart from its initial algebraic motivation, the Chevalley-Warning theorem has been used to derive several non-trivial combinatorial results. Alon et al. [AFK84] show that adding an extra edge to any 44-regular graph forces it to contain a 3-regular subgraph. More generally, they prove that certain types of “almost” regular graphs contain regular subgraphs. Another application of CWT is in proving zero-sum theorems similar to the Erdös-Ginzburg-Ziv Theorem. A famous such application is the proof of Kemnitz’s conjecture by Reiher [Rei07].

For a certain range of parameters n,mn,m, it holds that

For all primes pp : \textscBISp\textsc{BIS}_{p} and \textscSISp\textsc{SIS}_{p} are Karp-reducible to \textscChevalleyp\textsc{Chevalley}_{p}, hence are in PPAp\mathsf{PPA}_{p}.

For all qq : \textscBISq\textsc{BIS}_{q} and \textscSISq\textsc{SIS}_{q} are Turing-reducible to any PPAq\mathsf{PPA}_{q}–complete problem.

For all kk : \textscBIS2k\textsc{BIS}_{2^{k}} is solvable in polynomial time.

Even though the \textscSISq\textsc{SIS}_{q} problem is well-studied in lattice theory, not many results are known in the regime where qq is a constant and the number of variables depends linearly on the number of equations. Part (1) of the above theorem establishes a reduction from \textscSISp\textsc{SIS}_{p} to \textscChevalleyp\textsc{Chevalley}_{p} for prime pp. Part (2) follows by a bootstrapping method that allows us to combine algorithms for \textscSISq1\textsc{SIS}_{q_{1}} and \textscSISq2\textsc{SIS}_{q_{2}} to give an algorithm for \textscSISq1q2\textsc{SIS}_{q_{1}q_{2}} (for a certain regime for parameters nn and mm). Finally Parts (3) and (4) results follow by using this bootstrapping method along with the observation that Gaussian elimination provides valid solutions for \textscBIS2\textsc{BIS}_{2} (hence also \textscSIS2\textsc{SIS}_{2}) and for \textscSIS3\textsc{SIS}_{3}.

5 Structural properties

Buss and Johnson [BJ12, Joh11] had defined a class PMODq\mathsf{PMOD}_{q} which turns out to be slightly weaker than PPAq\mathsf{PPA}_{q} (refer to Section 7). Despite this slight difference between the definitions of PPAq\mathsf{PPA}_{q} and PMODq\mathsf{PMOD}_{q}, we can still deduce statements about PPAq\mathsf{PPA}_{q} from the work of [Joh11]. In particular, it follows that PPADPPAq\mathsf{PPAD}\subseteq\mathsf{PPA}_{q} (refer to Section 7.1).

More broadly, a near-complete picture of the power of PPAq\mathsf{PPA}_{q} relative to other subclasses of TFNP\mathsf{TFNP} is summarized in Figure 1. These relationships (inclusions and oracle separations) mostly follow from prior work in proof complexity [BR98, BGIP01, Joh11, GKRS19] (refer to Section 7.2).

Recall that TFNP\mathsf{TFNP} subclasses are defined as the set of all total search problems that are many-one reducible (aka Karp–reducible) to the corresponding complete problems. One can ask whether more power is gained by allowing Turing reductions, that is, polynomially many oracle queries to the corresponding complete problem. Buss and Johnson [BJ12] showed that PLS\mathsf{PLS}, PPAD\mathsf{PPAD}, PPADS\mathsf{PPADS}, PPA\mathsf{PPA} are closed under Turing reductions (with a notable exception of PPP\mathsf{PPP}, which remains open). We show this for PPAp\mathsf{PPA}_{p} when pp is a prime.

FPPPAp=PPAp\mathsf{FP}^{\mathsf{PPA}_{p}}=\mathsf{PPA}_{p} for every prime pp.

By contrast, it follows from [BJ12, §6] that PPAq\mathsf{PPA}_{q} is not closed under black-box Turing reductions for non-prime powers qq. See Section 7.3 for details.

6 Open questions

It has been shown that Factoring reduces to PPP\mathsf{PPP}-complete problems as well as to PPA\mathsf{PPA}-complete problems [BO06, Jer16], albeit under randomized reductions (which can be derandomized assuming the Generalized Reimann Hypothesis). It has been asked whether in fact Factoring could be reduced to PPAD\mathsf{PPAD}-complete problems [Jer16]. As a step towards this problem, we propose the following question.

Is Factoring in PPAp\mathsf{PPA}_{p} for all primes pp (perhaps under randomized reductions)?

This is clearly an easier problem since PPADPPAp\mathsf{PPAD}\subseteq\mathsf{PPA}_{p}. Interestingly, note that there exists an oracle O\mathcal{O} relative to which pPPApOPPADO\bigcap_{p}\mathsf{PPA}_{p}^{\mathcal{O}}\nsubseteq\mathsf{PPAD}^{\mathcal{O}}. Thus, the above problem, even if established for all prime pp, is still weaker than showing that Factoring reduces to PPAD\mathsf{PPAD}-complete problems.

The q\textscNecklaceSplittingq\textsc{-Necklace-Splitting} problem is defined as follows: There is an open necklacean “open necklace” means that the beads form a string, not a cycle with qaiq\cdot a_{i} beads of color ii, for i[n]i\in[n]. The goal is to cut the necklace in (q1)n(q-1)\cdot n places and partition the resulting substrings into kk collections, each containing precisely aia_{i} beads of color ii for each i[n]i\in[n].

The fact that such a partition exists was first shown in the case of q=2q=2 by Goldberg and West [GW85] and by Alon and West [AW86]. Later, Alon [Alo87] proved it for all q2q\geq 2. As mentioned before, Filos-Ratsikas and Goldberg [FG19] showed that the 2\textscNecklaceSplitting2\textsc{-Necklace-Splitting} problem is PPA\mathsf{PPA}-complete. Moreover, they put forth the following question (which we strengthen further).

Is q\textscNecklaceSplittingq\textsc{-Necklace-Splitting} in PPAq\mathsf{PPA}_{q}? More strongly, is it PPAq\mathsf{PPA}_{q}-complete?

While we do not know how to prove/disprove this yet, we point out that it was also shown in [FG19] that 2k\textscNecklaceSplitting2^{k}\textsc{-Necklace-Splitting} is in fact in PPA2\mathsf{PPA}_{2}. This is actually well aligned with this conjecture since we showed that PPA2k=PPA2\mathsf{PPA}_{2^{k}}=\mathsf{PPA}_{2} (Theorem 1).

Alon’s proof of the qq-Necklace-Splitting theorem [Alo87] was topological and used a certain generalization of the Borsuk-Ulam theorem due to Bárány, Shlosman and Szücs [BSS81]. Since the computational Borsuk-Ulam problem is PPA\mathsf{PPA}-complete, we could ask a similar question about this generalization.

Is \textscBaˊraˊnyShlosmanSzu¨csp\textsc{B\'{a}r\'{a}ny-Shlosman-Sz\"{u}cs}_{p} problem in PPAp\mathsf{PPA}_{p} (perhaps even PPAp\mathsf{PPA}_{p}-complete)?

We conclude with some interesting directions for further exploring the connections of Chevalley with other computational problems.

Does \textscSISq\textsc{SIS}_{q} admit worst-to-average case reductions to other lattice problems in our range of parameters? Or is it average-case hard assuming standard cryptographic assumptions, e.g. the “learning with errors” assumption?

If resolved positively, the above would serve as evidence of the average-case hardness for the class PPAp\mathsf{PPA}_{p}, similar to the evidence that we have for PPA\mathsf{PPA} by reduction from Factoring.

For all primes pp, is \textscChevalleyp\textsc{Chevalley}_{p} reducible to \textscBISp\textsc{BIS}_{p}?

For all qq, is there a non-trivial regime of parameters nn, mm where \textscBISq\textsc{BIS}_{q} is solvable in polynomial time?

A search problem R1\mathcal{R}_{1} is Karp-reducible (or many-one reducible) to a search problem R2\mathcal{R}_{2}, or R1R2\mathcal{R}_{1}\preceq\mathcal{R}_{2} for short, if there exist polynomial-time computable functions ff and gg such that given any instance xx of R1\mathcal{R}_{1}, f(x)f(x) is an instance of R2\mathcal{R}_{2} such that for any yR2(f(x))y\in\mathcal{R}_{2}(f(x)), it holds that g(x,f(x),y)R1(x)g(x,f(x),y)\in\mathcal{R}_{1}(x).

On the other hand, we say that R1\mathcal{R}_{1} is Turing-reducible to R2\mathcal{R}_{2}, or R1TR2\mathcal{R}_{1}\preceq_{T}\mathcal{R}_{2} for short, if there exists a polynomial-time oracle Turing machine that on input xx to R1\mathcal{R}_{1}, makes oracle queries to R2\mathcal{R}_{2}, and outputs a yR1(x)y\in\mathcal{R}_{1}(x). In this paper, we primarly deal with Karp-reductions, except in Section 7.3, where we compare the two different notions of reductions in the context of PPAq\mathsf{PPA}_{q}.

We describe several total search problems (parameterized by qq) that we show to be inter-reducible. PPAq\mathsf{PPA}_{q} is then defined as the set of all search problems reducible to either one of the search problems defined below.

A bipartite graph with a non-multiple-of-qq degree node has another such node.

Bipartite graph G=(VU,E)G=(V\cup U,E). Designated vertex vVv^{*}\in V

\triangleright C:{0,1}n({0,1}n)kC:\left\{0,1\right\}^{n}\to(\left\{0,1\right\}^{n})^{k}, with ({0,1}n)k(\left\{0,1\right\}^{n})^{k} interpreted as a kk-subset of {0,1}n\left\{0,1\right\}^{n} \triangleright v{0}×{0,1}n1v^{*}\in\left\{0\right\}\times\left\{0,1\right\}^{n-1} (usually 0n0^{n})

V{0}×{0,1}n1V\coloneqq\left\{0\right\}\times\left\{0,1\right\}^{n-1}, U{1}×{0,1}n1U\coloneqq\left\{1\right\}\times\left\{0,1\right\}^{n-1}, E{(v,u):vVC(u) and uUC(v)}E\coloneqq\left\{(v,u):v\in V\cap C(u)\text{ and }u\in U\cap C(v)\right\}

A qq-dimensional matching on a non-multiple-of-qq many vertices has an isolated node.

qq-dimensional matching G=(V,E)G=(V,E). Designated vertices VVV^{*}\subseteq V with Vq1|V^{*}|\leq q-1

\triangleright C:[q]n[q]nC:[q]^{n}\to[q]^{n} \triangleright V[q]nV^{*}\subseteq[q]^{n} with Vq1|V^{*}|\leq q-1

V[q]nV\coloneqq[q]^{n}. For distinct v1,,vqv_{1},\ldots,v_{q}, edge e{v1,,vq}Ee\coloneqq\left\{v_{1},\ldots,v_{q}\right\}\in E if C(vi)=vi+1C(v_{i})=v_{i+1}, C(vq)=v1C(v_{q})=v_{1}

vVv\in V^{*} if deg(v)=1\deg(v)=1 and vVv\notin V^{*} if deg(v)=0\deg(v)=0

A qq-uniform hypergraph with a non-multiple-of-qq degree node has another such node.

qq-uniform hypergraph G=(V,E)G=(V,E). Designated vertex vVv^{*}\in V

\triangleright C:{0,1}n({0,1}nq)qC:\left\{0,1\right\}^{n}\to(\left\{0,1\right\}^{nq})^{q}, with ({0,1}nq)q(\left\{0,1\right\}^{nq})^{q} interpreted as qq many qq-subsets of {0,1}n\left\{0,1\right\}^{n} \triangleright v{0,1}nv^{*}\in\left\{0,1\right\}^{n} (usually 0n0^{n})

V{0,1}nV\coloneqq\left\{0,1\right\}^{n}. For distinct v1,,vqv_{1},\ldots,v_{q}, edge e{v1,,vq}Ee\coloneqq\left\{v_{1},\ldots,v_{q}\right\}\in E if eC(v)e\in C(v) for all vev\in e

We remark that \textscLonelyq\textsc{Lonely}_{q} and \textscLeafq\textsc{Leaf}_{q} are modulo-qq analogs of the PPA\mathsf{PPA}-complete problems Lonely and Leaf [Pap94, BCE+98]. We prove the following theorem in Appendix A.

The problems \textscBipartiteq\textsc{Bipartite}_{q}, \textscLonelyq\textsc{Lonely}_{q} and \textscLeafq\textsc{Leaf}_{q} are inter-reducible.

We will use the following simple conventions repeatedly, in order to simplify the descriptions of reductions between different search problems.

We will often use “algorithms”, instead of “circuits” to encode our hypergraphs. It is standard to simulate polynomial-time algorithms by polynomial sized circuits.

The above simplification gives us that all our problems have an instance-extension property (cf. [BM04]) – this will be helpful in proving Theorem 4.

To simplify our reductions even further, we’ll often describe the edges/hyperdges directly instead of specifying how to compute the neighbors of a given vertex. This is only for simplicity and it will be easy to see how to compute the neighbors of any vertex locally.

Characterization via Primes

In this section we prove Theorem 1, namely PPAq=&pqPPAp\mathsf{PPA}_{q}=\textsf{\&}_{p|q}\,\mathsf{PPA}_{p}. The theorem follows by combining the following two ingredients.

PPApk=PPAp\mathsf{PPA}_{p^{k}}=\mathsf{PPA}_{p} for any prime power pkp^{k}.

2 Prime power case

We will describe an algorithm that on vertex vV\overline{v}\in\overline{V} outputs a hyperedge of pp vertices that contains v\overline{v} (if any). To this end, first fix an algorithm that for any set e{u1,,upk}Ve\coloneqq\left\{u_{1},\ldots,u_{p^{k}}\right\}\subseteq V and for any 1ipt1\leq i\leq p^{t}, computes some “canonical” partition of the set (ei)\binom{e}{i} into subsets of size pp, and moreover assigns a canonical cyclic order within each such subset. This is indeed possible because of Eq. 3.2, since t<kt<k.

Given a vertex v{v1,,vpt}V\overline{v}\coloneqq\left\{v_{1},\ldots,v_{p^{t}}\right\}\in\overline{V},

It is easy to see that v\overline{v} is isolated in G\overline{G} iff all vvv\in\overline{v} are isolated in GG. Moreover, any isolated vertex in VV\overline{V}\smallsetminus\overline{V}^{*} contains at least one isolated vertex in VVV\smallsetminus V^{*}; and a non-isolated vertex in V\overline{V}^{*} contains at least one non-isolated vertex in VV^{*} (in fact ptp^{t} many).

The edges of G\overline{G} can indeed be computed efficiently with just black-box access to CC. In order to complete the reduction, we only need that V\overline{V} is efficiently indexable. This is indeed standard; see [KS98, §2.3] for a reference. See Figure 3 for an illustration of the proof.

Note that the size of the underlying graph blows up polynomially in our reduction. We do not know whether a reduction exists that avoids such a blow-up, although we suspect that the techniques of [BR98] can be used to show that some blow-up is necessary for black-box reductions.

A Natural Complete Problem

We start with some notation that will be useful for the presentation of our results.

We repeat the formal statement of Chevalley-Warning Theorem together with its proof.

A monic monomial of CWf\mathsf{CW}_{\bm{f}} is a product tS(x)=i=1mtsi(x)t_{S}(\bm{x})=\prod_{i=1}^{m}t_{s_{i}}(\bm{x}) for S=(s1,,sm)US=(s_{1},\ldots,s_{m})\in U.

We define Mf\mathcal{M}_{\bm{f}} to be the set of max-degree monic monomials of CWf\mathsf{CW}_{\bm{f}}, i.e. Mf{SUtS is a max-degree monic monomial of CWf}\mathcal{M}_{\bm{f}}\coloneqq\left\{S\in U\mid t_{S}\text{ is a max-degree monic monomial of }\mathsf{CW}_{\bm{f}}\right\}.

In words, the monomials t(S)t(S) are precisely the ones that arise when symbolically expanding CWf(x)\mathsf{CW}_{\bm{f}}({\bm{x}}). We illustrate this with an example: Let p=3p=3 and f1(x1,x2)=x1+x2f_{1}(x_{1},x_{2})=x_{1}+x_{2} and f2(x1,x2)=x12f_{2}(x_{1},x_{2})=x_{1}^{2}. Then modulo {x13x1,x23x2}\left\{x_{1}^{3}-x_{1},x_{2}^{3}-x_{2}\right\}, we have

Thus there are 1818 (=6×3)(=6\times 3) monic monomials in the system (f1,f2)(f_{1},f_{2}). The monomial corresponding to S=((1,5),(2,2))S=((1,5),(2,2)) is a maximal monomial since the 55-th term in CWf1\mathsf{CW}_{f_{1}} is x22x_{2}^{2} and 22-nd term in CWf2\mathsf{CW}_{f_{2}} is x12x_{1}^{2}. Using the above definitions, we now state the main technical lemma of the proof of CWT.

The proof of Chevalley-Warning Theorem follows easily from 4.2.

We have that deg(CWf)(p1)i=1mdeg(fi)\deg(\mathsf{CW}_{\bm{f}})\leq(p-1)\sum_{i=1}^{m}\deg(f_{i}). Thus, if f\bm{f} satisfies (CW Condition), then deg(CWf)<(p1)n\deg(\mathsf{CW}_{\bm{f}})<(p-1)n and hence Mf=0\left|\mathcal{M}_{\bm{f}}\right|=0. CWT now follows from 4.2. ∎

2 The Chevalley-Warning Theorem with Symmetry

In this section, we formalize the intuition that we built in Sections 1.2.2 and 1.2.3 to prove the more general statements to lead to the same conclusion as the Chevalley-Warning Theorem.

First, we prove a theorem that argues about the cardinality of Vf\mathcal{V}_{\bm{f}} directly using some symmetry of the system of polynomials f\bm{f}. Then, combining this symmetry-based argument with the (General CW Condition) we get the generalization of the Chevalley-Warning Theorem. Our natural PPAp\mathsf{PPA}_{p}-complete problem is based on this generalization.

Our first theorem highlights the use of symmetry in arguing about the size of Vf\left|\mathcal{V}_{\bm{f}}\right|.

Since σ\sigma acts freely on Vf\overline{\mathcal{V}}_{\bm{f}}, we can partition Vf\overline{\mathcal{V}}_{\bm{f}} into orbits of any xVf\bm{x}\in\overline{\mathcal{V}}_{\bm{f}} under actions of σ\langle\sigma\rangle, namely sets of the type {σi(x)}i[p]\left\{\sigma^{i}(\bm{x})\right\}_{i\in[p]} for xVf\bm{x}\in\overline{\mathcal{V}}_{\bm{f}}. Since σ\langle\sigma\rangle acts freely on Vf\overline{\mathcal{V}}_{\bm{f}}, each such orbit has size pp. Thus, we can conclude that Vf0(modp)\left|\overline{\mathcal{V}}_{\bm{f}}\right|\equiv 0\pmod{p} from which the theorem follows. ∎

We now state and prove an extension of CWT that captures both the argument from 4.2 and the symmetry argument from Theorem 6.

3 Computational Problems Related to Chevalley-Warning Theorem

We now follow the intuition developed in the previous section and in Section 1.2 to formally define the computational problems \textscChevalleyp\textsc{Chevalley}_{p}, \textscGeneralChevalleyp\textsc{GeneralChevalley}_{p}, and \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p}.

General Chevalley-Warning Theorem via (General CW Condition).

A max-degree monic monomial tS(x)t_{S}(\bm{x}) of CWf\mathsf{CW}_{\bm{f}}, or

black(\textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p})

Chevalley-Warning Theorem with Symmetry (Theorem 7).

(a) A max-degree monic monomial tS(x)t_{S}(\bm{x}) of CWg\mathsf{CW}_{\bm{g}}, or

(b) xVgVh\bm{x}\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}} such that σ(x)∉(VgVh){x}\sigma(\bm{x})\not\in(\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}})\smallsetminus\left\{\bm{x}\right\}, or

Some observations about the above computational problems follow:

In the problems \textscGeneralChevalleyp\textsc{GeneralChevalley}_{p} and \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p}, we assume that, if the output is a max-degree monic monomial, this is given via the multiset of indices SS that describes the monomial as formalized in 4.1.

We have \textscChevalleyp\textscGeneralChevalleyp\textscChevalleyWithSymmetryp\textsc{Chevalley}_{p}\preceq\textsc{GeneralChevalley}_{p}\preceq\textsc{ChevalleyWithSymmetry}_{p}. Thus, inclusion of \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p} in PPAp\mathsf{PPA}_{p} implies that the problems \textscChevalleyp\textsc{Chevalley}_{p} and \textscGeneralChevalleyp\textsc{GeneralChevalley}_{p} are in PPAp\mathsf{PPA}_{p}. Also, in Section 6 we prove that \textscSISp\textscChevalleyp\textsc{SIS}_{p}\preceq\textsc{Chevalley}_{p}, where \textscSISp\textsc{SIS}_{p} is a cryptographically relevant problem. This shows that the \textscGeneralChevalleyp\textsc{GeneralChevalley}_{p} and the \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p} problems are at least as hard as the \textscSISp\textsc{SIS}_{p} problem.

We fist prove that ChevalleyWithSymmetry is in PPAp\mathsf{PPA}_{{p}} and then prove its PPAp\mathsf{PPA}_{{p}}-hardness.

Even though Papadimitriou [Pap94] provided a rough proof sketch of \textscChevalleypPPAp\textsc{Chevalley}_{p}\in\mathsf{PPA}_{{p}}, a formal proof was not given. We show that \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p} is in PPAp\mathsf{PPA}_{{p}} (and so are \textscGeneralChevalleyp\textsc{GeneralChevalley}_{p} and \textscChevalleyp\textsc{Chevalley}_{p}). In order to do so we extend the definition of \textscBipartiteq\textsc{Bipartite}_{q} to instances where the vertices might have exponential degree and edges appear with multiplicity. The key here is to define a \textscBipartiteq\textsc{Bipartite}_{q} instance with unbounded (even exponential) degree, but with additional information that allows us to verify solutions efficiently.

Similar to \textscBipartiteq\textsc{Bipartite}_{q}, but degrees are allowed to be exponentially large, edges are allowed with multiplicities at most q1q-1.

Let V{0}×{0,1}n1V\coloneqq\left\{0\right\}\times\left\{0,1\right\}^{n-1} and U{1}×{0,1}n1U\coloneqq\left\{1\right\}\times\left\{0,1\right\}^{n-1}: \triangleright C:V×U[q]\mathcal{C}:V\times U\to[q], edge counting circuit \triangleright ϕV:V×U×[q](U×[q])q\phi_{V}:V\times U\times[q]\to(U\times[q])^{q}, grouping pivoted at VV \triangleright ϕU:V×U×[q](V×[q])q\phi_{U}:V\times U\times[q]\to(V\times[q])^{q}, grouping pivoted at UU \triangleright e=(v,u,k)e^{*}=(v^{*},u^{*},k^{*}), designated edge

V{0}×{0,1}n1V\coloneqq\left\{0\right\}\times\left\{0,1\right\}^{n-1}, U{1}×{0,1}n1U\coloneqq\left\{1\right\}\times\left\{0,1\right\}^{n-1}, E{(v,u,k):1kC(v,u), (v,u)V×U}E\coloneqq\left\{(v,u,k):1\leq k\leq C(v,u),\ (v,u)\in V\times U\right\} (here kk distinguishes multiplicities) Edge (v,u,k)(v,u,k) is grouped with {(v,u,k):(u,k)ϕV(v,u,k)}\left\{(v,u^{\prime},k^{\prime}):(u^{\prime},k^{\prime})\in\phi_{V}(v,u,k)\right\} (pivoting at vv), provided ϕV(v,u,k)=q|\phi_{V}(v,u,k)|=q, all (v,u,k)E(v,u^{\prime},k^{\prime})\in E and ϕV(v,u,k)=ϕV(v,u,k)\phi_{V}(v,u^{\prime},k^{\prime})=\phi_{V}(v,u,k). Edge (v,u,k)(v,u,k) is grouped with {(v,u,k):(v,k)ϕU(v,u,k)}\left\{(v^{\prime},u,k^{\prime}):(v^{\prime},k^{\prime})\in\phi_{U}(v,u,k)\right\} (pivoting at uu), provided ϕU(v,u,k)=q|\phi_{U}(v,u,k)|=q, all (v,u,k)E(v,u^{\prime},k^{\prime})\in E and ϕU(v,u,k)=ϕV(v,u,k)\phi_{U}(v^{\prime},u,k^{\prime})=\phi_{V}(v,u,k).

ee^{*} if ee^{*} is grouped, pivoting at vv^{*}, or if ee^{*} is not grouped pivoting at uu^{*}, OR eee\neq e^{*} if ee is not grouped pivoting at one of its ends.

In words, \textscSuccinctBipartitep\textsc{SuccinctBipartite}_{p} encodes a bipartite graph with arbitrary degree. Instead of listing the neighbors of a vertex using a circuit, we have a circuit that outputs the multiplicity of edges between any two given vertices. We are therefore unable to efficiently count the number of edges incident on any vertex. The grouping function ϕV\phi_{V} aims to group edges incident on any vertex vVv\in V into groups of size qq. Similarly, ϕU\phi_{U} aims to group edges incident on any vertex uUu\in U. The underlying principle is that if we have an edge ee^{*} that is not grouped pivoting at vv^{*} (one of its endpoints), then either ee^{*} is not pivoted at uu^{*} (its other endpoint) or there exists another edge that is also not grouped pivoting at one of its ends. Note that in contrast to the problems previously defined, vv^{*} might still be an endpoint of a valid solution.

For all primes pp, \textscChevalleyWithSymmetrypPPAp\textsc{ChevalleyWithSymmetry}_{p}\in\mathsf{PPA}_{{p}}.

We reduce \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p} to \textscSuccinctBipartitep\textsc{SuccinctBipartite}_{p}, which we show to be PPAp\mathsf{PPA}_{p}–complete in Section A.1. Given an instance of \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p}, namely a zecote polynomial system f=(g,h)\bm{f}=(\bm{g},\bm{h}) and a permutation σ\sigma, we construct a bipartite graph G=(UV,E)G=(U\cup V,E) encoded as an instance of \textscSuccinctBipartitep\textsc{SuccinctBipartite}_{p} as follows.

We first describe the edges between UU and V1V_{1}, namely include an edge between an assignment x\bm{x} and a monomial tt with multiplicity t(x)t(\bm{x}). With these edges in place, the degree of vertices are as follows:

x=0n\bm{x}=0^{n} has a single edge corresponding to the constant monomial 11, since f\bm{f} is zecote. We let this be the designated edge ee^{*} in the final \textscSuccinctBipartitep\textsc{SuccinctBipartite}_{p} instance.

xVgVh\bm{x}\in\mathcal{V}_{\bm{g}}\cap\mathcal{V}_{\bm{h}} such that x0\bm{x}\neq\bm{0}, or

tV1t\in V_{1} such that t(x)t(\bm{x}) is a max-degree monomial or

xVgVh\bm{x}\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}} such that σ(x)=x\sigma(\bm{x})=\bm{x} or

vV2v\in V_{2} such that xv\exists\,\bm{x}\in v satisfying xVgVh\bm{x}\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}} and σ(x)VgVh\sigma(\bm{x})\notin\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}}.

These correspond precisely to the solutions of \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p}. To summarize, the edge counting circuit CC on input (x,t)U×V1(\bm{x},t)\in U\times V_{1} outputs t(x)t(\bm{x}) and on input (x,v)U×V2(\bm{x},v)\in U\times V_{2} outputs p1p-1 if xVgVh\bm{x}\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}}, σ(x)x\sigma(\bm{x})\neq\bm{x} and v=Σxv=\Sigma_{\bm{x}} and 0 otherwise.

The grouping functions ϕU\phi_{U} and ϕV\phi_{V} are defined as follows (analogous to the so-called “chessplayer algorithm” in [Pap94]):

Grouping ϕU\phi_{U} (corresponding to endpoint in UU):

For xVg\bm{x}\in\overline{\mathcal{V}_{\bm{g}}}: there exists some ii such that CWgi(x)=0\mathsf{CW}_{g_{i}}(\bm{x})=0. Consider an edge (x,(a1,a2,,amg),k)(\bm{x},(a_{1},a_{2},\dots,a_{m_{g}}),k). We can explicitly list out the multiset containing the monomials tj=(a1,a2,,aij,,amg)t_{j}=(a_{1},a_{2},\dots,a_{i}\leftarrow j,\dots,a_{m_{g}}) with multiplicity tj(x)t_{j}(\bm{x}), for each 1jLi1\leq j\leq L_{i}. Since CWgi(x)=0\mathsf{CW}_{g_{i}}(\bm{x})=0, this multiset has size multiple of pp. Hence, we can canonically divide its elements into groups of size pp, counting multiplicities and ϕU\phi_{U} returns the subset containing (t,k)(t,k).

For xVgVh\bm{x}\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}} such that σ(x)x\sigma(\bm{x})\neq\bm{x}: Note that gip1(x)=0g_{i}^{p-1}(\bm{x})=0 for all i[mg]i\in[m_{g}]. Let v1V1v_{1}\in V_{1} be the vertex corresponding to the constant monomial 11. ϕU\phi_{U} groups the edge (x,v1,1)(\bm{x},v_{1},1) (of multiplicity 11) with the p1p-1 edges (x,Σx,k)(\bm{x},\Sigma_{\bm{x}},k) for k[p1]k\in[p-1]. For any other t V1{v1}t\in~V_{1}\setminus\left\{v_{1}\right\} and an edge (x,t,k)(\bm{x},t,k), we have that t=(a1,,amg)t=(a_{1},\dots,a_{m_{g}}) has ai0a_{i}\neq 0 for some ii. We define the multiset containing tj=(a1,,aij,amg)t_{j}=(a_{1},\dots,a_{i}\leftarrow j,\dots a_{m_{g}}) with multiplicity tj(x)t_{j}(\bm{x}) for each 1j<Li1\leq j<L_{i}. Since gip1(x)=0g_{i}^{p-1}(\bm{x})=0, this multiset has size which is a multiple of pp, which we can canonically partition into groups of size pp. Thus, ϕU\phi_{U} on input (x,t,k)(\bm{x},t,k) returns the group containing (t,k)(t,k).

Grouping ϕV\phi_{V} (corresponding to endpoint in VV):

We show that \textscLonelyp\textscChevalleyWithSymmetryp\textsc{Lonely}_{p}\preceq\textsc{ChevalleyWithSymmetry}_{p}. In the \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p} instance that we create, we will ensure that there are no solutions of type 0 (as in 4.8) and thus, the only valid solutions will be of type 1. In order to do so, we introduce the notions of labeling and proper labeling and prove a generalization of CWT that we call Labeled CWT (Theorem 8).

As we will see, the Labeled CWT, is just a re-formulation of the original CWT rather than a generalization. To understand the Labeled CWT we start with some examples that do not seem to satisfy the Chevalley-Warning condition, but where a solution exists.

Ignore Some Terms. The Labeled CWT formalizes the phenomenon observed in Example 1 and shows that under certain conditions we can ignore some terms when defining the degree of each polynomial. For instance, in Example 1, we can ignore the term x12x_{1}^{2} when computing the degree of ff and treat ff as a degree 11 polynomial of 22 variables, in which case the condition of CWT is satisfied.

We describe which terms can be ignored by defining a labeling of the terms of each polynomial in the system. The labels take values in {1,0,+1}\{-1,0,+1\} and our final goal is to ignore the terms with label +1+1. Of course, it should not be possible to define any labeling that we want; for example we cannot ignore all the terms of a polynomial. Next, we describe the rules of a proper labeling that will allow us to prove the Labeled CWT. We start with a definition of a labeling.

Example 1 (continued). According to the lexicographic ordering, f(x1,x2)=x12+x2f(x_{1},x_{2})=-x_{1}^{2}+x_{2} and we have the monomials t11=x12t_{11}=-x_{1}^{2} and t12=x2t_{12}=x_{2}. Hence, one possible labeling, which as we will see later corresponds to the vanilla Chevalley-Warning Theorem, is λ(1,1)=λ(1,2)=0\lambda(1,1)=\lambda(1,2)=0. According to this labeling, degλ(f)=2\deg^{\lambda}(f)=2. Another possible labeling, that, as we will see, allows us to apply the Labeled CWT ​, is λ(1,1)=+1\lambda(1,1)=+1 and λ(1,2)=1\lambda(1,2)=-1. In this case, the labeled degree is degλ(f)=1\deg^{\lambda}(f)=1.

As we highlighted before, our goal is to prove the Chevalley-Warning Theorem, but with the weaker condition that i=1mdegλ(fi)<n\sum_{i=1}^{m}\deg^{\lambda}(f_{i})<n instead of i=1mdeg(fi)<n\sum_{i=1}^{m}\deg(f_{i})<n. Of course, we first have to restrict the space of all possible labelings by defining proper labelings. In order to make the condition of proper labelings easier to interpret we start by defining the notion of a labeling graph.

Example 2. Let p=2p=2 and f1(x1,x2,x3,x4)=x1x2x3f_{1}(x_{1},x_{2},x_{3},x_{4})=x_{1}x_{2}-x_{3}, f2(x1,x2,x3,x4)=x1x3x4f_{2}(x_{1},x_{2},x_{3},x_{4})=x_{1}x_{3}-x_{4}. In this system, if we use the lexicographic monomial ordering we have the monomials t11=x1x2t_{11}=x_{1}x_{2}, t12=x3t_{12}=-x_{3}, t21=x1x3t_{21}=x_{1}x_{3}, t22=x4t_{22}=-x_{4}. The following figure shows the graph GλG_{\lambda} for the labeling λ(1,1)=+1\lambda(1,1)=+1, λ(1,2)=1\lambda(1,2)=-1, λ(2,1)=+1\lambda(2,1)=+1 and λ(2,2)=1\lambda(2,2)=-1.

For all ii, either λ(i,j){1,1}\lambda(i,j)\in\left\{-1,1\right\} for all jj, or λ(i,j)=0\lambda(i,j)=0 for all jj.

If two monomials tijt_{ij}, tijt_{ij^{\prime}} contain the same variable xkx_{k}, then λ(i,j)=λ(i,j)\lambda(i,j)=\lambda(i,j^{\prime}).

If λ(i,j)=1\lambda(i,j)=-1, then tijt_{ij} is multilinear.

If xkx_{k} is a variable in the monomials tijt_{ij}, tijt_{i^{\prime}j^{\prime}}, with iii\neq i^{\prime} and λ(i,j)=1\lambda(i,j)=-1, then λ(i,j)=+1\lambda(i^{\prime},j^{\prime})=+1.

If λ(i,j)0\lambda(i,j)\neq 0, then there exists a jj^{\prime} such that λ(i,j)=1\lambda(i,j^{\prime})=-1.

The labeling graph GλG_{\lambda} contains no directed cycles.

We give an equivalent way to understand the definition of a proper labeling.

Condition (1) : there is a partition of the polynomial system f\bm{f} into polynomial systems g\bm{g} and h\bm{h} such that all monomials in g\bm{g} are labeled in {+1,1}\left\{+1,-1\right\} and all monomials in h\bm{h} are labeled .

Condition (2) : each polynomial gig_{i} in g\bm{g} can be written as gi=gi++gig_{i}=g_{i}^{+}+g_{i}^{-}, such that gi+g_{i}^{+} and gig_{i}^{-} are polynomials on a disjoint set of variables.

Condition (3) : Each gig_{i}^{-} is multilinear.

Condition (4) : Any variable xkx_{k} can appear in at most one of the gig_{i}^{-}. Moreover, if an xkx_{k} appears in some gig_{i}^{-}, it does not appear in any hjh_{j} in h\bm{h}.

Condition (5) : Every gig_{i}^{-} involves at least one variable.

Condition (6) : The graph GλG_{\lambda} is essentially between polynomials in g\bm{g} and the variables that appear in them, with an edge (gixk)(g_{i}\to x_{k}) if xkx_{k} appears in gig_{i}^{-} or an edge (xkgi)(x_{k}\to g_{i}) if xkx_{k} appears in gi+g_{i}^{+}.

Note that degλ(gi)=deg(gi)\deg^{\lambda}(g_{i})=\deg(g_{i}^{-}), whereas degλ(hj)=deg(hj)\deg^{\lambda}(h_{j})=\deg(h_{j}).

It is easy to see that the trivial labeling λ(i,j)=0\lambda(i,j)=0 is always proper. As we will see this special case of the Labeled CWT ​ corresponds to the original CWT ​. Note that in this case the labeling graph GλG_{\lambda} is an empty graph. Also, given a system of polynomials f\bm{f} and a labeling λ\lambda, it is possible to check in polynomial time whether the labeling λ\lambda is proper or not.

Example 2 (continued). It is an instructive exercise to verify that the labeling λ\lambda specified was indeed a proper labeling of f\bm{f}.

We can re-write CWf(x)\mathsf{CW}_{\bm{f}}(x) as S[m]iS(1)Sfip1\sum_{S\subseteq[m]}\prod_{i\in S}(-1)^{|S|}f_{i}^{p-1}. We’ll show that every monomial appearing in the expansion of iSfip1\prod_{i\in S}f_{i}^{p-1} will have at least one variable with degree at most p1p-1. For simplicity, we focus on the case S=[m]S=[m] and the other cases of SS follow similarly.

We are now ready to prove the PPAp\mathsf{PPA}_{{p}}-hardness of \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p}.

For all primes pp, \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p} is PPAp\mathsf{PPA}_{{p}}-hard.

We prove that \textscLonelyp\textscChevalleyWithSymmetryp\textsc{Lonely}_{p}\preceq\textsc{ChevalleyWithSymmetry}_{p}. Let us assume (without loss of generality from 7.1) that the \textscLonelyp\textsc{Lonely}_{p} instance has a single distinguished vertex represented by 0n0^{n}. We’ll assume that 0n0^{n} is isolated, otherwise, no further reduction is necessary.

Given circuit C\mathcal{C}^{\prime} with (+,×,1)(+,\times,1) gates, there exists circuit Cˉ\bar{\mathcal{C}} with (+,×)(+,\times) gates such that

Thus, we can transform our original circuit C\mathcal{C} into a circuit Cˉ\bar{\mathcal{C}} with just (+,×)(+,\times) gates. For simplicity, we’ll write Cˉ\bar{\mathcal{C}} as simply C\mathcal{C} from now on.

As an intermiate step in the reduction we describe a system of polynomials fC\bm{f}_{{\mathcal{C}}} over 2n+s2n+s variables (x1,,xn,z1,,zs,y1,,yn)(x_{1},\dots,x_{n},z_{1},\dots,z_{s},y_{1},\dots,y_{n}), where ss is the size of the circuit C\mathcal{C}. The variables x=(x1,,xn)\bm{x}=(x_{1},\dots,x_{n}) correspond to the input of C\mathcal{C}, the variables y=(y1,,yn)\bm{y}=(y_{1},\dots,y_{n}) correspond to the output and the variables z=(z1,,zs)\bm{z}=(z_{1},\dots,z_{s}) correspond to the gates of C\mathcal{C}. For an addition gate (+)(+) we include a polynomial of the form

where a1a_{1} is the variable corresponding to the output of the (+)(+) gate and a2,a3a_{2},a_{3} are the variables corresponding to its two inputs. Similarly for a multiplication (×)(\times) gate, we include a polynomial of the form

Finally, for the output of the circuit, we include the polynomial

where aa is the variable corresponding to the ii-th output gate of C\mathcal{C}. It holds that

We now describe the reduction from an instance of \textscLonelyp\textsc{Lonely}_{p} to that of \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p}. In order to do this, we need to specify a system of polynomials (g,h)(\bm{g},\bm{h}) and a permutation σ\sigma such that σ=p|\sigma|=p. In addition, we will provide a proper labeling λ\lambda for g\bm{g} satisfying the degree condition. We will also ensure that σ\langle\sigma\rangle acts freely on VgVh\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}}. And hence, the only valid solutions for the resulting \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p} instance will be xVgVh\bm{x}\in\mathcal{V}_{\bm{g}}\cap\mathcal{V}_{\bm{h}}.

The polynomial system g\bm{g} contains the following systems of polynomials.

Note that there are N=(2n+s)pN=(2n+s)p variables in total.

For the polynomials belonging to a system of the form fC\bm{f}_{\mathcal{C}}, the labeling is equal to 1-1 for the monomials corresponding to the output of each gate and +1+1, otherwise. For instance, let a2+a3a1a_{2}+a_{3}-a_{1} be the ii-th polynomial of g\bm{g} corresponding to a (+)(+) gate and let a1a2a3a_{1}\prec a_{2}\prec a_{3}, then λ(i,1)=1\lambda(i,1)=-1 and λ(i,2)=λ(i,3)=+1\lambda(i,2)=\lambda(i,3)=+1.

For the polynomials belonging to a system of the form xixi+1\bm{x}_{i}-\bm{x}_{i+1}, the labeling is equal to 1-1 for the monomials with variables in xi+1\bm{x}_{i+1} and +1+1 for the monomials with variables in xi\bm{x}_{i}.

The labeling λ\lambda for g\bm{g} is proper.

By 4.15, the labeling λ\lambda is proper if the following conditions hold.

For all ii, either λ(i,j){1,1}\lambda(i,j)\in\left\{-1,1\right\} for all jj, or λ(i,j)=0\lambda(i,j)=0 for all jj. In the labeling λ\lambda, there are no labels equal to , so this condition holds trivially.

If two monomials tijt_{ij}, tijt_{ij^{\prime}} contain the same variable xkx_{k}, then λ(i,j)=λ(i,j)\lambda(i,j)=\lambda(i,j^{\prime}). By construction of g\bm{g}, no variable appears twice in the same polynomial with a different labeling. For polynomials of fC\bm{f}_{\mathcal{C}}, this holds because the output variable of a gate is not simultaneously an input variable and all input variables have the same labeling. For polynomials in a system of the form xixi+1\bm{x}_{i}-\bm{x}_{i+1}, each polynomial contains two different variables.

If λ(i,j)=1\lambda(i,j)=-1, then tijt_{ij} is multilinear. For polynomials of fC\bm{f}_{\mathcal{C}}, only the output variable of a gate has label 1-1 and by definition this monomial is linear. For polynomials in a system of the form xixi+1\bm{x}_{i}-\bm{x}_{i+1}, all monomials are linear, so the condition holds trivially.

If xkx_{k} is a variable in the monomials tijt_{ij}, tijt_{i^{\prime}j^{\prime}}, with iii\neq i^{\prime} and λ(i,j)=1\lambda(i,j)=-1, then λ(i,j)=+1\lambda(i^{\prime},j^{\prime})=+1. Observe that all monomials with label 1-1 contain only a single variable, so we refer to a monomial xkx_{k} with label 1-1. For a polynomial in fC\bm{f}_{\mathcal{C}}, a monomial xkx_{k} with label 1-1 corresponds to the output of a gate. Hence, if xkx_{k} appears in other monomials of fC\bm{f}_{\mathcal{C}}, these monomials correspond to inputs and have label +1+1. Also, if xkx_{k} is an output variable of fC\bm{f}_{\mathcal{C}}, then it might appear in a polynomial of the form a1a2a_{1}-a_{2}. However, by construction the monomials of xixi+1x_{i}-x_{i+1} that correspond to output variables of fC\bm{f}_{\mathcal{C}} have label +1+1.

If λ(i,j)0\lambda(i,j)\neq 0, then there exists a jj^{\prime} such that λ(i,j)=1\lambda(i,j^{\prime})=-1. By the definition of λ\lambda, all polynomials of g\bm{g} have a monomial with label 1-1. These are the monomials that correspond to the outputs of a gate for the systems of the form fC\bm{f}_{\mathcal{C}} and the monomials that correspond to xi+1\bm{x}_{i+1} for the systems of the form xixi+1\bm{x}_{i}-\bm{x}_{i+1}.

The labeling graph GλG_{\lambda} contains no cycles. Each system of the form xixi+1\bm{x}_{i}-\bm{x}_{i+1} has incoming edges with variables appearing only in the ii-th copy of fC\bm{f}_{\mathcal{C}} and outgoing edges with variables appearing only in the (i+1)(i+1)-th copy of fC\bm{f}_{\mathcal{C}}. Also, the variables appearing on the ii-th copy of fC\bm{f}_{\mathcal{C}} might appear only in the systems xi1xi\bm{x}_{i-1}-\bm{x}_{i} and xixi+1\bm{x}_{i}-\bm{x}_{i+1}. Hence, GλG_{\lambda} has no cycles that contain vertices of two different copies of fC\bm{f}_{\mathcal{C}} or of a copy of fC\bm{f}_{\mathcal{C}} and a system of the form xi1xi\bm{x}_{i-1}-\bm{x}_{i}.

It is left to argue that the labeling graph restricted to a copy of fC\bm{f}_{\mathcal{C}} does not have any cycles. Let the vertices of fC\bm{f}_{\mathcal{C}} be ordered according to the topological ordering of C\mathcal{C}. This restricted part of GλG_{\lambda} corresponds exactly to the graph of C\mathcal{C}, which by definition is a DAG. Hence, GλG_{\lambda} contains no cycles.∎

We also need to show that for this labeling g\bm{g} satisfies the labeled Chevalley condition.

The labeled Chevalley condition i=1mgdegλ(gi)<N\sum_{i=1}^{m_{g}}\deg^{\lambda}(g_{i})<N holds for g\bm{g} with labeling λ\lambda.

Each polynomial of g\bm{g} has a unique monomial with λ(i,j)=1\lambda(i,j)=-1 and this monomial has degree 11. Thus, i=1mgdegλ(gi)=mg\sum_{i=1}^{m_{g}}\deg^{\lambda}(g_{i})=m_{g}. On the other hand, the ii-th polynomial of g\bm{g} has exactly one variable that has not appeared in any of the previous polynomials. More specifically, the number of variables is equal to mg+nm_{g}+n, where nn is the size of the input of C\mathcal{C}. Hence, the labeled Chevalley condition holds for g\bm{g}. ∎

The system of polynomials g\bm{g} allows us to compute the pp vertices given by Ci(x){\mathcal{C}}^{i}(\bm{x}) for i[p+1]i\in[p+1]. From the definition of \textscLonelyp\textsc{Lonely}_{p} and our pre-processing on C\mathcal{C}, this group of pp vertices is a hyperedge if and only if C(x)x\mathcal{C}(\bm{x})\neq\bm{x}. Since solutions of \textscLonelyp\textsc{Lonely}_{p} are lonely vertices, we define h\bm{h} to exclude x\bm{x} such that C(x)x\mathcal{C}(\bm{x})\neq\bm{x}. Namely, we set h\bm{h} to be the system of polynomials

In the description of f=(g,h)\bm{f}=(\bm{g},\bm{h}), we have used the following vector of variables:

We define the permutation σ\sigma such that σ(x)=(x3,x4,,x2p,x1,x2,z3,4,z5,6,,z2p1,2p,z1,2)\sigma(\bm{x})=(\bm{x}_{3},\bm{x}_{4},\dots,\bm{x}_{2p},\bm{x}_{1},\bm{x}_{2},\bm{z}_{3,4},\bm{z}_{5,6},\dots,\bm{z}_{2p-1,2p},\bm{z}_{1,2}), as illustrated in the following figure. The blue arrows indicate the polynomials g\bm{g} and the green arrows indicate the permutation σ\sigma in the case of p=3p=3.

z1,2<spanclass="katexdisplay"><spanclass="katex"><spanclass="katexmathml"><mathxmlns="http://www.w3.org/1998/Math/MathML"display="block"><semantics><mrow><msub><mimathvariant="bolditalic">x</mi><mn>3</mn></msub></mrow><annotationencoding="application/xtex">x3</annotation></semantics></math></span><spanclass="katexhtml"ariahidden="true"><spanclass="base"><spanclass="strut"style="height:0.5944em;verticalalign:0.15em;"></span><spanclass="mord"><spanclass="mord"><spanclass="mord"><spanclass="mordboldsymbol">x</span></span></span><spanclass="msupsub"><spanclass="vlisttvlistt2"><spanclass="vlistr"><spanclass="vlist"style="height:0.3011em;"><spanstyle="top:2.55em;marginright:0.05em;"><spanclass="pstrut"style="height:2.7em;"></span><spanclass="sizingresetsize6size3mtight"><spanclass="mordmtight"><spanclass="mordmtight">3</span></span></span></span></span><spanclass="vlists"></span></span><spanclass="vlistr"><spanclass="vlist"style="height:0.15em;"><span></span></span></span></span></span></span></span></span></span></span>=<spanclass="katexdisplay"><spanclass="katex"><spanclass="katexmathml"><mathxmlns="http://www.w3.org/1998/Math/MathML"display="block"><semantics><mrow><msub><mimathvariant="bolditalic">x</mi><mn>4</mn></msub></mrow><annotationencoding="application/xtex">x4</annotation></semantics></math></span><spanclass="katexhtml"ariahidden="true"><spanclass="base"><spanclass="strut"style="height:0.5944em;verticalalign:0.15em;"></span><spanclass="mord"><spanclass="mord"><spanclass="mord"><spanclass="mordboldsymbol">x</span></span></span><spanclass="msupsub"><spanclass="vlisttvlistt2"><spanclass="vlistr"><spanclass="vlist"style="height:0.3011em;"><spanstyle="top:2.55em;marginright:0.05em;"><spanclass="pstrut"style="height:2.7em;"></span><spanclass="sizingresetsize6size3mtight"><spanclass="mordmtight"><spanclass="mordmtight">4</span></span></span></span></span><spanclass="vlists"></span></span><spanclass="vlistr"><spanclass="vlist"style="height:0.15em;"><span></span></span></span></span></span></span></span></span></span></span>z3,4<spanclass="katexdisplay"><spanclass="katex"><spanclass="katexmathml"><mathxmlns="http://www.w3.org/1998/Math/MathML"display="block"><semantics><mrow><msub><mimathvariant="bolditalic">x</mi><mn>5</mn></msub></mrow><annotationencoding="application/xtex">x5</annotation></semantics></math></span><spanclass="katexhtml"ariahidden="true"><spanclass="base"><spanclass="strut"style="height:0.5944em;verticalalign:0.15em;"></span><spanclass="mord"><spanclass="mord"><spanclass="mord"><spanclass="mordboldsymbol">x</span></span></span><spanclass="msupsub"><spanclass="vlisttvlistt2"><spanclass="vlistr"><spanclass="vlist"style="height:0.3011em;"><spanstyle="top:2.55em;marginright:0.05em;"><spanclass="pstrut"style="height:2.7em;"></span><spanclass="sizingresetsize6size3mtight"><spanclass="mordmtight"><spanclass="mordmtight">5</span></span></span></span></span><spanclass="vlists"></span></span><spanclass="vlistr"><spanclass="vlist"style="height:0.15em;"><span></span></span></span></span></span></span></span></span></span></span>=<spanclass="katexdisplay"><spanclass="katex"><spanclass="katexmathml"><mathxmlns="http://www.w3.org/1998/Math/MathML"display="block"><semantics><mrow><msub><mimathvariant="bolditalic">x</mi><mn>6</mn></msub></mrow><annotationencoding="application/xtex">x6</annotation></semantics></math></span><spanclass="katexhtml"ariahidden="true"><spanclass="base"><spanclass="strut"style="height:0.5944em;verticalalign:0.15em;"></span><spanclass="mord"><spanclass="mord"><spanclass="mord"><spanclass="mordboldsymbol">x</span></span></span><spanclass="msupsub"><spanclass="vlisttvlistt2"><spanclass="vlistr"><spanclass="vlist"style="height:0.3011em;"><spanstyle="top:2.55em;marginright:0.05em;"><spanclass="pstrut"style="height:2.7em;"></span><spanclass="sizingresetsize6size3mtight"><spanclass="mordmtight"><spanclass="mordmtight">6</span></span></span></span></span><spanclass="vlists"></span></span><spanclass="vlistr"><spanclass="vlist"style="height:0.15em;"><span></span></span></span></span></span></span></span></span></span></span>z5,6\bm{z}_{1,2}<span class="katex-display"><span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><semantics><mrow><msub><mi mathvariant="bold-italic">x</mi><mn>3</mn></msub></mrow><annotation encoding="application/x-tex">\bm{x}_{3}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.5944em;vertical-align:-0.15em;"></span><span class="mord"><span class="mord"><span class="mord"><span class="mord boldsymbol">x</span></span></span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.3011em;"><span style="top:-2.55em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">3</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span></span></span></span></span></span>=<span class="katex-display"><span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><semantics><mrow><msub><mi mathvariant="bold-italic">x</mi><mn>4</mn></msub></mrow><annotation encoding="application/x-tex">\bm{x}_{4}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.5944em;vertical-align:-0.15em;"></span><span class="mord"><span class="mord"><span class="mord"><span class="mord boldsymbol">x</span></span></span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.3011em;"><span style="top:-2.55em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">4</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span></span></span></span></span></span>\bm{z}_{3,4}<span class="katex-display"><span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><semantics><mrow><msub><mi mathvariant="bold-italic">x</mi><mn>5</mn></msub></mrow><annotation encoding="application/x-tex">\bm{x}_{5}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.5944em;vertical-align:-0.15em;"></span><span class="mord"><span class="mord"><span class="mord"><span class="mord boldsymbol">x</span></span></span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.3011em;"><span style="top:-2.55em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">5</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span></span></span></span></span></span>=<span class="katex-display"><span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><semantics><mrow><msub><mi mathvariant="bold-italic">x</mi><mn>6</mn></msub></mrow><annotation encoding="application/x-tex">\bm{x}_{6}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.5944em;vertical-align:-0.15em;"></span><span class="mord"><span class="mord"><span class="mord"><span class="mord boldsymbol">x</span></span></span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.3011em;"><span style="top:-2.55em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">6</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span></span></span></span></span></span>\bm{z}_{5,6} Claim 4.20. The group σ\langle\sigma\rangle has order pp and acts freely on VgVh\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}}.

In order to see that σ=p\left|\sigma\right|=p, note that the input of σ\sigma consists of 3p3p blocks of variables. The permutation σ\sigma performs a rotation of the first 2p2p blocks by two positions and of the last pp blocks by one position. All that remains is to show that σ\langle\sigma\rangle acts freely on VgVh\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}}. First, we show that σ\langle\sigma\rangle defines a group action on VgVh\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}}, that is for all xVgVh\bm{x}\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}}, it holds that σ(x)VgVh\sigma(\bm{x})\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}}. Let x=(x1,x2,,x2p1,x2p,z1,2,z3,4,,z2p1,2p)VgVh\bm{x}=(\bm{x}_{1},\bm{x}_{2},\dots,\bm{x}_{2p-1},\bm{x}_{2p},\bm{z}_{1,2},\bm{z}_{3,4},\dots,\bm{z}_{2p-1,2p})\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}}, then

xVg\bm{x}\in\mathcal{V}_{\bm{g}} implies that fC(x2i1,x2i,z2i1,2i)=0\bm{f}_{\mathcal{C}}(\bm{x}_{2i-1},\bm{x}_{2i},\bm{z}_{2i-1,2i})=0 for i[p]i\in[p] and x2i=x2i+1\bm{x}_{2i}=\bm{x}_{2i+1} for i[p1]i\in[p-1]

xVh\bm{x}\in\overline{\mathcal{V}_{\bm{h}}} implies that x1x2\bm{x}_{1}\neq\bm{x}_{2}, that is, C(x1)x1\mathcal{C}(\bm{x}_{1})\neq\bm{x}_{1} since fC(x1,x2,z1,2)=0x2=C(x1)\bm{f}_{\mathcal{C}}(\bm{x}_{1},\bm{x}_{2},\bm{z}_{1,2})=0\Leftrightarrow\bm{x}_{2}=\mathcal{C}(\bm{x}_{1}).

Now, σ(x)=(x3,x4,,x1,x2,z3,4,z5,6,,z1,2)VgVh\sigma(\bm{x})=(\bm{x}_{3},\bm{x}_{4},\ldots,\bm{x}_{1},\bm{x}_{2},\bm{z}_{3,4},\bm{z}_{5,6},\ldots,\bm{z}_{1,2})\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}} holds because

fC(x2i1,x2i,z2i1,2i)=0\bm{f}_{\mathcal{C}}(\bm{x}_{2i-1},\bm{x}_{2i},\bm{z}_{2i-1,2i})=0 for i[p]i\in[p] and x2i=x2i+1\bm{x}_{2i}=\bm{x}_{2i+1} for i[p1]i\in[p-1], which holds from xVg\bm{x}\in\mathcal{V}_{\bm{g}}. Additionally, x1=x2p\bm{x}_{1}=\bm{x}_{2p} holds because we pre-processed C\mathcal{C} such that Cp(x1)=x1\mathcal{C}^{p}(\bm{x}_{1})=\bm{x}_{1},

x3x4\bm{x}_{3}\neq\bm{x}_{4}, which holds because x4=C(x3)\bm{x}_{4}=\mathcal{C}(\bm{x}_{3}) for i[p]i\in[p] and from the definition of C\mathcal{C}, C(x1)x1\mathcal{C}(\bm{x}_{1})\neq\bm{x}_{1} implies that x2ix2i1\bm{x}_{2i}\neq\bm{x}_{2i-1} for all i[p]i\in[p].

Finally, if xVgVh\bm{x}\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}}, by construction of C\cal{C}, we have that x2kx2j\bm{x}_{2k}\neq\bm{x}_{2j} for kjk\neq j and thus σ(x)x\sigma(\bm{x})\neq\bm{x} simply because x3x1\bm{x}_{3}\neq\bm{x}_{1}. Thus, we conclude that σ\langle\sigma\rangle acts freely on VgVh\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}}. ∎

The solution of this instance of \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p} cannot be a vector xVgVh\bm{x}\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}} with σ(x)∉VgVh\sigma(\bm{x})\not\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}} or σ(x)=x\sigma(\bm{x})=\bm{x}, since we know from 4.20 that σ\langle\sigma\rangle acts freely on VgVh\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}_{\bm{h}}}. We also have from Theorem 8 that the solution also cannot be a max-degree monomial in the expansion of CWg(x)=(1gip1)\mathsf{CW}_{\bm{g}}({\bm{x}})=\prod(1-g_{i}^{p-1}). Thus, the solution must be an x0\bm{x}\neq\bm{0} such that f(x)=0\bm{f}(\bm{x})=\bm{0}. Let x1\bm{x}_{1} denote the first nn coordinates of x\bm{x}, then f(x)=0\bm{f}(\bm{x})=\bm{0} implies that x1=C(x1)\bm{x}_{1}=\mathcal{C}(\bm{x}_{1}) and x0\bm{x}\neq\bm{0} implies that x10\bm{x}_{1}\neq\bm{0}. Hence, x1\bm{x}_{1} corresponds to a lonely vertex of the \textscLonelyp\textsc{Lonely}_{p} instance. ∎

Complete Problems via Small Depth Arithmetic Circuits

In [Rub16], a similar simplification theorem was shown for PPAD\mathsf{PPAD}. In fact, this simplification involves only the End-of-Line problem and does not go through a natural complete problem for PPAD\mathsf{PPAD} (see Theorem 1.5 in [Rub16]). A similar result can be shown for other TFNP\mathsf{TFNP} subclasses, including PPA\mathsf{PPA}. However, it is unclear if these techniques also apply to PPAp\mathsf{PPA}_{{p}} classes.

Since the reductions between \textscSuccinctBipartitep\textsc{SuccinctBipartite}_{p} and other problems studied in this work (refer to Appendix A) can also be implemented as AC0\mathsf{AC}^{0} circuits, we get the following corollary.

For all primes pp, \textscLonelyp[NC1]\textsc{Lonely}_{p}[\mathsf{NC}^{1}], \textscLeafp[NC1]\textsc{Leaf}_{p}[\mathsf{NC}^{1}] and \textscBipartitep[NC1]\textsc{Bipartite}_{p}[\mathsf{NC}^{1}] are all PPAp\mathsf{PPA}_{{p}}-complete.

Thus, Theorem 9 allows us to consider reductions from these PPAp\mathsf{PPA}_{p}-complete problems with instances encoded by a shallow formulas rather than an arbitrary circuit. We believe this could be a useful starting point for finding other PPAp\mathsf{PPA}_{{p}}-complete problems.

Applications of Chevalley-Warning

x{0,1}n\bm{x}\in\left\{0,1\right\}^{n} such that x0\bm{x}\neq\bm{0} and Ax0(modq){\bm{A}}\bm{x}\equiv\bm{0}\pmod{q}

x{1,0,1}n\bm{x}\in\left\{-1,0,1\right\}^{n} such that x0\bm{x}\neq\bm{0} and Ax0(modq){\bm{A}}\bm{x}\equiv\bm{0}\pmod{q}

For the regime of parameters nn, mm as in Definitions 6.1 and 6.2,

For all primes pp : \textscBISp, \textscSISp\textscChevalleyp\textsc{BIS}_{p},\ \textsc{SIS}_{p}\preceq\textsc{Chevalley}_{p}.

For all qq : \textscBISq, \textscSISqFPPPAq\textsc{BIS}_{q},\ \textsc{SIS}_{q}\in\mathsf{FP}^{\mathsf{PPA}_{q}},

For all kk : \textscBIS2kFP\textsc{BIS}_{2^{k}}\in\mathsf{FP},

Part 1. For all primes pp, \textscBISp, \textscSISp\textscChevalleyp\textsc{BIS}_{p},\ \textsc{SIS}_{p}\preceq\textsc{Chevalley}_{p}.

Given an \textscBISp\textsc{BIS}_{p} instance A=(aij){\bm{A}}=(a_{ij}), we define a zecote polynomial system as follows

Part 2. For all qq : \textscBISq, \textscSISqFPPPAq\textsc{BIS}_{q},\ \textsc{SIS}_{q}\in\mathsf{FP}^{\mathsf{PPA}_{q}}.

Finally, we define x:=(z1y1,,zn1yn1){0,1}n\bm{x}:=(z_{1}\bm{y}_{1},\dots,z_{n_{1}}\bm{y}_{n_{1}})\in\left\{0,1\right\}^{n}. Observe that since yi\bm{y}_{i} and z\bm{z} are binary, x\bm{x} is also binary. Additionally,

Note that for a prime pp and any kk, we have from Theorem 1, that PPApk=PPAp\mathsf{PPA}_{p^{k}}=\mathsf{PPA}_{p}. Additionally, Theorem 4 shows that PPAp\mathsf{PPA}_{{p}} is closed under Turing reductions, so we have the following corollary.

For all primes pp and all kk : \textscBISpk, \textscSISpkPPAp\textsc{BIS}_{p^{k}},\ \textsc{SIS}_{p^{k}}\in\mathsf{PPA}_{p}.

Even though the \textscSISq\textsc{SIS}_{q} problem is well-studied in lattice theory, not many results are known in the regime we consider where qq is a constant. Our results show that solving \textscChevalleyp\textsc{Chevalley}_{p} is at least as hard as finding short integer solutions in pp-ary lattices for a specific range of parameters. More specifically, our reduction assumes that qq is a constant and, thus, it does not depend on the input lattice, and that the dimension nn of lattice is related to the number of constraints in the dual as n>((m+1)/2)N(q)(q1)n>((m+1)/2)^{N(q)}(q-1). On the other hand, we showed (in Parts 3, 4) that there are qq-ary lattice for which finding short integer solutions is easy.

In this section, we prove the structural properties of PPAq\mathsf{PPA}_{q} outlined in Section 1.5.

Buss and Johnson [BJ12, Joh11] defined a problem \textscModq\textsc{Mod}_{q}, which is almost identical to \textscLonelyq\textsc{Lonely}_{q}, with the only difference being that the qq-dimensional matching is over a power-of-22 many vertices encoded by C:{0,1}n{0,1}nC:\left\{0,1\right\}^{n}\to\left\{0,1\right\}^{n}, with no designated vertices, except when qq is a power of 22 in which case we have one designated vertex. The class PMODq\mathsf{PMOD}_{q} is then defined as the class of total search problems reducible to \textscModq\textsc{Mod}_{q}. The restriction of number of vertices to be a power of 22, which arises as an artifact of the binary encoding of circuit inputs, makes the class PMODq\mathsf{PMOD}_{q} slightly weaker than PPAq\mathsf{PPA}_{q}.

To compare PPAq\mathsf{PPA}_{q} and PMODq\mathsf{PMOD}_{q}, we define a restricted version of \textscLonelyq\textsc{Lonely}_{q}, where the number of designated vertices is exactly kk; call this problem \textscLonelyqk\textsc{Lonely}_{q}^{k}. Clearly, \textscLonelyqk\textsc{Lonely}_{q}^{k} reduces to \textscLonelyq\textsc{Lonely}_{q}. We show that a converse holds, but only for prime pp; see Section A.2 for proof.

For all primes pp and k{1,,p1}k\in\left\{1,\ldots,p-1\right\}, \textscLonelyp\textsc{Lonely}_{p} reduces to \textscLonelypk\textsc{Lonely}_{p}^{k}.

For all primes pp, PPAp=PMODp\mathsf{PPA}_{p}=\mathsf{PMOD}_{p}.

Johnson [Joh11] already showed that PPADPMODq\mathsf{PPAD}\subseteq\mathsf{PMOD}_{q} which implies that PPADPPAq\mathsf{PPAD}\subseteq\mathsf{PPA}_{q}. We present a simplified version of that proof.

We reduce the PPAD\mathsf{PPAD}-complete problem End-of-Line to \textscLonelyq\textsc{Lonely}_{q}. An instance of End-of-Line is a circuit CC that implicitly encodes a directed graph G=(V,E)G=(V,E), with in-degree and out-degree at most 11 and a designated vertex vv^{*} with in-degree and out-degree 11.

2 Oracle separations

Here we explain how PPAq\mathsf{PPA}_{q} can be separated from other TFNP\mathsf{TFNP} classes relative to oracles, as summarized in Figure 1. That is, for distinct primes p,pp,p^{\prime}, there exist oracles O1,,O5O_{1},\ldots,O_{5} such that

The usual technique for proving such oracle separations is propositional proof complexity (together with standard diagonalization arguments) [BCE+98, BM04, BJ12]. The main insight is that if a problem S1S_{1} reduces to another problem S2S_{2} in a black-box manner, then there are “efficient proofs” of the totality of S1S_{1} starting from the totality of S2S_{2}. The discussion below assumes some familiarity with these techniques.

Johnson [Joh11] showed all the above separations with respect to PMODp\mathsf{PMOD}_{p}. Since we showed PPAp=PMODp\mathsf{PPA}_{p}=\mathsf{PMOD}_{p} (7.2), the same oracle separations hold for PPAp\mathsf{PPA}_{p}.

For a fixed k1k\geq 1, consider the problem Sk\rotatebox[origin=c]180.0&i[k]\textscLonelypiS_{k}\coloneqq\rotatebox[origin={c}]{180.0}{{\&}}_{i\in[k]}\,\textsc{Lonely}_{p_{i}} where pip_{i} are the primes. Buss et al. [BGIP01] showed that the principle underlying SiS_{i} is incomparable with the principle underlying \textscLonelypi+1\textsc{Lonely}_{p_{i+1}}. This translates into an relativized separation i[k]PPApiPPApi+1\bigcap_{i\in[k]}\mathsf{PPA}_{p_{i}}\nsubseteq\mathsf{PPA}_{p_{i+1}} which in particular implies i[k]PPApiPPAD\bigcap_{i\in[k]}\mathsf{PPA}_{p_{i}}\nsubseteq\mathsf{PPAD}. Finally, one can consider the problem SSk(n)S\coloneqq S_{k(n)} where k(n)k(n) is a slowly growing function of the input size nn. This problem is in pPPAp\bigcap_{p}\mathsf{PPA}_{p} since for each fixed pp and for large enough input size, SS reduces to the PPAp\mathsf{PPA}_{p}-complete problem. On the other hand, the result of Buss et al. [BGIP01] is robust enough to handle a slowly growing k(n)k(n); we omit the details.

3 Closure under Turing reductions

For any prime pp and total search problem SS, if ST\textscLonelypS\preceq_{T}\textsc{Lonely}_{p}, then Sm\textscLonelypS\preceq_{m}\textsc{Lonely}_{p}.

The key reason why this theorem holds for prime pp is 7.1: In a \textscLonelyp\textsc{Lonely}_{p} instance, we can assume w.l.o.g. that there are exactly p1p-1 distinguished vertices.

We make the following simplifying assumptions.

For any query the vertices ViV_{i}^{*} are always isolated in GiG_{i} (if some vertex in ViV_{i}^{*} were to not be isolated, the algorithm could be modified to simply not make the query).

Exactly tt queries are made irrespective of the oracle answers.

We reduce xx to a single instance of \textscLonelyp\textsc{Lonely}_{p} as follows.

We’ll define the hyperedge for vertex v=(v1,,vk)\overline{v}=(v_{1},\ldots,v_{k}) for any ktk\leq t. Let jkj\leq k be the last coordinate such that for all i<ji<j, the vertex viv_{i} is a valid solution for the \textscLonelyp\textsc{Lonely}_{p} instance (Ci,Vi)(C_{i},V_{i}^{*}), which the algorithm creates on receiving v1,,vi1v_{1},\ldots,v_{i-1} as answers to previous queries.

Let u1,,up1u_{1},\ldots,u_{p-1} be the neighbors of vkv_{k} in a canonical trivial matching over [p]n[p]^{n}; e.g. {[p]×w:w[p]n1}\left\{[p]\times w:w\in[p]^{n-1}\right\}. The neighbors of v\overline{v} are {(v1,,vk1,ui)}i\left\{(v_{1},\ldots,v_{k-1},u_{i})\right\}_{i}.

We consider three cases, depending on whether vkv_{k} is designated, non-isolated or isolated in the \textscLonelyp\textsc{Lonely}_{p} instance (Ck,Vk)(C_{k},V_{k}^{*}).

For u1,,up1u_{1},\ldots,u_{p-1} being the neighbors of vkv_{k} in GkG_{k}, the neighbors of v\overline{v} are {(v1,,vk1,ui)}i\left\{(v_{1},\ldots,v_{k-1},u_{i})\right\}_{i}.

Such a vkv_{k} is a valid solution for (Ck,Vk)(C_{k},V_{k}^{*}).

the algorithm will have a next oracle query (Ck+1,Vk+1)(C_{k+1},V_{k+1}^{*}). In this case, for u1,,up1u_{1},\ldots,u_{p-1} being the designated vertices in Vk+1V_{k+1}^{*}, the neighbors of v\overline{v} are {(v1,,vk1,vk,ui)}i\left\{(v_{1},\ldots,v_{k-1},v_{k},u_{i})\right\}_{i}.

there are no more queries, and we leave v\overline{v} isolated.

Let u1,,up2u_{1},\ldots,u_{p-2} be the other designated vertices in VkV_{k}^{*}. The neighbors of v\overline{v} are {(v1,,vk1,ui)}i{(v1,,vk1)}\left\{(v_{1},\ldots,v_{k-1},u_{i})\right\}_{i}\cup\left\{(v_{1},\ldots,v_{k-1})\right\}.

V1<spanclass="katexdisplay"><spanclass="katex"><spanclass="katexmathml"><mathxmlns="http://www.w3.org/1998/Math/MathML"display="block"><semantics><mrow><msub><mi>V</mi><mn>1</mn></msub><mo>×</mo><msub><mi>V</mi><mn>2</mn></msub></mrow><annotationencoding="application/xtex">V1×V2</annotation></semantics></math></span><spanclass="katexhtml"ariahidden="true"><spanclass="base"><spanclass="strut"style="height:0.8333em;verticalalign:0.15em;"></span><spanclass="mord"><spanclass="mordmathnormal"style="marginright:0.2222em;">V</span><spanclass="msupsub"><spanclass="vlisttvlistt2"><spanclass="vlistr"><spanclass="vlist"style="height:0.3011em;"><spanstyle="top:2.55em;marginleft:0.2222em;marginright:0.05em;"><spanclass="pstrut"style="height:2.7em;"></span><spanclass="sizingresetsize6size3mtight"><spanclass="mordmtight"><spanclass="mordmtight">1</span></span></span></span></span><spanclass="vlists"></span></span><spanclass="vlistr"><spanclass="vlist"style="height:0.15em;"><span></span></span></span></span></span></span><spanclass="mspace"style="marginright:0.2222em;"></span><spanclass="mbin">×</span><spanclass="mspace"style="marginright:0.2222em;"></span></span><spanclass="base"><spanclass="strut"style="height:0.8333em;verticalalign:0.15em;"></span><spanclass="mord"><spanclass="mordmathnormal"style="marginright:0.2222em;">V</span><spanclass="msupsub"><spanclass="vlisttvlistt2"><spanclass="vlistr"><spanclass="vlist"style="height:0.3011em;"><spanstyle="top:2.55em;marginleft:0.2222em;marginright:0.05em;"><spanclass="pstrut"style="height:2.7em;"></span><spanclass="sizingresetsize6size3mtight"><spanclass="mordmtight"><spanclass="mordmtight">2</span></span></span></span></span><spanclass="vlists"></span></span><spanclass="vlistr"><spanclass="vlist"style="height:0.15em;"><span></span></span></span></span></span></span></span></span></span></span>V_{1}<span class="katex-display"><span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><semantics><mrow><msub><mi>V</mi><mn>1</mn></msub><mo>×</mo><msub><mi>V</mi><mn>2</mn></msub></mrow><annotation encoding="application/x-tex">V_{1}\times V_{2}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.8333em;vertical-align:-0.15em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right:0.2222em;">V</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.3011em;"><span style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">1</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span></span><span class="mspace" style="margin-right:0.2222em;"></span><span class="mbin">×</span><span class="mspace" style="margin-right:0.2222em;"></span></span><span class="base"><span class="strut" style="height:0.8333em;vertical-align:-0.15em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right:0.2222em;">V</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.3011em;"><span style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">2</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span></span></span></span></span></span>\cdots\cdots It is easy to see that our definition of edges are consistent and the only vertices which are isolated (apart from those in V\overline{V}^{*}) are of the type (y1,,yt)(y_{1},\ldots,y_{t}) where each yiy_{i} is a valid solution for the \textscLonelyp\textsc{Lonely}_{p} instance (Ci,Vi)(C_{i},V_{i}^{*}). Thus, given an isolated vertex y\overline{y}, we can immediately infer a solution for xx as L(x,y1,,yt)L(x,y_{1},\ldots,y_{t}). This completes the reduction since V\overline{V} is efficiently representable and indexable — see 2.4. ∎

Acknowledgements

We thank Christos Papadimitriou, Robert Robere, Dmitry Sokolov and Noah Stephens-Davidowitz for helpful discussions. We also thank anonymous referees for valuable suggestions.

MG was supported by NSF grant CCF-1412958 (this work was done while MG was at IAS). PK was supported in parts by NSF Award numbers CCF-1733808 and IIS-1741137 and MIT-IBM Watson AI Lab and Research Collaboration Agreement No. W1771646 (this work was done while PK was a student at MIT). MZ is supported by a Google PhD Fellowship. KS is supported in part by NSF/BSF grant #1350619, an MIT-IBM grant, and a DARPA Young Faculty Award, MIT Lincoln Laboratories and Analog Devices.

Appendix A Appendix: Reductions Between Complete Problems

In order to prove Theorem 5, we introduce an additional problem that will serve as intermediate problem in our reductions.

Same as \textscLeafq\textsc{Leaf}_{q}, but degrees are allowed to be larger (polynomially bounded).

qq-uniform hypergraph G=(V,E)G=(V,E). Designated vertex vVv^{*}\in V.

\triangleright C:{0,1}n({0,1}nq)kC:\left\{0,1\right\}^{n}\to(\left\{0,1\right\}^{nq})^{k}, with ({0,1}nq)k(\left\{0,1\right\}^{nq})^{k} interpreted as kk many qq-subsets of {0,1}n\left\{0,1\right\}^{n} \triangleright v{0,1}nv^{*}\in\left\{0,1\right\}^{n} (usually 0n0^{n})

V{0,1}nV\coloneqq\left\{0,1\right\}^{n}. For distinct v1,,vqv_{1},\ldots,v_{q}, edge e{v1,,vq}Ee\coloneqq\left\{v_{1},\ldots,v_{q}\right\}\in E if eC(v)e\in C(v) for all vev\in e

We show the following inter-reducibilities: (1) \textscLeafq\textscLeafq\textsc{Leaf}_{q}\asymp\textsc{Leaf}_{q}^{\prime}, (2) \textscLeafq\textscBipartiteq\textsc{Leaf}_{q}^{\prime}\asymp\textsc{Bipartite}_{q} and (3) \textscLeafq\textscLonelyq\textsc{Leaf}_{q}\asymp\textsc{Lonely}_{q}.

black(1a) \textscLeafq\textscLeafq\bm{\textsc{Leaf}_{q}\preceq\textsc{Leaf}_{q}^{\prime}} Each instance of \textscLeafq\textsc{Leaf}_{q} is trivially an instance of \textscLeafq\textsc{Leaf}^{\prime}_{q}.

black(1b) \textscLeafq\textscLeafq\bm{\textsc{Leaf}^{\prime}_{q}\preceq\textsc{Leaf}_{q}}. We start with a \textscLeafq\textsc{Leaf}^{\prime}_{q} instance (C,v)(C,v^{*}), where CC encode a qq-uniform hypergraph G=(V,E)G=(V,E) with degree at most kk. Let t=k/qt=\mathop{\left\lceil k/q\right\rceil}. We construct a \textscLeafq\textsc{Leaf}_{q} instance encoding a hypergraph G=(V,E)\overline{G}=(\overline{V},\overline{E}) on vertex set VV×[t]\overline{V}\coloneqq V\times[t], intuitively making tt copies of each vertex.

By 2.4, this completes the reduction since the edges are locally computable with black-box access to CC and V\overline{V} is efficiently indexable.

black(2a) \textscLeafq\textscBipartiteq\bm{\textsc{Leaf}^{\prime}_{q}\preceq\textsc{Bipartite}_{q}}. We start with a \textscLeafq\textsc{Leaf}^{\prime}_{q} instance (C,v)(C,v^{*}), where CC encode a qq-uniform hypergraph G=(V,E)G=(V,E). We construct a \textscBipartiteq\textsc{Bipartite}_{q} instance encoding a graph G=(VU,E)\overline{G}=(\overline{V}\cup\overline{U},\overline{E}) such that V=V\overline{V}=V and U=(Vq)\overline{U}=\binom{V}{q}, i.e. all qq-sized subsets of VV. We include the edge (v,e)E(v,e)\in\overline{E} if eEe\in E is incident on vv. The designated vertex for the \textscBipartiteq\textsc{Bipartite}_{q} instance is vv^{*} in V\overline{V}.

Clearly, all vertices eUe\in\overline{U} have degree either qq or . For any vVv\in\overline{V}, the degree of vv in G\overline{G} is same as its degree in GG. Thus, any solution to the \textscBipartiteq\textsc{Bipartite}_{q} instance immediately gives a solution to the original \textscLeafq\textsc{Leaf}^{\prime}_{q} instance. By 2.4, this completes the reduction since the edges are locally computable with black-box access to CC and V\overline{V} and U\overline{U} are efficiently indexable (cf. [KS98, §2.3] for efficiently indexing U\overline{U}).

black(2b) \textscBipartiteq\textscLeafq\bm{\textsc{Bipartite}_{q}\preceq\textsc{Leaf}^{\prime}_{q}}. We start with a \textscBipartiteq\textsc{Bipartite}_{q} instance (C,v)(C,v^{*}) encoding a bipartite graph G=(VU,E)\mathcal{G}=(V\cup U,E) with maximum degree of any vertex being at most kk. We construct a \textscLeafq\textsc{Leaf}^{\prime}_{q} instance encoding a hypergraph G=(V,E)\overline{G}=(\overline{V},\overline{E}) such that V=V\overline{V}=V with designated vertex vv^{*}.

black(3a) \textscLeafq\textscLonelyq\bm{\textsc{Leaf}_{q}\preceq\textsc{Lonely}_{q}}. We start with a \textscLeafq\textsc{Leaf}_{q} instance (C,v)(C,v^{*}), where CC encode a qq-uniform hypergraph G=(V,E)G=(V,E) with degree at most qq. If degG(v)=q\deg_{G}(v^{*})=q or , then we don’t need any further reduction. Else, we construct a \textscLonelyq\textsc{Lonely}_{q} instance encoding a qq-dimensional matching G=(V,E)\overline{G}=(\overline{V},\overline{E}) on vertex set V=V×[q]\overline{V}=V\times[q]. The designated vertices will be V={(v,qi):1iqdeg(v)}V^{*}=\left\{(v,q-i):1\leq i\leq q-\deg(v^{*})\right\}. Note that, V=qdegG(v)|V^{*}|=q-\deg_{G}(v^{*}) and hence 1Vq11\leq|V^{*}|\leq q-1.

For any vertex (v,i)V(v,i)\in\overline{V}, we assign it at most one hyperedge as follows:

If degG(v)=0\deg_{G}(v)=0, we include the hyperedge {(v,i):i[q]}\left\{(v,i):i\in[q]\right\}.

Else if 0<degG(v)<i0<\deg_{G}(v)<i, we leave it isolated.

It is easy to see that our definition of hyperedges is consistent and that the designated vertices VV^{*} are indeed isolated. Moreover, a vertex (v,i)(v,i) is isolated in G\overline{G} only if 1degG(v)q11\leq\deg_{G}(v)\leq q-1. Thus, solutions to the \textscLeafq\textsc{Leaf}_{q} instance naturally maps to solutions to the original \textscLeafq\textsc{Leaf}_{q}^{\prime} instance.

By 2.4, this completes the reduction since the edges are locally computable with black-box access to CC and V\overline{V} is efficiently indexable.

black(3b) \textscLonelyq\textscLeafq\bm{\textsc{Lonely}_{q}\preceq\textsc{Leaf}_{q}}. We start with a \textscLonelyq\textsc{Lonely}_{q} instance (C,V)(C,V^{*}), where CC encode a qq-dimensional matching G=(V,E)G=(V,E). We construct a \textscLeafq\textsc{Leaf}_{q} instance encoding a qq-uniform hypergraph G=(V,E)\overline{G}=(\overline{V},\overline{E}) on vertex set V\overline{V} that will be specified shortly. We describe the hyperedges in G\overline{G} and it’ll be clear how to compute the hyperedges for any vertex locally with just black-box access to CC.

We start with V=V\overline{V}=V. Our goal is to transform all vertices of degree 11 to degree qq, while ensuring that vertices of degree are mapped to vertices of degree not a multiple of qq. Towards this goal we let E\overline{E} to be set of edges in EE in addition to q1q-1 canonical qq-dimensional matchings over VV. For example, for a vertex v(x1,,xn)V=[q]nv\coloneqq(x_{1},\ldots,x_{n})\in V=[q]^{n}, the corresponding edges in E\overline{E} include an edge in EE (if any) and edges of the type ei={(x1,,xi1,j,xi+1,,xn):j[q]}e_{i}=\left\{(x_{1},\dots,x_{i-1},j,x_{i+1},\dots,x_{n}):j\in[q]\right\} for i[q1]i\in[q-1] (note, this requires us to assume nq1n\geq q-1). Adding the q1q-1 matchings increases the degree of each vertex by q1q-1. Therefore, vertices with initial degree 11 now have degree qq and vertices with initial degree now have degree q1q-1. However, a couple of issues remain in order to complete the reduction, which we handle next.

Multiplicities. An edge eEe\in E might have gotten added twice, if it belonged to one of the canonical matchings. To avoid this issue altogether, instead of adding edges directly on VV, we augment V\overline{V} to become VV((Vq)×[q1])\overline{V}\coloneqq V\cup\left(\binom{V}{q}\times[q-1]\right), i.e. in addition to VV, we have q1q-1 vertices for every potential hyperedge of GG. For any edge e{v1,,vq}Ee\coloneqq\left\{v_{1},\ldots,v_{q}\right\}\in E, instead of adding it directly in G\overline{G}, we add hyperedge {v,(e,1),(e,2),,(e,q1)}\left\{v,(e,1),(e,2),\ldots,(e,q-1)\right\} for each vev\in e. Note that, all vertices (e,i)(Vq)×[q1](e,i)\in\binom{V}{q}\times[q-1] have degree qq if eEe\in E and degree if eEe\notin E, so they are non-solutions for the \textscLeafq\textsc{Leaf}_{q} instance. For vertices in VV, we still have as before that vertices with initial degree 11 now have degree qq and vertices with initial degree now have degree q1q-1.

Designated vertex. In a \textscLeafq\textsc{Leaf}_{q} instance, we need to specify a single designated vertex vVv^{*}\in\overline{V}. If the \textscLonelyq\textsc{Lonely}_{q} instance had a single designated vertex then we would be done. However, in general it is not possible to assume this (for non-prime qq). Nevertheless, we provide a way to get around this. We augment V\overline{V} with t=(q1)(qk)+1t=(q-1)(q-k)+1 additional vertices to become VV((Vq)×[q1]){wi,j:i[qk], j[q1]}{v}\overline{V}\coloneqq V\cup\left(\binom{V}{q}\times[q-1]\right)\cup\left\{w_{i,j}:i\in[q-k],\ j\in[q-1]\right\}\cup\left\{v^{*}\right\}, where vv^{*} will eventually be the single designated vertex for the \textscLeafq\textsc{Leaf}_{q} instance.

Let V={u1,,uk}VV^{*}=\left\{u_{1},\ldots,u_{k}\right\}\subseteq V be the set of designated vertices in the \textscLonelyq\textsc{Lonely}_{q} instance (note 1k<q1\leq k<q). So far, note that degG(ui)=q1\deg_{\overline{G}}(u_{i})=q-1. The only new hyperedges we add will be among uiu_{i}’s, wi,jw_{i,j}’s and vv^{*}, in such a way that degG(ui)\deg_{\overline{G}}(u_{i}) will become qq, the degree of all wi,jw_{i,j}’s will also be qq and degree of vv^{*} will be qkq-k.

For each uVu\in V^{*}, include {u,w1,1,,w1,q1}\left\{u,w_{1,1},\ldots,w_{1,q-1}\right\}. So far, degG(u)=q\deg_{\overline{G}}(u)=q and degG(w1,j)=k\deg_{\overline{G}}(w_{1,j})=k.

For each j[q1]j\in[q-1] and each i{2,,qk}i\in\left\{2,\ldots,q-k\right\}, include {w1,j,wi,1,,wi,q1}\left\{w_{1,j},w_{i,1},\ldots,w_{i,q-1}\right\}. So far, degG(wi,j)=q1\deg_{\overline{G}}(w_{i,j})=q-1 for all (i,j)[qk]×[q1](i,j)\in[q-k]\times[q-1].

Finally, for each (i,j)[qk]×[q1](i,j)\in[q-k]\times[q-1], include {v,wi,1,,wi,q1}\left\{v^{*},w_{i,1},\ldots,w_{i,q-1}\right\}. Now, degG(wi,j)=q\deg_{\overline{G}}(w_{i,j})=q for all (i,j)[qk]×[q1](i,j)\in[q-k]\times[q-1] and degG(v)=qk\deg_{\overline{G}}(v^{*})=q-k.

Thus, we have finally reduced to a \textscLeafq\textsc{Leaf}_{q} instance encoding the graph G=(V,E)\overline{G}=(\overline{V},\overline{E}) with VV((Vq)×[q1]){wi,j:i[qk], j[q1]}{v}\overline{V}\coloneqq V\cup\left(\binom{V}{q}\times[q-1]\right)\cup\left\{w_{i,j}:i\in[q-k],\ j\in[q-1]\right\}\cup\left\{v^{*}\right\}. By 2.4, this completes the reduction, since V\overline{V} is efficiently indexable (again, see [KS98] for a reference on indexing (Vq)\binom{V}{q}) and the edges are locally computable using black-box access to CC. ∎

We introduce a new intermediate problem to show PPAp\mathsf{PPA}_{p}–completeness of \textscSuccinctBipartitep\textsc{SuccinctBipartite}_{p}.

Two pp-dimensional matchings over a common vertex set, with a vertex in exactly one of the matchings, has another such vertex.

Two pp-dimensional matchings G0=(V,E0)G_{0}=(V,E_{0}), G1=(V,E1)G_{1}=(V,E_{1}). Designated vertex vVv^{*}\in V.

\triangleright C0:{0,1}n({0,1}n)pC_{0}:\left\{0,1\right\}^{n}\to(\left\{0,1\right\}^{n})^{p} and C1:{0,1}n({0,1}n)pC_{1}:\left\{0,1\right\}^{n}\to(\left\{0,1\right\}^{n})^{p} \triangleright v{0,1}nv^{*}\in\left\{0,1\right\}^{n}

V{0,1}nV\coloneqq\left\{0,1\right\}^{n}. For b{0,1}b\in\left\{0,1\right\}, Eb{e:Cb(v)=e for all ve}E_{b}\coloneqq\left\{e:C_{b}(v)=e\text{ for all }v\in e\right\}

vv^{*} if degG0(v)1\deg_{G_{0}}(v^{*})\neq 1 or degG1(v)0\deg_{G_{1}}(v^{*})\neq 0 and vvv\neq v^{*} if degG0(v)degG1(v)\deg_{G_{0}}(v^{*})\neq\deg_{G_{1}}(v^{*})

Observe that in the case of p=2p=2, \textscTwoMatchingsp\textsc{TwoMatchings}_{p} can be readily seen as equivalent to \textscLeaf2\textsc{Leaf}_{2}.

For any prime pp, \textscSuccinctBipartitep\textsc{SuccinctBipartite}_{p} and \textscTwoMatchingsp\textsc{TwoMatchings}_{p} are PPAp\mathsf{PPA}_{p}–complete.

We show that \textscBipartitep\textscSuccinctBipartitep\textscTwoMatchingsp\textscLonelyp\textsc{Bipartite}_{p}\preceq\textsc{SuccinctBipartite}_{p}\preceq\textsc{TwoMatchings}_{p}\preceq\textsc{Lonely}_{p}.

black\textscSuccinctBipartitep\textscTwoMatchingsp\bm{\textsc{SuccinctBipartite}_{p}\preceq\textsc{TwoMatchings}_{p}}. We reduce to a \textscTwoMatchingsp\textsc{TwoMatchings}_{p} instance encoding two pp-dimensional matchings G0=(V,E0)\overline{G}_{0}=(\overline{V},\overline{E}_{0}) and G1=(V,E1)\overline{G}_{1}=(\overline{V},\overline{E}_{1}), over the vertex set V=V×U×[p1]\overline{V}=V\times U\times[p-1], that is, all possible edges producible in the \textscSuccinctBipartitep\textsc{SuccinctBipartite}_{p} instance. The designated vertex vv^{*} is the designated edge ee^{*} in the \textscSuccinctBipartitep\textsc{SuccinctBipartite}_{p} instance.

For any edges e1,,epe_{1},\ldots,e_{p}, which are grouped by ϕV\phi_{V} pivoted at some vVv\in V, we include the hyperedge {e1,,ep}\left\{e_{1},\ldots,e_{p}\right\} in E0\overline{E}_{0}. Similarly, for any edges e1,,epe_{1},\ldots,e_{p}, which are grouped by ϕU\phi_{U} pivoted at some uUu\in U, we include the hyperedge {e1,,ep}\left\{e_{1},\ldots,e_{p}\right\} in E1\overline{E}_{1}. It is easy to see that points in exactly one of the two matchings G0\overline{G}_{0} or G1\overline{G}_{1} correspond to edges of the \textscSuccinctBipartitep\textsc{SuccinctBipartite}_{p} instance that are not grouped at exactly one end. Thus, we can derive a solution to \textscSuccinctBipartitep\textsc{SuccinctBipartite}_{p} from a solution to \textscTwoMatchingsp\textsc{TwoMatchings}_{p}. (Remark: while edges which are not grouped at either end are solutions to \textscSuccinctBipartitep\textsc{SuccinctBipartite}_{p}, they do not correspond to a solution in the \textscTwoMatchingsp\textsc{TwoMatchings}_{p} instance.)

black\textscTwoMatchingsp\textscLonelyp\textsc{TwoMatchings}_{p}\preceq\textsc{Lonely}_{p}. Given a \textscTwoMatchingsp\textsc{TwoMatchings}_{p} instance encoding two pp-dimensional matchings G0=(V,E0)G_{0}=(V,E_{0}) and G1=(V,E1)G_{1}=(V,E_{1}), we reduce to an instance of \textscLonelyp\textsc{Lonely}_{p} encoding a pp-dimensional matching G=(V,E)\overline{G}=(\overline{V},\overline{E}) such that V=V×[p]\overline{V}=V\times[p]. The designated vertex for the \textscLonelyp\textsc{Lonely}_{p} instance is (v,p)(v^{*},p).

For any hyperedge {v1,,vp}\left\{v_{1},\ldots,v_{p}\right\} in E0E_{0}, we include the hyperedge {(v1,i),(v2,i),,(vp,i)}\left\{(v_{1},i),(v_{2},i),\ldots,(v_{p},i)\right\} in G\overline{G} for each i{1,,p1}i\in\left\{1,\ldots,p-1\right\}. Similarly, for any hyperedge {v1,,vp}\left\{v_{1},\ldots,v_{p}\right\} in E1E_{1}, we include the hyperedge {(v1,p),(v2,p),,(vp,p)}\left\{(v_{1},p),(v_{2},p),\ldots,(v_{p},p)\right\} in G\overline{G}. If vVv\in V is isolated in both G0G_{0} and G1G_{1}, then we include the hyperedge {v}×[p]\left\{v\right\}\times[p].

Observe that, (v,p)(v^{*},p) is isolated by design. A vertex (v,i)(v,i), for i<pi<p is isolated only if degG0(v)=0\deg_{G_{0}}(v)=0 and deg(G1)=1\deg(G_{1})=1. Similarly, the vertex (v,p)(v,p) is isolated only if degG0(v)=1\deg_{G_{0}}(v)=1 and deg(G1)=0\deg(G_{1})=0. Thus, isolated vertices in the \textscLonelyp\textsc{Lonely}_{p} instance correspond to solutions of the \textscTwoMatchingsp\textsc{TwoMatchings}_{p} instance. ∎

Appendix B Appendix: Proof of Theorem 9

Each polynomial fif_{i} has degree at most 2.

Each polynomial fif_{i} has at most 3 monomials.

Each polynomial fif_{i} has at most 3 variables.

Hence, we can compute each of the polynomials gip1g_{i}^{p-1} explicitly as a sum of monomials. The degree of this polynomial is O(p)O(p) and the number of monomials is at most 3p3^{p}. Observe that since pp is a constant, 3p3^{p} is also a constant.

From Edge Counting Circuit To Edge Counting Formula. As described in the proof of 4.11 the edge counting circuit takes as input a vertex uUu\in U and a vertex vVv\in V and outputs the multiplicity of the edge {u,v}\{u,v\} in GG. Hence, the edge counting formula C\mathcal{C}, that we want to implement, takes as input a tuple (x,s,a,y)(\bm{x},s,\bm{a},\bm{y}). The vector x\bm{x} corresponds to the assignment in UU. The vector a\bm{a} corresponds to the description of a monomial of FF, as the product i=1mtiai\prod_{i=1}^{m}t^{\prime}_{ia_{i}} where tiait^{\prime}_{ia_{i}} is the aia_{i}-th monomial of the polynomial 1gip11-g_{i}^{p-1}. The vector y=(y1,y2,,yp)\bm{y}=(\bm{y}_{1},\bm{y}_{2},\dots,\bm{y}_{p}) and corresponds to a pp-tuple in V2V_{2}. Finally, ss is a selector number to distinguish between vV1v\in V_{1} and vV2v\in V_{2}, namely if s=1s=1, we have vV1v\in V_{1} and if s=0s=0, we have that vV2v\in V_{2}. So, the edge counting formula can be written as follows

This way we can define the edge counting formula C1\mathcal{C}_{1} for when vV1v\in V_{1} and the edge counting formula C2\mathcal{C}_{2} for when vV2v\in V_{2} separately and combine them by using at most two additional layers in the arithmetic formula. Now, C1(x,y,a)=\mathds1(y=0)i=1mQi(x,ai)\mathcal{C}_{1}(\bm{x},\bm{y},\bm{a})=\mathds{1}(\bm{y}=\bm{0})\cdot\prod_{i=1}^{m}\mathcal{Q}_{i}(\bm{x},a_{i}) where Qi(x,ai)\mathcal{Q}_{i}(\bm{x},a_{i}) is the formula to compute the value ti,ai(x)t_{i,a_{i}}(\bm{x}). Observe that the factor \mathds1(y=0)\mathds{1}(\bm{y}=\bm{0}) can be easily computed and is necessary since C1\mathcal{C}_{1} should consider only neighbors between x\bm{x} and monomials in V1V_{1}. Hence, if y\bm{y} is not equal to 0\bm{0}, C1\mathcal{C}_{1} should return . As we already explained the number of monomials of 1gip11-g_{i}^{p-1} is constant, and hence the formula Qi(x,ai)\mathcal{Q}_{i}(\bm{x},a_{i}) can be easily implemented in constant depth using a selector between all different monomials similarly to Equation (B.1). Hence, C1\mathcal{C}_{1} is implemented in constant depth.

The formula C2\mathcal{C}_{2} has a factor \mathds1(a=0)\mathds{1}(\bm{a}=0) to ensure only neighbors in V2V_{2} have non-zero outputs. The main challenge in the description of C2\mathcal{C}_{2} is that every distinct pp-tuple y\bm{y} has p!p! equivalent representations, but the modulo pp argument of 4.11 applies only when edges appear to precisely one of the equivalent copies of the pp-tuple. Thus, we let C2\mathcal{C}_{2} add edges only to the lexicographically ordered version of y\bm{y}. It is a simple exercise to see that sorting of p!p! numbers, when pp is constant, is possible in constant depth. We leave this folklore observation as an exercise to the reader. Once we make sure that y\bm{y} is lexicographically sorted, we compute a sorted representation of the set Σx={x,σ(x),,σp1(x)}\Sigma_{\bm{x}}=\{\bm{x},\sigma(\bm{x}),\dots,\sigma^{p-1}(\bm{x})\}, where σ\sigma is the permutation in the input of the \textscChevalleyWithSymmetryp\textsc{ChevalleyWithSymmetry}_{p} problem. Then, we can easily check whether the pp-tuple represented by y\bm{y} is the same as the sorted pp-tuple Σx\Sigma_{\bm{x}}. Finally, we observe that edges between x\bm{x} and Σx\Sigma_{\bm{x}} are only used when xVgVh\bm{x}\in\mathcal{V}_{\bm{g}}\cap\overline{\mathcal{V}}_{\bm{h}} which again can be checked with constant depth formulas. If these checks pass, then C2\mathcal{C}_{2} outputs p1p-1, otherwise it outputs .

For this step we use selectors similarly to Equation (B.1) and sorting as in the description of C2\mathcal{C}_{2}. We consider two different cases for the grouping formula ϕ\phi. When the first argument is in UU, i.e. grouping with respect to an assignment, we call the formula ψ\psi and when the first argument is in VV, i.e. grouping with respect to monomials/pp-tuples, we call the formula χ\chi. Then, ϕ\phi selects between ψ\psi and χ\chi using a selector. This adds at most two layers to ϕ\phi.

First, we describe ψ\psi with inputs xU\bm{x}\in U, (s,a,y)V(s,\bm{a},\bm{y})\in V and rr be the copy of the input edge. We have two cases with respect to whether s=1s=1 or s=0s=0. Let ψ1\psi^{1} be the formula for the first case and ψ2\psi^{2} be the formula for the second case. For the case s=1s=1, we need again to consider two cases: (i) xVg\bm{x}\in\overline{\mathcal{V}}_{\bm{g}} and (ii) xVg\bm{x}\in\mathcal{V}_{\bm{g}}. For case (i) we describe the formula ψ11\psi^{1}_{1} and for case (ii) we define the formula ψ21\psi^{1}_{2}. It is easy to see that computing \mathds1(xVg)\mathds{1}(\bm{x}\in\mathcal{V}_{\bm{g}}) can be done using a depth 3 formula since g\bm{g} is given in an explicit form. Hence, once again, we can combine ψ11\psi^{1}_{1} and ψ21\psi^{1}_{2} using a selectors.

The formula ψ11\psi^{1}_{1} first computes i=mini:1gip1(x)=0ii^{\star}=\min\limits_{i:1-g^{p-1}_{i}(\bm{x})=0}i. This is doable in constant depth, since we can compute in parallel the value \mathds1(1gip1(x)=0)\mathds{1}(1-g^{p-1}_{i}(\bm{x})=0) for all i[m1]i\in[m_{1}] and then in an extra layer compute for every ii whether 1gip1(x)=01-g^{p-1}_{i}(\bm{x})=0 and 1gjp1(x)01-g^{p-1}_{j}(\bm{x})\neq 0 for all j<ij<i, which requires just one multiplication gate per ii.

We remind that a=0\bm{a}=\bm{0} corresponds to the constant monomial 11 of the polynomial FF. If a0\bm{a}\neq\bm{0}, this case is similar to the previous, except that we use the polynomials gip1\bm{g}_{i}^{p-1} instead of 1gip11-\bm{g}_{i}^{p-1}, see also the proof of 4.11. If a=0\bm{a}=\bm{0}, ψ21\psi^{1}_{2} outputs the input edge (1,a,0,1)(1,\bm{a},\bm{0},1) and p1p-1 edges of the form (0,0,y,t),t[p1](0,\bm{0},\bm{y},t),t\in[p-1] where y\bm{y} is the lexicographically ordered set Σx\Sigma_{\bm{x}}.

In this case, the formula ψ2\psi^{2} checks whether the vector y\bm{y} is in lexicographic order as described in the edge counting formula C\mathcal{C} and a=0\bm{a}=\bm{0}. It also checks if xVf1Vf2\bm{x}\in\mathcal{V}_{\bm{f}_{1}}\cap\overline{\mathcal{V}}_{\bm{f}_{2}} as described before. If any of these checks fails, the output is 0\bm{0}. Otherwise, if y=Σx\bm{y}=\Sigma_{\bm{x}}, then we output p1p-1 copies of the edge (0,0,y,t),t[p1](0,\bm{0},\bm{y},t),t\in[p-1], that connects x\bm{x} with y\bm{y}, and the edge (1,0,0,1)(1,\bm{0},\bm{0},1), that connects x\bm{x} with the constant term of FF.

In this case, the input is a monomial ta(x)=i=1m1ti,ai(x)t_{\bm{a}}(\bm{x})=\prod_{i=1}^{m_{1}}t_{i,a_{i}}(\bm{x}) and we have to find a variable that appears with degree less than p1p-1. We first construct a formula χj1\chi^{1}_{j} that computes zkz^{k}, where kk is the degree of xjx_{j} in ta(x)t_{\bm{a}}(\bm{x}). This can be done with a constant size formula that for a given index jj multiplies the powers of xjx_{j} in the monomials of 1gip11-g_{i}^{p-1} appearing in tt.

Now, we compute all values χj1(1)\chi^{1}_{j}(1), \dots, χj1(p1)\chi^{1}_{j}(p-1) and we check in parallel if at least one of them is different from 11. If this is the case, then the degree of xjx_{j} in t(x)t(\bm{x}) is less than p1p-1. Hence, we have computed the formula \bar{\chi}^{1}_{j}(\bm{a})=\mathds{1}(\text{degree ofx_{j}inint_{\bm{a}}}\neq p-1). We can find the smallest index jj^{*} such that χˉj1(a)=1\bar{\chi}^{1}_{j}(\bm{a})=1 using the same construction as in ψ1\psi^{1}. So, we can construct a formula for each jj that is equal to 11 if and only if j=jj=j^{*} is the smallest index such that xjx_{j^{*}} has degree less than p1p-1 in tat_{\bm{a}}. Finally, we use a selector to find the value Cj(x)=xjkt(x)C_{j^{*}}(\bm{x})=x_{j^{*}}^{-k}t(\bm{x}), by computing Cj(x)C_{j}(\bm{x}) for all jj. This is done through the product of all variables that appear in ta(x)t_{\bm{a}}(\bm{x}) excluding xjx_{j}.

For constructing the formula χ2\chi^{2} we first check whether xVf1\bm{x}\in\overline{\mathcal{V}}_{\bm{f}_{1}} and whether y\bm{y} is the lexicographically sorted version of Σx\Sigma_{\bm{x}}. These can both be done as we have described in the construction of the formula ψ\psi above. If all checks pass, then we output the pp edges of the form (z,r)(\bm{z},r) for all zΣx\bm{z}\in\Sigma_{\bm{x}}, that correspond to the rr-th copy of the edge between z\bm{z} and y\bm{y}.

Combining the formulas ψ\psi and χ\chi through a selector concludes the construction of ϕ\phi.

References