Containers, Comonads and Distributive Laws
- đ¤ Speaker: Danel Ahman
- đ Date & Time: Monday 25 June 2012, 12:45 - 14:00
- đ Venue: FW26
Abstract
Joint work with James Chapman and Tarmo Uustalu from Institute of Cybernetics, Tallinn
Abbott, Altenkirch, Ghani and others have taught us that many parameterized datatypes can be usefully analyzed via container representations in terms of shapes and positions.
Our work builds on the observation that datatypes often carry additional structure that containers alone do not account for. We introduce directed containers to capture the common situation where every position in a datastructure determines another datastructure, informally, the sub-datastructure rooted by that position. Some natural examples are non-empty lists and node-labelled trees, and datastructures with a designated position (zippers).
While containers denote set functors via a fully-faithful functor, directed containers interpret fully-faithfully into comonads. But more is true: every comonad whose underlying functor is a container is represented by a directed container. In fact, directed containers are the same as containers that are comonads.
Similarly to comonads, directed containers do not generally compose. However, a sufficient condition for two comonads to compose is the existence of a distributive law between them. We develop a corresponding theory for directed containers, present the distributive-law based composition of two directed containers and show that it generalizes the Zappa-Sz\’ep product of two monoids.
Series This talk is part of the Semantics Lunch (Computer Laboratory) series.
Included in Lists
- All Talks (aka the CURE list)
- bld31
- Cambridge talks
- Department of Computer Science and Technology talks and seminars
- FW26
- Interested Talks
- Martin's interesting talks
- School of Technology
- Semantics Lunch (Computer Laboratory)
- Trust & Technology Initiative - interesting events
- yk373's list
- yk449
Note: Ex-directory lists are not shown.
![[Talks.cam]](/static/images/talkslogosmall.gif)


Monday 25 June 2012, 12:45-14:00