Quantum Computing Lecture 8. Quantum Automata and Complexity

Similar documents
Lecture 22: Quantum computational complexity

Advanced topic: Space complexity

Lecture 26: Arthur-Merlin Games

Notes on Complexity Theory Last updated: November, Lecture 10

PROBABILISTIC COMPUTATION. By Remanth Dabbati

Lecture 24: Randomized Complexity, Course Summary

Lecture 4 : Quest for Structure in Counting Problems

Computational Complexity

Quantum Complexity Theory. Wim van Dam HP Labs MSRI UC Berkeley SQUINT 3 June 16, 2003

COMPARATIVE ANALYSIS ON TURING MACHINE AND QUANTUM TURING MACHINE

Lecture 25: Cook s Theorem (1997) Steven Skiena. skiena

Lecture 22: Counting

Review of Complexity Theory

ITCS:CCT09 : Computational Complexity Theory Apr 8, Lecture 7

Computability and Complexity

Graph Non-Isomorphism Has a Succinct Quantum Certificate

SOLUTION: SOLUTION: SOLUTION:

CS151 Complexity Theory. Lecture 1 April 3, 2017

1 Quantum Circuits. CS Quantum Complexity theory 1/31/07 Spring 2007 Lecture Class P - Polynomial Time

Introduction to Quantum Branching Programs

Umans Complexity Theory Lectures

6.045 Final Exam Solutions

1 Computational Problems

Q = Set of states, IE661: Scheduling Theory (Fall 2003) Primer to Complexity Theory Satyaki Ghosh Dastidar

Complexity Theory 112. Space Complexity

Introduction to Quantum Computing

Notes for Lecture Notes 2

CS294: Pseudorandomness and Combinatorial Constructions September 13, Notes for Lecture 5

Turing Machines and Time Complexity

By allowing randomization in the verification process, we obtain a class known as MA.

Lecture 6: Oracle TMs, Diagonalization Limits, Space Complexity

Part I: Definitions and Properties

6.896 Quantum Complexity Theory 30 October Lecture 17

Equivalence of TMs and Multitape TMs. Theorem 3.13 and Corollary 3.15 By: Joseph Lauman

Lecture 12: Randomness Continued

Lecture Notes 4. Issued 8 March 2018

Theory of Computation Lecture 1. Dr. Nahla Belal

NP, polynomial-time mapping reductions, and NP-completeness

Lecture 2: Relativization

CS5371 Theory of Computation. Lecture 12: Computability III (Decidable Languages relating to DFA, NFA, and CFG)

Lecture 23: Introduction to Quantum Complexity Theory 1 REVIEW: CLASSICAL COMPLEXITY THEORY

Computational complexity

Notes for Lecture 3... x 4

CS5371 Theory of Computation. Lecture 14: Computability V (Prove by Reduction)

Umans Complexity Theory Lectures

A Complete Characterization of Unitary Quantum Space

Theory of Computation

6.841/18.405J: Advanced Complexity Wednesday, February 12, Lecture Lecture 3

COMP/MATH 300 Topics for Spring 2017 June 5, Review and Regular Languages

UNIT-VIII COMPUTABILITY THEORY

CSCI 1590 Intro to Computational Complexity

-bit integers are all in ThC. Th The following problems are complete for PSPACE NPSPACE ATIME QSAT, GEOGRAPHY, SUCCINCT REACH.

Show that the following problems are NP-complete

Lecture 8: Complete Problems for Other Complexity Classes

Complexity. Complexity Theory Lecture 3. Decidability and Complexity. Complexity Classes

Simon s algorithm (1994)

CS154, Lecture 17: conp, Oracles again, Space Complexity

CS 154, Lecture 2: Finite Automata, Closure Properties Nondeterminism,

On The Computational Complexity of Linear Optics by Scott Aaronson and Alex Arkhipov

Variations of the Turing Machine

an efficient procedure for the decision problem. We illustrate this phenomenon for the Satisfiability problem.

Introduction to Quantum Computing

Final Exam Comments. UVa - cs302: Theory of Computation Spring < Total

Compute the Fourier transform on the first register to get x {0,1} n x 0.

MTAT Complexity Theory October 13th-14th, Lecture 6

Automata Theory. Lecture on Discussion Course of CS120. Runzhe SJTU ACM CLASS

Quantum Computational Complexity

CS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine)

CMPT307: Complexity Classes: P and N P Week 13-1

INAPPROX APPROX PTAS. FPTAS Knapsack P

arxiv: v1 [quant-ph] 31 Dec 2015

15-251: Great Theoretical Ideas in Computer Science Lecture 7. Turing s Legacy Continues

Algorithms and Theory of Computation. Lecture 19: Class P and NP, Reduction

Complexity Theory. Knowledge Representation and Reasoning. November 2, 2005

Recap DFA,NFA, DTM. Slides by Prof. Debasis Mitra, FIT.

CSCI3390-Lecture 14: The class NP

