# EECI 2012: Automata Theory

This lecture gives an introduction to some concepts and tools in computer science that are used in the remainder of the course. We start with finite transition systems as a mathematical model to describe behavior of systems with finite, discrete states. We use linear-time properties serve as the specification language (e.g., to specify safety or liveness properties) and we discuss the preliminaries that lead to model checking, a commonly used, powerful verification tool.

## Lecture Materials

- Lecture slides: Automata Theory (presentation and notation follow that in "Principles of Model Checking" chapters 2.1, 2.21, 3.2-3.5, and 4.1-4.3 by Baier and Katoen.)

## Further Reading and Additional Information

Principles of Model Checking, C. Baier and J.-P. Katoen, The MIT Press, 2008. A detailed reference on model checking. Early chapters provide an exposition to automata theory. Slides for this lecture follow this reference.

Introduction to the Theory of Computation, M. Sipser, PWS Publishing Company, 1997. This is a textbook on theory of computation covering preliminaries in automata theory.

CDS 270: Verification in Controls: The second half of the course taught in Fall 2009 at Caltech also covered the material in this lecture. There are brief lecture notes and exercises.