NUI Maynooth

NUI Maynooth ePrints and eTheses Archive

NUIM Library

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]PDF - Requires a PDF viewer such as GSview, Xpdf or Adobe Acrobat Reader
90Kb

Abstract

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.

Keywords:Nesting; Lambda calculus; Multiple transformation; Forward mode; optimization; Hamilton Institute.
Subjects:Science & Engineering > Hamilton Institute
Science & Engineering > Mathematics
ID Code:1730
Deposited By:Hamilton Editor
Deposited On:10 Dec 2009 15:11
Journal or Publication Title:Advances in Automatic Differentiation
Publisher:Springer
Refereed:Yes

Repository Staff Only: item control page