Related papers: Relating Idioms, Arrows and Monads from Monoidal A…
We develop the theory of relative monads and relative adjunctions in a virtual equipment, extending the theory of monads and adjunctions in a 2-category. The theory of relative comonads and relative coadjunctions follows by duality. While…
Monads in category theory are algebraic structures that can be used to model computational effects in programming languages. We show how the notion of "centre", and more generally "centrality", i.e. the property for an effect to commute…
In this work we define formal grammars in terms of free monoidal categories, along with a functor from the category of formal grammars to the category of automata. Generalising from the Booleans to arbitrary semirings, we extend our…
Monads provide a simple and concise interface to user-defined computational effects in functional programming languages. This enables equational reasoning about effects, abstraction over monadic interfaces and the development of monad…
Idioms are unlike most phrases in two important ways. First, the words in an idiom have non-canonical meanings. Second, the non-canonical meanings of words in an idiom are contingent on the presence of other words in the idiom. Linguistic…
The principle behind algebraic language theory for various kinds of structures, such as words or trees, is to use a compositional function from the structures into a finite set. To talk about compositionality, one needs some way of…
We develop a theory of adjunctions in semigroup categories, i.e. monoidal categories without a unit object. We show that a rigid semigroup category is promonoidal, and thus one can naturally adjoin a unit object to it. This extends the…
In this paper, a monad-based denotational model is introduced and shown adequate for the Proto-Quipper family of calculi, themselves being idealized versions of the Quipper programming language. The use of a monadic approach allows us to…
Ideals are used to define homological functors for additive categories. In abelian categories the ideals corresponding to the usual universal objects are principal, and the construction reduces, in a choice dependent way, to homology…
This is a short introduction to categories with some emphasis on coalgebras. We start from introducing basic notions (categories, functors, natural transformations), move to Kleisli tripels and monads, with a short discussion of monads in…
Monads are extensively used nowadays to abstractly model a wide range of computational effects such as nondeterminism, statefulness, and exceptions. It turns out that equipping a monad with a (uniform) iteration operator satisfying a set of…
Lenses are a well-established structure for modelling bidirectional transformations, such as the interactions between a database and a view of it. Lenses may be symmetric or asymmetric, and may be composed, forming the morphisms of a…
Actions of monoidal categories on categories, also known as actegories, have been familiar to category theorists for a long time, and yet a comprehensive overview of this topic seems to be missing from the literature. Recently, actegories…
We propose another interpretation of well-known derivatives computations from regular expressions, due to Brzozowski, Antimirov or Lombardy and Sakarovitch, in order to abstract the underlying data structures (e.g. sets or linear…
We consider the equivalence of Lawvere theories and finitary monads on Set from the perspective of Endf(Set)-enriched category theory, where Endf(Set) is the category of finitary endofunctors of Set. We identify finitary monads with…
Monoidal computer is a categorical model of intensional computation, where many different programs correspond to the same input-output behavior. The upshot of yet another model of computation is that a categorical formalism should provide a…
Reversible computing models settings in which all processes can be reversed. Applications include low-power computing, quantum computing, and robotics. It is unclear how to represent side-effects in this setting, because conventional…
Our work over the past years shows that not only the collection of (for instance) all topological spaces gives rise to a category, but also each topological space can be seen individually as a category by interpreting the convergence…
In the study of computational effects, it is important to consider the notion of computational effects with parameters. The need of such a notion arises when, for example, statically estimating the range of effects caused by a program, or…
This paper describes a categorical interpretation of the Wolfram Language and introduces a simple implementation of monadic types and the "do" notation. The monadic style of programming combined with the many built in functions of the…