Generated by GPT-5-mini| P (complexity) | |
|---|---|
| Field | Computational complexity theory |
| Introduced | 1960s |
| Typical problems | Sorting, Searching, Shortest path, Matrix multiplication |
| Related | NP, L, NL, PSPACE, EXP |
P (complexity) is the class of decision problems solvable by a deterministic Turing machine in polynomial time. It formalizes the notion of efficiently solvable problems and plays a central role in theoretical computer science, algorithm design, and computational practice.
In formal terms, P comprises decision problems for which there exists a deterministic Turing machine that decides every instance of the problem in time O(n^k) for some constant k, where n denotes the input length. The class was shaped by foundational work in the 1960s and 1970s by researchers associated with institutions such as Princeton University, Bell Labs, IBM, MIT, and University of California, Berkeley. Key contributors linked to the development of polynomial-time concepts include Alan Turing, John von Neumann, Stephen Cook, Richard Karp, Michael Rabin, and Jack Edmonds.
P admits multiple equivalent formulations: it equals the class of languages decidable by a family of polynomial-size deterministic Boolean circuits, connecting P to circuit complexity studied at Carnegie Mellon University and Stanford University; it matches problems solvable on random-access machines with polynomial-time bounds, reflecting models used at Bell Labs and AT&T Laboratories. The class is robust under variations in formal models such as multi-tape Turing machines, single-tape machines, and multi-head automata examined in work at University of California, Los Angeles and Weizmann Institute of Science. P is also characterized via descriptive complexity through fixed-point logic and least fixed-point operators studied by researchers at Princeton University and University of Toronto.
P sits in a landscape of inclusions and conjectures: it is a subset of NP and of deterministic space-bounded classes like PSPACE and contains classes such as L and NL under standard assumptions. Central open problems tie P to classes like NP, yielding the famous P versus NP question highlighted by Clay Mathematics Institute and discussed by figures including Stephen Cook and Leonid Levin. Separations and collapses among P, PH (the polynomial hierarchy), and classes like BPP and ZPP were investigated at institutions such as Harvard University and University of Edinburgh. Results connecting P to circuit classes like P/poly and lower bound efforts by researchers at Institute for Advanced Study and Massachusetts Institute of Technology further illuminate its placement.
Canonical problems in P include decision versions of sorting and searching tasks exemplified in textbooks from MIT Press and implemented by teams at Google and Microsoft Research; graph problems such as connectivity and shortest path traced to work by Dijkstra and Edmonds; linear algebraic decision problems following algorithms by Strassen and developments at Bell Labs; and regular language membership tied to automata theory from Noam Chomsky's lineage and courses at Stanford University. Other examples include primality testing following algorithms by Miller and Agrawal, combinatorial optimization subroutines studied at INRIA and ETH Zurich, and dynamic programming routines popularized by work at Toyota Research Institute and IBM Watson Research Center.
Design techniques for polynomial-time algorithms draw on reductions and completeness proofs framed by Richard Karp and Stephen Cook, divide-and-conquer methods exemplified by algorithms from Jon Bentley and Donald Knuth, greedy strategies developed in the tradition of Edmonds and Jack Edmonds, dynamic programming popularized in the work of Richard Bellman, graph algorithms pioneered by Edsger Dijkstra and Robert Tarjan, algebraic algorithms from Volker Strassen and Alan Turing, and randomized algorithmic techniques advanced at DIMACS and Microsoft Research. Complexity-theoretic tools such as padding, relativization, and diagonalization were explored by scholars at Bell Labs, Princeton University, and IBM Research.
P provides a formal benchmark for tractability that guides research agendas at universities like MIT and Stanford University and industrial labs including Google Research and Microsoft Research. The class informs curriculum and pedagogy at institutions such as Carnegie Mellon University and ETH Zurich and underpins practical software engineering choices in companies like Amazon and Facebook. Open questions connecting P to NP, randomness (e.g., relationships with BPP), and circuit lower bounds motivate major research programs at the Institute for Advanced Study and funding bodies like the National Science Foundation, and they influence cryptography, optimization, and algorithmic fairness work at organizations including NIST and OpenAI.