Union College
Fall 2007

This course is an introduction to the theory of computing. We will look at

  • formal languages and automata (Are there ways of formulating the notion of computation formally? How can we compare different models of computation?)
  • computability (Are there problems that cannot be solved algorithmically? What do they look like? How can we find out whether a problem can or cannot be solved?)
  • complexity (How hard is it to solve a given problem? I.e. how long does it take, how much memory is needed? Can we group problems according to how hard they are?)

© 2007 Kristina Striegnitz