Monads Need Not Be Endofunctors

  • Thorsten Altenkirch
  • James Chapman
  • Tarmo Uustalu
Conference paper

DOI: 10.1007/978-3-642-12032-9_21

Part of the Lecture Notes in Computer Science book series (LNCS, volume 6014)
Cite this paper as:
Altenkirch T., Chapman J., Uustalu T. (2010) Monads Need Not Be Endofunctors. In: Ong L. (eds) Foundations of Software Science and Computational Structures. FoSSaCS 2010. Lecture Notes in Computer Science, vol 6014. Springer, Berlin, Heidelberg

Abstract

We introduce a generalisation of monads, called relative monads, allowing for underlying functors between different categories. Examples include finite-dimensional vector spaces, untyped and typed λ-calculus syntax and indexed containers. We show that the Kleisli and Eilenberg-Moore constructions carry over to relative monads and are related to relative adjunctions. Under reasonable assumptions, relative monads are monoids in the functor category concerned and extend to monads, giving rise to a coreflection between monads and relative monads. Arrows are also an instance of relative monads.

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Thorsten Altenkirch
    • 1
  • James Chapman
    • 2
  • Tarmo Uustalu
    • 2
  1. 1.School of Computer ScienceUniversity of Nottingham 
  2. 2.Institute of CyberneticsTallinn University of Technology 

Personalised recommendations