Lecture 20: conp and Friends, Oracles in Complexity Theory

Lecture 21: Algebraic Computation Models

The Class NP. NP is the problems that can be solved in polynomial time by a nondeterministic machine.

Umans Complexity Theory Lectures

COMPUTATIONAL COMPLEXITY

Computability Theory. CS215, Lecture 6,

CSCI3390-Lecture 16: NP-completeness

3 Probabilistic Turing Machines

conp, Oracles, Space Complexity

BBM402-Lecture 11: The Class NP

CS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine)

U.C. Berkeley CS278: Computational Complexity Professor Luca Trevisan 9/6/2004. Notes for Lecture 3

Artificial Intelligence. 3 Problem Complexity. Prof. Dr. Jana Koehler Fall 2016 HSLU - JK

ECS 120 Lesson 24 The Class N P, N P-complete Problems

Introduction to Quantum Information Processing

Lecture 3: Reductions and Completeness

Automata & languages. A primer on the Theory of Computation. Laurent Vanbever. ETH Zürich (D-ITET) October,

Quantum Computation. Michael A. Nielsen. University of Queensland

Turing Machines Part III

. An introduction to Quantum Complexity. Peli Teloni

Time to learn about NP-completeness!

Non-emptiness Testing for TMs

FORMAL LANGUAGES, AUTOMATA AND COMPUTATION

Lecture 16: Time Complexity and P vs NP

Transcription:

Quantum Computing Lecture 8 Quantum Automata and Complexity Maris Ozols Computational models and complexity Shor s algorithm solves, in polynomial time, a problem for which no classical polynomial time algorithm is known. What class of problems are solvable by quantum machines in polynomial time? How does the model of quantum computing compare to other models, such as ones with randomness or non-determinism? How does the quantum model of computation affect our understanding of computational complexity? This lecture: 1. finite-state automata 2. computational complexity

Finite-state automata A finite-state automaton (FSA) consists of a finite set of states Q a finite input alphabet Σ an initial state and some accepting states A Q transitions between states Example: a b a q 0 q 1 states: Q = {q 0, q 1 } alphabet: Σ = {a, b} initial state: q 0, accepting states: A = {q 1 } a b b transitions: q 0 q0, q 0 q1,... It accepts the set of all strings over {a, b} that contain at least one b. Its operation can be described by a pair of transition matrices: ( ) ( ) 1 0 q0 0 0 q0 M a = M 0 1 q 1 b = 1 1 q 1 That is, M a q i = q i and M b q i = q 1 for all i {0, 1}. After reading the string abb, the transitions between states are described by M b M b M a. Different flavours of FSA An n-state automaton with alphabet Σ is described by a collection of n n matrices {M a : a Σ}, i.e., one matrix for each symbol a Σ. Depending on allowed M, we get different flavours of automata: Deterministic: M is a 0/1 matrix and each column of M has exactly one entry 1 Reversible: M is a 0/1 matrix and each row and column of M has exactly one entry 1, i.e., M is a permutation matrix Non-deterministic: M is an arbitrary 0/1 matrix Probabilistic: all entries of M are in [0, 1] and each column sums up to 1, i.e., M is a stochastic matrix Quantum: M is unitary Example: Here are different types of transitions matrices: ( ) ( ) ( ) ( ) ( ) 1 1 0 1 1 0 1/2 0 1 0 0 0 1 0 1 0 1/2 1 0 i deterministic reversible non-deterministic probabilistic quantum

Intermediate states Depending on the type of automata, we get different types of intermediate states: Deterministic: it is a standard basis vector q for some q Q Reversible: same as above; moreover, given the last input symbol we can also recover the previous state by applying M T Non-deterministic: q Q c q q where c q {0, 1, 2,...} Probabilistic: q Q c q q where c q [0, 1] and q Q c q = 1; equivalently, it is a probability distribution over Q Quantum: q Q c q q where c q C and q Q c q 2 = 1; equivalently, it is a quantum state that is a superposition over Q Note: For non-deterministic automata, c q N counts the number of different paths from the initial state to q using transitions given by the input string. Normally one cares only about the existence of a path, so we can replace all c q 1 by 1 so that c q {0, 1} and the state is always of the form q S q for some subset S Q. Acceptance Let A Q denote the set of all accepting states. Then we accept the input word if the current state q Q c q q satisfies: Deterministic: the state is q for some q A Reversible: same as above Non-deterministic: q A c q 1, i.e., at least one accepting state Probabilistic: q A c q 2/3 Quantum: q A c q 2 2/3 Note: The threshold 2/3 is arbitrary (any fixed constant > 1/2). The language accepted or recognized by a finite automaton consists of all finite strings over Σ that are accepted: L Σ.

