Function (mathematics)
Function  

x ↦ f (x)  
Examples by domain and codomain  


Classes/properties  
Constant · Identity · Linear · Polynomial · Rational · Algebraic · Analytic · Smooth · Continuous · Measurable · Injective · Surjective · Bijective  
Constructions  
Restriction · Composition · λ · Inverse  
Generalizations  
Partial · Multivalued · Implicit  
In mathematics, a function from a set X to a set Y assigns to each element of X exactly one element of Y.^{[1]} The set X is called the domain of the function^{[2]} and the set Y is called the codomain of the function.^{[3]}
Functions were originally the idealization of how a varying quantity depends on another quantity. For example, the position of a planet is a function of time. Historically, the concept was elaborated with the infinitesimal calculus at the end of the 17th century, and, until the 19th century, the functions that were considered were differentiable (that is, they had a high degree of regularity). The concept of a function was formalized at the end of the 19th century in terms of set theory, and this greatly enlarged the domains of application of the concept.
A function is most often denoted by letters such as f, g and h, and the value of a function f at an element x of its domain is denoted by f(x); the numerical value resulting from the function evaluation at a particular input value is denoted by replacing x with this value; for example, the value of f at x = 4 is denoted by f(4). When the function is not named and is represented by an expression E, the value of the function at, say, x = 4 may be denoted by E_{x=4}. For example, the value at 4 of the function that maps x to [math]\displaystyle{ (x+1)^2 }[/math] may be denoted by [math]\displaystyle{ \left.(x+1)^2\right\vert_{x=4} }[/math] (which results in 25).
A function is uniquely represented by the set of all pairs (x, f (x)), called the graph of the function, a popular means of illustrating the function.^{[note 1]}^{[4]} When the domain and the codomain are sets of real numbers, each such pair may be thought of as the Cartesian coordinates of a point in the plane.
Functions are widely used in science, engineering, and in most fields of mathematics. It has been said that functions are "the central objects of investigation" in most fields of mathematics.^{[5]}
Definition
A function from a set X to a set Y is an assignment of an element of Y to each element of X. The set X is called the domain of the function and the set Y is called the codomain of the function.
A function, its domain, and its codomain, are declared by the notation f: X→Y, and the value of a function f at an element x of X, denoted by f(x), is called the image of x under f, or the value of f applied to the argument x.
Functions are also called maps or mappings, though some authors make some distinction between "maps" and "functions" (see § Other terms).
Two functions f and g are equal if their domain and codomain sets are the same and their output values agree on the whole domain. More formally, given f: X → Y and g: X → Y, we have f = g if and only if f(x) = g(x) for all x ∈ X.^{[note 2]}
The domain and codomain are not always explicitly given when a function is defined, and, without some (possibly difficult) computation, one might only know that the domain is contained in a larger set. Typically, this occurs in mathematical analysis, where "a function from X to Y " often refers to a function that may have a proper subset^{[note 3]} of X as domain. For example, a "function from the reals to the reals" may refer to a realvalued function of a real variable. However, a "function from the reals to the reals" does not mean that the domain of the function is the whole set of the real numbers, but only that the domain is a set of real numbers that contains a nonempty open interval. Such a function is then called a partial function. For example, if f is a function that has the real numbers as domain and codomain, then a function mapping the value x to the value g(x) = 1/f(x) is a function g from the reals to the reals, whose domain is the set of the reals x, such that f(x) ≠ 0.
The range or image of a function is the set of the images of all elements in the domain.^{[6]}^{[7]}^{[8]}^{[9]}
Total, univalent relation
Any subset of the Cartesian product of two sets X and Y defines a binary relation R ⊆ X × Y between these two sets. It is immediate that an arbitrary relation may contain pairs that violate the necessary conditions for a function given above.
A binary relation is univalent (also called rightunique) if
 [math]\displaystyle{ \forall x\in X, \forall y\in Y, \forall z\in Y, \quad ((x,y)\in R \land (x,z)\in R)\implies y=z. }[/math]
A binary relation is total if
 [math]\displaystyle{ \forall x\in X, \exists y\in Y, \quad(x,y)\in R. }[/math]
A partial function is a binary relation that is univalent, and a function is a binary relation that is univalent and total.
Various properties of functions and function composition may be reformulated in the language of relations.^{[10]} For example, a function is injective if the converse relation R^{T} ⊆ Y × X is univalent, where the converse relation is defined as R^{T} = {(y, x)  (x, y) ∈ R}.
Set exponentiation
The set of all functions from a set [math]\displaystyle{ X }[/math] to a set [math]\displaystyle{ Y }[/math] is commonly denoted as
 [math]\displaystyle{ Y^X, }[/math]
which is read as [math]\displaystyle{ Y }[/math] to the power [math]\displaystyle{ X }[/math].
This notation is the same as the notation for the Cartesian product of a family of copies of [math]\displaystyle{ Y }[/math] indexed by [math]\displaystyle{ X }[/math]:
 [math]\displaystyle{ Y^X=\prod_{x\in X}Y. }[/math]
The identity of these two notations is motivated by the fact that a function [math]\displaystyle{ f }[/math] can be identified with the element of the Cartesian product such that the component of index [math]\displaystyle{ x }[/math] is [math]\displaystyle{ f(x) }[/math].
When [math]\displaystyle{ Y }[/math] has two elements, [math]\displaystyle{ Y^X }[/math] is commonly denoted [math]\displaystyle{ 2^X }[/math] and called the powerset of X. It can be identified with the set of all subsets of [math]\displaystyle{ X }[/math], through the onetoone correspondence that associates to each subset [math]\displaystyle{ S\subseteq X }[/math] the function [math]\displaystyle{ f }[/math] such that [math]\displaystyle{ f(x)=1 }[/math] if [math]\displaystyle{ x\in S }[/math] and [math]\displaystyle{ f(x)=0 }[/math] otherwise.
Notation
There are various standard ways for denoting functions. The most commonly used notation is functional notation, which is the first notation described below.
Functional notation
In functional notation, the function is immediately given a name, such as f, and its definition is given by what f does to the explicit argument x, using a formula in terms of x. For example, the function which takes a real number as input and outputs that number plus 1 is denoted by
 [math]\displaystyle{ f(x)=x+1 }[/math].
If a function is defined in this notation, its domain and codomain are implicitly taken to both be [math]\displaystyle{ \R }[/math], the set of real numbers. If the formula cannot be evaluated at all real numbers, then the domain is implicitly taken to be the maximal subset of [math]\displaystyle{ \R }[/math] on which the formula can be evaluated; see Domain of a function.
A more complicated example is the function
 [math]\displaystyle{ f(x)=\sin(x^2+1) }[/math].
