# Automatic Differentiation

(Difference between revisions)
 Revision as of 23:23, 4 April 2009 (edit)m ← Previous diff Revision as of 14:22, 26 January 2010 (edit) (undo) (darcs.haskell.org -> code.haskell.org)Next diff → Line 19: Line 19: Implementation with Haskell 98 type classes: Implementation with Haskell 98 type classes: - http://darcs.haskell.org/htam/src/PowerSeries/Taylor.hs + http://code.haskell.org/~thielema/htam/src/PowerSeries/Taylor.hs With advanced type classes in [[Numeric Prelude]]: With advanced type classes in [[Numeric Prelude]]:

## Revision as of 14:22, 26 January 2010

Automatic Differentiation roughly means that a numerical value is equipped with a derivative part, which is updated accordingly on every function application. Let the number x0 be equipped with the derivative x1: $\langle x_0,x_1 \rangle$. For example the sinus is defined as:

• $\sin\langle x_0,x_1 \rangle = \langle \sin x_0, x_1\cdot\cos x_0\rangle$

You see, that's just estimating errors as in physics. However, it becomes more interesting for vector functions.

Implementations:

## 1 Power Series

You may count arithmetic with power series also as Automatic Differentiation, since this means just working with all derivatives simultaneously.