summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Zimmermann <Paul.Zimmermann@inria.fr>2020-02-18 17:17:31 +0100
committerPaul Zimmermann <Paul.Zimmermann@inria.fr>2020-02-18 17:17:31 +0100
commit46b9887cab003d257b62a3a4a6e9770a6470e05b (patch)
tree0e5256408900d8dd72a30974795ac001a1036c3f
parent1d0f809d20d1fe5a2704bd15307a0be9fa1ef9b0 (diff)
downloadmpc-git-46b9887cab003d257b62a3a4a6e9770a6470e05b.tar.gz
improvement for asin when Im(z) << Re(z)
-rw-r--r--doc/algorithms.tex14
1 files changed, 14 insertions, 0 deletions
diff --git a/doc/algorithms.tex b/doc/algorithms.tex
index e77089f..fc7e060 100644
--- a/doc/algorithms.tex
+++ b/doc/algorithms.tex
@@ -1286,6 +1286,20 @@ and for $e \geq 2$:
\[ {\rm err}(s) \leq \sum_{k=0}^{K-1} \frac{5}{3} \cdot 2^{-e-p} =
\frac{5}{3} K 2^{-e-p}. \]
+Assume now that $|\Re z| \leq 2^{-e}$ and $|\Im z| \leq 2^{-e-\delta}$ with
+$e \geq 1$ and $\delta \geq 0$. All the above reasoning for the real parts still
+holds. For the imaginary parts, we have
+$|\Im w| \leq 2^{1-2e-\delta}$, and the bound on the imaginary part of $t$
+becomes $|\Im t| \leq 2^{2k-(2k+1)e-\delta}$.
+Now consider that $\varepsilon_k$ is the maximal absolute error on
+$\Im t$ only at the end of the loop with index~$k$.
+The initial value $\varepsilon_0$
+is multiplied by $2^{-\delta}$ compared to above,
+and since all the bounds on the imaginary
+parts are multiplied by $2^{-\delta}$ too, the same holds for the recurrence
+on $\varepsilon_k$ and their solutions. Thus the final error bound on
+$\Im s$ is multiplied by $2^{-\delta}$ too.
+
\subsection {\texttt {mpc\_pow}}
The main issue for the power function is to be able to recognize when the