In this example, the function f takes a real number as input, squares it, then adds 1 to the result, then takes the sine of the result, and returns the final result as the output.
When the symbol denoting the function consists of several characters and no ambiguity may arise, the parentheses of functional notation might be omitted. For example, it is common to write sin x instead of sin(x).
Functional notation was first used by Leonhard Euler in 1734.^{[11]} Some widely used functions are represented by a symbol consisting of several letters (usually two or three, generally an abbreviation of their name). In this case, a roman type is customarily used instead, such as "sin" for the sine function, in contrast to italic font for singleletter symbols.
When using this notation, one often encounters the abuse of notation whereby the notation f(x) can refer to the value of f at x, or to the function itself. If the variable x was previously declared, then the notation f(x) unambiguously means the value of f at x. Otherwise, it is useful to understand the notation as being both simultaneously; this allows one to denote composition of two functions f and g in a succinct manner by the notation f(g(x)).
However, distinguishing f and f(x) can become important in cases where functions themselves serve as inputs for other functions. (A function taking another function as an input is termed a functional.) Other approaches of notating functions, detailed below, avoid this problem but are less commonly used.
Arrow notation
Arrow notation defines the rule of a function inline, without requiring a name to be given to the function. For example, [math]\displaystyle{ x\mapsto x+1 }[/math] is the function which takes a real number as input and outputs that number plus 1. Again a domain and codomain of [math]\displaystyle{ \R }[/math] is implied.
The domain and codomain can also be explicitly stated, for example:
 [math]\displaystyle{ \begin{align} \operatorname{sqr}\colon \Z &\to \Z\\ x &\mapsto x^2.\end{align} }[/math]
This defines a function sqr from the integers to the integers that returns the square of its input.
As a common application of the arrow notation, suppose [math]\displaystyle{ f\colon X\times X\to Y;\;(x,t) \mapsto f(x,t) }[/math] is a function in two variables, and we want to refer to a partially applied function [math]\displaystyle{ X\to Y }[/math] produced by fixing the second argument to the value t_{0} without introducing a new function name. The map in question could be denoted [math]\displaystyle{ x\mapsto f(x,t_0) }[/math] using the arrow notation. The expression [math]\displaystyle{ x\mapsto f(x,t_0) }[/math] (read: "the map taking x to f(x, t_{0})") represents this new function with just one argument, whereas the expression f(x_{0}, t_{0}) refers to the value of the function f at the point (x_{0}, t_{0}).
Index notation
Index notation is often used instead of functional notation. That is, instead of writing f (x), one writes [math]\displaystyle{ f_x. }[/math]
This is typically the case for functions whose domain is the set of the natural numbers. Such a function is called a sequence, and, in this case the element [math]\displaystyle{ f_n }[/math] is called the nth element of the sequence.
The index notation is also often used for distinguishing some variables called parameters from the "true variables". In fact, parameters are specific variables that are considered as being fixed during the study of a problem. For example, the map [math]\displaystyle{ x\mapsto f(x,t) }[/math] (see above) would be denoted [math]\displaystyle{ f_t }[/math] using index notation, if we define the collection of maps [math]\displaystyle{ f_t }[/math] by the formula [math]\displaystyle{ f_t(x)=f(x,t) }[/math] for all [math]\displaystyle{ x,t\in X }[/math].
Dot notation
In the notation [math]\displaystyle{ x\mapsto f(x), }[/math] the symbol x does not represent any value, it is simply a placeholder meaning that, if x is replaced by any value on the left of the arrow, it should be replaced by the same value on the right of the arrow. Therefore, x may be replaced by any symbol, often an interpunct " ⋅ ". This may be useful for distinguishing the function f (⋅) from its value f (x) at x.
For example, [math]\displaystyle{ a(\cdot)^2 }[/math] may stand for the function [math]\displaystyle{ x\mapsto ax^2 }[/math], and [math]\displaystyle{ \int_a^{\, (\cdot)} f(u)\,du }[/math] may stand for a function defined by an integral with variable upper bound: [math]\displaystyle{ x\mapsto \int_a^x f(u)\,du }[/math].
Specialized notations
There are other, specialized notations for functions in subdisciplines of mathematics. For example, in linear algebra and functional analysis, linear forms and the vectors they act upon are denoted using a dual pair to show the underlying duality. This is similar to the use of bra–ket notation in quantum mechanics. In logic and the theory of computation, the function notation of lambda calculus is used to explicitly express the basic notions of function abstraction and application. In category theory and homological algebra, networks of functions are described in terms of how they and their compositions commute with each other using commutative diagrams that extend and generalize the arrow notation for functions described above.
Other terms
Term  Distinction from "function" 

Map/Mapping  None; the terms are synonymous.^{[12]} 
A map can have any set as its codomain, while, in some contexts, typically in older books, the codomain of a function is specifically the set of real or complex numbers.^{[13]}  
Alternatively, a map is associated with a special structure (e.g. by explicitly specifying a structured codomain in its definition). For example, a linear map.^{[14]}  
Homomorphism  
Morphism  A generalisation of homomorphisms to any category, even when the objects of the category are not sets (for example, a group defines a category with only one object, which has the elements of the group as morphisms; see Category (mathematics) § Examples for this example and other similar ones).^{[15]} 
A function is often also called a map or a mapping, but some authors make a distinction between the term "map" and "function". For example, the term "map" is often reserved for a "function" with some sort of special structure (e.g. maps of manifolds). In particular map is often used in place of homomorphism for the sake of succinctness (e.g., linear map or map from G to H instead of group homomorphism from G to H). Some authors^{[14]} reserve the word mapping for the case where the structure of the codomain belongs explicitly to the definition of the function.
Some authors, such as Serge Lang,^{[13]} use "function" only to refer to maps for which the codomain is a subset of the real or complex numbers, and use the term mapping for more general functions.
In the theory of dynamical systems, a map denotes an evolution function used to create discrete dynamical systems. See also Poincaré map.
Whichever definition of map is used, related terms like domain, codomain, injective, continuous have the same meaning as for a function.
Specifying a function
Given a function [math]\displaystyle{ f }[/math], by definition, to each element [math]\displaystyle{ x }[/math] of the domain of the function [math]\displaystyle{ f }[/math], there is a unique element associated to it, the value [math]\displaystyle{ f(x) }[/math] of [math]\displaystyle{ f }[/math] at [math]\displaystyle{ x }[/math]. There are several ways to specify or describe how [math]\displaystyle{ x }[/math] is related to [math]\displaystyle{ f(x) }[/math], both explicitly and implicitly. Sometimes, a theorem or an axiom asserts the existence of a function having some properties, without describing it more precisely. Often, the specification or description is referred to as the definition of the function [math]\displaystyle{ f }[/math].
By listing function values
On a finite set, a function may be defined by listing the elements of the codomain that are associated to the elements of the domain. For example, if [math]\displaystyle{ A = \{ 1, 2, 3 \} }[/math], then one can define a function [math]\displaystyle{ f\colon A \to \mathbb{R} }[/math] by [math]\displaystyle{ f(1) = 2, f(2) = 3, f(3) = 4. }[/math]
By a formula
Functions are often defined by a formula that describes a combination of arithmetic operations and previously defined functions; such a formula allows computing the value of the function from the value of any element of the domain. For example, in the above example, [math]\displaystyle{ f }[/math] can be defined by the formula [math]\displaystyle{ f(n) = n+1 }[/math], for [math]\displaystyle{ n\in\{1,2,3\} }[/math].
When a function is defined this way, the determination of its domain is sometimes difficult. If the formula that defines the function contains divisions, the values of the variable for which a denominator is zero must be excluded from the domain; thus, for a complicated function, the determination of the domain passes through the computation of the zeros of auxiliary functions. Similarly, if square roots occur in the definition of a function from [math]\displaystyle{ \mathbb{R} }[/math] to [math]\displaystyle{ \mathbb{R}, }[/math] the domain is included in the set of the values of the variable for which the arguments of the square roots are nonnegative.
For example, [math]\displaystyle{ f(x)=\sqrt{1+x^2} }[/math] defines a function [math]\displaystyle{ f\colon \mathbb{R} \to \mathbb{R} }[/math] whose domain is [math]\displaystyle{ \mathbb{R}, }[/math] because [math]\displaystyle{ 1+x^2 }[/math] is always positive if x is a real number. On the other hand, [math]\displaystyle{ f(x)=\sqrt{1x^2} }[/math] defines a function from the reals to the reals whose domain is reduced to the interval [−1, 1]. (In old texts, such a domain was called the domain of definition of the function.)
Functions are often classified by the nature of formulas that define them:
 A quadratic function is a function that may be written [math]\displaystyle{ f(x) = ax^2+bx+c, }[/math] where a, b, c are constants.
 More generally, a polynomial function is a function that can be defined by a formula involving only additions, subtractions, multiplications, and exponentiation to nonnegative integers. For example, [math]\displaystyle{ f(x) = x^33x1, }[/math] and [math]\displaystyle{ f(x) = (x1)(x^3+1) +2x^2 1. }[/math]
 A rational function is the same, with divisions also allowed, such as [math]\displaystyle{ f(x) = \frac{x1}{x+1}, }[/math] and [math]\displaystyle{ f(x) = \frac 1{x+1}+\frac 3x\frac 2{x1}. }[/math]
 An algebraic function is the same, with nth roots and roots of polynomials also allowed.
 An elementary function^{[note 4]} is the same, with logarithms and exponential functions allowed.
