Introduction to Theory of Computation

A free textbook for an undergraduate course on the Theory of Computation at Carleton University.

**Tag(s):**
Theory of Computation

**Publication date**: 11 Apr 2016

**ISBN-10**:
n/a

**ISBN-13**:
n/a

**Paperback**:
252 pages

**Views**: 14,212

**Type**: N/A

**Publisher**:
n/a

**License**:
Creative Commons Attribution-ShareAlike 4.0 International

**Post time**: 29 Apr 2016 12:00:00

Introduction to Theory of Computation

A free textbook for an undergraduate course on the Theory of Computation at Carleton University.

You are free to:

Share — copy and redistribute the material in any medium or format

Adapt — remix, transform, and build upon the material for any purpose, even commercially.

The licensor cannot revoke these freedoms as long as you follow the license terms.

Click**here** to read the full license.

Share — copy and redistribute the material in any medium or format

Adapt — remix, transform, and build upon the material for any purpose, even commercially.

The licensor cannot revoke these freedoms as long as you follow the license terms.

Click

From the Preface:

Anil Maheshwari and Michiel Smid wrote:This is a free textbook for an undergraduate course on the Theory of Computation, which we have been teaching at Carleton University since 2002. Until the 2011/2012 academic year, this course was offered as a second-year course (COMP 2805) and was compulsory for all Computer Science students. Starting with the 2012/2013 academic year, the course has been downgraded to a third-year optional course (COMP 3803).

We have been developing this book since we started teaching this course. Currently, we cover most of the material from Chapters 2–5 during a 12-week term with three hours of classes per week.

Tweet

About The Author(s)

Anil Maheshwari is a Professor in the School of Computer Science at Carleton University. His main interest is in all sorts of algorithmic problems in computational geometry and graph theory. He is interested in sequential, parallel, distributed, multi-core, external memory, big and small data algorithms for problems which fit within the framework of design and analysis of algorithms.

Michiel Smid is a Professor in the School of Computer Science at Carleton University. His research interests include Algorithms, Applications of Computational Geometry in Manufacturing, Computational Geometry, Data Structures, Discrete Mathematics, Geometric Networks, Graph Theory, and Theory of Computing.

Book Categories

Computer Science
Introduction to Computer Science
Introduction to Computer Programming
Algorithms and Data Structures
Artificial Intelligence
Computer Vision
Machine Learning
Neural Networks
Game Development and Multimedia
Data Communication and Networks
Coding Theory
Computer Security
Information Security
Cryptography
Information Theory
Computer Organization and Architecture
Operating Systems
Image Processing
Parallel Computing
Concurrent Programming
Relational Database
Document-oriented Database
Data Mining
Big Data
Data Science
Digital Libraries
Compiler Design and Construction
Functional Programming
Logic Programming
Object Oriented Programming
Formal Methods
Software Engineering
Agile Software Development
Information Systems
Geographic Information System (GIS)

Mathematics
Mathematics
Algebra
Abstract Algebra
Linear Algebra
Number Theory
Numerical Methods
Precalculus
Calculus
Differential Equations
Category Theory
Proofs
Discrete Mathematics
Theory of Computation
Graph Theory
Real Analysis
Complex Analysis
Probability
Statistics
Game Theory
Queueing Theory
Operations Research
Computer Aided Mathematics

Supporting Fields
Web Design and Development
Mobile App Design and Development
System Administration
Cloud Computing
Electric Circuits
Embedded System
Signal Processing
Integration and Automation
Network Science
Project Management

Operating System
Programming/Scripting
Ada
Assembly
C / C++
Common Lisp
Forth
Java
JavaScript
Lua
Rexx
Microsoft .NET
Perl
PHP
R
Python
Rebol
Ruby
Scheme
Tcl/Tk

Miscellaneous
Sponsors