Quotienting the delay monad by weak bisimilarity

Chapman, James and Uustalu, Tarmo and Veltri, Niccolò; (2015) Quotienting the delay monad by weak bisimilarity. In: Theoretical Aspects of Computing - ICTAC 2015. Lecture Notes in Computer Science, 9399 . Springer, Switzerland, pp. 110-125. ISBN 978-3-319-25149-3 (https://doi.org/10.1007/978-3-319-25150-9)

[thumbnail of Chapman-Uustalu-Veltri-2015-Quotienting-the-delay-monad-by-weak]
Text. Filename: Chapman_Uustalu_Veltri_2015_Quotienting_the_delay_monad_by_weak.pdf
Accepted Author Manuscript

Download (398kB)| Preview


The delay datatype was introduced by Capretta as a means to deal with partial functions (as in computability theory) in Martin-Löf type theory. It is a monad and it constitutes a constructive alternative to the maybe monad. It is often desirable to consider two delayed computations equal, if they terminate with equal values, whenever one of them terminates. The equivalence relation underlying this identification is called weak bisimilarity. In type theory, one commonly replaces quotients with setoids. In this approach, the delay monad quotiented by weak bisimilarity is still a monad. In this paper, we consider Hofmann's alternative approach of extending type theory with inductive-like quotient types. In this setting, it is difficult to define the intended monad multiplication for the quotiented datatype. We give a solution where we postulate some principles, crucially proposition extensionality and the (semi-classical) axiom of countable choice. We have fully formalized our results in the Agda dependently typed programming language.