For the course Functional Specification of Algorithms (http://homepages.cwi.nl/~jve/courses/13/fsa/)