1 Sparse complete sets for coNP: Solution of the versus NP problem

Frank Vega

Abstract—P versus NP is considered as one of the most important open problems in computer science. This consists in knowing the answer of the following question: Is P equal to NP? A precise statement of the P versus NP problem was introduced independently in 1971 by Stephen Cook and Leonid Levin. Since that date, all efforts to find a proof for this problem have failed. Another major is coNP. Whether NP = coNP is another fundamental question that it is as important as it is unresolved. In 1979, Fortune showed that if any sparse language is coNP-complete, then P = NP. We prove there is a possible sparse language in coNP-complete. In this way, we demonstrate the complexity class P is equal to NP.

Keywords—Complexity Classes, Sparse, Complement Language, Completeness, Polynomial Time. !

1 INTRODUCTION The P versus NP problem is a major unsolved problem possible positive constant k [5]. Whether P = NP or not in computer science [1]. This is considered by many to be is still a controversial and unsolved problem [2]. In this the most important open problem in the field [1]. It is one work, we proved the complexity class P is equal to NP . of the seven Millennium Prize Problems selected by the Hence, we solved one of the most important open problems Clay Mathematics Institute to carry a US$1,000,000 prize for in computer science. the first correct solution [1]. It was essentially mentioned in 1955 from a letter written by John Nash to the United States National Security Agency [2]. However, the precise 2 MOTIVATION statement of the P = NP problem was introduced in 1971 The biggest open question in theoretical computer science by Stephen Cook in a seminal paper [1]. concerns the relationship between these classes: Is P equal In 1936, Turing developed his theoretical computational to NP ? In 2012, a poll of 151 researchers showed that model [3]. The deterministic and nondeterministic Turing 126 (83%) believed the answer to be no, 12 (9%) believed machines have become in two of the most important defi- the answer is yes, 5 (3%) believed the question may be nitions related to this theoretical model for computation [3]. independent of the currently accepted axioms and therefore A deterministic Turing machine has only one next action for impossible to prove or disprove, 8 (5%) said either do not each step defined in its program or transition function [3]. A know or do not care or don’t want the answer to be yes nondeterministic Turing machine could contain more than nor the problem to be resolved [6]. It is fully expected that one action defined for each step of its program, where this P 6= NP [5]. Indeed, if P = NP then there are stunning one is no longer a function, but a relation [3]. practical consequences [5]. For that reason, P = NP is Another relevant advance in the last century has been considered as a very unlikely event [5]. Certainly, P versus the definition of a complexity class. A language over an NP is one of the greatest open problems in science and a alphabet is any set of strings made up of symbols from that correct solution for this incognita will have a great impact alphabet [4]. A complexity class is a set of problems, which not only for computer science, but for many other fields as are represented as a language, grouped by measures such as well [2]. the running time, memory, etc [4]. The set of languages decided by deterministic Turing 3 SUMMARY machines within time f is an important complexity class denoted TIME(f(n)) [5]. In addition, the complexity class In computational complexity theory, a sparse language is a NTIME(f(n)) consists in those languages that can be formal language (a set of strings) such that the complexity decided within time f by nondeterministic Turing machines function, counting the number of strings of length n in the [5]. The most important complexity classes are P and NP . language, is bounded by a polynomial function of n. The The class P is the union of all languages in TIME(nk) for complexity class of all sparse languages is called SP ARSE. every possible positive constant k [5]. At the same time, SP ARSE contains T ALLY , the class of unary languages, NP consists in all languages in NTIME(nk) for every since these have at most one string of any one length. Fortune showed in 1979 that if any sparse language is coNP–complete, then P = NP (this is Fortune’s theorem) • F. Vega, Joysonic, Uzun Mirkova 5, Belgrade, RS, 11000. E-mail: [email protected] [7]. Mahaney used this to show in 1982 that if any sparse language is NP–complete, then P = NP [8]. A simpler This article may appear completely or partially in: Academia.edu, figshare, Zenodo and HAL preprint servers. proof of this based on left-sets was given by Ogihara and This is not a plagiarism, since I am the author of those manuscripts. Watanabe in 1991 [9]. Mahaney’s argument does not actually 2

