47 research outputs found
CHAD for Expressive Total Languages
We show how to apply forward and reverse mode Combinatory Homomorphic
Automatic Differentiation (CHAD) to total functional programming languages with
expressive type systems featuring the combination of - tuple types; - sum
types; - inductive types; - coinductive types; - function types. We achieve
this by analysing the categorical semantics of such types in -types
(Grothendieck constructions) of suitable categories. Using a novel categorical
logical relations technique for such expressive type systems, we give a
correctness proof of CHAD in this setting by showing that it computes the usual
mathematical derivative of the function that the original program implements.
The result is a principled, purely functional and provably correct method for
performing forward and reverse mode automatic differentiation (AD) on total
functional programming languages with expressive type systems.Comment: Under review at MSC
Categorial Compositionality III: F-(co)algebras and the Systematicity of Recursive Capacities in Human Cognition
Human cognitive capacity includes recursively definable concepts, which are prevalent in domains involving lists, numbers, and languages. Cognitive science currently lacks a satisfactory explanation for the systematic nature of such capacities (i.e., why the capacity for some recursive cognitive abilitiesâe.g., finding the smallest number in a listâimplies the capacity for certain othersâfinding the largest number, given knowledge of number order). The category-theoretic constructs of initial F-algebra, catamorphism, and their duals, final coalgebra and anamorphism provide a formal, systematic treatment of recursion in computer science. Here, we use this formalism to explain the systematicity of recursive cognitive capacities without ad hoc assumptions (i.e., to the same explanatory standard used in our account of systematicity for non-recursive capacities). The presence of an initial algebra/final coalgebra explains systematicity because all recursive cognitive capacities, in the domain of interest, factor through (are composed of) the same component process. Moreover, this factorization is unique, hence no further (ad hoc) assumptions are required to establish the intrinsic connection between members of a group of systematically-related capacities. This formulation also provides a new perspective on the relationship between recursive cognitive capacities. In particular, the link between number and language does not depend on recursion, as such, but on the underlying functor on which the group of recursive capacities is based. Thus, many species (and infants) can employ recursive processes without having a full-blown capacity for number and language
Complete Axioms for Categorical Fixed-Point Operators
We give an axiomatic treatment of fixed-point operators in categories. A notion of iteration operator is defined, embodying the equational properties of iteration theories. We prove a general completeness theorem for iteration operators, relying on a new, purely syntactic characterisation of the free iteration theory. We then show how iteration operators arise in axiomatic domain theory. One result derives them from the existence of sufficiently many bifree algebras (exploiting the universal property Freyd introduced in his notion of algebraic compactness) . Another result shows that, in the presence of a parameterized natural numbers object and an equational lifting monad, any uniform fixed-point operator is necessarily an iteration operator. 1. Introduction Fixed points play a central role in domain theory. Traditionally, one works with a category such as Cppo, the category of !-continuous functions between !-complete pointed partial orders. This possesses a least-fixed-point oper..
CHAD for expressive total languages
We show how to apply forward and reverse mode Combinatory Homomorphic Automatic Differentiation (CHAD) (VĂĄkĂĄr (2021). ESOP, 607â634; VĂĄkĂĄr and Smeding (2022). ACM Transactions on Programming Languages and Systems 44 (3) 20:1â20:49.) to total functional programming languages with expressive type systems featuring the combination of ⢠tuple types; ⢠sum types; ⢠inductive types; ⢠coinductive types; ⢠function types. We achieve this by analyzing the categorical semantics of such types in ÎŁ-types (Grothendieck constructions) of suitable categories. Using a novel categorical logical relations technique for such expressive type systems, we give a correctness proof of CHAD in this setting by showing that it computes the usual mathematical derivative of the function that the original program implements. The result is a principled, purely functional and provably correct method for performing forward- and reverse-mode automatic differentiation (AD) on total functional programming languages with expressive type systems
Dependent Inductive and Coinductive Types are Fibrational Dialgebras
In this paper, I establish the categorical structure necessary to interpret
dependent inductive and coinductive types. It is well-known that dependent type
theories \`a la Martin-L\"of can be interpreted using fibrations. Modern
theorem provers, however, are based on more sophisticated type systems that
allow the definition of powerful inductive dependent types (known as inductive
families) and, somewhat limited, coinductive dependent types. I define a class
of functors on fibrations and show how data type definitions correspond to
initial and final dialgebras for these functors. This description is also a
proposal of how coinductive types should be treated in type theories, as they
appear here simply as dual of inductive types. Finally, I show how dependent
data types correspond to algebras and coalgebras, and give the correspondence
to dependent polynomial functors.Comment: In Proceedings FICS 2015, arXiv:1509.0282
Interaction laws of monads and comonads
We introduce and study functor-functor and monad-comonad interaction laws as
mathematical objects to describe interaction of effectful computations with
behaviors of effect-performing machines. Monad-comonad interaction laws are
monoid objects of the monoidal category of functor-functor interaction laws. We
show that, for suitable generalizations of the concepts of dual and Sweedler
dual, the greatest functor resp. monad interacting with a given functor or
comonad is its dual while the greatest comonad interacting with a given monad
is its Sweedler dual. We relate monad-comonad interaction laws to stateful
runners. We show that functor-functor interaction laws are Chu spaces over the
category of endofunctors taken with the Day convolution monoidal structure.
Hasegawa's glueing endows the category of these Chu spaces with a monoidal
structure whose monoid objects are monad-comonad interaction laws
Heterogeneous substitution systems revisited
Matthes and Uustalu (TCS 327(1-2):155-174, 2004) presented a categorical
description of substitution systems capable of capturing syntax involving
binding which is independent of whether the syntax is made up from least or
greatest fixed points. We extend this work in two directions: we continue the
analysis by creating more categorical structure, in particular by organizing
substitution systems into a category and studying its properties, and we
develop the proofs of the results of the cited paper and our new ones in
UniMath, a recent library of univalent mathematics formalized in the Coq
theorem prover.Comment: 24 page