ADIC: an extensible automatic differentiation tool for ANSI-C
Software—Practice & Experience
Modular proof: the fundamental theorem of calculus
Computer-Aided reasoning
Continuity and differentiability
Computer-Aided reasoning
Automatic differentiation of algorithms: from simulation to optimization
Automatic differentiation of algorithms: from simulation to optimization
Journal of Automated Reasoning
Reverse-mode AD in a functional framework: Lambda the ultimate backpropagator
ACM Transactions on Programming Languages and Systems (TOPLAS)
ADIFOR-Generating Derivative Codes from Fortran Programs
Scientific Programming
Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation
Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation
On the implementation of automatic differentiation tools
Higher-Order and Symbolic Computation
Hi-index | 0.00 |
In this paper, we describe recent improvements to the theory of differentiation that is formalized in ACL2(r). First, we show how the normal rules for the differentiation of composite functions can be introduced in ACL2(r). More important, we show how the application of these rules can be largely automated, so that ACL2(r) can automatically define the derivative of a function that is built from functions whose derivatives are already known. Second, we show a formalization in ACL2(r) of the derivatives of familiar functions from calculus, such as the exponential, logarithmic, power, and trigonometric functions. These results serve as the starting point for the automatic differentiation tool described above. Third, we describe how users can add new functions and their derivatives, to improve the capabilities of the automatic differentiator. In particular, we show how to introduce the derivative of the hyperbolic trigonometric functions. Finally, we give some brief highlights concerning the implementation details of the automatic differentiator.