Inverse and implicit functions
A function [math]\displaystyle{ f\colon X\to Y, }[/math] with domain X and codomain Y, is bijective, if for every y in Y, there is one and only one element x in X such that y = f(x). In this case, the inverse function of f is the function [math]\displaystyle{ f^{1}\colon Y \to X }[/math] that maps [math]\displaystyle{ y\in Y }[/math] to the element [math]\displaystyle{ x\in X }[/math] such that y = f(x). For example, the natural logarithm is a bijective function from the positive real numbers to the real numbers. It thus has an inverse, called the exponential function, that maps the real numbers onto the positive numbers.
If a function [math]\displaystyle{ f\colon X\to Y }[/math] is not bijective, it may occur that one can select subsets [math]\displaystyle{ E\subseteq X }[/math] and [math]\displaystyle{ F\subseteq Y }[/math] such that the restriction of f to E is a bijection from E to F, and has thus an inverse. The inverse trigonometric functions are defined this way. For example, the cosine function induces, by restriction, a bijection from the interval [0, π] onto the interval [−1, 1], and its inverse function, called arccosine, maps [−1, 1] onto [0, π]. The other inverse trigonometric functions are defined similarly.
More generally, given a binary relation R between two sets X and Y, let E be a subset of X such that, for every [math]\displaystyle{ x\in E, }[/math] there is some [math]\displaystyle{ y\in Y }[/math] such that x R y. If one has a criterion allowing selecting such an y for every [math]\displaystyle{ x\in E, }[/math] this defines a function [math]\displaystyle{ f\colon E\to Y, }[/math] called an implicit function, because it is implicitly defined by the relation R.
For example, the equation of the unit circle [math]\displaystyle{ x^2+y^2=1 }[/math] defines a relation on real numbers. If −1 < x < 1 there are two possible values of y, one positive and one negative. For x = ± 1, these two values become both equal to 0. Otherwise, there is no possible value of y. This means that the equation defines two implicit functions with domain [−1, 1] and respective codomains [0, +∞) and (−∞, 0].
In this example, the equation can be solved in y, giving [math]\displaystyle{ y=\pm \sqrt{1x^2}, }[/math] but, in more complicated examples, this is impossible. For example, the relation [math]\displaystyle{ y^5+y+x=0 }[/math] defines y as an implicit function of x, called the Bring radical, which has [math]\displaystyle{ \mathbb R }[/math] as domain and range. The Bring radical cannot be expressed in terms of the four arithmetic operations and nth roots.
The implicit function theorem provides mild differentiability conditions for existence and uniqueness of an implicit function in the neighborhood of a point.
Using differential calculus
Many functions can be defined as the antiderivative of another function. This is the case of the natural logarithm, which is the antiderivative of 1/x that is 0 for x = 1. Another common example is the error function.
More generally, many functions, including most special functions, can be defined as solutions of differential equations. The simplest example is probably the exponential function, which can be defined as the unique function that is equal to its derivative and takes the value 1 for x = 0.
Power series can be used to define functions on the domain in which they converge. For example, the exponential function is given by [math]\displaystyle{ e^x = \sum_{n=0}^{\infty} {x^n \over n!} }[/math]. However, as the coefficients of a series are quite arbitrary, a function that is the sum of a convergent series is generally defined otherwise, and the sequence of the coefficients is the result of some computation based on another definition. Then, the power series can be used to enlarge the domain of the function. Typically, if a function for a real variable is the sum of its Taylor series in some interval, this power series allows immediately enlarging the domain to a subset of the complex numbers, the disc of convergence of the series. Then analytic continuation allows enlarging further the domain for including almost the whole complex plane. This process is the method that is generally used for defining the logarithm, the exponential and the trigonometric functions of a complex number.
By recurrence
Functions whose domain are the nonnegative integers, known as sequences, are often defined by recurrence relations.
The factorial function on the nonnegative integers ([math]\displaystyle{ n\mapsto n! }[/math]) is a basic example, as it can be defined by the recurrence relation
 [math]\displaystyle{ n!=n(n1)!\quad\text{for}\quad n\gt 0, }[/math]
and the initial condition
 [math]\displaystyle{ 0!=1. }[/math]
Representing a function
A graph is commonly used to give an intuitive picture of a function. As an example of how a graph helps to understand a function, it is easy to see from its graph whether a function is increasing or decreasing. Some functions may also be represented by bar charts.
Graphs and plots
Given a function [math]\displaystyle{ f\colon X\to Y, }[/math] its graph is, formally, the set
 [math]\displaystyle{ G=\{(x,f(x))\mid x\in X\}. }[/math]
In the frequent case where X and Y are subsets of the real numbers (or may be identified with such subsets, e.g. intervals), an element [math]\displaystyle{ (x,y)\in G }[/math] may be identified with a point having coordinates x, y in a 2dimensional coordinate system, e.g. the Cartesian plane. Parts of this may create a plot that represents (parts of) the function. The use of plots is so ubiquitous that they too are called the graph of the function. Graphic representations of functions are also possible in other coordinate systems. For example, the graph of the square function
 [math]\displaystyle{ x\mapsto x^2, }[/math]
consisting of all points with coordinates [math]\displaystyle{ (x, x^2) }[/math] for [math]\displaystyle{ x\in \R, }[/math] yields, when depicted in Cartesian coordinates, the well known parabola. If the same quadratic function [math]\displaystyle{ x\mapsto x^2, }[/math] with the same formal graph, consisting of pairs of numbers, is plotted instead in polar coordinates [math]\displaystyle{ (r,\theta) =(x,x^2), }[/math] the plot obtained is Fermat's spiral.
Tables
A function can be represented as a table of values. If the domain of a function is finite, then the function can be completely specified in this way. For example, the multiplication function [math]\displaystyle{ f\colon\{1,\ldots,5\}^2 \to \mathbb{R} }[/math] defined as [math]\displaystyle{ f(x,y)=xy }[/math] can be represented by the familiar multiplication table
y x