Some remarks Deterministic, non-deterministic, and probabilistic automata accept exactly the class of regular languages. Automaton s complexity is Q, its number of states. Different models may require different number of states to solve the same problem. Reversible and quantum automata are weaker because of reversibility. Possible fix: we can allow intermediate measurements in the quantum case. Then we can simulate randomness by measuring +. This makes quantum automata at least as powerful as probabilistic ones. Turing machines are much more interesting than finite automata... Turing machine Turing machine (TM) consists of a finite automaton attached to an infinite read-write tape. The tape is initially blank and contains only a finite-length input. TM is determined by an alphabet Σ, a finite set of states Q, and a transition function δ which, for each symbol and state, gives: next state, new replacement symbol to write on the tape, direction in which to move the tape head. TM has infinitely many possible configurations (reserving the word state for elements of Q). Each configuration c is determined by a state, the contents of the tape (a finite string), and the head s position.

Acceptance Let c 0 denote the starting configuration of a TM: the automaton is in its initial state, the tape contains the input w Σ, and the tape head is at the left end of the string. The input w is accepted if the computation c 0 c 1 c t eventually reaches an accepting state, where t denotes the amount of time the computation takes. The action of the TM can equivalently be described as a linear operator on an infinite-dimensional space, where the set of configurations form a basis for the space. This operation should be reversible/unitary for reversible/quantum Turing machines. Such description is very hard to work with, so that s why we instead use quantum circuits (recall Lecture 4). Computational resources and models Models of computation: deterministic non-deterministic probabilistic quantum Resources: time space Randomness supplied upfront: Randomized computation can implemented by a deterministic Turing machine that has a supply of random bits written on the tape. Computation vs verification: Non-deterministic computation can be thought of as verification. If we make all the non-deterministic choices upfront, this corresponds to guessing the answer and then verifying that it is indeed correct. Randomness from quantumness: Quantum computer can obtain random bits by measuring +.

Basic complexity classes Promise problem: A = (A yes, A no ) where A yes, A no Σ such that A yes A no =. We promise not to give inputs Σ (A yes A no ). Example (cat videos): A yes A no is the set of all possible videos where A yes contains cats but A no does not. Σ (A yes A no ) are not videos. Complexity classes: Given A = (A yes, A no ), let M be a deterministic poly-time Turing machine that receives x A yes A no. Then A P = (deterministic) Polynomial-time: if M accepts all x A yes and rejects all x A no A PP = Probabilistic Polynomial-time: if M can access random bits and accepts/rejects with probability > 1/2 A BPP = Bounded-error Probabilistic Polynomial-time: if M can access random bits and accepts/rejects with probability 2/3 A BQP = Bounded-error Quantum Polynomial-time: if M produces a poly-time quantum circuit that accepts/rejects with probability 2/3 Verification complexity King Arthur asks an all-powerful Wizard Merlin to convince him that x is a correct solution. But he is afraid to get fooled by Merlin! Arthur has x, Merlin provides a proof y Given A = (A yes, A no ), let M be a deterministic poly-time Turing machine (Arthur) that receives x A yes A no. Moreover: for every x A yes there is a proof y such that M accepts (x, y) for every x A no there is no proof y such that M accepts (x, y)

Verification complexity classes Complexity classes: A NP = Non-deterministic Polynomial-time: Arthur is a deterministic poly-time P algorithm A MA = Merlin Arthur: Arthur is probabilistic, BPP; accepts/rejects with probability 2/3 A QMA = Quantum Merlin Arthur: Arthur is quantum, BQP; Merlin supplies him with a quantum state as a proof and Arthur accepts/rejects with probability 2/3 Summary of complexity classes Some more classes: Finding Verifying solution solution Deterministic P NP Probabilistic BPP MA Quantum BQP QMA PP = like BPP but unbounded error EXP = like P but exponential-time PSPACE = like P but polynomial-space (and any time) NP-complete = the hardest problems in NP See https://complexityzoo.uwaterloo.ca/ for even more!

Inclusions EXP Trivial inclusions: BQP PSPACE PP QMA MA randomness at least as good as determinism: P BPP, NP MA quantumness at least as good as randomness: BPP BQP, MA QMA verifying a solution cannot be harder than finding one: P NP, BPP MA, BQP QMA poly space can store at most exp number of different strings: PSPACE EXP Non-trivial inclusions: BPP NP GapP functions: BQP PP guess a random proof: QMA PP P try all strings and count solutions: PP PSPACE Separations? EXP Non-trivial separations: PSPACE Time hierarchy theorem: P EXP Major open problems: PP P vs NP is finding a solution really harder than verifying one? (you can get $10 6 for solving this) BQP QMA MA P vs BPP does randomness help? BPP vs BQP are quantum computers more powerful that (probabilistic) classical ones? E.g., is factoring hard classically (cannot be done in poly time)? BPP P NP P vs PSPACE we have no clue even on how to show that these to classes are different...

Problems of interest QMA NP-intermediate NP BQP BPP P NP-complete graph isomorphism factoring primality testing Most problems in NP are either complete or in P. The outliers are called NP-inermediate = NP (NP-complete P) Ladner s Theorem: P = NP if and only if NP-inermediate is empty. Technology cannot make the world a better place, people can. Thank you!