# MCS 441 Theory of Computation

## Study Guide

Midterm 1 will be Friday October 15.
#### Chapter 1

You should be familiar with the following concepts
- Deterministic and Nondeterministic Finite Automata
- Regular Languages and their closure properties
- Regular Expressions
- Pumping Lemma

You should be able to
- Construct DFA and NFA to recognize languages
- Convert NFA to DFA recognizing same language
- Given a DFA/NFA M find a regular expression R such that L(R)=L(M)
- Given a regular expression find an NFA M with L(R)=L(M)
- Use the pumping lemma to prove that a language is not regular

#### Chapter 2

You should be familiar with the following concepts
- Context free languages, contex free grammars, derivations, derivation trees
- Pumping Lemma for CFL
- Push down automata

You should be able to
- Construct CFGs to describe languages
- Figure out what language is described by a CFG
- Use the pumping lemma to prove a language is not context free
- Construct PDA to recognize languages
- Given a CFG construct a PDA that recognizes the same language.(
*This
will not be included on Midterm 1.*)
- Given a PDA find a CFG describing the same language (
*This
will not be included on Midterm 1.*)