Necesidad de 1) especificar que $\gcd(a, b) = 1$ (pero podemos asumir que es dado)
Necesidad de indicar que $0 = 0/1$ (probablemente podemos considerarlo como un hecho establecido --- oh, espera, por supuesto que podemos. $\gcd(0, a) = a$ entonces $a/b = 0; \gcd(a, b) = 1$ solo puede ser $b = 1$).
Necesidad de tener en cuenta los números negativos. Podemos declarar que un número racional tiene una representación única como $\pm \frac ab$ donde $a \ge 0$, $b > 0$ y $\gcd(a, b) = 1$. Entonces podemos tener $f(+a/b) = 2^a3^b$ y $f(-a/b) = 2^a3^b*5$.
Si por alguna razón queremos mantener solo los dos factores primos, podemos declarar que los números positivos y el cero van a potencias pares de $2$ y los negativos a potencias impares. es decir $f(\pm \frac ab = (-1)^n \frac ab; n = \{0, 1\}) = 2^{2a+n}3^b$.
Entonces, sí, estas son funciones inyectivas perfectamente bien definidas en $\mathbb N$ y así $\mathbb Q$ es numerable.
0 votos
Bueno, $\frac{-1}{2}$ por ejemplo no serviría, ya que $2^{-1}3^2\not\in\Bbb N$. Salvagable, pero debe ser señalado
0 votos
Necesitas agregar algo como $f(-\frac ab)=5^a7^b$ para $a,b\in \mathbb N$
1 votos
Estás apasionadamente cerca de demostrar que el producto cartesiano de un número finito de conjuntos numerables es numerable.
0 votos
Mira mi respuesta a una pregunta antigua para ver cómo crear una biyección explícita entre los números naturales y los racionales usando la factorización de números primos: math.stackexchange.com/a/1067928/7933
0 votos
Lulu. O podríamos hacer $f(\pm a/b) = 2^a3^b5^{1/2 \pm 1/2}$ es decir, multiplicar por cinco si es negativo. O $f(|a/b|) = 2^{2|a|}3^{|b|}$ y $f(-|a/b|) = 2^{2|a| + 1}3^{|b|}$.