Cartesian product

From Wikipedia, the free encyclopedia
Jump to: navigation, search
"Cartesian square" redirects here. For Cartesian squares in category theory, see Cartesian square (category theory).
Cartesian product \scriptstyle A \times B of the sets \scriptstyle A=\{x,y,z\} and \scriptstyle B=\{1,2,3\}

In mathematics, a Cartesian product is a mathematical operation which returns a set (or product set or simply product) from multiple sets. That is, for sets A and B, the Cartesian product A × B is the set of all ordered pairs (a, b) where a ∈ A and b ∈ B. Products can be specified using set-builder notation, e.g. pair builder

A\times B = \{\,(a,b)\mid a\in A \ \and \ b\in B\,\}.

The simplest case of a Cartesian product is the Cartesian square, which returns a set from two sets. A table can be created by taking the Cartesian product of a set of rows and a set of columns. If the Cartesian product rows × columns is taken, the cells of the table contain ordered pairs of the form (row value, column value).

A Cartesian product of n sets, aka n-fold Cartesian product, can be represented by an array of n dimensions, where each element is an n-tuple. An ordered pair is a 2-tuple.

The Cartesian product is named after René Descartes,[1] whose formulation of analytic geometry gave rise to the concept, which is further generalized in terms of direct product.


A deck of cards[edit]

An illustrative example is the standard 52-card deck. The standard playing card ranks {A, K, Q, J, 10, 9, 8, 7, 6, 5, 4, 3, 2} form a 13-element set. The card suits {♠, ♥, ♦, ♣} form a 4-element set. The Cartesian product of these sets returns a 52-element set consisting of 52 ordered pairs, which correspond to all 52 possible playing cards.

Ranks × Suits returns a set of the form {(A, ♠), (A, ♥), (A, ♦), (A, ♣), (K, ♠), ..., (3, ♣), (2, ♠), (2, ♥), (2, ♦), (2, ♣)}.

Suits × Ranks returns a set of the form {(♠, A), (♠, K), (♠, Q), (♠, J), (♠, 10), ..., (♣, 6), (♣, 5), (♣, 4), (♣, 3), (♣, 2)}.

A two-dimensional coordinate system[edit]

An example in analytic geometry is the Cartesian plane. The Cartesian plane is the result of the Cartesian product of two sets X and Y, which refer to points on the x-axis and points on the y-axis, respectively. This Cartesian product can be denoted as X × Y. This produces the set of all possible ordered pairs whose first component is a member of X and whose second component is a member of Y (e.g., the whole of the x–y plane). Alternatively, the Cartesian product can be denoted as Y × X, in which case the first component of the order pair is a member of Y and the second component of the ordered pair is a member of X. The Cartesian product is consequently not commutative.

X\times Y = \{\,(x,y)\mid x\in X \ \and \ y\in Y\,\}. [2]
Y\times X = \{\,(y,x)\mid y\in Y \ \and \ x\in X\,\}.
X\times Y \neq Y\times X

Most common implementation (set theory)[edit]

A formal definition of the Cartesian product from set-theoretical principles follows from a definition of ordered pair. The most common definition of ordered pairs, the Kuratowski definition, is (x, y) = \{\{x\},\{x, y\}\}. Note that, under this definition, X\times Y \subseteq \mathcal{P}(\mathcal{P}(X \cup Y)), where \mathcal{P} represents the power set. Therefore, the existence of the Cartesian product of any two sets in ZFC follows from the axioms of pairing, union, power set, and specification. Since functions are usually defined as a special case of relations, and relations are usually defined as subsets of the Cartesian product, the definition of the two-set Cartesian product is necessarily prior to most other definitions.

Non-commutativity and non-associativity[edit]

Let A, B, C, and D be sets.

The Cartesian product A × B is not commutative,

A \times B \neq B \times A,

because the ordered pairs are reversed except if at least one of the following conditions is satisfied:[3]

  • A is equal to B, or
  • A or B is the empty set.

For example:

A = {1,2}; B = {3,4}
A × B = {1,2} × {3,4} = {(1,3), (1,4), (2,3), (2,4)}
B × A = {3,4} × {1,2} = {(3,1), (3,2), (4,1), (4,2)}
A = B = {1,2}
A × B = B × A = {1,2} × {1,2} = {(1,1), (1,2), (2,1), (2,2)}
A = {1,2}; B = ∅
A × B = {1,2} × ∅ = ∅
B × A = ∅ × {1,2} = ∅

Strictly speaking, the Cartesian product is not associative (unless one of the above conditions occurs).

(A\times B)\times C \neq A \times (B \times C)

Intersections, unions, and subsets[edit]

The Cartesian product behaves nicely with respect to intersections.

(A \cap B) \times (C \cap D) = (A \times C) \cap (B \times D)[4]

Notice that in most cases the above statement is not true if we replace intersection with union.

(A \cup B) \times (C \cup D) \neq (A \times C) \cup (B \times D)

In fact, we have that:

(A \times C) \cup (B \times D) = [(A \setminus C) \times B] \cup [(A \cap C) \times (B \cup D)] \cup [(C \setminus A) \times D]

For the set difference we also have the following identity:

(A \times C) \setminus (B \times D) = [A \times (B \setminus D)] \cup [(A \setminus C) \times B]

Here are some rules demonstrating distributivity with other operators:[3]

A \times (B \cap C) = (A \times B) \cap (A \times C),
A \times (B \cup C) = (A \times B) \cup (A \times C),
A \times (B \setminus C) = (A \times B) \setminus (A \times C),
(A \times B)^c = (A^c \times B^c) \cup (A^c \times B) \cup (A \times B^c).[4]

Other properties related with subsets are:

\text{if } A \subseteq B \text{ then } A \times C \subseteq B \times C,
\text{if both } A,B \neq \emptyset \text{ then } A \times B \subseteq C \times D \iff A \subseteq C \and B \subseteq D.[5]


The cardinality of a set is the number of elements of the set. For example, defining two sets: A = {a, b} and B = {5, 6}. Both set A and set B consist of two elements each. Their Cartesian product, written as A × B, results in a new set which has the following elements:

A × B = {(a,5), (a,6), (b,5), (b,6)}.

Each element of A is paired with each element of B. Each pair makes up one element of the output set. The number of values in each pair is equal to the number of sets whose cartesian product is being taken; 2 in this case. The cardinality of the output set is equal to the product of the cardinalities of all the input sets. That is,

|A × B| = |A| · |B|.


|A × B × C| = |A| · |B| · |C|

and so on.

The cardinality of A × B is infinity if either A or B has infinite elements and the other set is not the empty set.[6]

Cartesian power[edit]

The Cartesian square (or binary Cartesian product) of a set X is the Cartesian product X2 = X × X. An example is the 2-dimensional plane R2 = R × R where R is the set of real numbers – all points (x,y) where x and y are real numbers (see the Cartesian coordinate system).

The cartesian power of a set X can be defined as:

 X^n = \underbrace{ X \times X \times \cdots \times X }_{n}= \{ (x_1,\ldots,x_n) \ | \ x_i \in X \ \text{for all} \ 1 \le i \le n \}.

An example of this is R3 = R × R × R, with R again the set of real numbers, and more generally Rn.

Cartesian powers generate all variations with replacement.

Generalized powers from different sets[edit]

n-ary product[edit]

The Cartesian product can be generalized to the n-ary Cartesian product over n sets X1, ..., Xn:

X_1\times\cdots\times X_n = \{(x_1, \ldots, x_n) : x_i \in X_i \}.

It is a set of n-tuples. If tuples are defined as nested ordered pairs, it can be identified to (X1 × ... × Xn−1) × Xn.

The n-ary cartesian power of a set X is isomorphic to the space of functions from an n-element set to X. As a special case, the 0-ary cartesian power of X may be taken to be a singleton set, corresponding to the empty function with codomain X.

Infinite products[edit]

It is possible to define the Cartesian product of an arbitrary (possibly infinite) indexed family of sets. If I is any index set, and \left\{X_i\,|\,i\in I\right\} is a collection of sets indexed by I, then the Cartesian product of the sets in X is defined to be

