Fixed-point theorem

From Infogalactic: the planetary knowledge core
(Redirected from Fixed point theorem)
Jump to: navigation, search

In mathematics, a fixed-point theorem is a result saying that a function F will have at least one fixed point (a point x for which F(x) = x), under some conditions on F that can be stated in general terms.[1] Results of this kind are amongst the most generally useful in mathematics.[2]

In mathematical analysis

The Banach fixed-point theorem gives a general criterion guaranteeing that, if it is satisfied, the procedure of iterating a function yields a fixed point.[3]

By contrast, the Brouwer fixed-point theorem is a non-constructive result: it says that any continuous function from the closed unit ball in n-dimensional Euclidean space to itself must have a fixed point,[4] but it doesn't describe how to find the fixed point (See also Sperner's lemma).

For example, the cosine function is continuous in [−1,1] and maps it into [−1, 1], and thus must have a fixed point. This is clear when examining a sketched graph of the cosine function; the fixed point occurs where the cosine curve y=cos(x) intersects the line y=x. Numerically, the fixed point is approximately x=0.73908513321516 (thus x=cos(x) for this value of x).

The Lefschetz fixed-point theorem[5] (and the Nielsen fixed-point theorem)[6] from algebraic topology is notable because it gives, in some sense, a way to count fixed points.

There are a number of generalisations to Banach fixed-point theorem and further; these are applied in PDE theory. See fixed-point theorems in infinite-dimensional spaces.

The collage theorem in fractal compression proves that, for many images, there exists a relatively small description of a function that, when iteratively applied to any starting image, rapidly converges on the desired image.[7]

In algebra and discrete mathematics

The Knaster–Tarski theorem states that any order-preserving function on a complete lattice has a fixed point, and indeed a smallest fixed point.[8] See also Bourbaki–Witt theorem.

The theorem has applications in abstract interpretation, a form of static program analysis.

A common theme in lambda calculus is to find fixed points of given lambda expressions. Every lambda expression has a fixed point, and a fixed-point combinator is a "function" which takes as input a lambda expression and produces as output a fixed point of that expression.[9] An important fixed-point combinator is the Y combinator used to give recursive definitions.

In denotational semantics of programming languages, a special case of the Knaster–Tarski theorem is used to establish the semantics of recursive definitions. While the fixed-point theorem is applied to the "same" function (from a logical point of view), the development of the theory is quite different.

The same definition of recursive function can be given, in computability theory, by applying Kleene's recursion theorem.[10] These results are not equivalent theorems; the Knaster–Tarski theorem is a much stronger result than what is used in denotational semantics.[11] However, in light of the Church–Turing thesis their intuitive meaning is the same: a recursive function can be described as the least fixed point of a certain functional, mapping functions to functions.

The above technique of iterating a function to find a fixed point can also be used in set theory; the fixed-point lemma for normal functions states that any continuous strictly increasing function from ordinals to ordinals has one (and indeed many) fixed points.

Every closure operator on a poset has many fixed points; these are the "closed elements" with respect to the closure operator, and they are the main reason the closure operator was defined in the first place.

Every involution on a finite set with an odd number of elements has a fixed point; more generally, for every involution on a finite set of elements, the number of elements and the number of fixed points have the same parity. Don Zagier used these observations to give a one-sentence proof of Fermat's theorem on sums of two squares, by describing two involutions on the same set of triples of integers, one of which can easily be shown to have only one fixed point and the other of which has a fixed point for each representation of a given prime (congruent to 1 mod 4) as a sum of two squares. Since the first involution has an odd number of fixed points, so does the second, and therefore there always exists a representation of the desired form.[12]

List of fixed point theorems

Footnotes

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Eberhard Zeidler, Applied Functional Analysis: main principles and their applications, Springer, 1995.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Cutland, N.J., Computability: An introduction to recursive function theory, Cambridge University Press, 1980. ISBN 0-521-29465-7
  11. The foundations of program verification, 2nd edition, Jacques Loeckx and Kurt Sieber, John Wiley & Sons, ISBN 0-471-91282-4, Chapter 4; theorem 4.24, page 83, is what is used in denotational semantics, while Knaster–Tarski theorem is given to prove as exercise 4.3–5 on page 90.
  12. Lua error in package.lua at line 80: module 'strict' not found..

References

  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.

External links