Average Error: 0.6 → 0.6
Time: 1.2m
Precision: 64
\[\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\]
\[\frac{1}{2} \cdot \pi - \sin^{-1} \left(\frac{(\left(v \cdot v\right) \cdot -5 + 1)_*}{(v \cdot v + -1)_*}\right)\]
double f(double v) {
        double r45215387 = 1.0;
        double r45215388 = 5.0;
        double r45215389 = v;
        double r45215390 = r45215389 * r45215389;
        double r45215391 = r45215388 * r45215390;
        double r45215392 = r45215387 - r45215391;
        double r45215393 = r45215390 - r45215387;
        double r45215394 = r45215392 / r45215393;
        double r45215395 = acos(r45215394);
        return r45215395;
}

double f(double v) {
        double r45215396 = 0.5;
        double r45215397 = atan2(1.0, 0.0);
        double r45215398 = r45215396 * r45215397;
        double r45215399 = v;
        double r45215400 = r45215399 * r45215399;
        double r45215401 = -5.0;
        double r45215402 = 1.0;
        double r45215403 = fma(r45215400, r45215401, r45215402);
        double r45215404 = -1.0;
        double r45215405 = fma(r45215399, r45215399, r45215404);
        double r45215406 = r45215403 / r45215405;
        double r45215407 = asin(r45215406);
        double r45215408 = r45215398 - r45215407;
        return r45215408;
}

\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)
\frac{1}{2} \cdot \pi - \sin^{-1} \left(\frac{(\left(v \cdot v\right) \cdot -5 + 1)_*}{(v \cdot v + -1)_*}\right)

Error

Bits error versus v

Derivation

  1. Initial program 0.6

    \[\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\]
  2. Simplified0.6

    \[\leadsto \color{blue}{\cos^{-1} \left(\frac{(-5 \cdot \left(v \cdot v\right) + 1)_*}{v \cdot v - 1}\right)}\]
  3. Using strategy rm
  4. Applied acos-asin0.6

    \[\leadsto \color{blue}{\frac{\pi}{2} - \sin^{-1} \left(\frac{(-5 \cdot \left(v \cdot v\right) + 1)_*}{v \cdot v - 1}\right)}\]
  5. Taylor expanded around inf 0.6

    \[\leadsto \color{blue}{\frac{1}{2} \cdot \pi - \sin^{-1} \left(\frac{(-5 \cdot \left({v}^{2}\right) + 1)_*}{{v}^{2} - 1}\right)}\]
  6. Simplified0.6

    \[\leadsto \color{blue}{\frac{1}{2} \cdot \pi - \sin^{-1} \left(\frac{(\left(v \cdot v\right) \cdot -5 + 1)_*}{(v \cdot v + -1)_*}\right)}\]
  7. Final simplification0.6

    \[\leadsto \frac{1}{2} \cdot \pi - \sin^{-1} \left(\frac{(\left(v \cdot v\right) \cdot -5 + 1)_*}{(v \cdot v + -1)_*}\right)\]

Reproduce

herbie shell --seed 2019101 +o rules:numerics
(FPCore (v)
  :name "Falkner and Boettcher, Appendix B, 1"
  (acos (/ (- 1 (* 5 (* v v))) (- (* v v) 1))))