1. Introduction
Computer science is confronted by the formidable challenge of the
P versus
problem [
1]. Fundamentally, this inquiry seeks to determine if the ability to swiftly verify a solution implies the capacity to swiftly compute it. Here, "swiftly" denotes algorithms with a polynomial time complexity, where computational time grows proportionally to input size. Problems solvable within polynomial time constitute the class
P. Conversely,
encompasses problems whose solutions can be verified efficiently given a suitable "certificate" - a piece of information enabling rapid validation [
2].
The crux of the
P versus
question lies in whether
P and
are identical. A prevailing belief is that
P is a strict subset of
(
), signifying that certain problems are inherently more difficult to solve than to verify. Resolving this enigma holds profound implications for fields such as cryptography and artificial intelligence [
3,
4]. The
P versus
problem is widely considered one of the most challenging open questions in computer science. Evidence supporting its difficulty arises from techniques like relativization and natural proofs, which have yielded inconclusive results [
5,
6]. Similar problems, such as the VP versus VNP problem in algebraic complexity, remain unsolved [
7].
Resolving the
P versus
question is often described as a "holy grail" of computer science. A positive resolution would revolutionize our understanding of computation, potentially leading to groundbreaking algorithms for critical problems. Reflecting its significance, the problem is listed among the Millennium Prize Problems. While recent years have seen progress in related areas, such as finding efficient solutions to specific instances of
-complete problems, the core question of
P versus
remains unanswered [
8]. A polynomial-time algorithm for any
-complete problem would directly imply
P equals
[
9]. Our work focuses on presenting such an algorithm for a well-known
-complete problem.
2. Background and ancillary Results
-complete problems are the Everest of computational challenges. Despite the ease of verifying proposed solutions with a succinct certificate [
9], finding these solutions efficiently remains an elusive goal. A problem is classified as
-complete if it satisfies two stringent criteria within computational complexity theory:
The implications of finding an efficient algorithm for a single
-complete problem are profound. Such a breakthrough would serve as a master key, unlocking efficient solutions for all problems in
, with transformative consequences for fields like cryptography, artificial intelligence, and planning [
3,
4].
Illustrative examples of -complete problems include:
Boolean satisfiability (SAT): Given a logical expression, determine if there exists an assignment of truth values to its variables that makes the entire expression true [
10].
Independent Set: In a given graph, identify a maximum-sized subset of vertices where no two vertices are connected by an edge [
10].
The provided examples represent a small subset of the extensively studied
-complete problems relevant to our current work. A comparability graph, denoted as
, is characterized by the existence of a partial order
P on its vertex set
V such that an edge connects vertices
u and
v if and only if either
u precedes
v or
v precedes
u in
P [
11]. Determining whether a given graph is a comparability graph can be accomplished efficiently (in polynomial time) [
11].
Definition 1. Independent Set for Comparability Graph (ISCG):
Given a comparability graph and a positive integer k, the problem asks whether there exists a subset of V containing at least k vertices such that no two vertices in are connected by an edge in G. This problem can be solved efficiently in polynomial time [12].
A Boolean satisfiability problem (SAT) instance is a Boolean formula constructed from:
Boolean variables: , which can take on the values true or false.
Boolean connectives: Logical operators such as AND (∧), OR (∨), NOT (¬), implication (⇒), and equivalence (⇔).
Parentheses: To specify the order of operations.
A truth assignment for a Boolean formula is a complete mapping of its variables to the values true or false. A satisfying truth assignment is one that evaluates the formula to true. If such an assignment exists, the formula is satisfiable. The
problem asks whether a given Boolean formula is satisfiable [
10].
A literal is a single variable or its negation within a Boolean formula [
9]. A Boolean formula is in conjunctive normal form (
) when it is expressed as a conjunction (
) of clauses, where each clause is a disjunction (
) of one or more literals [
9]. A 3-conjunctive normal form (
) formula is a specific type of
where each clause contains exactly three distinct literals [
9].
For instance, the formula
in
. Its first clause,
, consists of the three literals
,
and
.
We introduce the ONE-IN-THREE 3SAT problem:
Definition 2. ONE-IN-THREE 3SAT:
Given a Boolean formula in , determine if there exists a truth assignment such that exactly one literal is true in each clause. This problem is a well-known -complete problem [10].
By presenting an efficient solution to ONE-IN-THREE 3SAT, we would establish a proof that P equals .
3. Main Result
This is a key finding.
Theorem 1. ONE-IN-THREE 3SAT can be solved in polynomial time.
Proof. Let be a Boolean formula satisfying the specific constraints of the ONE-IN-THREE 3SAT problem. We can transform in into another Boolean formula in such that each variable in is restricted to appear at most three times, and each literal at most twice (the use of in requires only that each clause has at most 3 literals and contains at least 2 literals).
We proceed to convert into in the following way:
Suppose that some variable x appears k times in .
Replace the first occurrence of x by , the second by and so on, where are k new variables.
-
Add to the expression.
- –
This is logically equivalent to
- –
Note that each clause above has exactly 2 literals.
The resulting equivalent expression in satisfies the condition for x.
Suppose that we are given the following expression in
:
-
The transformed expression is
- –
Variable appears thrice.
- –
Literal appears once.
- –
Literal appears twice.
We complete this transformation iterating over all the new expressions for each variable and putting them together in order to create the Boolean formula .
A truth assignment satisfying the ONE-IN-THREE 3SAT condition for exists if and only if such an assignment exists for . The modified formula contains m clauses with three literals each and clauses with two literals each.
A special type of graph, , known as a comparability graph, can be constructed from the Boolean formula . This graph will serve as a tool to solve the original formula .
-
Building the Graph.
Vertex Creation: Each literal in a three-literal clause of is represented by a unique vertex in G, denoted . Similarly, each literal y in a two-literal clause is represented by a vertex . For each variable x, both its positive (, ) and negative (, ) forms are represented as vertices, regardless of whether they appear in three- or two-literal clauses.
Edge Creation for Variable Consistency: For each variable x, an edge connects and to ensure at most one can be included in an independent set. If x appears in both three- and two-literal clauses, an edge connects and (or and in case of could appear in both three- and two-literal clauses) to enforce consistency.
Edge Creation for Clause Constraints: For each three-literal clause , edges are added between , and to guarantee at most one can be in an independent set. For each two-literal clause , an edge is added between and for the same purpose.
-
Edge Implications. The introduced edges serve two primary purposes:
Mutual Exclusion: They prevent the simultaneous inclusion of literal vertices representing a variable and its negation within an independent set.
Clause Restriction: By connecting vertices from the same clause, they enforce the constraint that at most one literal per clause can be part of an independent set.
-
Understanding the Edges. The edges in the graph are designed to ensure the following:
Solution Mapping: An independent set in the graph corresponds to a valid solution for the formula .
Clause Satisfaction: A clause in contains exactly one true literal if and only if at least one of its corresponding vertices is included in the independent set.
-
Mapping Between Solutions. An independent set in the graph represents a valid solution to the formula if:
Clause Coverage: It includes at least one vertex from every clause, ensuring that each clause contains exactly one true literal.
Literal Consistency: It includes at most two vertices representing a specific literal (positive or negative) for each variable. This guarantees that the solution assigns a consistent truth value to each variable.
-
Why it Works.
Consistency Enforcement: The graph’s structure ensures that any chosen set of vertices (independent set) corresponds to a valid truth assignment for the formula’s variables.
Solution Equivalence: A truth assignment with exactly one true literal per clause in is directly equivalent to an independent set containing at least vertices (where m and represent the number of three- and two-literal clauses, respectively). The existence of such an independent set guarantees that G is a comparability graph. This can be demonstrated by assigning a numerical rank to each vertex: 3 for vertices in , 0 for literals in two-literal clauses outside , and 1 or 2 for literals in three-literal clauses outside .
-
Equivalence and Complexity.
In essence, this construction establishes a direct connection between solving the problem and finding a valid solution (or certificate) for any ONE-IN-THREE 3SAT instance. Since can be solved efficiently, it follows that the original, seemingly more complex problem can also be solved efficiently. □
This is the main theorem.
Proof. A polynomial-time solution to any
-complete problem would establish the equivalence of
P and
[
9]. Despite extensive research on over 300 significant
-complete problems, no such polynomial-time algorithm has been discovered [
9]. Given that
ONE-IN-THREE 3SAT is a well-known
-complete problem [
9], a polynomial-time solution for it, as presented in Theorem 1, would directly imply
P equals
. □
4. Conclusion
A definitive proof that P equals would fundamentally reshape our computational landscape. The implications of such a discovery are profound and far-reaching:
In conclusion, a proof of would usher in a new era of computational power with transformative effects on science, technology, and society. While challenges and uncertainties exist, the potential benefits are immense, making this a compelling area of continued research.
References
- Cook, S.A. The P versus NP Problem, Clay Mathematics Institute. https://www.claymath.org/wp-content/uploads/2022/06/pvsnp.pdf, 2022. Accessed August 7, 2024.
- Sudan, M. The P vs. NP problem. http://people.csail.mit.edu/madhu/papers/2010/pnp.pdf, 2010. Accessed August 7, 2024.
- Fortnow, L. The status of the P versus NP problem. Communications of the ACM 2009, 52, 78–86. [Google Scholar] [CrossRef]
- Aaronson, S. P NP In Open Problems in Mathematics; 2016; pp. 1–122. [Google Scholar] [CrossRef]
- Baker, T.; Gill, J.; Solovay, R. Relativizations of the =? Question SIAM Journal on computing 1975, 4, 431–442. [Google Scholar] [CrossRef]
- Razborov, A.A.; Rudich, S. Natural Proofs. Journal of Computer and System Sciences 1997, 1, 24–35. [Google Scholar] [CrossRef]
- Wigderson, A. Mathematics and Computation: A Theory Revolutionizing Technology and Science; Princeton University Press, 2019. [Google Scholar]
- Fortnow, L. Fifty Years of P vs. NP and the Possibility of the Impossible. Communications of the ACM 2022, 65, 76–85. [Google Scholar] [CrossRef]
- Cormen, T.H.; Leiserson, C.E.; Rivest, R.L.; Stein, C. Introduction to Algorithms, 3rd ed. The MIT Press, 2009.
- Garey, M.R.; Johnson, D.S. Computers and Intractability: A Guide to the Theory of NP-Completeness, 1 ed.; W. H. Freeman and Company: San Francisco, 1979. [Google Scholar]
- Alvarez, C.; Greenlaw, R. A compendium of problems complete for symmetric logarithmic space. Computational Complexity 2000, 9, 123–145. [Google Scholar] [CrossRef]
- Golumbic, M.C. The complexity of comparability graph recognition and coloring. Computing 1977, 18, 199–208. [Google Scholar] [CrossRef]
|
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).