Theory of Computation

  1. Computational Complexity Theory
    1. Complexity Measures
      1. Time Complexity
        1. Worst-case Analysis
          1. Average-case Analysis
            1. Best-case Analysis
              1. Asymptotic Notation
              2. Space Complexity
                1. Work Tape Model
                  1. Space Constructible Functions
                    1. Space Reuse
                    2. Other Measures
                      1. Circuit Complexity
                        1. Communication Complexity
                          1. Query Complexity
                        2. Complexity Classes
                          1. Time-Based Classes
                            1. P (Polynomial Time)
                              1. EXPTIME (Exponential Time)
                                1. DTIME Hierarchy
                                2. Space-Based Classes
                                  1. L (Logarithmic Space)
                                    1. PSPACE (Polynomial Space)
                                      1. EXPSPACE (Exponential Space)
                                      2. Nondeterministic Classes
                                        1. NP (Nondeterministic Polynomial)
                                          1. NL (Nondeterministic Log Space)
                                            1. NEXPTIME
                                            2. Relationships Between Classes
                                              1. Inclusion Relationships
                                                1. Separation Results
                                                  1. Open Problems
                                                2. The P vs NP Problem
                                                  1. Problem Statement
                                                    1. Significance
                                                      1. Approaches to Resolution
                                                        1. Practical Implications
                                                        2. NP-Completeness Theory
                                                          1. Polynomial-Time Reductions
                                                            1. Karp Reductions
                                                              1. Cook Reductions
                                                                1. Reduction Properties
                                                                2. NP-Hardness
                                                                  1. Hardness Proofs
                                                                  2. NP-Completeness
                                                                    1. Complete Problems
                                                                    2. Cook-Levin Theorem
                                                                      1. Boolean Satisfiability
                                                                        1. Proof Outline
                                                                          1. Circuit Satisfiability
                                                                          2. Classic NP-Complete Problems
                                                                            1. 3-SAT
                                                                              1. Clique
                                                                                1. Vertex Cover
                                                                                  1. Hamiltonian Path
                                                                                    1. Traveling Salesman
                                                                                      1. Subset Sum
                                                                                        1. Knapsack
                                                                                          1. Graph Coloring
                                                                                          2. Reduction Techniques
                                                                                            1. Gadget Construction
                                                                                              1. Local Replacement
                                                                                                1. Component Design
                                                                                              2. Space Complexity
                                                                                                1. PSPACE-Completeness
                                                                                                  1. Quantified Boolean Formulas
                                                                                                    1. Game Problems
                                                                                                      1. Planning Problems
                                                                                                      2. Savitch's Theorem
                                                                                                        1. PSPACE = NPSPACE
                                                                                                          1. Proof Technique
                                                                                                          2. Space Hierarchy Theorems
                                                                                                            1. Deterministic Space Hierarchy
                                                                                                              1. Nondeterministic Space Hierarchy
                                                                                                            2. Advanced Complexity Classes
                                                                                                              1. Polynomial Hierarchy
                                                                                                                1. Σₚᵏ and Πₚᵏ Classes
                                                                                                                  1. Oracle Machines
                                                                                                                    1. Collapse Conditions
                                                                                                                    2. Probabilistic Classes
                                                                                                                      1. RP (Randomized Polynomial)
                                                                                                                        1. BPP (Bounded-error Probabilistic Polynomial)
                                                                                                                          1. ZPP (Zero-error Probabilistic Polynomial)
                                                                                                                          2. Interactive Proof Systems
                                                                                                                            1. IP (Interactive Polynomial)
                                                                                                                              1. AM and MA Classes
                                                                                                                                1. Zero-Knowledge Proofs
                                                                                                                                2. Circuit Complexity
                                                                                                                                  1. Boolean Circuits
                                                                                                                                    1. Uniform vs Non-uniform
                                                                                                                                      1. NC (Nick's Class)
                                                                                                                                        1. AC (Alternating Circuits)
                                                                                                                                      2. Approximation and Parameterized Complexity
                                                                                                                                        1. Approximation Algorithms
                                                                                                                                          1. Approximation Ratios
                                                                                                                                            1. PTAS and FPTAS
                                                                                                                                              1. Inapproximability Results
                                                                                                                                              2. Parameterized Complexity
                                                                                                                                                1. Fixed-Parameter Tractability
                                                                                                                                                  1. W-Hierarchy
                                                                                                                                                    1. Kernelization