Scheme-theoretic Approach to Computational Complexity I. The Separation of P and NP

07/06/2021 ∙ by Ali Çivril, et al. ∙ 0

We lay the foundations of a new theory for algorithms and computational complexity by parameterizing the instances of a computational problem as a moduli scheme. Considering the geometry of the scheme associated to 3-SAT, we separate P and NP.



There are no comments yet.


page 1

page 2

page 3

page 4

This week in AI

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

1 Introduction

This paper introduces the rudiments of a new theory for algorithms and computational complexity via schemes. One of the most important consequences of the theory is the resolution of the conjecture .

The theory envisions a computational problem as a (moduli) scheme formed by its instances, and an algorithm as a morphism contracting the computational problem at hand to a single point. For concreteness, consider a satisfiable instance of 3-SAT represented by the formula with variables . We associate this instance with all the solutions that make satisfiable, which can be expressed as the zeros of a polynomial over . We then identify this information by considering the closed subscheme Proj . The global scheme corresponding to the computational problem 3-SAT is the Hilbert scheme parameterizing these closed subschemes together with a set of others to ensure connectedness.

The next step is to unify the notion of a reduction and an algorithm in the new setting. Consider 1-SAT P. In order to separate P and NP, one needs to rule out a polynomial-time reduction satisfying . We extend this line of thinking by introducing the trivial object in the category of computational problems: the trivial problem asking “Is ‘0’=0?”, where the first ‘0’ is a polynomial. The associated scheme of this problem is the final object Spec in the category of schemes over . In our new language, solving a problem is nothing but reducing it to the trivial problem. One then needs to show that, in geometric terms we will later formalize, it is impossible to reduce the scheme of 3-SAT to the single point Spec with polynomial number of unit contractions.

2 Computational Problems and the Amplifying Functor

A computational problem consists of a set of instances. In this paper we impose that each instance consists of a finite set of polynomial equations over . We thus use a polynomial system as a synonym for an instance. The synonym for a single polynomial equation is a clause. One seeks, given an instance, an assignment to the variables in satisfying all the equations of the instance. Throughout the paper an instance is one which has such a solution. We give below examples by listing the possible set of polynomials that might be considered for an equation. The simplest problem is what we call TRIVIAL or T for short, defined via an equation with an empty set of variables. If the set of instances of a problem is empty, it is assumed to be T. The simplest problem after T is UNIT or U for short, a special case of 1-SAT and 3-SAT.

Problem: TRIVIAL or T

Polynomials: .

Problem: UNIT or U

Polynomials: .

Problem: 1-SAT

Polynomials: All with , where or for some .

Problem: 3-SAT

Polynomials: All with , where or for some , for .

For the sake of explicitness, we give the following examples regarding instances.

Problem: TRIVIAL or T

Logical form: .

Algebraic form: .

Problem: UNIT or U

Logical form: .

Algebraic form: .

Problem: 1-SAT

Logical form: .

Algebraic form: .

Problem: 3-SAT

Logical form: .

Algebraic form: .

We consider the computational problem -SAT. We will define the amplifying functor from to the category of schemes over , which is a subfunctor of the Hilbert functor. The Hilbert functor (relative to ) defined for a projective scheme over parameterizes the closed subschemes of . Let be a closed subscheme. Let be a coherent sheaf on . The Hilbert polynomial of with respect to is , where is the twisting of by , and denotes the Euler characteristic of given by

The Hilbert polynomial of is , where is the structure sheaf of . Define the subfunctor of induced by a polynomial as

By the following result stated in our context, the amplifying functor is representable by a projective scheme over .

Theorem 2.1 ([1]).

Let be a projective scheme over . Then for every polynomial , there exists a projective scheme over , which represents the functor . Furthermore, the Hilbert functor is represented by the Hilbert scheme

We consider . In this case, the connectedness of the Hilbert scheme for a fixed Hilbert polynomial was established by Hartshorne [2]. Note first that given a homogenized polynomial , one might consider the closed subscheme

so that each polynomial equation and hence a polynomial system identifies a closed subscheme of via the corresponding ideal. In particular, we refer to the Hilbert polynomial of an instance.

Definition 2.2.

Given an instance of , a non-empty subset of the equations of the corresponding polynomial system is said to form a sub-instance of .

Remark 2.3.

