In mathematics, a finitary relation over sets X_{1}, ..., X_{n} is a subset of the Cartesian product X_{1} × ⋯ × X_{n}; that is, it is a set of n-tuples (x_{1}, ..., x_{n}) consisting of elements x_{i} in X_{i}.^{ [1]}^{ [2]}^{ [3]} Typically, the relation describes a possible connection between the elements of an n-tuple. For example, the relation "x is divisible by y and z" consists of the set of 3-tuples such that when substituted to x, y and z, respectively, make the sentence true.
The non-negative integer n giving the number of "places" in the relation is called the arity, adicity or degree of the relation. A relation with n "places" is variously called an n-ary relation, an n-adic relation or a relation of degree n. Relations with a finite number of places are called finitary relations (or simply relations if the context is clear). It is also possible to generalize the concept to infinitary relations with infinite sequences.^{ [4]}
An n-ary relation over sets X_{1}, ..., X_{n} is an element of the power set of X_{1} × ⋯ × X_{n}.
0-ary relations count only two members: the one that always holds, and the one that never holds. This is because there is only one 0-tuple, the empty tuple (). They are sometimes useful for constructing the base case of an induction argument.
Unary relations can be viewed as a collection of members (such as the collection of Nobel laureates) having some property (such as that of having been awarded the Nobel prize).
Binary relations are the most commonly studied form of finitary relations. When X_{1} = X_{2} it is called a homogeneous relation, for example:
Otherwise it is a heterogeneous relation, for example:
Consider the ternary relation R "x thinks that y likes z" over the set of people P = {Alice, Bob, Charles, Denise}, defined by:
R can be represented equivalently by the following table:
P | P | P |
---|---|---|
Alice | Bob | Denise |
Charles | Alice | Bob |
Charles | Charles | Alice |
Denise | Denise | Denise |
Here, each row represents a triple of R, that is it makes a statement of the form "x thinks that y likes z". For instance, the first row states that "Alice thinks that Bob likes Denise". All rows are distinct. The ordering of rows is insignificant but the ordering of columns is significant.^{ [1]}
The above table is also a simple example of a relational database, a field with theory rooted in relational algebra and applications in data management.^{ [5]} Computer scientists, logicians, and mathematicians, however, tend to have different conceptions what a general relation is, and what it is consisted of. For example, databases are designed to deal with empirical data, which is by definition finite, whereas in mathematics, relations with infinite arity (i.e., infinitary relation) are also considered.
When two objects, qualities, classes, or attributes, viewed together by the mind, are seen under some connexion, that connexion is called a relation.
— Augustus De Morgan^{ [6]}
The first definition of relations encountered in mathematics is:
The second definition of relations makes use of an idiom that is common in mathematics, stipulating that "such and such is an n-tuple" in order to ensure that such and such a mathematical object is determined by the specification of mathematical objects with n elements. In the case of a relation R over n sets, there are n + 1 things to specify, namely, the n sets plus a subset of their Cartesian product. In the idiom, this is expressed by saying that R is a (n + 1)-tuple.
As a rule, whatever definition best fits the application at hand will be chosen for that purpose, and if it ever becomes necessary to distinguish between the two definitions, then an entity satisfying the second definition may be called an embedded or included relation.
Both statements (x_{1}, ⋯, x_{n}) ∈ R (under the first definition) and (x_{1}, ⋯, x_{n}) ∈ G (under the second definition) read "x_{1}, ⋯, x_{n} are R-related" and are denoted using prefix notation by Rx_{1}⋯x_{n} and using postfix notation by x_{1}⋯x_{n}R. In the case where R is a binary relation, those statements are also denoted using infix notation by x_{1}Rx_{2}.
The following considerations apply under either definition:
Let a Boolean domain B be a two-element set, say, B = {0, 1}, whose elements can be interpreted as logical values, typically 0 = false and 1 = true. The characteristic function of R, denoted by χ_{R}, is the Boolean-valued function χ_{R}: X_{1} × ⋯ × X_{n} → B, defined by χ_{R}((x_{1}, ⋯, x_{n})) = 1 if Rx_{1}⋯x_{n} and χ_{R}((x_{1}, ⋯, x_{n})) = 0 otherwise.
In applied mathematics, computer science and statistics, it is common to refer to a Boolean-valued function as an n-ary predicate. From the more abstract viewpoint of formal logic and model theory, the relation R constitutes a logical model or a relational structure, that serves as one of many possible interpretations of some n-ary predicate symbol.
Because relations arise in many scientific disciplines, as well as in many branches of mathematics and logic, there is considerable variation in terminology. Aside from the set-theoretic extension of a relational concept or term, the term "relation" can also be used to refer to the corresponding logical entity, either the logical comprehension, which is the totality of intensions or abstract properties shared by all elements in the relation, or else the symbols denoting these elements and intensions. Further, some writers of the latter persuasion introduce terms with more concrete connotations (such as "relational structure" for the set-theoretic extension of a given relational concept).
The logician Augustus De Morgan, in work published around 1860, was the first to articulate the notion of relation in anything like its present sense. He also stated the first formal results in the theory of relations (on De Morgan and relations, see Merrill 1990).
Charles Peirce, Gottlob Frege, Georg Cantor, Richard Dedekind and others advanced the theory of relations. Many of their ideas, especially on relations called orders, were summarized in The Principles of Mathematics (1903) where Bertrand Russell made free use of these results.
In 1970, Edgar Codd proposed a relational model for databases, thus anticipating the development of data base management systems.^{ [1]}