5 votos

¿Por qué $\text{arctanh}(2^{-k})$ acercarse a los poderes de $2$ ?

Esto es de un trozo de código verilog que generé para $\text{arctanh}(2^{-k})$ :

localparam bit [31:0][47:0] arctanhTable = {
        48'b100011001001111101010011110101010110100000011000,
        48'b010000010110001010111011111010100000010001010001,
        48'b001000000010101100010010001110010011110101011101,
        48'b000100000000010101011000100010101101001101110101,
        48'b000010000000000010101010110001000100100011010111,
        48'b000001000000000000010101010101100010001000101011,
        48'b000000100000000000000010101010101011000100010001,
        48'b000000010000000000000000010101010101010110001000,
        48'b000000001000000000000000000010101010101010101100,
        48'b000000000100000000000000000000010101010101010101,
        48'b000000000010000000000000000000000010101010101010,
        48'b000000000001000000000000000000000000010101010101,
        48'b000000000000100000000000000000000000000010101010,
        48'b000000000000010000000000000000000000000000010101,
        48'b000000000000001000000000000000000000000000000010,
        48'b000000000000000100000000000000000000000000000000,
        48'b000000000000000010000000000000000000000000000000,
        48'b000000000000000001000000000000000000000000000000,
        48'b000000000000000000100000000000000000000000000000,
        48'b000000000000000000010000000000000000000000000000,
        48'b000000000000000000001000000000000000000000000000,
        48'b000000000000000000000100000000000000000000000000,
        48'b000000000000000000000010000000000000000000000000,
        48'b000000000000000000000001000000000000000000000000,
        48'b000000000000000000000000100000000000000000000000,
        48'b000000000000000000000000010000000000000000000000,
        48'b000000000000000000000000001000000000000000000000,
        48'b000000000000000000000000000100000000000000000000,
        48'b000000000000000000000000000010000000000000000000,
        48'b000000000000000000000000000001000000000000000000,
        48'b000000000000000000000000000000100000000000000000
    };

El $\text{arctanh}(2^{-k})$ comienzan a converger a sucesivas potencias de $2$ . Es evidente que el número de ceros entre el primer $1$ y el segundo $1$ sigue aumentando, por lo que la forma $\text{arctanh}(2^{-k}) = 2^{-1} + q(k)$ para los valores de $q(k)$ disminuyendo mucho más rápidamente que los valores de $2^{-k}$ . Wolfram Alpha me dice $q(k) = -2^{-k} - \dfrac{\ln(1-2^{-k}) + \ln(1+2^{-k})}{2}$

¿Por qué se produce esta divergencia? No creo que pueda aprovechar esto para calcular de forma barata $\text{arctanh}$ aunque me da una forma interesante de comprimir la tabla almacenando un punto flotante $q(k)$ Tampoco es que eso sea realmente útil.

9voto

Stinking Bishop Puntos 366

La razón por la que $\lim_{i\to\infty}\frac{\operatorname{arctanh}(2^{-i})}{2^{-i}}=1$ es que $\lim_{h\to 0}\frac{\operatorname{arctanh}(h)}{h}=1$ . Esto es a su vez cierto porque $\operatorname{arctanh}(0)=0$ así que esta es realmente la expresión $\lim_{h\to 0}\frac{\operatorname{arctanh}(h)-\operatorname{arctanh}(0)}{h-0}=\frac{d(\operatorname{arctanh})}{dx}(0)=1$ .

Obtendrá el mismo comportamiento con cualquier otra función que, como $\operatorname{arctanh}$ , en $x=0$ tiene un valor igual a $0$ y el valor de la primera derivada igual a $1$ .

La razón por la que vemos un gran "hueco" de ceros después del primer "uno" (es decir, los valores son muy cerca de $2^{-i}$ ) es que el segunda derivada tiene el valor $0$ es decir $\frac{d^2(\operatorname{arctanh})}{dx^2}(0)=0$ Esto significa a su vez que la función está bien aproximada por su polinomio de Taylor de $2$ ndar, que acaba siendo $\frac{1}{1!}\cdot x+\frac{0}{2!}\cdot x^2=x$ es decir $\operatorname{arctanh}(x)=x+O(x^3)$ por lo que el orden de magnitud del término de error se aproxima a $2^{-3i}$ . Cf. Ampliación de Wolfram Alpha McLaurin para $\operatorname{arctanh}$ .

8voto

David K Puntos 19172

Sabemos que

$$ \DeclareMathOperator{\arctanh}{artanh} \arctanh(x) = \frac12\left(\log(1 + x) - \log(1 - x)\right). \tag1$$

La serie Taylor para $\log(1+x)$ centrado en $x=0$ es $$ \log(1 + x) = x - \frac12 x^2 + r_1(x) $$ donde $r_1(x)$ es $\mathcal O(x^3)$ como $x \to 0$ . Del mismo modo, la serie de Taylor para $\log(1 - x)$ centrado en $x=0$ es $$ \log(1 - x) = -x - \frac12 x^2 - r_2(x) $$ donde $r_2(x)$ es $\mathcal O(x^3)$ como $x \to 0$ .

Sustituyendo estas dos series de Taylor en la ecuación $(1)$ da

\begin{align} \arctanh(x) &= \frac12\left(\left(x - \frac12 x^2 + r_1(x)\right) - \left(-x - \frac12 x^2 + r_2(x)\right)\right) \\ &= x + r_1(x) + r_2(x) \\ &\subseteq x + \mathcal O(x^3), \quad x \to 0. \\ \end{align}

Dejemos que $x = 2^{-k}$ para un número entero positivo $k$ y tienes $$ \arctanh(2^{-k}) \subseteq 2^{-k} + \mathcal O(2^{-3k}), \quad k \to \infty. $$

En otras palabras, $q(k)$ es una función de orden $2^{-3k}.$ Por lo tanto, su primer dígito distinto de cero está aproximadamente tres veces más a la derecha que el $1$ dígito de $2^{-k}$ , dejando alrededor de $2k$ ceros entre los dígitos.

Por ejemplo, considere las siguientes dos filas de su tabla.

        48'b000000000100000000000000000000010101010101010101,
        48'b000000000010000000000000000000000010101010101010,

La primera de estas dos filas tiene nueve ceros seguidos de un $1$ , que es el $2^{-k}$ dígito de $\arctanh(2^{-k})$ , entonces tenemos $21$ ceros seguidos de algunos dígitos no nulos; si esta es la fila para $k = 10$ entonces, efectivamente, tenemos cerca de $2k$ ceros ( $2k+1$ para ser exactos) entre los dígitos no nulos. En la siguiente fila el $2^{-k}$ el dígito se ha movido un lugar a la derecha, pero el resto de los dígitos se han movido tres lugares, añadiendo dos ceros a la brecha entre los dígitos distintos de cero. Y seguiremos añadiendo dos ceros más en cada fila, lo que es una simple consecuencia del hecho de que $q(k)$ es de orden $2^{-3k},$ o en otras palabras, cuando $k$ es grande, $q(k)$ es aproximadamente $\lambda 2^{-3k}$ para alguna constante $\lambda$ .

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