Recursive Definitions of Monadic Functions

Alexander Krauss
(Technische Universität München)

Using standard domain-theoretic fixed-points, we present an approach for defining recursive functions that are formulated in monadic style. The method works both in the simple option monad and the state-exception monad of Isabelle/HOL's imperative programming extension, which results in a convenient definition principle for imperative programs, which were previously hard to define.

For such monadic functions, the recursion equation can always be derived without preconditions, even if the function is partial. The construction is easy to automate, and convenient induction principles can be derived automatically.

Invited Presentation in Ana Bove, Ekaterina Komendantskaya and Milad Niqui: Proceedings Workshop on Partiality and Recursion in Interactive Theorem Provers (PAR 2010), Edinburgh, UK, 15th July 2010, Electronic Proceedings in Theoretical Computer Science 43, pp. 1–13.
Published: 21st December 2010.

ArXived at: http://dx.doi.org/10.4204/EPTCS.43.1 bibtex PDF

Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org