Bijection, injection and surjection
surjective  nonsurjective  

injective 
bijective 
injectiveonly 
non
injective 
surjectiveonly 

In mathematics, injections, surjections and bijections are classes of functions distinguished by the manner in which arguments (input expressions from the domain) and images (output expressions from the codomain) are related or mapped to each other.
A function maps elements from its domain to elements in its codomain. Given a function
 The function is injective (onetoone) if every element of the codomain is mapped to by at most one element of the domain. An injective function is an injection. Notationally:
 Or, equivalently (using logical transposition),
 The function is surjective (onto) if every element of the codomain is mapped to by at least one element of the domain. (That is, the image and the codomain of the function are equal.) A surjective function is a surjection. Notationally:
 The function is bijective (onetoone and onto or onetoone correspondence) if every element of the codomain is mapped to by exactly one element of the domain. (That is, the function is both injective and surjective.) A bijective function is a bijection.
An injective function need not be surjective (not all elements of the codomain may be associated with arguments), and a surjective function need not be injective (some images may be associated with more than one argument). The four possible combinations of injective and surjective features are illustrated in the diagrams to the right.
Injection
A function is injective (onetoone) if every possible element of the codomain is mapped to by at most one argument. Equivalently, a function is injective if it maps distinct arguments to distinct images. An injective function is an injection. The formal definition is the following.
 The function is injective iff for all , we have
 A function f : X → Y is injective if and only if X is empty or f is leftinvertible; that is, there is a function g : f(X) → X such that g o f = identity function on X. Here f(X) is the image of f.
 Since every function is surjective when its codomain is restricted to its image, every injection induces a bijection onto its image. More precisely, every injection f : X → Y can be factored as a bijection followed by an inclusion as follows. Let f_{R} : X → f(X) be f with codomain restricted to its image, and let i : f(X) → Y be the inclusion map from f(X) into Y. Then f = i o f_{R}. A dual factorisation is given for surjections below.
 The composition of two injections is again an injection, but if g o f is injective, then it can only be concluded that f is injective. See the figure at right.
 Every embedding is injective.
Surjection
A function is surjective (onto) if every possible image is mapped to by at least one argument. In other words, every element in the codomain has nonempty preimage. Equivalently, a function is surjective if its image is equal to its codomain. A surjective function is a surjection. The formal definition is the following.
 The function is surjective iff for all , there is such that
 A function f : X → Y is surjective if and only if it is rightinvertible, that is, if and only if there is a function g: Y → X such that f o g = identity function on Y. (This statement is equivalent to the axiom of choice.)
 By collapsing all arguments mapping to a given fixed image, every surjection induces a bijection defined on a quotient of its domain. More precisely, every surjection f : X → Y can be factored as a nonbijection followed by a bijection as follows. Let X/~ be the equivalence classes of X under the following equivalence relation: x ~ y if and only if f(x) = f(y). Equivalently, X/~ is the set of all preimages under f. Let P(~) : X → X/~ be the projection map which sends each x in X to its equivalence class [x]_{~}, and let f_{P} : X/~ → Y be the welldefined function given by f_{P}([x]_{~}) = f(x). Then f = f_{P} o P(~). A dual factorisation is given for injections above.
 The composition of two surjections is again a surjection, but if g o f is surjective, then it can only be concluded that g is surjective. See the figure.
Bijection
A function is bijective if it is both injective and surjective. A bijective function is a bijection (onetoone correspondence). A function is bijective if and only if every possible image is mapped to by exactly one argument. This equivalent condition is formally expressed as follow.
 The function is bijective iff for all , there is a unique such that
 A function f : X → Y is bijective if and only if it is invertible, that is, there is a function g: Y → X such that g o f = identity function on X and f o g = identity function on Y. This function maps each image to its unique preimage.
 The composition of two bijections is again a bijection, but if g o f is a bijection, then it can only be concluded that f is injective and g is surjective. (See the figure at right and the remarks above regarding injections and surjections.)
 The bijections from a set to itself form a group under composition, called the symmetric group.
Cardinality
Suppose you want to define what it means for two sets to "have the same number of elements". One way to do this is to say that two sets "have the same number of elements" if and only if all the elements of one set can be paired with the elements of the other, in such a way that each element is paired with exactly one element. Accordingly, we can define two sets to "have the same number of elements" if there is a bijection between them. We say that the two sets have the same cardinality.
Likewise, we can say that set "has fewer than or the same number of elements" as set if there is an injection from to . We can also say that set "has fewer than the number of elements" in set if there is an injection from to but not a bijection between and .
Examples
It is important to specify the domain and codomain of each function since by changing these, functions which we think of as the same may have different jectivity.
Injective and surjective (bijective)
 For every set X the identity function id_{X} and thus specifically .
 and thus also its inverse .
 The exponential function and thus also its inverse the natural logarithm
Injective and nonsurjective
 The exponential function
Noninjective and surjective
Noninjective and nonsurjective
Properties
 For every function f, subset X of the domain and subset Y of the codomain we have X ⊂ f^{ −1}(f(X)) and f(f^{ −1}(Y)) ⊂ Y. If f is injective we have X = f^{ −1}(f(X)) and if f is surjective we have f(f^{ −1}(Y)) = Y.
 For every function h : X → Y we can define a surjection H : X → h(X) : x → h(x) and an injection I : h(X) → Y : x → x. It follows that h = I ∘ H. This decomposition is unique up to isomorphism.
Category theory
In the category of sets, injections, surjections, and bijections correspond precisely to monomorphisms, epimorphisms, and isomorphisms, respectively.
History
This terminology was originally coined by the Bourbaki group.
See also
 Bijective function
 Horizontal line test
 Injective module
 Injective function
 Permutation
 Surjective function