O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Theory of Computational Complexity, 2nd Edition

Book Description

Praise for the First Edition

"...complete, up-to-date coverage of computational complexity theory...the book promises to become the standard reference on computational complexity." -Zentralblatt MATH

A thorough revision based on advances in the field of computational complexity and readers' feedback, the Second Edition of Theory of Computational Complexity presents updates to the principles and applications essential to understanding modern computational complexity theory. The new edition continues to serve as a comprehensive resource on the use of software and computational approaches for solving algorithmic problems and the related difficulties that can be encountered.

Maintaining extensive and detailed coverage, Theory of Computational Complexity, Second Edition, examines the theory and methods behind complexity theory, such as computational models, decision tree complexity, circuit complexity, and probabilistic complexity. The Second Edition also features recent developments on areas such as NP-completeness theory, as well as:

  • A new combinatorial proof of the PCP theorem based on the notion of expander graphs, a research area in the field of computer science

  • Additional exercises at varying levels of difficulty to further test comprehension of the presented material

  • End-of-chapter literature reviews that summarize each topic and offer additional sources for further study

  • Theory of Computational Complexity, Second Edition, is an excellent textbook for courses on computational theory and complexity at the graduate level. The book is also a useful reference for practitioners in the fields of computer science, engineering, and mathematics who utilize state-of-the-art software and computational methods to conduct research.

    Table of Contents

    1. Cover
      1. Series
    2. Title Page
      1. Copyright
    3. Preface
    4. Notes on the Second Edition
    5. Part I: Uniform Complexity
      1. Chapter 1: Models of Computation and Complexity Classes
        1. 1.1 Strings, Coding, and Boolean Functions
        2. 1.2 Deterministic Turing Machines
        3. 1.3 Nondeterministic Turing Machines
        4. 1.4 Complexity Classes
        5. 1.5 Universal Turing Machine
        6. 1.6 Diagonalization
        7. 1.7 Simulation
        8. Exercises
        9. Historical Notes
      2. Chapter 2: NP-Completeness
        1. 2.1 NP
        2. 2.2 Cook's Theorem
        3. 2.3 More NP-Complete Problems
        4. 2.4 Polynomial-Time Turing Reducibility
        5. 2.5 NP-Complete Optimization Problems
        6. Exercises
        7. Historical Notes
      3. Chapter 3: The Polynomial-Time Hierarchy and Polynomial Space
        1. 3.1 Nondeterministic Oracle Turing Machines
        2. 3.2 Polynomial-Time Hierarchy
        3. 3.3 Complete Problems in PH
        4. 3.4 Alternating Turing Machines
        5. 3.5 PSPACE-Complete Problems
        6. 3.6 EXP-Complete Problems
        7. Exercises
        8. Historical Notes
      4. Chapter 4: Structure of NP
        1. 4.1 Incomplete Problems in NP
        2. 4.2 One-Way Functions and Cryptography
        3. 4.3 Relativization
        4. 4.4 Unrelativizable Proof Techniques
        5. 4.5 Independence Results
        6. 4.6 Positive Relativization
        7. 4.7 Random Oracles
        8. 4.8 Structure of Relativized NP
        9. Exercises
        10. Historical Notes
    6. Part II: Nonuniform Complexity
      1. Chapter 5: Decision Trees
        1. 5.1 Graphs and Decision Trees
        2. 5.2 Examples
        3. 5.3 Algebraic Criterion
        4. 5.4 Monotone Graph Properties
        5. 5.5 Topological Criterion
        6. 5.6 Applications of the Fixed Point Theorems
        7. 5.7 Applications of Permutation Groups
        8. 5.8 Randomized Decision Trees2
        9. 5.9 Branching Programs
        10. Exercises
        11. Historical Notes
      2. Chapter 6: Circuit Complexity
        1. 6.1 Boolean Circuits
        2. 6.2 Polynomial-Size Circuits
        3. 6.3 Monotone Circuits
        4. 6.4 Circuits with Modulo Gates
        5. 6.5 NC
        6. 6.6 Parity Function
        7. 6.7 P-Completeness
        8. 6.8 Random Circuits and RNC
        9. Exercises
        10. Historical Notes
      3. Chapter 7 Polynomial-Time Isomorphism
        1. 7.1 Polynomial-Time Isomorphism
        2. 7.2 Paddability
        3. 7.3 Density of NP-Complete Sets
        4. 7.4 Density of EXP-Complete Sets
        5. 7.5 One-Way Functions and Isomorphism in EXP
        6. 7.6 Density of P-Complete Sets
        7. Exercises
        8. Historical Notes
    7. Part III: Probabilistic Complexity
      1. Chapter 8: Probabilistic Machines and Complexity Classes
        1. 8.1 Randomized Algorithms
        2. 8.2 Probabilistic Turing Machines
        3. 8.3 Time Complexity of Probabilistic Turing Machines
        4. 8.4 Probabilistic Machines with Bounded Errors
        5. 8.5 BPP and P
        6. 8.6 BPP and NP
        7. 8.7 BPP and the Polynomial-Time Hierarchy
        8. 8.8 Relativized Probabilistic Complexity Classes
        9. Exercises
        10. Historical Notes
      2. Chapter 9: Complexity of Counting
        1. 9.1 Counting Class
        2. 9.2 -Complete Problems
        3. 9.3 and the Polynomial-Time Hierarchy
        4. 9.4 and the Polynomial-Time Hierarchy
        5. 9.5 Circuit Complexity and Relativized and
        6. 9.6 Relativized Polynomial-Time Hierarchy
        7. Exercises
        8. Historical Notes
      3. Chapter 10: Interactive Proof Systems
        1. 10.1 Examples and Definitions
        2. 10.2 Arthur–Merlin Proof Systems
        3. 10.3 AM Hierarchy Versus Polynomial-Time Hierarchy
        4. 10.4 IP Versus AM
        5. 10.5 IP Versus PSPACE
        6. Exercises
        7. Historical Notes
      4. Chapter 11: Probabilistically Checkable Proofs and NP-Hard Optimization Problems
        1. 11.1 Probabilistically Checkable Proofs
        2. 11.2 PCP Characterization of NP
        3. 11.3 Probabilistic Checking and Inapproximability
        4. 11.4 More NP-Hard Approximation Problems
        5. Exercises
        6. Historical Notes
    8. References
      1. References
        1. Index
        2. Series
    9. End User License Agreement