1  2  3  4  5 

1  1  2  3  4  5 
2  2  4  6  8  10 
3  3  6  9  12  15 
4  4  8  12  16  20 
5  5  10  15  20  25 
On the other hand, if a function's domain is continuous, a table can give the values of the function at specific values of the domain. If an intermediate value is needed, interpolation can be used to estimate the value of the function. For example, a portion of a table for the sine function might be given as follows, with values rounded to 6 decimal places:
x  sin x 

1.289  0.960557 
1.290  0.960835 
1.291  0.961112 
1.292  0.961387 
1.293  0.961662 
Before the advent of handheld calculators and personal computers, such tables were often compiled and published for functions such as logarithms and trigonometric functions.
Bar chart
Bar charts are often used for representing functions whose domain is a finite set, the natural numbers, or the integers. In this case, an element x of the domain is represented by an interval of the xaxis, and the corresponding value of the function, f(x), is represented by a rectangle whose base is the interval corresponding to x and whose height is f(x) (possibly negative, in which case the bar extends below the xaxis).
General properties
This section describes general properties of functions, that are independent of specific properties of the domain and the codomain.
Standard functions
There are a number of standard functions that occur frequently:
 For every set X, there is a unique function, called the empty function, or empty map, from the empty set to X. The graph of an empty function is the empty set.^{[note 5]} The existence of empty functions is needed both for the coherency of the theory and for avoiding exceptions concerning the empty set in many statements. Under the usual settheoretic definition of a function as an ordered triplet (or equivalent ones), there is exactly one empty function for each set, thus the empty function [math]\displaystyle{ \varnothing \mapsto X }[/math] is not equal to [math]\displaystyle{ \varnothing \mapsto Y }[/math] if and only if [math]\displaystyle{ X\ne Y }[/math], although their graph are both the empty set.
 For every set X and every singleton set {s}, there is a unique function from X to {s}, which maps every element of X to s. This is a surjection (see below) unless X is the empty set.
 Given a function [math]\displaystyle{ f\colon X\to Y, }[/math] the canonical surjection of f onto its image [math]\displaystyle{ f(X)=\{f(x)\mid x\in X\} }[/math] is the function from X to f(X) that maps x to f(x).
 For every subset A of a set X, the inclusion map of A into X is the injective (see below) function that maps every element of A to itself.
 The identity function on a set X, often denoted by id_{X}, is the inclusion of X into itself.
Function composition
Given two functions [math]\displaystyle{ f\colon X\to Y }[/math] and [math]\displaystyle{ g\colon Y\to Z }[/math] such that the domain of g is the codomain of f, their composition is the function [math]\displaystyle{ g \circ f\colon X \rightarrow Z }[/math] defined by
 [math]\displaystyle{ (g \circ f)(x) = g(f(x)). }[/math]
That is, the value of [math]\displaystyle{ g \circ f }[/math] is obtained by first applying f to x to obtain y = f(x) and then applying g to the result y to obtain g(y) = g(f(x)). In the notation the function that is applied first is always written on the right.
The composition [math]\displaystyle{ g\circ f }[/math] is an operation on functions that is defined only if the codomain of the first function is the domain of the second one. Even when both [math]\displaystyle{ g \circ f }[/math] and [math]\displaystyle{ f \circ g }[/math] satisfy these conditions, the composition is not necessarily commutative, that is, the functions [math]\displaystyle{ g \circ f }[/math] and [math]\displaystyle{ f \circ g }[/math] need not be equal, but may deliver different values for the same argument. For example, let f(x) = x^{2} and g(x) = x + 1, then [math]\displaystyle{ g(f(x))=x^2+1 }[/math] and [math]\displaystyle{ f(g(x)) = (x+1)^2 }[/math] agree just for [math]\displaystyle{ x=0. }[/math]
The function composition is associative in the sense that, if one of [math]\displaystyle{ (h\circ g)\circ f }[/math] and [math]\displaystyle{ h\circ (g\circ f) }[/math] is defined, then the other is also defined, and they are equal. Thus, one writes
 [math]\displaystyle{ h\circ g\circ f = (h\circ g)\circ f = h\circ (g\circ f). }[/math]
The identity functions [math]\displaystyle{ \operatorname{id}_X }[/math] and [math]\displaystyle{ \operatorname{id}_Y }[/math] are respectively a right identity and a left identity for functions from X to Y. That is, if f is a function with domain X, and codomain Y, one has [math]\displaystyle{ f\circ \operatorname{id}_X = \operatorname{id}_Y \circ f = f. }[/math]
Image and preimage
Let [math]\displaystyle{ f\colon X\to Y. }[/math] The image under f of an element x of the domain X is f(x).^{[6]} If A is any subset of X, then the image of A under f, denoted f(A), is the subset of the codomain Y consisting of all images of elements of A,^{[6]} that is,
 [math]\displaystyle{ f(A)=\{f(x)\mid x\in A\}. }[/math]
The image of f is the image of the whole domain, that is, f(X).^{[16]} It is also called the range of f,^{[6]}^{[7]}^{[8]}^{[9]} although the term range may also refer to the codomain.^{[9]}^{[16]}^{[17]}
On the other hand, the inverse image or preimage under f of an element y of the codomain Y is the set of all elements of the domain X whose images under f equal y.^{[6]} In symbols, the preimage of y is denoted by [math]\displaystyle{ f^{1}(y) }[/math] and is given by the equation
 [math]\displaystyle{ f^{1}(y) = \{x \in X \mid f(x) = y\}. }[/math]
Likewise, the preimage of a subset B of the codomain Y is the set of the preimages of the elements of B, that is, it is the subset of the domain X consisting of all elements of X whose images belong to B.^{[6]} It is denoted by [math]\displaystyle{ f^{1}(B) }[/math] and is given by the equation
 [math]\displaystyle{ f^{1}(B) = \{x \in X \mid f(x) \in B\}. }[/math]
For example, the preimage of [math]\displaystyle{ \{4, 9\} }[/math] under the square function is the set [math]\displaystyle{ \{3,2,2,3\} }[/math].
By definition of a function, the image of an element x of the domain is always a single element of the codomain. However, the preimage [math]\displaystyle{ f^{1}(y) }[/math] of an element y of the codomain may be empty or contain any number of elements. For example, if f is the function from the integers to themselves that maps every integer to 0, then [math]\displaystyle{ f^{1}(0) = \mathbb{Z} }[/math].
If [math]\displaystyle{ f\colon X\to Y }[/math] is a function, A and B are subsets of X, and C and D are subsets of Y, then one has the following properties:
 [math]\displaystyle{ A\subseteq B \Longrightarrow f(A)\subseteq f(B) }[/math]
 [math]\displaystyle{ C\subseteq D \Longrightarrow f^{1}(C)\subseteq f^{1}(D) }[/math]
 [math]\displaystyle{ A \subseteq f^{1}(f(A)) }[/math]
 [math]\displaystyle{ C \supseteq f(f^{1}(C)) }[/math]
 [math]\displaystyle{ f(f^{1}(f(A)))=f(A) }[/math]
 [math]\displaystyle{ f^{1}(f(f^{1}(C)))=f^{1}(C) }[/math]
