Change Actions: Models of Generalised Differentiation

Change structures, introduced by Cai et al., have recently been proposed as a semantic framework for incremental computation. We generalise change actions, an alternative to change structures, to arbitrary cartesian categories and propose the notion of change action model as a categorical model for (higher-order) generalised differentiation. Change action models naturally arise from many geometric and computational settings, such as (generalised) cartesian differential categories, group models of discrete calculus, and Kleene algebra of regular expressions. We show how to build canonical change action models on arbitrary cartesian categories, reminiscent of the Faa di Bruno construction.

[1]  Christian Posthoff,et al.  Boolean Differential Calculus , 2017, Synthesis Lectures on Digital Circuits and Systems.

[2]  C.-H. Luke Ong,et al.  Fixing Incremental Computation: Derivatives of Fixpoints, and the Recursive Semantics of Datalog , 2019, ESOP.

[3]  A. Kock Synthetic Differential Geometry , 1981 .

[4]  Geoff S. H. Cruttwell Cartesian differential categories revisited , 2017, Math. Struct. Comput. Sci..

[5]  André Thayse Boolean Calculus of Differences , 1981, Lecture Notes in Computer Science.

[6]  Michael Shulman,et al.  Brouwer's fixed-point theorem in real-cohesive homotopy type theory , 2015, Mathematical Structures in Computer Science.

[7]  Thomas Ehrhard,et al.  A convenient differential category , 2010, ArXiv.

[8]  C. Jordan,et al.  Calculus of Finite Differences. , 1963 .

[9]  René Lavendhomme,et al.  Basic Concepts of Synthetic Differential Geometry , 1996 .

[10]  Barak A. Pearlmutter,et al.  Evolving the Incremental Lambda Calculus into a Model of Forward Automatic Differentiation (AD) , 2016 .

[11]  D. L. Pilling,et al.  Commutative Regular Equations and Parikh's Theorem , 1973 .

[12]  J. Conway Regular algebra and finite machines , 1971 .

[13]  Michael Luttenberger,et al.  Newtonian program analysis , 2010, JACM.

[14]  S C Kleene,et al.  Representation of Events in Nerve Nets and Finite Automata , 1951 .

[15]  Laurent Regnier,et al.  The differential lambda-calculus , 2003, Theor. Comput. Sci..

[16]  Dexter Kozen,et al.  Parikh's theorem in commutative Kleene algebra , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[17]  J. Robin B. Cockett,et al.  Differential Structure, Tangent Structure, and SDG , 2014, Appl. Categorical Struct..

[18]  Janusz A. Brzozowski,et al.  Derivatives of Regular Expressions , 1964, JACM.

[19]  Jacques Sakarovitch,et al.  How expressions can code for automata , 2005, RAIRO Theor. Informatics Appl..

[20]  Richard Blute,et al.  CARTESIAN DIFFERENTIAL CATEGORIES , 2009 .

[21]  Klaus Ostermann,et al.  A theory of changes for higher-order languages: incrementalizing λ-calculi by static differentiation , 2013, PLDI.

[22]  Jean-Simon Lemay A Tangent Category Alternative to the Fa\`a di Bruno Construction , 2018 .