From Wikipedia, the free encyclopedia.
This article concerns mathematical functionss.
Regarding other senses of the word function:
- For functions, the focus of functionalism in sociology, see social function.
- For functions as subprograms in computer science, see subroutine, or functional programming.
The concept of function is fundamental to virtually every branch of mathematics and every quantitative science.
The terms "function", "mapping", "map", "transformation", and "operator" are usually used synonymously.
Intuitively, a function is a "rule" that assigns a unique output to each given input. Here are some examples of functions:
Intuitive introduction
The "rule" defining a function can be specified by a formula, a relationship, or simply a table listing the outputs against inputs. The most important feature of a function is that it is deterministic, always producing the same output from the same input. In this way, a function may be thought of as a "machine" or a "black box", converting a valid input into a unique output. The input is often called the argument of the function, and the output the value of the function.
A very common type of function occurs when the argument and the function value are both numbers, the functional relationship is expressed by a formula, and the value of the function is obtained by direct substitution of the argument into the formula. Consider for example
A straightforward generalization is to allow functions depending on several arguments. For instance,
In the sciences, we often encounter functions that are not given by (known) formulas. Consider for instance the temperature distribution on earth over time: this is a function which takes location and time as arguments and gives as output the temperature at that location at that time.
We have seen that the intuitive notion of function is not limited to computations using single numbers and not even limited to computations; the mathematical notion of function is still more general and is not limited to situations involving numbers. Rather, a function links a "domain" (set of inputs) to a "codomain" (set of possible outputs) in such a way that every element of the domain is associated to precisely one element of the codomain. Functions are abstractly defined as certain relations, as will be seen below. Because of this generality, the function concept is fundamental to virtually every branch of mathematics.
As a mathematical term, "function" was coined by Leibniz in 1694, to describe a quantity related to a curve, such as a curve's slope or a specific point of a curve. The functions Leibniz considered are today called differentiable functions, and they are the type of function most frequently encountered by nonmathematicians. For this type of function, one can talk about limits and derivatives; both are measurements of the change of output values associated to a change of input values, and these measurements are the basis of calculus.
The word function was later used by Euler during the mid-18th Century to describe an expression or formula involving various arguments, e.g. f(x) = sin(x) + x3.
During the 19th Century, mathematicians started to formalize all the different branches of mathematics. Weierstrass advocated building calculus on arithmetic rather than on geometry, which favoured Euler's definition over Leibniz's (see arithmetization of analysis).
By broadening the definition of functions, mathematicians were then able to study "strange" mathematical objects such as continuous functions that are nowhere differentiable. These functions were first thought to be only theoretical curiosities, and they were collectively called "monsters" as late as the turn of the 20th century. They were later found to be important in the modelling of physical phenomena such as Brownian motion.
Towards the end of the 19th century, mathematicians started trying to formalize all of mathematics using set theory, and they sought to define every mathematical object as a set. It was Dirichlet that gave the modern "formal" definition of function (see #Formal Definition below).
In Dirichlet's definition, a function is a special case of a relation. In most cases of practical interest, however, the differences between the modern definition and Euler's definition are negligible.
Formally, a function f from a set X of input values to a set Y of possible output values (written as f : X → Y) is a relation between X and Y which satisfies:
A more concise expression of the above definition is the following: a function from X to Y is a subset f of the cartesian product X × Y, such that for each x in X, there is a unique y in Y such that the ordered pair (x, y) is in f.
A relation between X and Y that satisfies condition (1) is a multivalued function. Every function is a multivalued function, but not every multivalued function is a function. A relation between X and Y that satisfies condition (2) is a partial function. Every function is a partial function, but not every partial function is a function. In this encyclopedia, the term "function" will mean a relation satisfying both conditions (1) and (2), unless otherwise stated.
Consider the following three examples:
History
Formal definition
For each input value x in the domain, the corresponding unique output value y in the codomain is denoted by f(x).
![]() | This relation is total but not functional; the element 3 in X is related to two elements b and c in Y. Therefore, this is a multivalued function, but not a function. | |
![]() | This relation is functional but not total; the element 1 in X is not related to any element of Y. Therefore, this is a partial function, but not a function. | |
![]() | This relation is both total and functional, and so it is a function from X to Y. The function can be given explicitly as f = {(1, a), (2, d), (3, c)} or as
|
X, the set of input values, is called the domain of f, and Y, the set of possible output values, is called the codomain. The range of f is the set of all actual outputs {f(x) : x in the domain}. Beware that sometimes the codomain is incorrectly called the range because of a failure to distinguish between possible and actual values.
In computer science, the datatypes of the arguments and return values specify the domain and codomain (respectively) of a subprogram. So the domain and codomain are constraints imposed initially on a function; on the other hand the range has to do with how things turn out in practice.
The graph of a function f is the set of all ordered pairs(x, f(x)), for all x in the domain X. There are theorems formulated or proved most easily in terms of the graph, such as the closed graph theorem.
If X and Y are real lines, then this definition coincides with the familiar sense of graph. Below is the graph of a cubic function:
Note that since a relation on the two sets X and Y is usually formalized as a subset of X×Y, the formal definition of function actually identifies the function f with its graph.
The image of an element x∈X under f is the output f(x).
The image of a subset A⊂X under f is the subset of Y defined by
Note that with this definiton, the direct image f becomes a function whose domain is the set of all subsets of X (also known as the power set of X) and whose codomain is the power set of Y. Note that the same notation is used for the original function f and its direct image. This is a common convention; the intended usage must be inferred by context.
The preimage (or inverse image) of a set B ⊂ Y under f is the subset of X defined by
Note that with this definiton, f −1 becomes a function whose domain is the power set of Y and whose codomain is the power set of X'.
Some consequences that follow immediately from these definitions are:
Several types of functions are very useful, deserve special names:
(More can be found at List of functions.)
Functions in applications are often functions of several variables: the values they take depend on a number of different factors. From a mathematical point of view all the variables must be made explicit in order to have a functional relationship - no 'hidden' factors are allowed. Then again, from the mathematical point of view, there is no qualitative difference between functions of one and of several variables. A function of three real variables is just a function that applies to triples of real numbers. The following paragraph says this in more formal language.
If the domain of a function is a subset of the Cartesian product of n sets then the function is called an n-ary function.
For example, the relation dist has the domain R × R and is therefore a binary function.
In that case dist((x,y)) is simply written as \dist(x,y).
Another name applied to some types of functions of several variables is operation. In abstract algebra, operators such as "*" are defined as binary functions; when we write a formula such as x*y in this context, we are implicitly invoking the function *(x,y), but writing it in a convenient infix notation.
An important theoretical paradigm, functional programming, takes the function concept as central. In that setting, the handling of functions of several variables becomes an operational matter, for which the lambda calculus provides the basic syntax. The composition of functions (see under composing functions immediately below) becomes a question of explicit forms of substitution, as used in the substitution rule of calculus. In particular, a formalism called currying can be used to reduce n-ary functions to functions of a single variable.
The functions f: X → Y and g: Y → Z can be composed by first applying f to an argument x and then applying g to the result.
Thus one obtains a function g o f: X → Z defined by (g o f)(x) := g(f(x)) for all x in X.
As an example, suppose that an airplane's height at time t is given by the function h(t) and that the oxygen concentration at height x is given by the function c(x).
Then (c o h)(t) describes the oxygen concentration around the plane at time t.
If
Y⊂X
then
f may compose with itself; this
is sometimes denoted f 2. (Do not confuse it with the notation
commonly seen in
trigonometry.)
The functional powers
f of n
= f n o f
= f n+1
for
natural
n
follow immediately. On their heels comes the idea of functional root;
given f and n, find a g such that
gn=f.
(Feynman
illustrated practical use of functional roots in one of his anecdotal books.
<which?>
Tasked with building an
analogue
arctan
computer and finding its parts overstressed, he instead designed a machine for a functional root <fifth?> of arctan and chained enough copies to make the arctan machine.)
An example of an inverse function, for f(x) = x2, is f(x)−1 = √x. [Arggh!...you have to say what the domain is...if domain = R, this is false] Likewise, the inverse of 2x is x/2. The inverse function is the function that "undoes" its original. See also inverse image.
The restriction of to is then the function . Intuitively, this is the same function as except that we restrict the domain of to .
An extension of a function is a function defined on a superset of such that . Provided the domain of is not the universal set, always has lots of extensions.
If f: X → R and g: X → R are functions with common domain X and codomain is a ring R, then one can define the sum function f + g: X → R and the product function f × g: X → R as follows:
This turns the set of all such functions into a ring. The binary operations in that ring have as domain ordered pairs of functions, and as codomain functions. This is an example of climbing up in abstraction, to functions of more complex types.
By taking some other algebraic structure A in the place of R, we can turn the set of all functions from X to A into an algebraic structure of the same type in an analogous way.
The number of computable functions from integers to integers is countable, because number of possible algorithms is. The number of all functions from integers to integers is higher: the same as the cardinality of the real numbers. This argument shows that there are functions from integers to integers that are not computable. For examples of noncomputable functions, see the articles on the halting problem and Rice's theorem.
[In the context of category theory, a function is really an ordered triple (X, Y, f), where f is a "function" with domain X and codomain Y, i.e. the domain and codomain matter, if you change the codomain, e.g. it's considered a different function. This interpretation is based on looking at functions as morphisms in the category of sets.]
Domains, Codomains, and Ranges
Graph of a function

Images and preimages
Notice that the range of f is the image f(X) of its domain. In our function above, the image of {2,3} under f is f({2, 3}) = {c, d} and the range of f is {a, c, d}.
In our function above, the preimage of {a, b} is f −1({a, b}) = {1}.
These are valid for arbitrary subsets A, A1 and A2 of the domain and arbitrary subsets B, B1 and B2 of the codomain.
The results relating images and preimages to the algebra of intersection and union work for any collections of subsets, not just for pairs of subsets.Injective, surjective and bijective functions
Examples of functions
Most commonly used types of mathematical functions involving addition, division, exponents, logarithms, multiplication, polynomials, radicals, rationals, subtraction, and trigonometric expressions. They are sometimes collectively referred as elementary functions -- but the meaning of this term varies among different branches of mathematics. Example of non-elementary functions (or special functions) are Bessel functions and gamma functions. n-ary function: function of several variables
Composing functions
Inverse function
If a function f:X→Y is bijective then preimages of any element y in the codomain Y is a singleton. A function taking y∈Y to its preimage f−1(y) is a well-defined function called the inverse of f and is denoted by f−1.Restrictions and extensions
Suppose that is a subset of and that is a function. Let be the inclusion function for every .Pointwise operations
for all x in X.Computable and non-computable functions
Functions from the category viewpoint
References
External links




