Galois Slicing as Automatic Differentiation
Robert Atkey, Roly Perera
TL;DR
The paper reframes Galois slicing as a categorical analogue of automatic differentiation, showing that forward and backward approximations across input/output lattices form a structured tangent-like calculus. By leveraging CHAD-style semantics and the Category of Families, it separates values from their approximation information to enable executable, total-language models, and extends to higher-order constructs via embedding results and GLR-type definability theorems. It also introduces interval-based and tagging monads to support quantitative and presence/absence approximation data, and provides an Agda-implemented executable model. The work connects provenance-driven slicing with differentiable-programming foundations, offering a modular, extensible framework for quantitative slicing and future directions in recursion, inductive types, and source-to-source translations with potential applications in explainable AI and data transparency.
Abstract
Galois slicing is a technique for program slicing for provenance, developed by Perera and collaborators. Galois slicing aims to explain program executions by demonstrating how to track approximations of the input and output forwards and backwards along a particular execution. In this paper, we explore an analogy between Galois slicing and differentiable programming, seeing the implementation of forwards and backwards slicing as a kind of automatic differentiation. Using the CHAD approach to automatic differentiation due to Vákár and collaborators, we reformulate Galois slicing via a categorical semantics. In doing so, we are able to explore extensions of the Galois slicing idea to quantitative interval analysis, and to clarify the implicit choices made in existing instantiations of this approach.
