Presentation on theme: "NP-complete Problems and Physical Reality Scott Aaronson UC Berkeley IAS."— Presentation transcript:
NP-complete Problems and Physical Reality Scott Aaronson UC Berkeley IAS
Problem: Given a graph, is it connected? Each particular graph is an instance The size of the instance, n, is the number of bits needed to specify it An algorithm is polynomial-time if it uses at most kn c steps, for some constants k,c P is the class of all problems that have polynomial-time algorithms Computer Science 101
NP: Nondeterministic Polynomial Time 37976595177176695379702491479374117272627593 30195046268899636749366507845369942177663592 04092298415904323398509069628960404170720961 97880513650802416494821602885927126968629464 31304735342639520488192047545612916330509384 69681196839122324054336880515678623037853371 49184281196967743805800830815442679903720933 Does have a prime factor ending in 7?
NP-hard: If you can solve it, you can solve everything in NP NP-complete: NP-hard and in NP Is there a Hamilton cycle (tour that visits each vertex exactly once)?
P NP NP- complete NP-hard Graph connectivity Primality testing Matrix determinant Linear programming … Matrix permanent Halting problem … Hamilton cycle Steiner tree Graph 3-coloring Satisfiability Maximum clique … Factoring Graph isomorphism Minimum circuit size …
Does P=NP? The (literally) $1,000,000 question
But what if P=NP, and the algorithm takes n 10000 steps? God will not be so cruel
What could we do if we could solve NP-complete problems? If there actually were a machine with [running time] ~Kn (or even only with ~Kn 2 ), this would have consequences of the greatest magnitude. Gödel to von Neumann, 1956
Then why is it so hard to prove P NP? Algorithms can be very clever Gödel/Turing-style self-reference arguments dont seem powerful enough Combinatorial arguments face the Razborov-Rudich barrier
But maybe theres some physical system that solves an NP-complete problem just by reaching its lowest energy state?
-Dip two glass plates with pegs between them into soapy water -Let the soap bubbles form a minimum Steiner tree connecting the pegs
Other Physical Systems Well-known to admit metastable states Spin glasses Folding proteins... DNA computers: Just highly parallel ordinary computers
Analog Computing Schönhage 1979: If we could compute x+y, x-y, xy, x/y, x for any real x,y in a single step, then we could solve NP-complete and even harder problems in polynomial time Problem: The Planck scale!
Quantum Computing Shor 1994: Quantum computers can factor in polynomial time But can they solve NP-complete problems? Bennett, Bernstein, Brassard, Vazirani 1997: Quantum magic wont be enough ~2 n/2 queries are needed to search a list of size 2 n for a single marked item A. 2004: True even with quantum advice
Quantum Adiabatic Algorithm (Farhi et al. 2000) HiHi Hamiltonian with easily-prepared ground state HfHf Ground state encodes solution to NP- complete problem Problem (van Dam, Mosca, Vazirani 2001): Eigenvalue gap can be exponentially small
Relativity Computing DONE
Topological Quantum Field Theories (TQFTs) Freedman, Kitaev, Wang 2000: Equivalent to ordinary quantum computers
Nonlinear Quantum Mechanics (Weinberg 1989) Abrams & Lloyd 1998: Could use to solve NP-complete and even harder problems in polynomial time No solutions 1 solution to NP-complete problem
Time Travel Computing (Bacon 2003) x y x y x Chronology-respecting bit Suppose Pr[x=1] = p, Pr[y=1] = q Then consistency requires p=q So Pr[x y=1] = p(1-q) + q(1-p) = 2p(1-p) Causal loop
Hidden Variables Valentini 2001: Subquantum algorithm (violating | | 2 ) to distinguish |0 from Problem: Valentinis algorithm still requires exponentially-precise measurements. But we probably could solve Graph Isomorphism subquantumly A. 2002: Sampling the history of a hidden variable is another way to solve Graph Isomorphism in polynomial timebut again, probably not NP-complete problems!
Anthropic Computing Guess a solution to an NP-complete problem. If its wrong, kill yourself. Doomsday alternative: If solution is right, destroy human race. If wrong, cause human race to survive into far future.
Transhuman Computing Upload yourself onto a computer Start the computer working on a 10,000-year calculation Program the computer to make 50 copies of you after its done, then tell those copies the answer
Second Law of Thermodynamics Proposed Counterexamples
No Superluminal Signalling Proposed Counterexamples
Intractability of NP-complete problems Proposed Counterexamples ?