CS4026: Formal Models of Computation
This course introduces three different frameworks which provide
precise, robust and generic definitions for the notion of
computation:
 The functional model
 The logic model
 The imperative model
The definitions are interestingly different and
shed light on different aspects of computation. Each model,
comes with an abstract mathematical basis (the lambda calculus,
predicate logic and the theory of computation/complexity respectively).
Each model is also the basis for practical programming languages, and
the course provides an introduction to Haskell and Prolog as example
languages based on the first two models.
Course Database Entry
Lecturer
Kees van Deemter
