Si usted sabe cómo resolver los problemas de la forma "encontrar el menor entero $n(\eta) \ge 1$ tal que $n\alpha \in [- \eta - \varepsilon; - \eta + \varepsilon] \pmod 1$" donde $|\eta| \le \varepsilon$, entonces usted puede encontrar fácilmente todos los números enteros, uno tras otro.
Por lo tanto, desea mantener una lista de los números enteros $n$ tal que $n \alpha$ está más cerca de a $0$ que la de cualquier otro menor múltiples. Se necesitan dos listas, una de los positivos de los registros y uno de los registros negativos (los que contienen los múltiplos correspondientes a las fracciones continuas, por lo que todavía son relevantes para el problema).
Ambas listas comienzan con $n=1$, correspondiente a$+(\alpha-\lfloor \alpha \rfloor)$$-(\lceil \alpha \rceil - \alpha)$.
Para continuar con las listas, se puede demostrar por inducción que el siguiente registro es la suma de los dos registros actuales. Añadir a la lista correspondiente a su signo, y repetir.
Una vez que la diferencia entre los dos registros actuales se hace más pequeño de $2\varepsilon$, puede detener, y el uso de los pocos registros menor que $2\varepsilon$ para el cálculo de la constante a trozos función de $n(\eta)$$|\eta| \le \varepsilon$.
Finalmente, se puede obtener la secuencia que desea de forma recursiva por $N_0 = n(0)$$N_{k+1} = N_k + n(N_k \alpha \mod 1)$.
Por ejemplo, suponga que desea encontrar los múltiplos de $\sqrt 2$ que son menos de $10^{-2}$ a un entero.
Modulo $1$, usted tiene los siguientes registros :
$\begin{matrix}1\sqrt 2 & = + 0.4142 & = -0.5857 \\
2\sqrt 2 && = -0.1715 \\
3\sqrt 2 &= +0.2426& \\
5\sqrt 2 &= +0.0711& \\
7\sqrt 2 &&= -0.1005 \\
12\sqrt 2 &&= -0.0294 \\
17\sqrt 2 &= +0.0416& \\
29\sqrt 2 &= +0.0122& \\
41\sqrt 2 &&= -0.0172 \\
70\sqrt 2 &&= -0.0051\end{de la matriz} $.
Desde $29\sqrt 2 = +0.0122$ y todos los valores anteriores son más grandes que las $0.02$, esto muestra que $n(\eta) = 29$$|\eta + 29\sqrt 2| \le 0.01 \pmod 1$, lo que significa que $\eta \in [-0.01 ; -0.0022] = [-0.01 ; -29\sqrt 2 + 41.01]$
A continuación, tenemos $n(\eta) = 41$ para el resto de las $\eta$ satisfacción $|\eta + 41\sqrt 2| \le 0.01 \pmod 1$, lo que significa que $\eta \in [+0.0072 ; +0.01] = [-41\sqrt 2 + 57.99 ; +0.01]$.
Por último, tenemos las $n(\eta) = 70$ para el resto de las $\eta$ satisfacción $|\eta + 70\sqrt 2| \le 0.01 \pmod 1$, lo que significa que $\eta \in [-0.0022 ; +0.0072] = [-29\sqrt 2 + 41.01 ; -41\sqrt 2 + 57.99]$.
Así que si el actual múltiples caídas en $[-0.01 ; -0.0022]$, añadimos $29\sqrt 2$, si se cae en $[-0.0022 ; +0.0072]$, añadimos $70\sqrt 2$, si se cae en $[+0.0072 ; +0.01]$, añadimos $41\sqrt 2$ :
Ahora podemos obtener la secuencia :
$70\sqrt 2 = -0.0051\\ 99\sqrt 2 = +0.0071 \\ 169\sqrt 2 = +0.0021 \\ 239\sqrt 2 = -0.0030 \\ 268\sqrt 2 = +0.0092 \\ 309\sqrt 2 = -0.0080 \\ \ldots$
Si desea saltar hacia delante y empezar de $\ell_1$, es un poco más difícil, porque a partir de $\ell_1 \alpha$ tienes que resolver un problema de la forma de "encontrar el más pequeño de $n$ tal que $n\alpha$ está en el intervalo de longitud de $2\varepsilon$", y de este intervalo de tiempo es poco probable que contengan $0$. Para encontrar esa primera entero, usted necesita para ampliar el intervalo objetivo para que contenga $0$, a continuación, utilizar la lista de registros de resolver el problema con el agrandamiento de intervalo. Entonces, un poco más cerca de la meta de intervalo, por lo que el siguiente intervalo objetivo estará más cerca de la $0$, y repetir.