require the sparse language to be in NP , so there is a sparse a string w is a member of L. This information is called NP–hard set if and only if P = NP [8]. certificate. NP is also the complexity class of languages We create a class with the opposite definition, that is a defined by polynomial time verifiers [5]. If NP is the class of class of languages that are dense instead of sparse. We show problems that have succinct certificates, then the complexity there is a sequence of languages that are in NP–complete, class coNP must contain those problems that have succinct but their density grows as much as we go forward into disqualifications [5]. That is, a “no” instance of a problem in the iteration of the sequence. The first element of the se- coNP possesses a short proof of its being a “no” instance quence is a variation of the NP–complete problem known [5]. as HAM–CYCLE [10]. The next element in the sequence is A function f :Σ∗ → Σ∗ is a polynomial time com- constructed from this new version of HAM–CYCLE. Indeed, putable function if some deterministic Turing machine M, each language is created from its previous language in the on every input w, halts in polynomial time with just f(w) sequence. on its tape [3]. Let {0, 1}∗ be the infinite set of binary ∗ Since the density grows according we move forward into strings, we say that a language L1 ⊆ {0, 1} is polyno- ∗ the sequence, then there must be a language so much dense mial time reducible to a language L2 ⊆ {0, 1} , written such that its complement is sparse. Fortunately, we find this L1 ≤p L2, if there is a polynomial time computable function property from a language created with the languages of this f : {0, 1}∗ → {0, 1}∗ such that for all x ∈ {0, 1}∗, sequence. Moreover, we show this too dense language is x ∈ L if and only if f(x) ∈ L . still NP–complete. Thus, the complement of this language 1 2 remains in coNP–complete, because the complement of every An important complexity class is NP–complete [11]. A lan- NP–complete language is complete for coNP [11]. guage L ⊆ {0, 1}∗ is NP–complete if In this way, we find a sparse language in coNP–complete. • L ∈ NP , and As a consequence of Fortune’s theorem, we demonstrate 0 0 • L ≤ L for every L ∈ NP . that P is equal to NP . To sum up, we proved there is a p 0 0 sparse complete set for coNP and therefore, we just solved If L is a language such that L ≤p L for some L ∈ the P versus NP problem. NP–complete, then L is NP–hard [11]. Moreover, if L ∈ NP , then L ∈ NP–complete [11]. A principal NP–complete problem is HAM–CYCLE [4]. 4 BASIC DEFINITIONS An instance of the language HAM–CYCLE is a simple Let Σ be a finite alphabet with at least two elements, and let graph G = (V,E) where V is the set of vertices and E ∗ Σ be the set of finite strings over Σ [12]. A Turing machine is the set of edges, each edge being an unordered pair of M has an associated input alphabet Σ [12]. For each string w vertices [4]. We say (u, v) ∈ E is an edge in a simple graph ∗ in Σ there is a computation associated with M on input w G = (V,E) where u and v are vertices. A simple graph is an [12]. We say that M accepts w if this computation terminates undirected graph without multiple edges or loops [4]. For a in the accepting state, that is M(w) = “yes” [12]. Note that simple graph G = (V,E) a simple cycle in G is a sequence M w fails to accept either if this computation ends in the of distinct vertices hv0, v1, v2, ..., vki such that (vk, v0) ∈ E M(w) = “no” rejecting state, that is , or if the computation and (vi−1, vi) ∈ E for i = 1, 2, ..., k [4]. A Hamiltonian fails to terminate [12]. cycle is a simple cycle of the simple graph which contains The language accepted by a Turing machine M, denoted all the vertices of the graph. A simple graph that contains L(M), has an associated alphabet Σ and is defined by a hamiltonian cycle is said to be hamiltonian; otherwise, L(M) = {w ∈ Σ∗ : M(w) = “yes”}. it is nonhamiltonian [4]. The problem HAM–CYCLE asks whether a simple graph is hamiltonian [4]. We denote by tM (w) the number of steps in the computation of M on input w [12]. For n ∈ we denote by T (n) the N M 5 RESULTS worst case run time of M; that is Definition 5.1. A dense language on m is a formal language n TM (n) = max{tM (w): w ∈ Σ } (a set of binary strings) such that for a positive integer n0, n ≥ n where Σn is the set of all strings over Σ of length n [12]. We the counting of the number of strings of length 0 in the 2n−m m say that M runs in polynomial time if there is a constant language is greater than or equal to where is a real 0 ≤ m ≤ 1 k such that for all n, T (n) ≤ nk + k [12]. In other number and . The complexity class of all dense M m DENSE(m) words, this means the language L(M) can be accepted by languages on is called . the Turing machine M in polynomial time. Therefore, P is In this work, we are going to represent the simple the complexity class of languages that can be accepted in graphs with an adjacency-matrix [4]. For the adjacency- polynomial time by deterministic Turing machines [4]. A matrix representation of a simple graph G = (V,E), we verifier for a language L is a deterministic Turing machine assume that the vertices are numbered 1, 2,..., |V | in some M, where arbitrary manner. The adjacency-matrix representation of a simple graph G consists of a |V |×|V | matrix A = (a ) such L = {w : M(w, c) = “yes” for some string c}. i,j that ai,j = 1 when (i, j) ∈ E and ai,j = 0 otherwise [4]. In We measure the time of a verifier only in terms of the length this way, every simple graph of k vertices is represented by of w, so a polynomial time verifier runs in polynomial k2 bits. time in the length of w [12]. A verifier uses additional Observe the symmetry along the main diagonal of the information, represented by the symbol c, to verify that adjacency matrix in this kind of graph that is called simple. 3

