Siskind, Jeffrey Mark and Pearlmutter, Barak A. (2005) Perturbation Confusion and Referential Transparency: Correct Functional Implementation of Forward-Mode AD. In: 17th International Workshop, IFL'05 (2005).
Download (91kB)
|
Abstract
It is tempting to incorporate dierentiation operators into functional-programming languages. Making them rst-class citizens, however, is an enterprise fraught with danger. We discuss a potential problem with forward-mode AD common to many AD systems, including all attempts to integrate a forward-mode AD operator into Haskell. In particular, we show how these implementations fail to preserve referential transparency, and can compute grossly incorrect results when the dierentiation operator is applied to a function that itself uses that operator. The underlying cause of this problem is perturbation confusion, a failure to distinguish between distinct perturbations introduced by distinct invocations of the dierentiation operator. We then discuss how perturbation confusion can be avoided.
Item Type: | Conference or Workshop Item (Other) |
---|---|
Keywords: | Perturbation; Referential Transparency; Forward-Mode AD; |
Academic Unit: | Faculty of Science and Engineering > Computer Science |
Item ID: | 566 |
Depositing User: | Barak Pearlmutter |
Date Deposited: | 15 Jun 2007 |
Publisher: | Springer |
Refereed: | No |
URI: | |
Use Licence: | This item is available under a Creative Commons Attribution Non Commercial Share Alike Licence (CC BY-NC-SA). Details of this licence are available here |
Repository Staff Only(login required)
Item control page |
Downloads
Downloads per month over past year