The preimage by f of an element y of the codomain is sometimes called, in some contexts, the fiber of y under f.
If a function f has an inverse (see below), this inverse is denoted [math]\displaystyle{ f^{1}. }[/math] In this case [math]\displaystyle{ f^{1}(C) }[/math] may denote either the image by [math]\displaystyle{ f^{1} }[/math] or the preimage by f of C. This is not a problem, as these sets are equal. The notation [math]\displaystyle{ f(A) }[/math] and [math]\displaystyle{ f^{1}(C) }[/math] may be ambiguous in the case of sets that contain some subsets as elements, such as [math]\displaystyle{ \{x, \{x\}\}. }[/math] In this case, some care may be needed, for example, by using square brackets [math]\displaystyle{ f[A], f^{1}[C] }[/math] for images and preimages of subsets and ordinary parentheses for images and preimages of elements.
Injective, surjective and bijective functions
Let [math]\displaystyle{ f\colon X\to Y }[/math] be a function.
The function f is injective (or onetoone, or is an injection) if f(a) ≠ f(b) for any two different elements a and b of X.^{[16]}^{[18]} Equivalently, f is injective if and only if, for any [math]\displaystyle{ y\in Y, }[/math] the preimage [math]\displaystyle{ f^{1}(y) }[/math] contains at most one element. An empty function is always injective. If X is not the empty set, then f is injective if and only if there exists a function [math]\displaystyle{ g\colon Y\to X }[/math] such that [math]\displaystyle{ g\circ f=\operatorname{id}_X, }[/math] that is, if f has a left inverse.^{[18]} Proof: If f is injective, for defining g, one chooses an element [math]\displaystyle{ x_0 }[/math] in X (which exists as X is supposed to be nonempty),^{[note 6]} and one defines g by [math]\displaystyle{ g(y)=x }[/math] if [math]\displaystyle{ y=f(x) }[/math] and [math]\displaystyle{ g(y)=x_0 }[/math] if [math]\displaystyle{ y\not\in f(X). }[/math] Conversely, if [math]\displaystyle{ g\circ f=\operatorname{id}_X, }[/math] and [math]\displaystyle{ y=f(x), }[/math] then [math]\displaystyle{ x=g(y), }[/math] and thus [math]\displaystyle{ f^{1}(y)=\{x\}. }[/math]
The function f is surjective (or onto, or is a surjection) if its range [math]\displaystyle{ f(X) }[/math] equals its codomain [math]\displaystyle{ Y }[/math], that is, if, for each element [math]\displaystyle{ y }[/math] of the codomain, there exists some element [math]\displaystyle{ x }[/math] of the domain such that [math]\displaystyle{ f(x) = y }[/math] (in other words, the preimage [math]\displaystyle{ f^{1}(y) }[/math] of every [math]\displaystyle{ y\in Y }[/math] is nonempty).^{[16]}^{[19]} If, as usual in modern mathematics, the axiom of choice is assumed, then f is surjective if and only if there exists a function [math]\displaystyle{ g\colon Y\to X }[/math] such that [math]\displaystyle{ f\circ g=\operatorname{id}_Y, }[/math] that is, if f has a right inverse.^{[19]} The axiom of choice is needed, because, if f is surjective, one defines g by [math]\displaystyle{ g(y)=x, }[/math] where [math]\displaystyle{ x }[/math] is an arbitrarily chosen element of [math]\displaystyle{ f^{1}(y). }[/math]
The function f is bijective (or is a bijection or a onetoone correspondence) if it is both injective and surjective.^{[16]}^{[20]} That is, f is bijective if, for any [math]\displaystyle{ y\in Y, }[/math] the preimage [math]\displaystyle{ f^{1}(y) }[/math] contains exactly one element. The function f is bijective if and only if it admits an inverse function, that is, a function [math]\displaystyle{ g\colon Y\to X }[/math] such that [math]\displaystyle{ g\circ f=\operatorname{id}_X }[/math] and [math]\displaystyle{ f\circ g=\operatorname{id}_Y. }[/math]^{[20]} (Contrarily to the case of surjections, this does not require the axiom of choice; the proof is straightforward).
Every function [math]\displaystyle{ f\colon X\to Y }[/math] may be factorized as the composition [math]\displaystyle{ i\circ s }[/math] of a surjection followed by an injection, where s is the canonical surjection of X onto f(X) and i is the canonical injection of f(X) into Y. This is the canonical factorization of f.
"Onetoone" and "onto" are terms that were more common in the older English language literature; "injective", "surjective", and "bijective" were originally coined as French words in the second quarter of the 20th century by the Bourbaki group and imported into English. As a word of caution, "a onetoone function" is one that is injective, while a "onetoone correspondence" refers to a bijective function. Also, the statement "f maps X onto Y" differs from "f maps X into B", in that the former implies that f is surjective, while the latter makes no assertion about the nature of f. In a complicated reasoning, the one letter difference can easily be missed. Due to the confusing nature of this older terminology, these terms have declined in popularity relative to the Bourbakian terms, which have also the advantage of being more symmetrical.
Restriction and extension
If [math]\displaystyle{ f\colon X \to Y }[/math] is a function and S is a subset of X, then the restriction of [math]\displaystyle{ f }[/math] to S, denoted [math]\displaystyle{ f_S }[/math], is the function from S to Y defined by
 [math]\displaystyle{ f_S(x) = f(x) }[/math]
for all x in S. Restrictions can be used to define partial inverse functions: if there is a subset S of the domain of a function [math]\displaystyle{ f }[/math] such that [math]\displaystyle{ f_S }[/math] is injective, then the canonical surjection of [math]\displaystyle{ f_S }[/math] onto its image [math]\displaystyle{ f_S(S) = f(S) }[/math] is a bijection, and thus has an inverse function from [math]\displaystyle{ f(S) }[/math] to S. One application is the definition of inverse trigonometric functions. For example, the cosine function is injective when restricted to the interval [0, π]. The image of this restriction is the interval [−1, 1], and thus the restriction has an inverse function from [−1, 1] to [0, π], which is called arccosine and is denoted arccos.
Function restriction may also be used for "gluing" functions together. Let [math]\displaystyle{ X=\bigcup_{i\in I}U_i }[/math] be the decomposition of X as a union of subsets, and suppose that a function [math]\displaystyle{ f_i\colon U_i \to Y }[/math] is defined on each [math]\displaystyle{ U_i }[/math] such that for each pair [math]\displaystyle{ i, j }[/math] of indices, the restrictions of [math]\displaystyle{ f_i }[/math] and [math]\displaystyle{ f_j }[/math] to [math]\displaystyle{ U_i \cap U_j }[/math] are equal. Then this defines a unique function [math]\displaystyle{ f\colon X \to Y }[/math] such that [math]\displaystyle{ f_{U_i} = f_i }[/math] for all i. This is the way that functions on manifolds are defined.
An extension of a function f is a function g such that f is a restriction of g. A typical use of this concept is the process of analytic continuation, that allows extending functions whose domain is a small part of the complex plane to functions whose domain is almost the whole complex plane.
Here is another classical example of a function extension that is encountered when studying homographies of the real line. A homography is a function [math]\displaystyle{ h(x)=\frac{ax+b}{cx+d} }[/math] such that ad − bc ≠ 0. Its domain is the set of all real numbers different from [math]\displaystyle{ d/c, }[/math] and its image is the set of all real numbers different from [math]\displaystyle{ a/c. }[/math] If one extends the real line to the projectively extended real line by including ∞, one may extend h to a bijection from the extended real line to itself by setting [math]\displaystyle{ h(\infty)=a/c }[/math] and [math]\displaystyle{ h(d/c)=\infty }[/math].
Multivariate function
A multivariate function, or function of several variables is a function that depends on several arguments. Such functions are commonly encountered. For example, the position of a car on a road is a function of the time travelled and its average speed.
More formally, a function of n variables is a function whose domain is a set of ntuples. For example, multiplication of integers is a function of two variables, or bivariate function, whose domain is the set of all pairs (2tuples) of integers, and whose codomain is the set of integers. The same is true for every binary operation. More generally, every mathematical operation is defined as a multivariate function.
The Cartesian product [math]\displaystyle{ X_1\times\cdots\times X_n }[/math] of n sets [math]\displaystyle{ X_1, \ldots, X_n }[/math] is the set of all ntuples [math]\displaystyle{ (x_1, \ldots, x_n) }[/math] such that [math]\displaystyle{ x_i\in X_i }[/math] for every i with [math]\displaystyle{ 1 \leq i \leq n }[/math]. Therefore, a function of n variables is a function
 [math]\displaystyle{ f\colon U\to Y, }[/math]
