Computability, Complexity, and Languages

Fundamentals of Theoretical Computer Science


  • Martin Davis, Courant Institute of Mathematical Sciences of New York University, New York, U.S.A.
  • Ron Sigal, Consultant, New Haven, Connecticut, U.S.A.
  • Elaine Weyuker, AT&T Labs Research, Florham Park, New Jersey, U.S.A.

This introductory text covers the key areas of computer science, including recursive function theory, formal languages, and automata. It assumes a minimal background in formal mathematics. The book is divided into five parts: Computability, Grammars and Automata, Logic, Complexity, and Unsolvability.
View full description


Junior, senior, and graduate level students in Computability, Complexity, and Languages or Introduction to Theoretical Computer Science courses.


Book information

  • Published: February 1994
  • ISBN: 978-0-12-206382-4


"If there is a single book on the theory of computing that should be in every college library collection, this is it. Although written as a text for an advanced undergraduate course in theoretical computer science, the book may serve as an introductory resource, or the foundation for independent study, in many areas of theoretical computing: grammars, automata theory, computability, complexity theory, and unsolvability. The beauty of this book is that the breadth of coverage is complemented with extraordinary depth." —CHOICE

"Theoretical computer science is often viewed as a collection of disparate topics, including computability theory, formal language theory, complexity theory, logic, and so on. This well-written book attempts to unify the subject by introducing each of these topics in turn, then showing how they relate to each other... This is an excellent book that succeeds in tying together a number of areas in theoretical computer science." —COMPUTING REVIEWS

Table of Contents

Preliminaries. Computability: Programs and Computable Functions. Primitive Recursive Functions. A Universal Program. Calculations on Strings. Turing Machines. Processes and Grammars. Classifying Unsolvable Problems. Grammars and Automata: Regular Languages. Context-Free Languages. Context-Sensitive Languages. Logic: Propositional Calculus. Quantification Theory. Complexity: Abstract Complexity. Polynomial–Time Computability. Semantics: Approximation Orderings. Denotational Semantics of Recursion Equations. Operational Semantics of Recursion Equations. Suggestions for Further Reading. Subject Index.