**Introduction to Computational Complexity**

by Martin Tompa

1991**Number of pages**: 85

**Description**:

These are the lecture notes from a graduate course on Computational Complexity taught at the University of Washington. This text adopts some approaches that will appear unconventional. For example, alternating Turing machines are introduced very early, and deterministic and nondeterministic Turing machines treated as special cases. This simplifies many proofs, such as that of Savitch's Theorem, the P-completeness of the circuit value problem, the NP-completeness of the satisfiability problem, and the PSPACE-completeness of the quantified Boolean formula problem.

Download or read it online for free here:

**Download link**

(1MB, PDF)

## Similar books

**Measure-Preserving Systems**

by

**Karl Petersen**-

**University of North Carolina**

These notes provide an introduction to the subject of measure-preserving dynamical systems, discussing the dynamical viewpoint; how and from where measure-preserving systems arise; the construction of measures and invariant measures; etc.

(

**7106**views)

**Communication Complexity (for Algorithm Designers)**

by

**Tim Roughgarden**-

**Stanford University**

The two biggest goals of the course are: 1. Learn several canonical problems that have proved the most useful for proving lower bounds; 2. Learn how to reduce lower bounds for fundamental algorithmic problems to communication complexity lower bounds.

(

**2043**views)

**Think Complexity: Complexity Science and Computational Modeling**

by

**Allen B. Downey**-

**Green Tea Press**

This book is about complexity science, data structures and algorithms, intermediate programming in Python, and the philosophy of science. The book focuses on discrete models, which include graphs, cellular automata, and agent-based models.

(

**5673**views)

**Computability and Complexity from a Programming Perspective**

by

**Neil D. Jones**-

**The MIT Press**

The author builds a bridge between computability and complexity theory and other areas of computer science. Jones uses concepts familiar from programming languages to make computability and complexity more accessible to computer scientists.

(

**7732**views)