In category theory, a

^{''Y''} in ''C''.
The first two conditions can be combined to the single requirement that any finite (possibly empty) family of objects of ''C'' admit a product in ''C'', because of the natural _{''Y''}) has a ^{''Y''}, for all objects ''Y'' in ''C''.
For locally small categories, this can be expressed by the existence of a bijection between the

^{''Z''} include ''p''_{*} and ''pâˆ˜-''. Alternate notations for the operation ''Z''^{''p''} include ''p''^{*} and ''-âˆ˜p''.
Evaluation maps can be chained as
:$Z^Y\; \backslash times\; Y^X\; \backslash times\; X\; \backslash xrightarrow\; Z^Y\; \backslash times\; Y\; \backslash xrightarrow\; Z$
the corresponding arrow under the exponential adjunction
:$c\_\; :\; Z^Y\; \backslash times\; Y^X\; \backslash to\; Z^X$
is called the (internal) composition map.
In the particular case of the category Set, this is the ordinary composition operation:
:$c\_(g,f)\; =\; g\; \backslash circ\; f.$

^{''Y''} corresponding to maps whose composite with ''p'' is the identity:
:$\backslash begin\; \backslash Gamma\_Y(p)\; \&\backslash to\&\; X^Y\; \backslash \backslash \; \backslash downarrow\; \&\; \&\; \backslash downarrow\; \backslash \backslash \; 1\; \&\backslash to\&\; Y^Y\; \backslash end$
where the arrow on the right is ''p''^{''Y''} and the arrow on the bottom corresponds to the identity on ''Y''. Then Î“_{''Y''}(''p'') is called the object of sections of ''p''. It is often abbreviated as Î“_{''Y''}(''X'').
If Î“_{''Y''}(''p'') exists for every morphism ''p'' with codomain ''Y'', then it can be assembled into a functor Î“_{''Y''} : ''C''/''Y'' â†’ ''C'' on the slice category, which is right adjoint to a variant of the product functor:
: $\backslash hom\_(X\; \backslash times\; Y\; \backslash xrightarrow\; Y,\; Z\; \backslash xrightarrow\; Y)\; \backslash cong\; \backslash hom\_C(X,\; \backslash Gamma\_Y(p)).$
The exponential by ''Y'' can be expressed in terms of sections:
: $Z^Y\; \backslash cong\; \backslash Gamma\_Y(Z\; \backslash times\; Y\; \backslash xrightarrow\; Y).$

^{''Y''} is the set of all functions from ''Y'' to ''Z''. The adjointness is expressed by the following fact: the function ''f'' : ''X''Ã—''Y'' â†’ ''Z'' is naturally identified with the curried function ''g'' : ''X'' â†’ ''Z''^{''Y''} defined by ''g''(''x'')(''y'') = ''f''(''x'',''y'') for all ''x'' in ''X'' and ''y'' in ''Y''.
* The category of ^{''Y''} is the set of all functions from ''Y'' to ''Z'' with ''G'' action defined by (''g''.''F'')(''y'') = F(''g''^{−1}.y) for all ''g'' in ''G'', ''F'':''Y'' â†’ ''Z'' and ''y'' in ''Y''.
* The category of finite ''G''-sets is also Cartesian closed.
* The category Cat of all small categories (with functors as morphisms) is Cartesian closed; the exponential ''C''^{''D''} is given by the ^{''C''} consisting of all covariant functors from ''C'' into the category of sets, with natural transformations as morphisms, is Cartesian closed. If ''F'' and ''G'' are two functors from ''C'' to Set, then the exponential ''F''^{''G''} is the functor whose value on the object ''X'' of ''C'' is given by the set of all natural transformations from to ''F''.
** The earlier example of ''G''-sets can be seen as a special case of functor categories: every group can be considered as a one-object category, and ''G''-sets are nothing but functors from this category to Set
** The category of all ^{op} → Set) is Cartesian closed.
* Even more generally, every elementary ^{''V''} is the interior of .
* A category with a ^{''C''} for small categories ''C''.
* The category ''LH'' whose objects are topological spaces and whose morphisms are ^{*} : ''C/Y'' â†’ ''C/X'' given by taking pullbacks has a right adjoint, then ''C'' is locally Cartesian closed.
* If ''C'' is locally Cartesian closed, then all of its slice categories ''C/X'' are also locally Cartesian closed.
Non-examples of locally Cartesian closed categories include:
* Cat is not locally Cartesian closed.

