In mathematics, a pairing is an R-bilinear map from the Cartesian product of two R-modules, where the underlying ring R is commutative.
Let R be a commutative ring with unit, and let M, N and L be R-modules.
A pairing is any R-bilinear map
Equivalently, a pairing is an R-linear map where
denotes the tensor product of M and N. A pairing can also be considered as an R-linear map
, which matches the first definition by setting
A pairing is called perfect if the above map
is an isomorphism of R-modules and the other evaluation map
In nice cases, it suffices that just one of these be an isomorphism, e.g. when R is a field, M,N are finite dimensional vector spaces and L=R.
A pairing is called non-degenerate on the right if for the above map we have that
is called non-degenerate on the left if
A pairing is called alternating if
, while bilinearity shows
Thus, for an alternating pairing,
Any scalar product on a real vector space V is a pairing (set M = N = V, R = R in the above definitions).
The determinant map (2 × 2 matrices over k) → k can be seen as a pairing
The Hopf map
For instance, Hardie et al.[1] present an explicit construction of the map using poset models.
In cryptography, often the following specialized definition is used:[2] Let
be additive groups and
a multiplicative group, all of prime order
A pairing is a map:
for which the following holds: Note that it is also common in cryptographic literature for all groups to be written in multiplicative notation.
, the pairing is called symmetric.
is cyclic, the map
, there exist integers
The Weil pairing is an important concept in elliptic curve cryptography; e.g., it may be used to attack certain elliptic curves (see MOV attack).
It and other pairings have been used to develop identity-based encryption schemes.
Scalar products on complex vector spaces are sometimes called pairings, although they are not bilinear.
For example, in representation theory, one has a scalar product on the characters of complex representations of a finite group which is frequently called character pairing.