In mathematics, specifically in category theory, an exponential object or map object is the categorical generalization of a function space in set theory. Categories with all finite products and exponential objects are called cartesian closed categories. Categories (such as subcategories of Top) without adjoined products may still have an exponential law.
Let be a category, let and be objects of , and let have all binary products with . An object together with a morphism is an exponential object if for any object and morphism there is a unique morphism (called the transpose of ) such that the following diagram commutes:
This assignment of a unique to each establishes an isomorphism of hom-sets,
If exists for all objects in , then the functor defined on objects by and on arrows by , is a right adjoint to the product functor . For this reason, the morphisms and are sometimes called exponential adjoints of one another.
Alternatively, the exponential object may be defined through equations:
- Existence of is guaranteed by existence of the operation .
- Commutativity of the diagrams above is guaranteed by the equality .
- Uniqueness of is guaranteed by the equality .
The exponential is given by a universal morphism from the product functor to the object . This universal morphism consists of an object and a morphism .
In the category of sets, an exponential object is the set of all functions . The map is just the evaluation map, which sends the pair to . For any map the map is the curried form of :
A Heyting algebra is just a bounded lattice that has all exponential objects. Heyting implication, , is an alternative notation for . The above adjunction results translate to implication () being right adjoint to meet (). This adjunction can be written as or more fully as:
In the category of topological spaces, the exponential object exists provided that is a locally compact Hausdorff space. In that case, the space is the set of all continuous functions from to together with the compact-open topology. The evaluation map is the same as in the category of sets; it is continuous with the above topology. If is not locally compact Hausdorff, the exponential object may not exist (the space still exists, but it may fail to be an exponential object since the evaluation function need not be continuous). For this reason the category of topological spaces fails to be cartesian closed.
However, the category of locally compact topological spaces is not cartesian closed either, since need not be locally compact for locally compact spaces and . A cartesian closed category of spaces is, for example, given by the full subcategory spanned by the compactly generated Hausdorff spaces.
In functional programming languages, the morphism is often called , and the syntax is often written . The morphism here must not to be confused with the eval function in some programming languages, which evaluates quoted expressions.