This document provides an overview of the theory of computation. It discusses the following key points:
1. Computation involves executing programs on computers to perform input-output transformations. Programs are algorithms expressed in programming languages.
2. The theory of computation classifies problems by their computability and complexity. It studies models of computation like Turing machines.
3. The theory has three main components: computability theory, complexity theory, and automata theory/formal languages.
4. Proofs in the theory use techniques like mathematical induction to show properties are true for all cases.