\prod_{i \in I} X_i = \left\{ f : I \to \bigcup_{i \in I} X_i\ \Big|\ (\forall i)(f(i) \in X_i)\right\},

that is, the set of all functions defined on the index set such that the value of the function at a particular index i is an element of Xi. Even if each of the Xi is nonempty, the Cartesian product may be empty if the axiom of choice (which is equivalent to the statement that every such product is nonempty) is not assumed.

For each j in I, the function

  \pi_{j} : \prod_{i \in I} X_i \to X_{j},

defined by \pi_{j}(f) = f(j) is called the jth projection map.

An important case is when the index set is \mathbb{N}, the natural numbers: this Cartesian product is the set of all infinite sequences with the ith term in its corresponding set Xi. For example, each element of

\prod_{n = 1}^\infty \mathbb R = \mathbb R \times \mathbb R \times \cdots

can be visualized as a vector with countably infinite real number components. This set is frequently denoted \mathbb{R}^\omega, or \mathbb{R}^{\mathbb{N}}.

The special case Cartesian exponentiation occurs when all the factors Xi involved in the product are the same set X. In this case,

\prod_{i \in I} X_i = \prod_{i \in I} X

is the set of all functions from I to X, and is frequently denoted XI. This case is important in the study of cardinal exponentiation.

The definition of finite Cartesian products can be seen as a special case of the definition for infinite products. In this interpretation, an n-tuple can be viewed as a function on {1, 2, ..., n} that takes its value at i to be the ith element of the tuple (in some settings, this is taken as the very definition of an n-tuple).

Nothing in the definition of an infinite Cartesian product implies that the Cartesian product of nonempty sets must itself be nonempty. This assertion is equivalent to the axiom of choice.

Other forms[edit]

Abbreviated form[edit]

If several sets are being multiplied together, e.g. X1, X2, X3, …, then some authors[7] choose to abbreviate the Cartesian product as simply ×Xi.

Cartesian product of functions[edit]

If f is a function from A to B and g is a function from X to Y, their Cartesian product f × g is a function from A × X to B × Y with

(f\times g)(a, b) = (f(a), g(b)).

This can be extended to tuples and infinite collections of functions. Note that this is different from the standard cartesian product of functions considered as sets.

Definitions outside of Set theory[edit]

Category theory[edit]

Although the Cartesian product is traditionally applied to sets, category theory provides a more general interpretation of the product of mathematical structures. This is distinct from, although related to, the notion of a Cartesian square in category theory, which is a generalization of the fiber product.

Exponentiation is the right adjoint of the Cartesian product; thus any category with a Cartesian product (and a final object) is a Cartesian closed category.

Graph theory[edit]

In graph theory the Cartesian product of two graphs G and H is the graph denoted by G × H whose vertex set is the (ordinary) Cartesian product V(G) × V(H) and such that two vertices (u,v) and (u′,v′) are adjacent in G × H if and only if u = u and v is adjacent with v′ in H, or v = v and u is adjacent with u′ in G. The Cartesian product of graphs is not a product in the sense of category theory. Instead, the categorical product is known as the tensor product of graphs.

See also[edit]


  1. ^ cartesian. (2009). In Merriam-Webster Online Dictionary. Retrieved December 1, 2009, from
  2. ^ Warner, S: Modern Algebra, page 6. Dover Press, 1990.
  3. ^ a b Singh, S. (2009, August 27). Cartesian product. Retrieved from the Connexions Web site:
  4. ^ a b CartesianProduct at
  5. ^ Cartesian Product of Subsets. (2011, February 15). ProofWiki. Retrieved 05:06, August 1, 2011 from
  6. ^ Peter S. (1998). A Crash Course in the Mathematics Of Infinite Sets. St. John's Review, 44(2), 35–59. Retrieved August 1, 2011, from
  7. ^ Osborne, M., and Rubinstein, A., 1994. A Course in Game Theory. MIT Press.

External links[edit]