We define the transpose of a matrix A = (ai,j) to be the For all the binary strings z such that z = xy where the T T T p 2 matrix A = (ai,j) given by ai,j = aj,i. Hence the adjacency bit-length of x is equal to (b |z|c) , the amount of elements matrix A of a simple graph is its own transpose A = AT . of size |z| in HAM–CYCLE’ is equal to the number of binary strings x ∈√ HAM–CYCLE or x ∈ NON–SIMPLE multiplied Definition 5.2. The language NON–SIMPLE contains all the |z|−(b |z|c)2 graph that are represented by an adjacency-matrix A such that by 2 . Since the number of Hamiltonian graphs A 6= AT increases as much as we go further on n, it does not seem surprising either that once n gets large most binary strings Lemma 5.3. NON–SIMPLE ∈ P . belong to HAM–CYCLE’. Certainly, we can affirm for a 0 sufficiently large positive integer n0, all the binary strings Proof. Given a binary string x, we can check whether x is 0 of length n ≥ n0 which belong to HAM–CYCLE’ are indeed an adjacency-matrix which is not equal to its own transpose n−1 2 more than or equal to 2 elements. In this way, we prove in time O(|x| ) just iterating each bit ai,j in x and checking HAM–CYCLE’ ∈ DENSE(1). whether ai,j 6= aj,i or not where | ... | represents the bit- length function [4]. Definition 5.7. We will define a sequence of languages HAM–CYCLE’k for every possible integer 1 ≤ k. We state Definition 5.4. The language HAM–CYCLE’ contains all the HAM–CYCLE’1 as the language HAM–CYCLE’. Recursively, binary strings z such that z = xy, the bit-length of x is equal to p 2 from a language HAM–CYCLE’k, we define HAM–CYCLE’k+1 (b |z|c) and x ∈ HAM–CYCLE or x ∈ NON–SIMPLE where as follows: A binary string xy complies with xy ∈ | ... | represents the bit-length function and y could be the empty HAM–CYCLE’k+1 if and only if x and y are binary strings, string. x ∈ HAM–CYCLE’k or y ∈ HAM–CYCLE’k such that Lemma 5.5. HAM–CYCLE’ ∈ NP–complete. |x| = |y| when |xy| is even and |x| + 1 = |y| when |xy| is odd where | ... | represents the bit-length function. Proof. Given a binary string x we can decide in polynomial Lemma 5.8. For every integer 1 ≤ k, HAM–CYCLE’ ∈ NP . time whether x∈ / NON–SIMPLE just verifying when x = k T x . In this way, we can reduce in polynomial time a simple Proof. This is true for k = 1. Every string xy which be- G = (V,E) k graph of vertices encoded as the binary string longs to HAM–CYCLE’2 complies with x ∈ HAM–CYCLE’1 x x k2 x∈ / NON–SIMPLE such that when has bits and then or y ∈ HAM–CYCLE’1 such that |x| = |y| when |xy| is even and |x| + 1 = |y| when |xy| is odd. Moreover, x ∈ HAM–CYCLE if and only if x ∈ HAM–CYCLE’. every string xyvw which belongs to HAM–CYCLE’3 com- Then, we can reduce in polynomial time each element of plies with x ∈ HAM–CYCLE’1 or y ∈ HAM–CYCLE’1 HAM–CYCLE to HAM–CYCLE’. Therefore, HAM–CYCLE’ or v ∈ HAM–CYCLE’1 or w ∈ HAM–CYCLE’1 such that is in NP–hard. Moreover, we can check in polynomial time |xy| = |vw| when |xyvw| is even and |xy| + 1 = |vw| when whether a binary string z such that z = xy where the bit- |xyvw| is odd, |x| = |y| when |xy| is even and |x| + 1 = |y| p length of x is equal to (b |z|c)2 and complies with x ∈ when |xy| is odd and |v| = |w| when |vw| is even and HAM–CYCLE or x ∈ NON–SIMPLE since HAM–CYCLE ∈ |v| + 1 = |w| when |vw| is odd. Furthermore, we can NP , NON–SIMPLE ∈ P and P ⊆ NP [5]. Conse- extend this property for every positive integer k > 3 in quently, HAM–CYCLE’ is in NP. Hence, HAM–CYCLE’ ∈ HAM–CYCLE’k. Indeed, HAM–CYCLE’k is in NP for every NP–complete. integer 1 ≤ k, because the verification of whether the whole string or substrings are indeed elements of HAM–CYCLE’1 Lemma 5.6. HAM–CYCLE’ ∈ DENSE(1). can be done in polynomial time with the appropriated certificates. Proof. OEIS A000088 gives the total number of graphs on n unlabeled points [13]. For 8 points there are 12346 so Theorem 5.9. For every integer 1 ≤ k, HAM–CYCLE’k ∈ just over half the graphs on 8 points are Hamiltonian [13]. NP–complete. For 12 points, the highest in the Hamiltonian list, there are 152522187830 Hamiltonian graphs out of 165091172592 Proof. This is true for k = 1 by Lemma 5.5. Let’s assume 0 which would claim that over 92% of the 12 point graphs are is valid for some positive integer 1 ≤ k . Let’s prove this 0 2 Hamiltonian [13]. For n = 2 there are two graphs, neither of for k + 1. We already know the adjacency-matrix of n which is Hamiltonian [13]. For n < 8 over half the graphs zeros represents a simple graph of n vertices which does are not Hamiltonian [13]. It does not seem surprising that not contain any edge. This kind of a simple graph does not once n gets large most graphs are Hamiltonian [13]. belong to HAM–CYCLE’1. Suppose, we have an instance y Choosing a graph on n vertices at random is the same of HAM–CYCLE’k0 . We can reduce y in HAM–CYCLE’k0 to 1 zy in HAM–CYCLE’k0+1 such that as including each edge in the graph with probability 2 , independently of the other edges [14]. You get a more y ∈ HAM–CYCLE’k0 if and only if zy ∈ HAM–CYCLE’k0+1 general model of random graphs if you choose each edge with probability p [14]. This model is known as Gn,p [14]. where the binary string z is exactly a sequence of |y| zeros. It turns out that for any constant p > 0, the probability that Due to this reduction remains in polynomial time for every 0 G contains a Hamiltonian cycle tends to 1 when n tends to positive integer 1 ≤ k , then we show HAM–CYCLE’k0+1 c×log n infinity [14]. In fact, this is true whenever p > n for is in NP–hard. Moreover, HAM–CYCLE’k0+1 is also in 1 some constant c. In particular this is true for p = 2 , which NP–complete, because of Lemma 5.8. is our case [14]. 4

