Using programming language theory to make automatic differentiation sound and efficient

Pearlmutter, Barak A. and Siskind, Jeffrey Mark (2008) Using programming language theory to make automatic differentiation sound and efficient. Advances in Automatic Differentiation. ISSN 1439-7358

[img] Download (92kB)

Share your research

Twitter Facebook LinkedIn GooglePlus Email more...

Add this article to your Mendeley library


This paper discusses a new Automatic Differentiation (AD) system that correctly and automatically accepts nested and dynamic use of the AD operators, without any manual intervention. The system is based on a new formulation of AD as highly generalized firstclass citizens in a λ- calculus, which is briefly described. Because the λ-calculus is the basis for modern programming-language implementation techniques, integration of AD into the λ-calculus allows AD to be integrated into an aggressive compiler. We exhibit a research compiler which does this integration. Using novel analysis techniques, it accepts source code involving free use of a first-class forward AD operator and generates object code which attains numerical performance comparable to, or better than, the most aggressive existing AD systems.

Item Type: Article
Keywords: Nesting; Lambda calculus; Multiple transformation; Forward mode; optimization; Hamilton Institute.
Academic Unit: Faculty of Science and Engineering > Research Institutes > Hamilton Institute
Faculty of Science and Engineering > Mathematics and Statistics
Item ID: 1730
Depositing User: Hamilton Editor
Date Deposited: 10 Dec 2009 15:11
Journal or Publication Title: Advances in Automatic Differentiation
Publisher: Springer
Refereed: Yes

    Repository Staff Only(login required)

    View Item Item control page

    Document Downloads

    More statistics for this item...