Publication: Using Programming Language Theory to Make Automatic Differentiation Sound and Efficient
Introduction
Applications
Tools
Research Groups
Workshops
Publications
   List Publications
   Advanced Search
   Info
   Add Publications
My Account
About

Using Programming Language Theory to Make Automatic Differentiation Sound and Efficient

- incollection -
 

Author(s)
Barak A. Pearlmutter , Jeffrey Mark Siskind

Published in
Advances in Automatic Differentiation

Editor(s)
Christian H. Bischof, H. Martin Bücker, Paul D. Hovland, Uwe Naumann, J. Utke

Year
2008

Publisher
Springer

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 first-class 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.

Cross-References
Bischof2008AiA

AD Theory and Techniques
Functional Programming

BibTeX
@INCOLLECTION{
         Pearlmutter2008UPL,
       title = "Using Programming Language Theory to Make Automatic Differentiation Sound and
         Efficient",
       doi = "10.1007/978-3-540-68942-3_8",
       author = "Barak A. Pearlmutter and Jeffrey Mark Siskind",
       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 first-class citizens in a
         \lambda-calculus, which is briefly described. Because the \lambda-calculus is the basis
         for modern programming-language implementation techniques, integration of AD into the
         \lambda-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.",
       crossref = "Bischof2008AiA",
       pages = "79--90",
       booktitle = "Advances in Automatic Differentiation",
       publisher = "Springer",
       editor = "Christian H. Bischof and H. Martin B{\"u}cker and Paul D. Hovland and Uwe
         Naumann and J. Utke",
       isbn = "978-3-540-68935-5",
       issn = "1439-7358",
       year = "2008",
       ad_theotech = "Functional Programming"
}


back
  

Contact:
autodiff.org
Username:
Password:
(lost password)