A Differential-form Pullback Programming Language for Higher-order Reverse-mode Automatic Differentiation
Abstract
Building on the observation that reverse-mode automatic differentiation (AD) -- a generalisation of backpropagation -- can naturally be expressed as pullbacks of differential 1-forms, we design a simple higher-order programming language with a first-class differential operator, and present a reduction strategy which exactly simulates reverse-mode AD. We justify our reduction strategy by interpreting our language in any differential $\lambda$-category that satisfies the Hahn-Banach Separation Theorem, and show that the reduction strategy precisely captures reverse-mode AD in a truly higher-order setting.
- Publication:
-
arXiv e-prints
- Pub Date:
- February 2020
- DOI:
- 10.48550/arXiv.2002.08241
- arXiv:
- arXiv:2002.08241
- Bibcode:
- 2020arXiv200208241M
- Keywords:
-
- Computer Science - Programming Languages;
- Computer Science - Computation and Language;
- Computer Science - Logic in Computer Science