**Building Blocks for Theoretical Computer Science**

by Margaret M. Fleck

**Publisher**: University of Illinois, Urbana-Champaign 2013**Number of pages**: 271

**Description**:

This book teaches you how to read and write mathematical proofs. It provides a survey of basic mathematical objects, notation, and techniques which will be useful in later computer science courses. And, finally, it gives a brief introduction to some key topics in theoretical computer science: algorithm analysis and complexity, automata theory, and computability.

Download or read it online for free here:

**Download link**

(1.1MB, PDF)

## Similar books

**A Machine Made this Book: Ten Sketches of Computer Science**

by

**John Whitington**-

**Coherent Press**

Using examples from the publishing industry, Whitington introduces the fascinating discipline of Computer Science to the uninitiated. Chapters: Putting Marks on Paper; Letter Forms; Storing Words; Looking and Finding; Typing it In; Saving Space; etc.

(

**1590**views)

**Computational and Inferential Thinking: The Foundations of Data Science**

by

**Ani Adhikari, John DeNero**-

**GitBook**

Data Science is about drawing useful conclusions from large and diverse data sets through exploration, prediction, and inference. Our primary tools for exploration are visualizations and descriptive statistics, for prediction are machine learning ...

(

**2842**views)

**Mathematical Foundations of Computer Science**

by

**Susan Rodger**-

**Duke University**

These lecture notes present an introduction to theoretical computer science including studies of abstract machines, the language hierarchy from regular languages to recursively enumerable languages, noncomputability and complexity theory.

(

**8308**views)

**Computer Science: Abstraction to Implementation**

by

**Robert M. Keller**-

**Harvey Mudd College**

This book is intended for a second course in computer science, one emphasizing principles wherever it seems possible. It is not limited to programming, it attempts to use various programming models to explicate principles of computational systems.

(

**16230**views)