where the domain U has the form
 [math]\displaystyle{ U\subseteq X_1\times\cdots\times X_n. }[/math]
When using function notation, one usually omits the parentheses surrounding tuples, writing [math]\displaystyle{ f(x_1,x_2) }[/math] instead of [math]\displaystyle{ f((x_1,x_2)). }[/math]
In the case where all the [math]\displaystyle{ X_i }[/math] are equal to the set [math]\displaystyle{ \R }[/math] of real numbers, one has a function of several real variables. If the [math]\displaystyle{ X_i }[/math] are equal to the set [math]\displaystyle{ \C }[/math] of complex numbers, one has a function of several complex variables.
It is common to also consider functions whose codomain is a product of sets. For example, Euclidean division maps every pair (a, b) of integers with b ≠ 0 to a pair of integers called the quotient and the remainder:
 [math]\displaystyle{ \begin{align} \text{Euclidean division}\colon\quad \Z\times (\Z\setminus \{0\}) &\to \Z\times\Z\\ (a,b) &\mapsto (\operatorname{quotient}(a,b),\operatorname{remainder}(a,b)). \end{align} }[/math]
The codomain may also be a vector space. In this case, one talks of a vectorvalued function. If the domain is contained in a Euclidean space, or more generally a manifold, a vectorvalued function is often called a vector field.
In calculus
The idea of function, starting in the 17th century, was fundamental to the new infinitesimal calculus. At that time, only realvalued functions of a real variable were considered, and all functions were assumed to be smooth. But the definition was soon extended to functions of several variables and to functions of a complex variable. In the second half of the 19th century, the mathematically rigorous definition of a function was introduced, and functions with arbitrary domains and codomains were defined.
Functions are now used throughout all areas of mathematics. In introductory calculus, when the word function is used without qualification, it means a realvalued function of a single real variable. The more general definition of a function is usually introduced to second or third year college students with STEM majors, and in their senior year they are introduced to calculus in a larger, more rigorous setting in courses such as real analysis and complex analysis.
Real function
A real function is a realvalued function of a real variable, that is, a function whose codomain is the field of real numbers and whose domain is a set of real numbers that contains an interval. In this section, these functions are simply called functions.
The functions that are most commonly considered in mathematics and its applications have some regularity, that is they are continuous, differentiable, and even analytic. This regularity insures that these functions can be visualized by their graphs. In this section, all functions are differentiable in some interval.
Functions enjoy pointwise operations, that is, if f and g are functions, their sum, difference and product are functions defined by
 [math]\displaystyle{ \begin{align} (f+g)(x)&=f(x)+g(x)\\ (fg)(x)&=f(x)g(x)\\ (f\cdot g)(x)&=f(x)\cdot g(x)\\ \end{align}. }[/math]
The domains of the resulting functions are the intersection of the domains of f and g. The quotient of two functions is defined similarly by
 [math]\displaystyle{ \frac fg(x)=\frac{f(x)}{g(x)}, }[/math]
but the domain of the resulting function is obtained by removing the zeros of g from the intersection of the domains of f and g.
The polynomial functions are defined by polynomials, and their domain is the whole set of real numbers. They include constant functions, linear functions and quadratic functions. Rational functions are quotients of two polynomial functions, and their domain is the real numbers with a finite number of them removed to avoid division by zero. The simplest rational function is the function [math]\displaystyle{ x\mapsto \frac 1x, }[/math] whose graph is a hyperbola, and whose domain is the whole real line except for 0.
The derivative of a real differentiable function is a real function. An antiderivative of a continuous real function is a real function that has the original function as a derivative. For example, the function [math]\displaystyle{ x\mapsto\frac 1x }[/math] is continuous, and even differentiable, on the positive real numbers. Thus one antiderivative, which takes the value zero for x = 1, is a differentiable function called the natural logarithm.
A real function f is monotonic in an interval if the sign of [math]\displaystyle{ \frac{f(x)f(y)}{xy} }[/math] does not depend of the choice of x and y in the interval. If the function is differentiable in the interval, it is monotonic if the sign of the derivative is constant in the interval. If a real function f is monotonic in an interval I, it has an inverse function, which is a real function with domain f(I) and image I. This is how inverse trigonometric functions are defined in terms of trigonometric functions, where the trigonometric functions are monotonic. Another example: the natural logarithm is monotonic on the positive real numbers, and its image is the whole real line; therefore it has an inverse function that is a bijection between the real numbers and the positive real numbers. This inverse is the exponential function.
Many other real functions are defined either by the implicit function theorem (the inverse function is a particular instance) or as solutions of differential equations. For example, the sine and the cosine functions are the solutions of the linear differential equation
 [math]\displaystyle{ y''+y=0 }[/math]
such that
 [math]\displaystyle{ \sin 0=0, \quad \cos 0=1, \quad\frac{\partial \sin x}{\partial x}(0)=1, \quad\frac{\partial \cos x}{\partial x}(0)=0. }[/math]
