Monads need not be endofunctors
We introduce a generalization of monads, called relative monads, allowing for underlying functors between different categories. Examples include finite-dimensional vector spaces, untyped and typed lambda-calculus syntax and indexed containers. We show that the Kleisli and Eilenberg-Moore constructio...
Saved in:
| Published in: | Logical methods in computer science Vol. 11, Issue 1 |
|---|---|
| Main Authors: | , , |
| Format: | Journal Article |
| Language: | English |
| Published: |
Logical Methods in Computer Science e.V
06.03.2015
|
| Subjects: | |
| ISSN: | 1860-5974, 1860-5974 |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Summary: | We introduce a generalization of monads, called relative monads, allowing for
underlying functors between different categories. Examples include
finite-dimensional vector spaces, untyped and typed lambda-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 relative
monads and monads. Arrows are also an instance of relative monads. |
|---|---|
| ISSN: | 1860-5974 1860-5974 |
| DOI: | 10.2168/LMCS-11(1:3)2015 |