Cartesian effect categories are Freyd-categories
Jean-Guillaume Dumas (LJK), Dominique Duval (LJK), Jean-Claude Reynaud, (RC)

TL;DR
This paper introduces Cartesian effect categories, a new categorical framework that models evaluation order and side-effects in programming languages, and shows their equivalence to Freyd-categories with a specific product structure.
Contribution
It defines Cartesian effect categories and the sequential product, establishing their equivalence to Freyd-categories with a premonoidal structure, and compares them with existing models like monads and Arrows.
Findings
Cartesian effect categories are equivalent to Freyd-categories with a sequential product.
The sequential product has a universal property facilitating constructions and proofs.
Both effect categories and sequential products are newly introduced concepts.
Abstract
Most often, in a categorical semantics for a programming language, the substitution of terms is expressed by composition and finite products. However this does not deal with the order of evaluation of arguments, which may have major consequences when there are side-effects. In this paper Cartesian effect categories are introduced for solving this issue, and they are compared with strong monads, Freyd-categories and Haskell's Arrows. It is proved that a Cartesian effect category is a Freyd-category where the premonoidal structure is provided by a kind of binary product, called the sequential product. The universal property of the sequential product provides Cartesian effect categories with a powerful tool for constructions and proofs. To our knowledge, both effect categories and sequential products are new notions.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Logic, Reasoning, and Knowledge · Advanced Algebra and Logic