^{''Y''}). In

^{*} : ''C/Y'' â†’ ''C/X'' which has both a left and a right adjoint.
The left adjoint $\backslash Sigma\_p\; :\; C/X\; \backslash to\; C/Y$ is called the dependent sum and is given by composition $p\; \backslash circ\; (-)$.
The right adjoint $\backslash Pi\_p\; :\; C/X\; \backslash to\; C/Y$ is called the dependent product.
The exponential by ''P'' in ''C/Y'' can be expressed in terms of the dependent product by the formula $Q^P\; \backslash cong\; \backslash Pi\_p(p^*(Q))$.
The reason for these names is because, when interpreting ''P'' as a

^{''Y''})^{''Z''} and (''X''^{''Z''})^{''Y''} are isomorphic for all objects ''X'', ''Y'' and ''Z''. We write this as the "equation"
:(''x''^{''y''})^{''z''} = (''x''^{''z''})^{''y''}.
One may ask what other such equations are valid in all Cartesian closed categories. It turns out that all of them follow logically from the following axioms:
*''x''Ã—(''y''Ã—''z'') = (''x''Ã—''y'')Ã—''z''
*''x''Ã—''y'' = ''y''Ã—''x''
*''x''Ã—1 = ''x'' (here 1 denotes the terminal object of ''C'')
*1^{''x''} = 1
*''x''^{1} = ''x''
*(''x''Ã—''y'')^{''z''} = ''x''^{''z''}Ã—''y''^{''z''}
*(''x''^{''y''})^{''z''} = ''x''^{(''y''Ã—''z'')}

^{(''y'' + ''z'')} = ''x^{y}Ã—x^{z}''
*0 + ''x'' = ''x''
*''x''Ã—0 = 0
*''x''^{0} = 1
Note however that the above list is not complete; type isomorphism in the free BCCC is not finitely axiomatizable, and its decidability is still an open problem.

*

category
Category, plural categories, may refer to:
Philosophy and general uses
*Categorization, categories in cognitive science, information science and generally
* Category of being
* ''Categories'' (Aristotle)
* Category (Kant)
* Categories (Peirce) ...

is Cartesian closed if, roughly speaking, any morphism defined on a product
Product may refer to:
Business
* Product (business), an item that serves as a solution to a specific consumer problem.
* Product (project management), a deliverable or set of deliverables that contribute to a business solution
Mathematics
* Produ ...

of two objects
Object may refer to:
General meanings
* Object (philosophy), a thing, being, or concept
** Object (abstract), an object which does not exist at any particular time or place
** Physical object, an identifiable collection of matter
* Goal, an ...

can be naturally identified with a morphism defined on one of the factors. These categories are particularly important in mathematical logic
Mathematical logic is the study of formal logic within mathematics. Major subareas include model theory, proof theory, set theory, and recursion theory. Research in mathematical logic commonly addresses the mathematical properties of formal ...

and the theory of programming, in that their internal language
__NOTOC__
Categorical logic is the branch of mathematics in which tools and concepts from category theory are applied to the study of mathematical logic. It is also notable for its connections to theoretical computer science.
In broad terms, categ ...

is the simply typed lambda calculus
The simply typed lambda calculus (\lambda^\to), a form
of type theory, is a typed interpretation of the lambda calculus with only one type constructor (\to) that builds function types. It is the canonical and simplest example of a typed lambda c ...

. They are generalized by closed monoidal categories, whose internal language, linear type system
Substructural type systems are a family of type systems analogous to substructural logics where one or more of the structural rules are absent or only allowed under controlled circumstances. Such systems are useful for constraining access to sy ...

s, are suitable for both quantum and classical computation.
Etymology

Named after (1596â€“1650), French philosopher, mathematician, and scientist, whose formulation of analytic geometry gave rise to the concept of Cartesian product, which was later generalized to the notion ofcategorical product
In category theory, the product of two (or more) objects in a category is a notion designed to capture the essence behind constructions in other areas of mathematics such as the Cartesian product of sets, the direct product of groups or ring ...

