Computability, Complexity, and Languages
Fundamentals of Theoretical Computer Science
This book is a rigorous but readable introduction to some of the central topics in theoretical computer science. The main subjects are computability theory, formal languages, logic and automated deduction, computational complexity (including NP-completeness), and programming language semantics.
