Thesis icon

Thesis

Change actions: from incremental computation to discrete derivatives

Abstract:

It seems to be a piece of folkloric knowledge among the incremental computation community that incremental programs behave, in some way, like derivatives. Indeed, they track the effect of a function on finite differences in the input, much like derivatives in calculus track the effect of a function on infinitesimal differences. This idea has recently come to the forefront when Kelly, Pearlmutter and Siskind proposed reinterpreting Cai's incremental lambda-calculus as a basis to understand automatic differentiation.


On the other hand, the differential lambda-calculus, an extension of the lambda-calculus equipped with a differential operator that can differentiate arbitrary higher-order terms, has been shown to constitute a model for differentiation in the traditional sense -- that is, there is a model of the differential lambda-calculus where function spaces correspond to spaces of smooth functions, and the term-level derivative operator corresponds to the usual notion of derivative of a multivariate function.


The goal of this thesis is threefold: first, to provide a general semantic setting for reasoning about incremental computation. Second, to establish and clarify the connection between derivatives in the incremental sense and derivatives in the analytic sense, that is to say, to provide a common definition of derivative of which the previous two are particular instances. Third, to give a theoretically sound calculus for this general setting.


To this end we define and explore the notions of change actions and differential maps between change actions and show how these notions relate to incremental computation through the concrete example of the semi-naive evaluation of Datalog queries. We also introduce the notion of a change action model as a setting for higher-order differentiation, and exhibit some interesting examples. Finally, we show how Cartesian difference categories, a family of particularly well-behaved change action models, generalise Cartesian differential categories and give rise to a calculus in the spirit of Ehrhard and Regnier's differential lambda-calculus.

Actions


Access Document


Files:

Authors


More by this author
Institution:
University of Oxford
Division:
MPLS
Department:
Computer Science
Oxford college:
Wolfson College
Role:
Author

Contributors

Institution:
University of Oxford
Division:
MPLS
Department:
Computer Science
Role:
Supervisor
ORCID:
0000-0003-3921-6637
Institution:
University of Oxford
Division:
MPLS
Department:
Computer Science
Role:
Supervisor


More from this funder
Funder identifier:
https://ror.org/0439y7842
Grant:
OUCL/2015/MAP
Programme:
EPSRC Doctoral Training Grant and Oxford Department of Computer Science combined studentship


DOI:
Type of award:
DPhil
Level of award:
Doctoral
Awarding institution:
University of Oxford

Terms of use



Views and Downloads






If you are the owner of this record, you can report an update to it here: Report update to this record

TO TOP