Vectorvalued function
When the elements of the codomain of a function are vectors, the function is said to be a vectorvalued function. These functions are particularly useful in applications, for example modeling physical properties. For example, the function that associates to each point of a fluid its velocity vector is a vectorvalued function.
Some vectorvalued functions are defined on a subset of [math]\displaystyle{ \mathbb{R}^n }[/math] or other spaces that share geometric or topological properties of [math]\displaystyle{ \mathbb{R}^n }[/math], such as manifolds. These vectorvalued functions are given the name vector fields.
Function space
In mathematical analysis, and more specifically in functional analysis, a function space is a set of scalarvalued or vectorvalued functions, which share a specific property and form a topological vector space. For example, the real smooth functions with a compact support (that is, they are zero outside some compact set) form a function space that is at the basis of the theory of distributions.
Function spaces play a fundamental role in advanced mathematical analysis, by allowing the use of their algebraic and topological properties for studying properties of functions. For example, all theorems of existence and uniqueness of solutions of ordinary or partial differential equations result of the study of function spaces.
Multivalued functions
Several methods for specifying functions of real or complex variables start from a local definition of the function at a point or on a neighbourhood of a point, and then extend by continuity the function to a much larger domain. Frequently, for a starting point [math]\displaystyle{ x_0, }[/math] there are several possible starting values for the function.
For example, in defining the square root as the inverse function of the square function, for any positive real number [math]\displaystyle{ x_0, }[/math] there are two choices for the value of the square root, one of which is positive and denoted [math]\displaystyle{ \sqrt {x_0}, }[/math] and another which is negative and denoted [math]\displaystyle{ \sqrt {x_0}. }[/math] These choices define two continuous functions, both having the nonnegative real numbers as a domain, and having either the nonnegative or the nonpositive real numbers as images. When looking at the graphs of these functions, one can see that, together, they form a single smooth curve. It is therefore often useful to consider these two square root functions as a single function that has two values for positive x, one value for 0 and no value for negative x.
In the preceding example, one choice, the positive square root, is more natural than the other. This is not the case in general. For example, let consider the implicit function that maps y to a root x of [math]\displaystyle{ x^33xy =0 }[/math] (see the figure on the right). For y = 0 one may choose either [math]\displaystyle{ 0, \sqrt 3,\text{ or } \sqrt 3 }[/math] for x. By the implicit function theorem, each choice defines a function; for the first one, the (maximal) domain is the interval [−2, 2] and the image is [−1, 1]; for the second one, the domain is [−2, ∞) and the image is [1, ∞); for the last one, the domain is (−∞, 2] and the image is (−∞, −1]. As the three graphs together form a smooth curve, and there is no reason for preferring one choice, these three functions are often considered as a single multivalued function of y that has three values for −2 < y < 2, and only one value for y ≤ −2 and y ≥ −2.
Usefulness of the concept of multivalued functions is clearer when considering complex functions, typically analytic functions. The domain to which a complex function may be extended by analytic continuation generally consists of almost the whole complex plane. However, when extending the domain through two different paths, one often gets different values. For example, when extending the domain of the square root function, along a path of complex numbers with positive imaginary parts, one gets i for the square root of −1; while, when extending through complex numbers with negative imaginary parts, one gets −i. There are generally two ways of solving the problem. One may define a function that is not continuous along some curve, called a branch cut. Such a function is called the principal value of the function. The other way is to consider that one has a multivalued function, which is analytic everywhere except for isolated singularities, but whose value may "jump" if one follows a closed loop around a singularity. This jump is called the monodromy.
In the foundations of mathematics and set theory
The definition of a function that is given in this article requires the concept of set, since the domain and the codomain of a function must be a set. This is not a problem in usual mathematics, as it is generally not difficult to consider only functions whose domain and codomain are sets, which are well defined, even if the domain is not explicitly defined. However, it is sometimes useful to consider more general functions.
For example, the singleton set may be considered as a function [math]\displaystyle{ x\mapsto \{x\}. }[/math] Its domain would include all sets, and therefore would not be a set. In usual mathematics, one avoids this kind of problem by specifying a domain, which means that one has many singleton functions. However, when establishing foundations of mathematics, one may have to use functions whose domain, codomain or both are not specified, and some authors, often logicians, give precise definition for these weakly specified functions.^{[21]}
These generalized functions may be critical in the development of a formalization of the foundations of mathematics. For example, Von Neumann–Bernays–Gödel set theory, is an extension of the set theory in which the collection of all sets is a class. This theory includes the replacement axiom, which may be stated as: If X is a set and F is a function, then F[X] is a set.
In computer science
In computer programming, a function is, in general, a piece of a computer program, which implements the abstract concept of function. That is, it is a program unit that produces an output for each input. However, in many programming languages every subroutine is called a function, even when there is no output, and when the functionality consists simply of modifying some data in the computer memory.
Functional programming is the programming paradigm consisting of building programs by using only subroutines that behave like mathematical functions. For example, if_then_else
is a function that takes three functions as arguments, and, depending on the result of the first function (true or false), returns the result of either the second or the third function. An important advantage of functional programming is that it makes easier program proofs, as being based on a well founded theory, the lambda calculus (see below).
Except for computerlanguage terminology, "function" has the usual mathematical meaning in computer science. In this area, a property of major interest is the computability of a function. For giving a precise meaning to this concept, and to the related concept of algorithm, several models of computation have been introduced, the old ones being general recursive functions, lambda calculus and Turing machine. The fundamental theorem of computability theory is that these three models of computation define the same set of computable functions, and that all the other models of computation that have ever been proposed define the same set of computable functions or a smaller one. The Church–Turing thesis is the claim that every philosophically acceptable definition of a computable function defines also the same functions.
General recursive functions are partial functions from integers to integers that can be defined from
 constant functions,
 successor, and
 projection functions
via the operators
 composition,
 primitive recursion, and
 minimization.
Although defined only for functions from integers to integers, they can model any computable function as a consequence of the following properties:
 a computation is the manipulation of finite sequences of symbols (digits of numbers, formulas, ...),
 every sequence of symbols may be coded as a sequence of bits,
 a bit sequence can be interpreted as the binary representation of an integer.
Lambda calculus is a theory that defines computable functions without using set theory, and is the theoretical background of functional programming. It consists of terms that are either variables, function definitions (𝜆terms), or applications of functions to terms. Terms are manipulated through some rules, (the αequivalence, the βreduction, and the ηconversion), which are the axioms of the theory and may be interpreted as rules of computation.
In its original form, lambda calculus does not include the concepts of domain and codomain of a function. Roughly speaking, they have been introduced in the theory under the name of type in typed lambda calculus. Most kinds of typed lambda calculi can define fewer functions than untyped lambda calculus.
See also
Subpages
 List of types of functions
 List of functions
 Function fitting
 Implicit function
Generalizations
 Higherorder function
 Homomorphism
 Morphism
 Microfunction
 Distribution
 Functor
Related topics
 Associative array
 Closedform expression
 Elementary function
 Functional
 Functional decomposition
 Functional predicate
 Functional programming
 Parametric equation
 Set function
 Simple function
Notes
 ↑ This definition of "graph" refers to a set of pairs of objects. Graphs, in the sense of diagrams, are most applicable to functions from the real numbers to themselves. All functions can be described by sets of pairs but it may not be practical to construct a diagram for functions between other sets (such as sets of matrices).
 ↑ This follows from the axiom of extensionality, which says two sets are the same if and only if they have the same members. Some authors drop codomain from a definition of a function, and in that definition, the notion of equality has to be handled with care; see, for example, "When do two functions become equal?". Stack Exchange. August 19, 2015. https://math.stackexchange.com/q/1403122.
 ↑ called the domain of definition by some authors, notably computer science
 ↑ Here "elementary" has not exactly its common sense: although most functions that are encountered in elementary courses of mathematics are elementary in this sense, some elementary functions are not elementary for the common sense, for example, those that involve roots of polynomials of high degree.
 ↑ By definition, the graph of the empty function to X is a subset of the Cartesian product ∅ × X, and this product is empty.
 ↑ The axiom of choice is not needed here, as the choice is done in a single set.