.
Definition

The category ''C'' is called Cartesian closedif and only if
In logic and related fields such as mathematics and philosophy, "if and only if" (shortened as "iff") is a biconditional logical connective between statements, where either both statements are true or both are false.
The connective is b ...

it satisfies the following three properties:
* It has a terminal object
In category theory, a branch of mathematics, an initial object of a category is an object in such that for every object in , there exists precisely one morphism .
The dual notion is that of a terminal object (also called terminal element): ...

.
* Any two objects ''X'' and ''Y'' of ''C'' have a product
Product may refer to:
Business
* Product (business), an item that serves as a solution to a specific consumer problem.
* Product (project management), a deliverable or set of deliverables that contribute to a business solution
Mathematics
* Produ ...

''X'' Ã—''Y'' in ''C''.
* Any two objects ''Y'' and ''Z'' of ''C'' have an exponential
Exponential may refer to any of several mathematical topics related to exponentiation, including:
*Exponential function, also:
**Matrix exponential, the matrix analogue to the above
*Exponential decay, decrease at a rate proportional to value
*Expo ...

''Z''associativity
In mathematics, the associative property is a property of some binary operations, which means that rearranging the parentheses in an expression will not change the result. In propositional logic, associativity is a valid rule of replacement ...

of the categorical product and because the empty product
In mathematics, an empty product, or nullary product or vacuous product, is the result of multiplying no factors. It is by convention equal to the multiplicative identity (assuming there is an identity for the multiplication operation in question ...

in a category is the terminal object of that category.
The third condition is equivalent to the requirement that the functor
In mathematics, specifically category theory, a functor is a mapping between categories. Functors were first considered in algebraic topology, where algebraic objects (such as the fundamental group) are associated to topological spaces, and m ...

â€“ Ã—''Y'' (i.e. the functor from ''C'' to ''C'' that maps objects ''X'' to ''X'' Ã—''Y'' and morphisms Ï† to Ï†Ã—idright adjoint
In mathematics, specifically category theory, adjunction is a relationship that two functors may exhibit, intuitively corresponding to a weak form of equivalence between two related categories. Two functors that stand in this relationship are kno ...

, usually denoted â€“hom-set
In mathematics, particularly in category theory, a morphism is a structure-preserving map from one mathematical structure to another one of the same type. The notion of morphism recurs in much of contemporary mathematics. In set theory, morphisms ...

s
:$\backslash mathrm(X\backslash times\; Y,Z)\; \backslash cong\; \backslash mathrm(X,Z^Y)$
which is natural
Nature, in the broadest sense, is the physical world or universe. "Nature" can refer to the phenomena of the physical world, and also to life in general. The study of nature is a large, if not the only, part of science. Although humans are ...

in both ''X'' and ''Z''.
Take care to note that a Cartesian closed category need not have finite limits; only finite products are guaranteed.
If a category has the property that all its slice categories are Cartesian closed, then it is called ''locally cartesian closed''. Note that if ''C'' is locally Cartesian closed, it need not actually be Cartesian closed; that happens if and only if ''C'' has a terminal object.
Basic constructions

Evaluation

For each object ''Y'', the counit of the exponential adjunction is a natural transformation :$\backslash mathrm\_\; :\; Z^Y\; \backslash times\; Y\; \backslash to\; Z$ called the (internal) evaluation map. More generally, we can construct thepartial application
In computer science, partial application (or partial function application) refers to the process of fixing a number of arguments to a function, producing another function of smaller arity. Given a function f \colon (X \times Y \times Z) \to N , ...

map as the composite
:$\backslash mathrm\_\; :\; Z^\; \backslash times\; X\; \backslash cong\; (Z^Y)^\; \backslash times\; X\; \backslash xrightarrow\; Z^Y.$
In the particular case of the category Set, these reduce to the ordinary operations:
:$\backslash mathrm\_(f,y)\; =\; f(y).$
Composition

Evaluating the exponential in one argument at a morphism ''p'' : ''X'' â†’ ''Y'' gives morphisms :$p^Z\; :\; X^Z\; \backslash to\; Y^Z,$ :$Z^p\; :\; Z^Y\; \backslash to\; Z^X,$ corresponding to the operation of composition with ''p''. Alternate notations for the operation ''p''Sections

For a morphism ''p'':''X'' â†’ ''Y'', suppose the following pullback square exists, which defines the subobject of ''X''Examples

Examples of Cartesian closed categories include: * The category Set of all sets, withfunction
Function or functionality may refer to:
Computing
* Function key, a type of key on computer keyboards
* Function model, a structured representation of processes in a system
* Function object or functor or functionoid, a concept of object-oriente ...

s as morphisms, is Cartesian closed. The product ''X''Ã—''Y'' is the Cartesian product of ''X'' and ''Y'', and ''Z''finite
Finite is the opposite of infinite. It may refer to:
* Finite number (disambiguation)
* Finite set, a set whose cardinality (number of elements) is some natural number
* Finite verb, a verb form that has a subject, usually being inflected or marke ...

sets, with functions as morphisms, is Cartesian closed for the same reason.
* If ''G'' is a group
A group is a number of persons or things that are located, gathered, or classed together.
Groups of people
* Cultural group, a group whose members share the same cultural identity
* Ethnic group, a group whose members share the same ethnic ide ...

, then the category of all ''G''-sets is Cartesian closed. If ''Y'' and ''Z'' are two ''G''-sets, then ''Z''functor category In category theory, a branch of mathematics, a functor category D^C is a category where the objects are the functors F: C \to D and the morphisms are natural transformations \eta: F \to G between the functors (here, G: C \to D is another object in t ...

consisting of all functors from ''D'' to ''C'', with natural transformations as morphisms.
* If ''C'' is a small category
In mathematics, a category (sometimes called an abstract category to distinguish it from a concrete category) is a collection of "objects" that are linked by "arrows". A category has two basic properties: the ability to compose the arrows asso ...

, then the functor category Setdirected graphs
Director may refer to:
Literature
* ''Director'' (magazine), a British magazine
* ''The Director'' (novel), a 1971 novel by Henry Denker
* ''The Director'' (play), a 2000 play by Nancy Hasty
Music
* Director (band), an Irish rock band
* ''D ...

is Cartesian closed; this is a functor category as explained under functor category.
** In particular, the category of simplicial set
In mathematics, a simplicial set is an object composed of ''simplices'' in a specific way. Simplicial sets are higher-dimensional generalizations of directed graphs, partially ordered sets and categories. Formally, a simplicial set may be defined ...

s (which are functors ''X'' : Δtopos
In mathematics, a topos (, ; plural topoi or , or toposes) is a category that behaves like the category of sheaves of sets on a topological space (or more generally: on a site). Topoi behave much like the category of sets and possess a notio ...

is Cartesian closed.
* In algebraic topology
Algebraic topology is a branch of mathematics that uses tools from abstract algebra to study topological spaces. The basic goal is to find algebraic invariants that classify topological spaces up to homeomorphism, though usually most classify ...

, Cartesian closed categories are particularly easy to work with. Neither the category of topological space
In mathematics, a topological space is, roughly speaking, a geometrical space in which closeness is defined but cannot necessarily be measured by a numeric distance. More specifically, a topological space is a set whose elements are called po ...

s with continuous
Continuity or continuous may refer to:
Mathematics
* Continuity (mathematics), the opposing concept to discreteness; common examples include
** Continuous probability distribution or random variable in probability and statistics
** Continuous ...

maps nor the category of smooth manifolds
In mathematics, a differentiable manifold (also differential manifold) is a type of manifold that is locally similar enough to a vector space to allow one to apply calculus. Any manifold can be described by a collection of charts (atlas). One ma ...

with smooth maps is Cartesian closed. Substitute categories have therefore been considered: the category of compactly generated Hausdorff space
In topology, a compactly generated space is a topological space whose topology is coherent with the family of all compact subspaces. Specifically, a topological space ''X'' is compactly generated if it satisfies the following condition:
:A subsp ...

s is Cartesian closed, as is the category of FrÃ¶licher spaces.
* In order theory
Order theory is a branch of mathematics that investigates the intuitive notion of order using binary relations. It provides a formal framework for describing statements such as "this is less than that" or "this precedes that". This article int ...

, complete partial order In mathematics, the phrase complete partial order is variously used to refer to at least three similar, but distinct, classes of partially ordered sets, characterized by particular completeness properties. Complete partial orders play a central rol ...

s (''cpo''s) have a natural topology, the Scott topology
Scott may refer to:
Places Canada
* Scott, Quebec, municipality in the Nouvelle-Beauce regional municipality in Quebec
* Scott, Saskatchewan, a town in the Rural Municipality of Tramping Lake No. 380
* Rural Municipality of Scott No. 98, Saskat ...

, whose continuous maps do form a Cartesian closed category (that is, the objects are the cpos, and the morphisms are the Scott continuous maps). Both currying and '' apply'' are continuous functions in the Scott topology, and currying, together with apply, provide the adjoint.
* A Heyting algebra In mathematics, a Heyting algebra (also known as pseudo-Boolean algebra) is a bounded lattice (with join and meet operations written âˆ¨ and âˆ§ and with least element 0 and greatest element 1) equipped with a binary operation ''a'' â†’ ''b'' of '' ...

is a Cartesian closed (bounded) lattice
Lattice may refer to:
Arts and design
* Latticework, an ornamental criss-crossed framework, an arrangement of crossing laths or other thin strips of material
* Lattice (music), an organized grid model of pitch ratios
* Lattice (pastry), an orna ...

. An important example arises from topological spaces. If ''X'' is a topological space, then the open set
In mathematics, open sets are a generalization of open intervals in the real line.
In a metric space (a set along with a distance defined between any two points), open sets are the sets that, with every point , contain all points that are su ...

s in ''X'' form the objects of a category O(''X'') for which there is a unique morphism from ''U'' to ''V'' if ''U'' is a subset of ''V'' and no morphism otherwise. This poset
In mathematics, especially order theory, a partially ordered set (also poset) formalizes and generalizes the intuitive concept of an ordering, sequencing, or arrangement of the elements of a set. A poset consists of a set together with a binary r ...

is a Cartesian closed category: the "product" of ''U'' and ''V'' is the intersection of ''U'' and ''V'' and the exponential ''U''zero object
In category theory, a branch of mathematics, an initial object of a category is an object in such that for every object in , there exists precisely one morphism .
The dual notion is that of a terminal object (also called terminal element): ...

is Cartesian closed if and only if it is equivalent to a category with only one object and one identity morphism. Indeed, if 0 is an initial object and 1 is a final object and we have $0\; \backslash cong\; 1$, then $\backslash mathrm(X,\; Y)\; \backslash cong\; \backslash mathrm(1,\; Y^X)\; \backslash cong\; \backslash mathrm(0,\; Y^X)\; \backslash cong\; 1$ which has only one element.
**In particular, any non-trivial category with a zero object, such as an abelian category
In mathematics, an abelian category is a category in which morphisms and objects can be added and in which kernels and cokernels exist and have desirable properties. The motivating prototypical example of an abelian category is the category of ...

, is not Cartesian closed. So the category of modules over a ring is not Cartesian closed. However, the functor tensor product
In mathematics, the tensor product V \otimes W of two vector spaces and (over the same field) is a vector space to which is associated a bilinear map V\times W \to V\otimes W that maps a pair (v,w),\ v\in V, w\in W to an element of V \otime ...

$-\backslash otimes\; M$ with a fixed module does have a right adjoint
In mathematics, specifically category theory, adjunction is a relationship that two functors may exhibit, intuitively corresponding to a weak form of equivalence between two related categories. Two functors that stand in this relationship are kno ...

. The tensor product is not a categorical product, so this does not contradict the above. We obtain instead that the category of modules is monoidal closed.
Examples of locally Cartesian closed categories include:
* Every elementary topos is locally Cartesian closed. This example includes Set, ''FinSet'', ''G''-sets for a group ''G'', as well as Setlocal homeomorphism
In mathematics, more specifically topology, a local homeomorphism is a function between topological spaces that, intuitively, preserves local (though not necessarily global) structure.
If f : X \to Y is a local homeomorphism, X is said to be an Ã ...

s is locally Cartesian closed, since ''LH/X'' is equivalent to the category of sheaves . However, ''LH'' does not have a terminal object, and thus is not Cartesian closed.
* If ''C'' has pullbacks and for every arrow ''p'' : ''X'' â†’ ''Y'', the functor ''p''Applications

In Cartesian closed categories, a "function of two variables" (a morphism ''f'' : ''X''Ã—''Y'' â†’ ''Z'') can always be represented as a "function of one variable" (the morphism Î»''f'' : ''X'' â†’ ''Z''computer science
Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to practical disciplines (includi ...

applications, this is known as currying; it has led to the realization that simply-typed lambda calculus can be interpreted in any Cartesian closed category.
The Curryâ€“Howardâ€“Lambek correspondence provides a deep isomorphism between intuitionistic logic, simply-typed lambda calculus and Cartesian closed categories.
Certain Cartesian closed categories, the topoi
In mathematics, a topos (, ; plural topoi or , or toposes) is a category that behaves like the category of sheaves of sets on a topological space (or more generally: on a site). Topoi behave much like the category of sets and possess a noti ...

, have been proposed as a general setting for mathematics, instead of traditional set theory
Set theory is the branch of mathematical logic that studies sets, which can be informally described as collections of objects. Although objects of any kind can be collected into a set, set theory, as a branch of mathematics, is mostly conce ...

.
The renowned computer scientist John Backus
John Warner Backus (December 3, 1924 â€“ March 17, 2007) was an American computer scientist. He directed the team that invented and implemented FORTRAN, the first widely used high-level programming language, and was the inventor of the Backu ...

has advocated a variable-free notation, or Function-level programming
In computer science, function-level programming refers to one of the two contrasting programming paradigms identified by John Backus in his work on programs as mathematical objects, the other being value-level programming.
In his 1977 Turing ...

, which in retrospect bears some similarity to the internal language
__NOTOC__
Categorical logic is the branch of mathematics in which tools and concepts from category theory are applied to the study of mathematical logic. It is also notable for its connections to theoretical computer science.
In broad terms, categ ...

of Cartesian closed categories. CAML
Caml (originally an acronym for Categorical Abstract Machine Language) is a multi-paradigm, general-purpose programming language which is a dialect of the ML programming language family. Caml was developed in France at INRIA and ENS.
Caml is ...

is more consciously modelled on Cartesian closed categories.
Dependent sum and product

Let ''C'' be a locally Cartesian closed category. Then ''C'' has all pullbacks, because the pullback of two arrows with codomain ''Z'' is given by the product in ''C/Z''. For every arrow ''p'' : ''X'' â†’ ''Y'', let ''P'' denote the corresponding object of ''C/Y''. Taking pullbacks along ''p'' gives a functor ''p''dependent type
In computer science and logic, a dependent type is a type whose definition depends on a value. It is an overlapping feature of type theory and type systems. In intuitionistic type theory, dependent types are used to encode logic's quantifiers lik ...

$y\; :\; Y\; \backslash vdash\; P(y)\; :\; \backslash mathrm$, the functors $\backslash Sigma\_p$ and $\backslash Pi\_p$ correspond to the type formations $\backslash Sigma\_$ and $\backslash Pi\_$ respectively.
Equational theory

In every Cartesian closed category (using exponential notation), (''X''Bicartesian closed categories

Bicartesian closed categories extend Cartesian closed categories with binarycoproduct
In category theory, the coproduct, or categorical sum, is a construction which includes as examples the disjoint union of sets and of topological spaces, the free product of groups, and the direct sum of modules and vector spaces. The coproduc ...

s and an initial object
In category theory, a branch of mathematics, an initial object of a category is an object in such that for every object in , there exists precisely one morphism .
The dual notion is that of a terminal object (also called terminal element): ...

, with products distributing over coproducts. Their equational theory is extended with the following axioms, yielding something similar to Tarski's high school axioms but with a zero:
*''x'' + ''y'' = ''y'' + ''x''
*(''x'' + ''y'') + ''z'' = ''x'' + (''y'' + ''z'')
*''x''Ã—(''y'' + ''z'') = ''x''Ã—''y'' + ''x''Ã—''z''
*''x''References

External links

* * {{category theory Closed categories Lambda calculus