1−1 0 1−1 Theorem 5.10. For every integer 1 ≤ k, if the language 2 × n0 + 2 − 1. Consequently, due to Theorem 5.10, 0 1 HAM–CYCLE’k is in DENSE(k ) for every natural number HAM–CYCLE’2 is in DENSE( 2 ) for every natural number 0 k0 n ≥ 2 × n0 + 1 = 22−1 × n0 + 22−1 − 1 n ≥ n0, then HAM–CYCLE’k+1 is in DENSE( 2 ) for every 0 0 . Moreover, 0 1 integer n ≥ 2 × n0 + 1. HAM–CYCLE’3 is in DENSE( 4 ) for every natural number 0 3−1 0 3−1 0 n ≥ 4 × n0 + 3 = 2 × n0 + 2 − 1 and so forth Proof. If the language HAM–CYCLE’k is in DENSE(k ) 0 ... and thus, for every language HAM–CYCLE’k, we have for every natural number n ≥ n0, then for every integer 1 HAM–CYCLE’k ∈ DENSE( 2k−1 ) for every natural num- n ≥ n0 + 1 the amount of elements of size n + i in k−1 0 k−1 ber n ≥ 2 × n0 + 2 − 1. HAM–CYCLE’k+1 (where i = n or i = n − 1) is greater than or equal to Definition 5.12. We will define a language HAM–CYCLE’∞ 0 0 0 as follows: for every binary string xnk−1 we have x ∈ 2i−k × 2n + 2n−k × (2i − 2i−k ). HAM–CYCLE’∞ if and only if nk−1 is the binary representation The reason is because there must be more than or equal of the integer k − 1 ≥ 0 and x ∈ HAM–CYCLE’k+1. 0 2i−k i to elements of size in HAM–CYCLE’k which are Theorem 5.13. HAM–CYCLE’∞ ∈ NP–complete. prefixes of the binary strings of size n + i in the lan- guage HAM–CYCLE’k+1. Moreover, there must be more Proof. HAM–CYCLE’∞ ∈ NP , since we can build a unique n−k0 xn than or equal to 2 elements of size n in HAM–CYCLE’k polynomial verifier such that for a given binary string k−1 which are suffixes of the binary strings of size n + i in the verifier accepts when x ∈ HAM–CYCLE’k+1 according HAM–CYCLE’k+1. If we join both properties, we obtain the to Lemma 5.8. Certainly, we can verify whether some sub- sum described by the formula above. strings of a given binary string belong to HAM–CYCLE’ Indeed, this formula can be simplified to or not with the appropriated certificates. In addition, we will only need to verify firstly whether nk−1 is the binary n+i−k0 n+i−k0 0 −k0 2 + 2 × (2 − 2 ) representation of the integer k − 1 ≥ 0 and check later the membership of x in HAM–CYCLE’ using a certificate on and extracting a common factor we obtain k+1 a unique polynomial verifier according to the properties of 0 0 2n+i−k × (1 + (1 − 2−k ) these NP languages described in Lemma 5.8. Moreover, we can reduce every element y of HAM–CYCLE’ such that which is equal to y ∈ HAM–CYCLE’ if and only if yz ∈ HAM–CYCLE’∞ 0 1 2n+i−k × (2 − ). 2k0 where the binary string z is exactly a sequence of |y| + 1 ze- Nevertheless, for every real number 0 ≤ k0 ≤ 1 ros. Certainly, the numbers represented by the binary strings which are suffixes of yz could be 0 or greater than or equal to 1 k0 |y|+1 (2 − ) ≥ 2 2 . 2 . However, there is no a possible chance that y belongs k0 |y|+1 2 to some language HAM–CYCLE’k when k > 2 + 1. Certainly, if we multiply both member of the inequality by Hence, the unique possible candidate is the integer k = 1 0 2k , we obtain represented by the binary string 0 which is a suffix of yz. In 0 k0+1 k0+ k (2 − 1) ≥ 2 2 this way, if yz is in HAM–CYCLE’2, then this surely implies that y is in HAM–CYCLE’ since the sequence of zeros z can which is equivalent to never belong to HAM–CYCLE’ (see more in Theorem 5.9). 0 k0 k Consequently, HAM–CYCLE’∞ is in NP–hard and in NP 2 × (2 − 2 2 ) ≥ 1 and therefore, HAM–CYCLE’∞ ∈ NP–complete. that it is true for every real number 0 ≤ k0 ≤ 1. Thus Theorem 5.14. HAM–CYCLE’∞ ∈ DENSE(0) when the bit 0 1 0 k0 n n+i−k n+i−k 2 length of the binary strings tends to infinity. 2 × (2 − k0 ) ≥ 2 × 2 2 1 Proof. When k tends to infinity, then k−1 tends to 0. In where 2 this way, when k tends to infinity, then HAM–CYCLE’k ∈ 0 0 0 n+i−k0 k n+i−(k0− k ) n+i− k 2 × 2 2 = 2 2 = 2 2 . DENSE(0) as a consequence of Lemma 5.11. In addition, when k grows, then the constant n0 becomes exponentially 0 Since every binary string of size n has also the bit-length larger in relation to k where n0 is the positive integer n + i for some natural number n (where i = n or i = n − 1), 0 used in the Definition 5.1 for HAM–CYCLE’k. However, n0−( k ) then there are more than or equal to 2 2 elements of the the elements of HAM–CYCLE’k when k tends to infinity 0 language HAM–CYCLE’k+1 with length n ≥ 2 × n0 + 1. In are prefixes of the binary strings which are elements of k0 this way, we show HAM–CYCLE’k+1 is in DENSE( 2 ) for HAM–CYCLE’∞ when the bit length n of the binary strings 0 every integer n ≥ 2 × n0 + 1. tends to infinity. In conclusion, the density could totally 1 grow for HAM–CYCLE’∞ when the bit length n of the Lemma 5.11. HAM–CYCLE’k ∈ DENSE( 2k−1 ) for every k−1 0 k−1 binary strings tends to infinity. natural number n ≥ 2 × n0 + 2 − 1 where the constant 0 n0 is the positive integer used in the Definition 5.1 and Lemma Corollary 5.15. coHAM–CYCLE’∞ ∈ SP ARSE. 5.6 for HAM–CYCLE’. Proof. coHAM–CYCLE’∞ is the complement of lan- Proof. According to Lemma 5.6, HAM–CYCLE’1 is in guage HAM–CYCLE’∞. In Theorem 5.14, we obtain 0 DENSE(1) for every natural number n ≥ n0 = HAM–CYCLE’∞ ∈ DENSE(0) when the bit length n of 5

the binary strings tends to infinity and thus, the complex- 7 CONCLUSION ity of counting the number of strings with length n in coHAM–CYCLE’∞ is bounded by a polynomial function of No one has been able to find a polynomial time algorithm n. Certainly, a language is sparse if and only if its comple- for any of more than 300 important known NP–complete ment is in DENSE(0) when the bit length n of the binary problems [10]. A proof of P = NP will have stunning strings tends to infinity [8]. Indeed, the sparse languages practical consequences, because it leads to efficient methods n are called sparse because there are a total of 2 strings for solving some of the important problems in NP [1]. The of length n, and if a language only contains polynomially consequences, both positive and negative, arise since vari- many of these, then the proportion of strings of length n that ous NP–complete problems are fundamental in many fields it contains rapidly goes to zero as n grows (which means [1]. This result explicitly concludes supporting the existence its complement should be in DENSE(0) when n tends to of a practical solution for the NP–complete problems because infinity) [8]. Therefore, as a consequence of Theorem 5.14, P = NP . then coHAM–CYCLE’∞ ∈ SP ARSE. Cryptography, for example, relies on certain problems Theorem 5.16. There is a sparse language in coNP–complete. being difficult. A constructive and efficient solution to an NP–complete problem such as 3SAT will break most exist- Proof. Due to Theorem 5.13, we have coHAM–CYCLE’∞ ∈ ing cryptosystems including: Public-key cryptography [16], coNP-complete, because the complements of the NP-complete symmetric ciphers [17] and one-way functions used in cryp- problems are complete for coNP [11]. In Corollary 5.15, we tographic hashing [18]. These would need to be modified or prove coHAM–CYCLE’∞ ∈ SP ARSE and thus, this sparse replaced by information-theoretically secure solutions not language in coNP–complete actually exists. inherently based on P–NP equivalence. Lemma 5.17. P = NP . There are enormous positive consequences that will fol- low from rendering tractable many currently mathemati- Proof. By the Fortune’s theorem, if any sparse language is cally intractable problems. For instance, many problems in P = NP coNP–complete, then [7]. As result of Theorem operations research are NP–complete, such as some types of 5.16, there is a sparse language in coNP–complete. Finally, integer programming and the traveling salesman problem P NP we demonstrate that is equal to . [10]. Efficient solutions to these problems have enormous implications for logistics [1]. Many other important prob- 6 DISCUSSION lems, such as some problems in protein structure prediction, are also NP–complete, so this will spur considerable advances A logarithmic space Turing machine has a read-only input in biology [19]. tape, a write-only output tape, and a read/write work tape [3]. The work tape may contain O(log n) symbols [3]. But such changes may pale in significance compared to In computational complexity theory, LOGSP ACE is the the revolution an efficient method for solving NP–complete complexity class containing those decision problems that problems will cause in mathematics itself. Stephen Cook can be decided by a logarithmic space Turing machine says: “ ...it would transform mathematics by allowing a which is deterministic [5]. Whether LOGSP ACE = P is computer to find a formal proof of any theorem which has a another fundamental question that it is as important as it is proof of a reasonable length, since formal proofs can easily unresolved [5]. be recognized in polynomial time.” [1]. A logarithmic space Turing machine M may compute a Research mathematicians spend their careers trying to function f :Σ∗ → Σ∗, where f(w) is the string remaining prove theorems, and some proofs have taken decades or on the output tape after M halts when it is started with w on even centuries to find after problems have been stated. For its input tape [3]. We call f a logarithmic space computable instance, Fermat’s Last Theorem took over three centuries ∗ function [3]. We say that a language L1 ⊆ {0, 1} is loga- to prove. A method that is guaranteed to find proofs to ∗ rithmic space reducible to a language L2 ⊆ {0, 1} , written theorems, should one exist of a “reasonable” size, would L1 ≤l L2, if there exists a logarithmic space computable essentially end this struggle. function f : {0, 1}∗ → {0, 1}∗ such that for all x ∈ {0, 1}∗, Indeed, with a polynomial algorithm for an NP–complete problem, we could solve not merely one Millennium Prob- x ∈ L if and only if f(x) ∈ L . 1 2 lem but all seven of them [2]. This observation is based on The logarithmic space reduction is frequently used for the once we fix a formal system such as the first-order logic plus class P-complete [5]. the axioms of ZF set theory, then we can find a demonstra- In 1999, Jin-Yi Cai and D. Sivakumar, building on work tion in time polynomial in n when a given statement has a by Ogihara, showed that if there exists a sparse P-complete proof with at most n symbols long in that system [2]. This is problem, then LOGSP ACE = P [15]. We might extend assuming that the other six Clay conjectures have ZF proofs the proof of this paper to demonstrate that LOGSP ACE = that are not too large such as it was the Perelman’s case [2]. P . Certainly, we might only need to find some P-complete Besides, a P = NP proof reveals the existence of an which belongs to DENSE(1) because the P-completeness is interesting relationship between humans and machines [2]. closed under complement [5]. Indeed, the other steps of that For example, suppose we want to program a computer to possible proof might be similar to the arguments that we create new Mozart-quality symphonies and Shakespeare- follow in this paper. Consequently, this work would help quality plays. When P = NP , this could be reduced to the us not only to solve P versus NP , but also LOGSP ACE easier problem of writing a computer program to recognize versus P . great works of art [2]. 6

REFERENCES [1] S. A. Cook, “The P versus NP Problem,” April 2000, at http:// www.claymath.org/sites/default/files/pvsnp.pdf. [2] S. Aaronson, “P ? NP,” Electronic Colloquium on Computational Complexity, Report No. 4, 2017. [3] M. Sipser, Introduction to the Theory of Computation. Thomson Course Technology Boston, 2006, vol. 2. [4] T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, Introduc- tion to Algorithms, 3rd ed. The MIT Press, 2009. [5] C. H. Papadimitriou, Computational complexity. Addison-Wesley, 1994. [6] W. I. Gasarch, “Guest column: The second P ? NP poll,” ACM SIGACT News, vol. 43, no. 2, pp. 53–77, 2012. [7] S. Fortune, “A note on sparse complete sets,” SIAM Journal on Computing, vol. 8, no. 3, pp. 431–433, 1979. [8] S. R. Mahaney, “Sparse complete sets for NP: Solution of a con- jecture by Berman and Hartmanis,” Journal of Computer and System Sciences, vol. 25, pp. 130–143, 1982. [9] M. Ogiwara and O. Watanabe, “On polynomial time bounded truth-table reducibility of NP sets to sparse sets,” SIAM Journal on Computing, vol. 20, pp. 471–483, 1991. [10] M. R. Garey and D. S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, 1st ed. San Francisco: W. H. Freeman and Company, 1979. [11] O. Goldreich, P, NP, and NP-Completeness: The basics of computa- tional complexity. Cambridge University Press, 2010. [12] S. Arora and B. Barak, Computational complexity: a modern approach. Cambridge University Press, 2009. [13] The On-Line Encyclopedia of Integer Sequences, “Number of graphs on n unlabeled nodes,” August 2018, at http://oeis.org/ A000088. [14] B. Bolloba´s, Random Graphs, 2nd ed., ser. Cambridge Studies in Advanced Mathematics. Cambridge University Press, 2001. [15] J.-Y. Cai and D. Sivakumar, “Sparse hard sets for P: resolution of a conjecture of Hartmanis,” Journal of Computer and System Sciences, vol. 58, no. 2, pp. 280–296, 1999. [16] S. Horie and O. Watanabe, “Hard instance generation for SAT,” Algorithms and Computation, pp. 22–31, 1997. [17] F. Massacci and L. Marraro, “Logical cryptanalysis as a SAT problem,” Journal of Automated Reasoning, vol. 24, no. 1, pp. 165– 203, 2000. [18] D. De, A. Kumarasubramanian, and R. Venkatesan, “Inversion attacks on secure hash functions using SAT solvers,” in Interna- tional Conference on Theory and Applications of Satisfiability Testing. Springer, 2007, pp. 377–382. [19] B. Berger and T. Leighton, “Protein folding in the hydrophobic- hydrophilic (HP) model is NP-complete,” Journal of Computational Biology, vol. 5, no. 1, pp. 27–40, 1998.

Frank Vega is essentially a back-end program- mer graduated in Computer Science since 2007. In August 2012, he ventured as Independent Re- searcher in Computational Complexity writing a work published by IEEE Latin America Transac- tions which claimed a solution to an outstanding problem of Computer Science, but in the proof were found flaws. In August 2017, he was in- vited as a guest reviewer for a peer-review of a manuscript about Theory of Computation in the flagship journal of IEEE Computer Society. In October 2017, he contributed as co-author with a presentation in the 7th International Scientific Conference on economic development and standard of living (“EDASOL 2017 - Economic development and Standard of living”). In February 2017, his book “Protesta” (a book of poetry and short stories in Spanish) was published by the Alexandria Library Publishing House. He was also Director of two IT Companies (Joysonic and Chavanasoft) created in Serbia.