Average Error: 0.5 → 0.5
Time: 27.1s
Precision: 64
\[\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\]
\[\sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)} \cdot \left(\sqrt{\sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)}} \cdot \sqrt{\sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)}}\right)\]
\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)
\sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)} \cdot \left(\sqrt{\sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)}} \cdot \sqrt{\sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)}}\right)
double f(double v) {
        double r42976313 = 1.0;
        double r42976314 = 5.0;
        double r42976315 = v;
        double r42976316 = r42976315 * r42976315;
        double r42976317 = r42976314 * r42976316;
        double r42976318 = r42976313 - r42976317;
        double r42976319 = r42976316 - r42976313;
        double r42976320 = r42976318 / r42976319;
        double r42976321 = acos(r42976320);
        return r42976321;
}

double f(double v) {
        double r42976322 = -5.0;
        double r42976323 = v;
        double r42976324 = r42976323 * r42976323;
        double r42976325 = 1.0;
        double r42976326 = fma(r42976322, r42976324, r42976325);
        double r42976327 = r42976324 - r42976325;
        double r42976328 = r42976326 / r42976327;
        double r42976329 = acos(r42976328);
        double r42976330 = sqrt(r42976329);
        double r42976331 = sqrt(r42976330);
        double r42976332 = r42976331 * r42976331;
        double r42976333 = r42976330 * r42976332;
        return r42976333;
}

Error

Bits error versus v

Derivation

  1. Initial program 0.5

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

    \[\leadsto \color{blue}{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)}\]
  3. Using strategy rm
  4. Applied add-sqr-sqrt1.5

    \[\leadsto \color{blue}{\sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)} \cdot \sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)}}\]
  5. Using strategy rm
  6. Applied add-sqr-sqrt0.5

    \[\leadsto \color{blue}{\left(\sqrt{\sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)}} \cdot \sqrt{\sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)}}\right)} \cdot \sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)}\]
  7. Final simplification0.5

    \[\leadsto \sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)} \cdot \left(\sqrt{\sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)}} \cdot \sqrt{\sqrt{\cos^{-1} \left(\frac{\mathsf{fma}\left(-5, \left(v \cdot v\right), 1\right)}{v \cdot v - 1}\right)}}\right)\]

Reproduce

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