Statement on Black Lives Matter
Title: Actegories and Copowers with Application to Message Passing Semantics
Abstract: Reversible computing considers those computational operations which are reversible over a state space.
Generalized reversible computing aims to generalize the notion of reversible computing (closer to engineering) by considering a probability distribution over the initial set of states and considering reversibility of only those states with non-zero probability.
Not long ago, Michael P.Frank proposed a mathematical framework based on set theory for setting up the fundamental theorem generalized reversible computing relating (conditional) reversibility of an operation and entropy ejection by the operation. My colleague Clemence Chanavat and I realized that the framework has a categorical flavor.
In this talk, I aim to set up generalized reversible computing starting with partial Markov categories, especially, the Kleisli category of sub-distribution monads over partitioned sets. Once this is done, the fundamental theorem of generalized reversible computing can be set up as a functor of resource theories between the above mentioned Kleisli category into the indiscrete category of positive reals, [0,\infty].
This is a research in progress and would very much appreciate audience interaction!
Title: Actegories and Copowers with Application to Message Passing Semantics
Abstract: In this talk we prove that giving a right actegory with hom-objects is equivalent to giving a right-enriched category with copowers. While this result is known in the closed symmetric setting, our contribution extends the equivalence to non-closed and non-symmetric monoidal bases. This generalization is motivated by the semantics of higher-order message passing in the \textbf{Categorical Message Passing Language (CaMPL)}, a concurrent language whose semantics is given by a linear actegory. A desirable feature for this language is the support of higher-order processes: processes that are passed as first class citizens between processes. While this ability is already present in any closed linear type systems — such as {\bf CaMPL}’s — to support arbitrary recursive process definitions requires the ability to reuse passed processes. Concurrent resources in {\bf CaMPL}, however, cannot be duplicated, thus, passing processes as linear closures does not provide the required flexibility. This means processes must be passed as sequential data and the concurrent side must be {\em enriched} in the sequential side, motivating the technical result of this paper.
Title: Cartesian Linearly Distributive Categories: Revisited
Abstract: Linearly distributive categories (LDC) were introduced by Cockett and Seely as alternative categorical semantics for multiplicative linear logic, taking conjunction and disjunction as primitive notions. Given that a LDC has two monoidal products, it is natural to ask when these coincide with categorical products and coproducts. Such LDCs, known as cartesian linearly distributive categories (CLDC), were introduced alongside LDCs. Initially, it was believed that CLDCs and distributive categories would coincide, but this was later found not to be the case. Consequently, the study of CLDCs was largely abandoned. In this talk, we will revisit the notion of CLDCs, demonstrating strong structural properties they all satisfy and investigating two key classes of examples: bounded distributive lattices and semi-additive categories. Additionally, we re-examine a previously assumed class of CLDCs, the Kleisli categories of exception monads of distributive categories, and show that they do not, in fact, form CLDCs.
Title: More on the Categorical and Differential Algebra of Commutative Rigs
Abstract: In this talk we’ll continue our friendly introduction to the differential algebraic theory of commutative rings by moving towards answering the question: “In what sense are the Kahler differentials functorial in the first place?” We’ll start by introducing fibrations and their morphisms, move on to briefly discussing the Grothendieck Construction (which allows one to move between fibrations and pseudofunctors, depending on taste), and then explain the sense in which taking the module of relative Kahler differentials is functorial in CRig.
The scope and vibes of this talk are meant to be more relaxed and informal, so if you’ve never met rigs before and want to get to know how their differential algebra works this is a fantastic opportunity (which of course I’d say, for I am the speaker) to see. Alternatively, this makes precise many constructions involving Kahler differentials which are at best ad-hoc in traditional commutative ring theory.
Title: The Differential Algebra of Commutative Rigs: Derivations and Differentials
Abstract: In the last talk I gave on commutative rigs, we got to know a bit about how the categories of commutative rig algebras and their modules interact together. In this talk we’ll continue towards our ultimate goal of understanding the differential/algebraic geometry of rigs by getting to know how the theory of derivations and differentials interacts with rigs. I’ll start by recalling our main cast of characters, define what it means to be a derivation, define the rig module of Kahler differentials, and then start to show some of the properties these modules have. Depending on time we’ll discuss how to encode derivations as solutions to specific lifting problems and/or in what sense the Kahler differentials construction is functorial. This talk will be relatively gentle in delivery, so all are encouraged to come and see how cool rigs are!
Title: Generalising the Coecke-Pavlovic-Vicary Correspondence
Abstract:
In their paper [1], Coecke-Palvovic-Vicary (CPV) gives a correspondence between orthogonal bases in finite-dimensional Hilbert Spaces (FdHilb) and Commutative-Dagger Frobenius algebras in FdHilb. In the first part of my talk, I will go over this correspondence and the associated categorical statements.
In the second part of my talk, I will give an outline of the programme about how this correspondence can be generalised to arbitrary dimensions. I will first introduce the ingredients involved- Finiteness spaces, Lefschetz Spaces and time-permitting linear monoids and then will give a few results connecting these mathematical objects.
Reference:
[1] Coecke, B., Pavlovic, D., & Vicary, J. (2012). A new description of orthogonal bases. Mathematical Structures in Computer Science, 23(3).
Title: A Planned Outline for the Abstract Machine for the Message Passing Language’s Memory Management System
Abstract: CaMPL is a functional programming language designed by Cockett and Pastro which uses message-passing semantics for concurrency. In order to run a CaMPL program, the code is first compiled down into code for MPL, which is run by an interpreter. In this talk, I will discuss the design decisions I plan to take when implementing said interpreter in C.
When implementing a programming language, memory management is very important. The way a system stores, allocates, and garbage collects data has a high impact on its performance. Furthermore, there’s no ‘one size fits all’ solution. Every language has unqiue propeties which lend themselves to different backend memory mangement systems.
There are two aspects of CaMPL in particular that are relevant to the system I am implementing:
-functional sequntial semantics
-message passing semantics on the concurrent side
These traits are shared by the programming language Erlang, and many of my solutions will be adapted from those used by that programming language.
I will start by discussing the overall memory architecture of the system, which uses private heaps for individual processes and a shared global heap for messages. Then I’ll talk about the implications for garbage collection that this scheme has, and outline the local and global heap garbage collection algorithms. Next, I’ll discuss how memory allocation will work on both sides, and I’ll conclude by discussing the algorithms I plan to use to reduce memory fragmentation.
Title: The Categorical Algebra of Rigs and Kähler Differential Functor for Rigs
Abstract: The theory of rigs (rings without negatives), also known as semirings in the literature, is an interesting and important field of algebra with applications to theoretical computer science, logic, economics (through the use of tropical geometry and the tropical semiring), and also to arithmetic geometry (in the styles of Deitmar, or of Toën and Vasquie, or of Lorscheid — all of these are built to discuss a theory of schemes over the “field with one element”).
In this talk, based on joint work in progress with Robin Cockett, I will introduce the category of commutative rigs and indicate a careful and precise construction of the ways in which the categories of commutative rig algebras and modules over commutative rigs interact. More precisely, I will show that there are fibrations associated to both the commutative algebra and module constructions and that the underlying module/symmetric algebra functors sit as fibre-wise adjoints between the categories of said fibrations. Afterwards, depending on time, I will discuss some combination and/or permuation of the following topics: what localizations of rigs are, what the module of Kähler differentials are, how they arise as a functor into the module fibration, and also how the module of Kähler differentials interacts with localizations and tensor products.
Title: Drazin Inverses in Categories
Abstract: In this talk, I will introduce Drazin inverses from a categorical perspective. Drazin inverses are a fundamental algebraic structure which have been extensively deployed in semigroup theory and ring theory. Drazin inverses can also be defined for endomorphisms in any category. In this talk, I will introduce Drazin categories, in which every endomorphism has a Drazin inverse, and provide various examples including the category of matrices over a field, and explore various properties of these inverses.
Title: Semantics of Higher-Order Processes in Categorical
Message Passing Language (CaMPL)
Abstract: Categorical Message Passing Language (CaMPL) is a concurrent programming language based on a categorical semantic given by a linear actegory. The sequential side of CaMPL is a functional-style programming language, while the concurrent side supports message passing between processes along channels with concurrent types called protocols. A notable feature that could be added to CaMPL, is the support for higher-order processes on the concurrent side, allowing processes to be passed to other processes. While passing concurrent processes between processes is feasible, supporting recursive process definitions requires the ability to reuse the passed process multiple times. However, since concurrent resources cannot be duplicated, processes must be represented as sequential data. Consequently, the concurrent side must be enriched into the sequential side. In this presentation we talk about the categorical semantics that lets us store a concurrent processes as sequential data and yet use them.