Automata and formal languages: an introduction

0. Mathematical Preliminaries. 1. Alphabets and Languages. 2. Regular Languages. 3. Context Free Languages. 4. Turing Machines. 5. Turing Machines and Languages. 6. Decidability. 7. An Introduction to Computational Complexity. Bibliography.