complexity - 1 Complexity of Algorithms Lecture Notes...

Info icon This preview shows pages 1–6. Sign up to view the full content.

View Full Document Right Arrow Icon
1 Complexity of Algorithms Lecture Notes, Spring 1999 Peter G´acs Boston University and L´aszl´ o Lov´asz Yale University
Image of page 1

Info icon This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
2
Image of page 2
Contents 1 Introduction and Preliminaries 1 1.1 The subject of complexity theory . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Some notation and definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2 Models of Computation 5 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.2 Finite automata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.3 The Turing machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3.1 The notion of a Turing machine . . . . . . . . . . . . . . . . . . . . . . 10 2.3.2 Universal Turing machines . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.3.3 More tapes versus one tape . . . . . . . . . . . . . . . . . . . . . . . . 17 2.4 The Random Access Machine . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.5 Boolean functions and Boolean circuits . . . . . . . . . . . . . . . . . . . . . . 27 3 Algorithmic decidability 35 3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 3.2 Recursive and recursively enumerable languages . . . . . . . . . . . . . . . . . 36 3.3 Other undecidable problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.4 Computability in logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.4.1 G¨odel’s incompleteness theorem . . . . . . . . . . . . . . . . . . . . . . 47 3.4.2 First-order logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 3.4.3 A simple theory of arithmetic; Church’s Theorem . . . . . . . . . . . . 52 4 Computation with resource bounds 57 4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 4.2 Time and space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 4.3 Polynomial time I: Algorithms in arithmetic . . . . . . . . . . . . . . . . . . . 60 4.3.1 Arithmetic operations . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 3
Image of page 3

Info icon This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
4 CONTENTS 4.3.2 Gaussian elimination . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 4.3.3 *Discrete square roots . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 4.4 Polynomial time II: Graph algorithms . . . . . . . . . . . . . . . . . . . . . . 68 4.4.1 How is a graph given? . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 4.4.2 Searching a graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 4.4.3 Maximum bipartite matching and alternating paths . . . . . . . . . . 70 4.5 Polynomial space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 5 General theorems on space and time complexity 77 5.1 Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 5.2 Time-constructible and well-computable functions . . . . . . . . . . . . . . . 80 5.3 Space versus time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 6 Non-deterministic algorithms 87 6.1 Non-deterministic Turing machines . . . . . . . . . . . . . . . . . . . . . . . . 87 6.2 Witnesses and the complexity of non-deterministic algorithms . . . . . . . . . 90 6.3 General results on nondeterministic complexity classes . . . . . . . . . . . . . 92 6.4 Examples of languages in NP . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 6.4.1 Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 6.4.2 Arithmetic and algebra . . . . . . . . . . . . . . . . . . . . . . . . . . 98 6.4.3 Systems of linear inequalities . . . . . . . . . . . . . . . . . . . . . . . 101 6.5 NP-completeness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 6.6 Further NP-complete problems . . . . . . . . . . . . . . . . . . . . . . . . . . 109 6.6.1 NP-complete problems for graphs . . . . . . . . . . . . . . . . . . . . . 109 6.6.2 NP-complete problems in arithmetic and algebra . . . . . . . . . . . . 115 7 Randomized algorithms 121 7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 7.2 Verifying a polynomial identity . . . . . . . . . . . . . . . . . . . . . . . . . . 121 7.3 Prime testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 7.4 Randomized complexity classes . . . . . . . . . . . . . . . . . . . . . . . . . . 131 8 Information complexity and the notion of randomness 137 8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 8.2 Measuring information complexity . . . . . . . . . . . . . . . . . . . . . . . . 138 8.3 *Self-delimiting information complexity . . . . . . . . . . . . . . . . . . . . . 143 8.4 The notion of a random sequence . . . . . . . . . . . . . . . . . . . . . . . . . 147 8.5 Kolmogorov complexity and data compression . . . . . . . . . . . . . . . . . . 149
Image of page 4
CONTENTS 5 9 Pseudo-random numbers 155 9.1 Classical methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 9.2 The notion of a pseudorandom number generator . . . . . . . . . . . . . . . . 157 9.3 One-way functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 9.4 Random number generators and one-way functions . . . . . . . . . . . . . . . 162 10 An application of complexity: cryptography 167 10.1 A classical problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 10.2 A simple complexity-theoretic model . . . . . . . . . . . . . . . . . . . . . . . 168 10.3 Public-key cryptography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 10.4 The Rivest-Shamir-Adleman code . . . . . . . . . . . . . . . . . . . . . . . . . 171 11 Parallel algorithms 175 11.1 Parallel random access machines . . . . . . . . . . . . . . . . . . . . . . . . . 175 11.2 The class NC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 12 Decision trees 185 12.1 Algorithms using decision trees . . . . . . . . . . . . . . . . . . . . . . . . . . 185 12.2 The notion of decision trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 12.3 Nondeterministic decision trees . . . . . . . . . . . . . . . . . . . . . . . . . . 191 12.4 Lower bounds on the depth of decision trees . . . . . . . . . . . . . . . . . . . 194 12.5 Algebraic decision trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 13 Communication complexity 203 13.1 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 13.2 Communication matrix and protocol-tree . . . . . . . . . . . . . . . . . . . . 206 13.3 Non-deterministic communication complexity . . . . . . . . . . . . . . . . . . 210 13.4 Randomized protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 14 Interactive proofs 217 14.1 How to save the last move in chess? . . . . . . . . . . . . . . . . . . . . . . . 217 14.2 How to check a password — without knowing it?
Image of page 5

Info icon This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Image of page 6
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern