HaskellWiki

Haskell | Wiki community | Recent changes
Random page | Special pages

 

Not logged in
Log in | Help

Functional differentiation

Categories: Mathematics

1 Introduction

Functional differentiation means computing or approximating the derivative of a function. There are several ways to do this:

2 Functional analysis

If you want to explain the terms Higher order function and Currying to mathematicians, this is certainly a good example. The mathematician writes

D f (x) = \lim_{h\to 0} \frac{f(x+h)-f(x)}{h}

and the Haskell programmer writes

derive :: a -> (a -> a) -> (a -> a)
derive h f x = (f (x+h) - f x) / h    .

Haskell's derive h approximates the mathematician's D. In functional analysis D is called a (linear) function operator, because it maps functions to functions. In Haskell derive h is called a higher order function for the same reason. D is in curried form. If it would be uncurried, you would write D(f,x).


3 Blog Posts

There have been several blog posts on this recently. I think we should gather the information together and make a nice wiki article on it here. For now, here are links to articles on the topic.

Retrieved from "http://haskell.org/haskellwiki/Functional_differentiation"

This page has been accessed 1,250 times. This page was last modified 21:45, 29 November 2007. Recent content is available under a simple permissive license.