be able to give denotational semantics to simple programming languages
with simple types;

be able to apply denotational semantics; in particular, to understand the
use of least fixed points to model recursive programs and be able to
reason about least fixed points and simple recursive programs using
fixed point induction;

understand the issues concerning the relation between denotational and
operational semantics, adequacy and full abstraction, especially with
respect to the language PCF.