# CSE3813—Introduction to Formal Languages

An abacus (left), Babbage's Difference Engine
(middle), and the Pascaline (right).
Images courtesy Information
Technology History.

- Instructor
- T.J. Jankun-Kelly

Theory of computation provides formalized models of computation to allow
formal reasoning about computer science problems. The goals of this course
are twofold: First, it introduces basic computation models and their basic
properties; second, it teaches the mathematical techniques necessary to
prove more advanced properties of those models. Upon completion of this
course, a student will be able to express computer science problems as
mathematical statements; and will also be able to form proofs to
investigate those problems. Students will be able to know what can be
computed and how to distinguish hard

computational problems from
easy

ones.