References
 ↑ Halmos 1970, p. 30; the words map, mapping, transformation, correspondence, and operator are often used synonymously.
 ↑ Halmos 1970
 ↑ Hazewinkel, Michiel, ed. (2001), "Mapping", Encyclopedia of Mathematics, Springer Science+Business Media B.V. / Kluwer Academic Publishers, ISBN 9781556080104, https://www.encyclopediaofmath.org/index.php?title=Main_Page
 ↑ "function  Definition, Types, Examples, & Facts" (in en). https://www.britannica.com/science/functionmathematics.
 ↑ Spivak 2008, p. 39.
 ↑ ^{6.0} ^{6.1} ^{6.2} ^{6.3} ^{6.4} ^{6.5} Hazewinkel, Michiel, ed. (2001), "Function", Encyclopedia of Mathematics, Springer Science+Business Media B.V. / Kluwer Academic Publishers, ISBN 9781556080104, https://www.encyclopediaofmath.org/index.php?title=Main_Page
 ↑ ^{7.0} ^{7.1} Template:Taalman Kohn Calculus
 ↑ ^{8.0} ^{8.1} Template:Trench Intro Real Analysis
 ↑ ^{9.0} ^{9.1} ^{9.2} Template:Thomson Bruckner Bruckner Elementary Real Analysis
 ↑ Schmidt, Gunther (2011). "§5.1 Functions". Relational Mathematics. Encyclopedia of Mathematics and its Applications. 132. Cambridge University Press. pp. 49–60. ISBN 9780521762687.
 ↑ Ron Larson, Bruce H. Edwards (2010), Calculus of a Single Variable, Cengage Learning, p. 19, ISBN 9780538735520
 ↑ Weisstein, Eric W.. "Map" (in en). http://mathworld.wolfram.com/Map.html.
 ↑ ^{13.0} ^{13.1} Lang, Serge (1987). "III §1. Mappings". Linear Algebra (3rd ed.). Springer. p. 43. ISBN 9780387964126. https://books.google.com/books?id=0DUXym7QWfYC&pg=PA43. "A function is a special type of mapping, namely it is a mapping from a set into the set of numbers, i.e. into, R, or C or into a field K."
 ↑ ^{14.0} ^{14.1} Apostol, T.M. (1981). Mathematical Analysis (2nd ed.). AddisonWesley. p. 35. ISBN 9780201002881. OCLC 928947543.
 ↑ James & James 1992, p. 48
 ↑ ^{16.0} ^{16.1} ^{16.2} ^{16.3} ^{16.4} Template:Princeton Companion to Mathematics
 ↑ Quantities and Units  Part 2: Mathematical signs and symbols to be used in the natural sciences and technology, p. 15. ISO 800002 (ISO/IEC 20091201)
 ↑ ^{18.0} ^{18.1} Hazewinkel, Michiel, ed. (2001), "Injection", Encyclopedia of Mathematics, Springer Science+Business Media B.V. / Kluwer Academic Publishers, ISBN 9781556080104, https://www.encyclopediaofmath.org/index.php?title=Main_Page
 ↑ ^{19.0} ^{19.1} Hazewinkel, Michiel, ed. (2001), "Surjection", Encyclopedia of Mathematics, Springer Science+Business Media B.V. / Kluwer Academic Publishers, ISBN 9781556080104, https://www.encyclopediaofmath.org/index.php?title=Main_Page
 ↑ ^{20.0} ^{20.1} Hazewinkel, Michiel, ed. (2001), "Bijection", Encyclopedia of Mathematics, Springer Science+Business Media B.V. / Kluwer Academic Publishers, ISBN 9781556080104, https://www.encyclopediaofmath.org/index.php?title=Main_Page
 ↑ Gödel 1940, p. 16; Jech 2003, p. 11; Cunningham 2016, p. 57
Sources
 Bartle, Robert (1976). The Elements of Real Analysis (2nd ed.). Wiley. ISBN 9780471054658. OCLC 465115030.
 Bloch, Ethan D. (2011). Proofs and Fundamentals: A First Course in Abstract Mathematics. Springer. ISBN 9781441971265. https://books.google.com/books?id=QJ_537n8zKYC.
 Cunningham, Daniel W. (2016). Set theory: A First Course. Cambridge University Press. ISBN 9781107120327.
 Gödel, Kurt (1940). The Consistency of the Continuum Hypothesis. Princeton University Press. ISBN 9780691079271.
 Halmos, Paul R. (1970). Naive Set Theory. SpringerVerlag. ISBN 9780387900926. https://books.google.com/books?id=x6cZBQ9qtgoC.
 Jech, Thomas (2003). Set theory (3rd ed.). SpringerVerlag. ISBN 9783540440857.
 Spivak, Michael (2008). Calculus (4th ed.). Publish or Perish. ISBN 9780914098911. https://books.google.com/books?id=7JKVu_9InRUC.
Further reading
 Anton, Howard (1980). Calculus with Analytical Geometry. John Wiley & Sons. ISBN 9780471032489. https://archive.org/details/studentssolution00anto.
 Bartle, Robert G. (1976). The Elements of Real Analysis (2nd ed.). Wiley. ISBN 9780471054641.
 Dubinsky, Ed; Harel, Guershon (1992). The Concept of Function: Aspects of Epistemology and Pedagogy. Mathematical Association of America. ISBN 9780883850817.
 Hammack, Richard (2009). "12. Functions". Book of Proof. Virginia Commonwealth University. http://www.people.vcu.edu/~rhammack/BookOfProof/Functions.pdf. Retrieved 20120801.
 Husch, Lawrence S. (2001). Visual Calculus. University of Tennessee. http://archives.math.utk.edu/visual.calculus/. Retrieved 20070927.
 Katz, Robert (1964). Axiomatic Analysis. D. C. Heath and Company.
 Kleiner, Israel (1989). "Evolution of the Function Concept: A Brief Survey". The College Mathematics Journal 20 (4): 282–300. doi:10.2307/2686848.
 Lützen, Jesper (2003). "Between rigor and applications: Developments in the concept of function in mathematical analysis". in Porter, Roy. The Cambridge History of Science: The modern physical and mathematical sciences. Cambridge University Press. ISBN 9780521571999. https://books.google.com/books?id=B3WvWhJTTX8C&pg=PA468. An approachable and diverting historical presentation.
 Malik, M. A. (1980). "Historical and pedagogical aspects of the definition of function". International Journal of Mathematical Education in Science and Technology 11 (4): 489–492. doi:10.1080/0020739800110404.
 Reichenbach, Hans (1947). Elements of Symbolic Logic. Dover. ISBN 0486240045.
 Ruthing, D. (1984). "Old Intelligencer: Some definitions of the concept of function from Bernoulli, Joh. to Bourbaki, N.". Mathematical Intelligencer 6 (4): 71–78. doi:10.1007/BF03026743.
 Thomas, George B.; Finney, Ross L. (1995). Calculus and Analytic Geometry (9th ed.). AddisonWesley. ISBN 9780201531749. https://archive.org/details/calculusanalytic00geor_0.
External links
 Hazewinkel, Michiel, ed. (2001), "Function", Encyclopedia of Mathematics, Springer Science+Business Media B.V. / Kluwer Academic Publishers, ISBN 9781556080104, https://www.encyclopediaofmath.org/index.php?title=p/f041940
 The Wolfram Functions Site gives formulae and visualizations of many mathematical functions.
 NIST Digital Library of Mathematical Functions
Original source: https://en.wikipedia.org/wiki/Function (mathematics).
Read more 