- Pairing function
In
mathematics a pairing function is a process to uniquely encode twonatural number s into a single natural number.Any pairing function can be used in
set theory to prove thatinteger s andrational number s have the samecardinality as natural numbers. Intheoretical computer science they are used to encode a function defined on a vector of natural numbers "f":N"k" → N into a new function "g":N → N.Definition
A pairing function is a primitive recursive
bijection :Cantor pairing function
The Cantor pairing function is a pairing function :defined by :
When we apply the pairing function to and we often denote the resulting number as
This definition can be inductively generalized to the Cantor tuple function:as:
Inverting the Cantor pairing function
Suppose we are given "z" with :
and we want to find "x" and "y". It is helpful to define some intermediate values in the calculation: :::
where "t" is the
triangle number of "w". If we solve the quadratic equation :for "w" as a function of "t", we get :
which is a strictly increasing and continuous function when "t" is non-negative real. Since :
we get that :
and thus :.
So to calculate "x" and "y" from "z", we do:::::.
Since the Cantor pairing function is invertible, it must be one-to-one and onto.
References
*mathworld|urlname=PairingFunction|author=Steven Pigeon|title=Pairing function
Wikimedia Foundation. 2010.