A sub-instance has a corresponding polynomial system induced by the polynomial equations it contains.

Definition 2.4.

Two sub-instances are called disjoint if both do not belong to a single instance of .

Definition 2.5.

A sub-problem of is a computational problem induced by a subset of disjoint sub-instances of .

Definition 2.6.

A sub-problem of is called a simple sub-problem if the polynomial systems of have the same Hilbert polynomial.

Definition 2.7.

Let and be two sub-instances of defined via the same variable set . is said to be a variant of if it can be obtained from by replacing each in a subset of by in its equations followed by a permutation of the variables.

Definition 2.8.

Two sub-instances of are said to be distinct if the following two conditions hold.

  • They are not variants of each other.

  • The polynomial systems that define them correspond to distinct ideals.

Remark 2.9.

Distinct sub-instances of correspond to distinct points in moduli.

Definition 2.10.

A simple sub-problem of is said to be homogeneous if the following two conditions hold.

  • The instances of are pair-wise distinct.

  • None of the instances of can be expressed as the Cartesian product of sets of sub-instances of defined via disjoint sets of variables, for some .

We now give a partial definition of the amplifying functor, which we denote by . Let be a homogeneous simple sub-problem of consisting of a set of polynomial systems defined via the variables . Let be the homogenized -th polynomial in the polynomial system . Define

We define the product of computational problems in the usual sense, i.e. the set of instances of the product is the Cartesian product of the sets of instances of the problems. Given a sub-problem of , for some , where are homogeneous simple sub-problems of defined via disjoint sets of variables, we set


By the connectedness of the Hilbert scheme for a fixed Hilbert polynomial, we have that there is a functor , which is an extension of , such that a homogeneous simple sub-problem always maps to a connected scheme via . Thus, we extend to , overriding the definition of the amplifying functor.

3 Lower Bounds via Homogeneous Simple Sub-problems

Given a homogeneous simple sub-problem of , and a sub-problem of induced by a subset of the instances of , let denote the minimum number of deterministic operations required by a reduction , possibly with an advice string, thus simulating circuits. For a general , we define . We denote the number of instances of by . A sub-problem of is called a normal sub-problem of if , for some , where are homogeneous simple sub-problems of defined via disjoint sets of variables. Over all such normal sub-problems of , let denote the maximum value of .

Proposition 3.1.

The set of equations of a polynomial system of is partitioned by those of . Thus, in order to solve one has to solve each . ∎

Lemma 3.2 (Fundamental Lemma).

Let be a normal subproblem of attaining . Since , it suffices to show . Furthermore, by Proposition 3.1 it suffices to show , where for some . We argue by induction on . The case is clear since . In particular, we have the following diagrams for the base case of the induction, depicting the solution of in both categories.

For , let be the set of instances defining , and be the sub-problem of with the set of instances . Notice that both and are connected. Then we have the following commutative diagrams.

The arrows on the left are complexity-theoretic reductions between problems, which are set-theoretic maps between instance sets. The arrows on the right are contraction morphisms. is the problem defined by the single instance . is the reduction from to , which is the same as on the instances of . is the reduction from to , which is the identity on the instances of . Since the instances of are all distinct by definition, none of the arrows in the diagrams is the identity morphism. Given these and the induction hypothesis, we have , and . If we assume so that , we then get the contradiction . Thus, , which completes the induction and the proof. ∎

4 The Separation of P and Np

Denote by the problem with variables and clauses.

Theorem 4.1.

There exist infinitely many such that


We will construct by induction, a homogeneous simple sub-problem of with instances, each having variables and clauses, for . The result follows by the definition of .

We use the logical representation of the instances in our tables, but note also that an instance has a solution set over in algebraic form. Each instance consists of blocks. For , a block of an instance is defined on variables , and clauses. We construct instances with the solution sets over consisting of the following points, listed for each instance in a separate column:

Clause Instance 1 Instance 2 Instance 3
Table 1: The clauses of the instances satisfying Table 2, Table 3, and Table 4
Clause Clause
1 0 0 0 0 1 0 0 0
1 0 0 0 1 5 1 0 0 1
0 0 1 0 7 1 0 1 0
2 0 0 1 1 2 1 0 1 1
6 0 1 0 0 1 1 0 0
3 0 1 0 1 3 1 1 0 1
8 0 1 1 0 8 1 1 1 0
4 0 1 1 1 4 1 1 1 1
Table 2: The truth table of a block of Instance 1 with clause-indexing
Clause Clause
1 0 0 0 0 1 0 0 0
1 0 0 0 1 5 1 0 0 1
7 0 0 1 0 1 0 1 0
2 0 0 1 1 2 1 0 1 1
0 1 0 0 6 1 1 0 0
3 0 1 0 1 3 1 1 0 1
8 0 1 1 0 8 1 1 1 0
4 0 1 1 1 4 1 1 1 1
Table 3: The truth table of a block of Instance 2 with clause-indexing

A single block for each instance is constructed with a simple algorithm best described using the truth table of the variables. Each of the clauses is introduced one by one to rule out an assignment over in the tables. For this purpose, we enumerate the rows of the tables for each instance by an indexing of these clauses in Table 2, Table 3, and Table 4. The solution sets over are the entries left out by the introduced clauses. The solution sets over have the same cohomology, so that the Hilbert polynomials of the instances are the same. In particular, they are the disjoint union of two distinct closed points and an affine line as will be shown in the next paragraph.

Clause Clause
1 0 0 0 0 1 0 0 0
1 0 0 0 1 5 1 0 0 1
8 0 0 1 0 8 1 0 1 0
2 0 0 1 1 2 1 0 1 1
0 1 0 0 6 1 1 0 0
3 0 1 0 1 3 1 1 0 1
0 1 1 0 7 1 1 1 0
4 0 1 1 1 4 1 1 1 1
Table 4: The truth table of a block of Instance 3 with clause-indexing

The first clauses of the instances are common. Clause 1 forces at least one of , and to be . Given this, the following clauses make , since implies by these clauses. We now examine the last clauses of the instances one by one.

  1. Instance 1: ; ; .

  2. Instance 2: ; ; .

  3. Instance 3: ; ; .

We have thus shown that these instances form a homogeneous simple sub-problem. Assume now the induction hypothesis for some . In the inductive step, we introduce new variables , and new blocks on these variables each consisting of clauses with the exact form as in Table 1. Appending these blocks to each of the instances of the induction hypothesis, we obtain instances. The constructed sub-problem is a simple sub-problem. We make it into a homogeneous simple sub-problem for which a sufficient condition is as follows. Given an instance, consider the graph whose nodes are the clauses of the instance, and there is an edge between two nodes if they share a common variable. We impose that this graph be connected for all the instances, which is clearly satisfied in the base case . For the inductive step, replace the positive literal , where it appears in the last clauses of its block by the positive literal . This operation does not change the solution set and hence the Hilbert polynomial, as is already forced to be for all by the other clauses. It also ensures connectivity of the graph across all the blocks including the newly introduced one, thus constructing a homogeneous simple sub-problem, completing the induction and the proof. ∎

By Theorem 4.1, Lemma 3.2, and the NP-completeness of 3-SAT [5]:

Corollary 4.2.


The definition of also implies

Corollary 4.3.


Furthermore, by the specific lower bound derived for 3-SAT:

Corollary 4.4.

The exponential time hypothesis [3] is true against deterministic algorithms.

Finally, this exponential lower bound implies the following by [4].

Corollary 4.5.



  • [1] A. Grothendieck. Fondements de la Géométrie Algébrique [Extraits du Séminaire Bourbaki 1957-1962], chapter Techniques de construction et théorèmes d’existence en géométrie algébrique. IV. Les schémas de Hilbert. Secr. Math., 1962.
  • [2] R. Hartshorne. Connectedness of the Hilbert scheme. Publications Mathématiques de l’IHÉS, 29:5–48, 1966.
  • [3] R. Impagliazzo and R. Paturi. On the complexity of -SAT. J. Comput. Syst. Sci., 62(2):367–375, 2001.
  • [4] R. Impagliazzo and A. Wigderson. P = BPP if E requires exponential circuits: Derandomizing the XOR lemma. In

    Proceedings of the Twenty-Ninth Annual ACM Symposium on the Theory of Computing

    , pages 220–229. ACM, 1997.
  • [5] R. Karp. Reducibility among combinatorial problems. In R. Miller and J. Thatcher, editors, Complexity of Computer Computations, pages 85–103. Plenum Press, 1972.