4 votos

Rápido bijective $\mathbb{Z} \times \mathbb{Z} \rightarrow \mathbb{Z}$

Estoy buscando una rápida vinculación de la función que se asigna dos números enteros (coordenadas cartesianas) a un único número entero único. En otras palabras, $$ \mathbb{Z} \times \mathbb{Z} \rightarrow \mathbb{Z}, $$ eso tiene un uno-a-uno-correspondencia (bijection).

He encontrado el Cantor de la función de sincronización, $$ f(x,y) = \frac{(x+y)\times(x+y+1)}{2}+y, $$ que es, $$ \mathbb{N} \times \mathbb{N} \rightarrow \mathbb{N}, $$ y un bijection, pero ya que es de $\mathbb{N} \times \mathbb{N}$ sólo funciona para las coordenadas donde x e y son positivos o cero.

Además he encontrado el elegante función de sincronización' escrito por Mateo Szudzik que sufre el mismo problema.

Debe haber una manera de modificar el Cantor, o Szudzik del método para que las espirales alrededor de (0,0) a diferencia de la sierra de dentados a través de todos los enteros positivos pares.

Es una función ya definida?

Si no hay un buen lugar para empezar en la creación de uno?

Lo que sobre, $$ \mathbb{Z} \times \mathbb{Z} \rightarrow \mathbb{N}. $$

2voto

William Ballinger Puntos 2475

Básicamente todo lo que se necesita para activar un bijection $p:\Bbb{N}^2 \mapsto \Bbb{N}$ en un bijection $\Bbb{Z}^2\mapsto \Bbb{Z}$ es la composición con un bijection $q: \Bbb{Z}\mapsto\Bbb{N}$. Varios de los $q$'s existen, pero particularmente fácil de calcular uno es $$q(n) = \begin{cases} 2n &n\ge 0 \\ -2n - 1 &n<0,\end{cases}$$ with inverse function $$q^{-1}(n) = \begin{cases} n/2 &n\cong 0\pmod 2 \\ -(n+1)/2 &n\cong 1 \pmod 2 .\\ \end{cases}$$

Si dejas $p$ ser cualquiera de las funciones de emparejamiento de que usted haya encontrado de$\Bbb{N}^2 \mapsto \Bbb{N}$, $q^{-1}(p(q(a),q(b))$ bijectively mapa de $\Bbb{Z}^2 \mapsto \Bbb{Z}$ (con $q$ mapa de los argumentos en $\Bbb{N}$, el emparejamiento con $p$ y volviendo a $\Bbb{Z}$$q^{-1}$.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X