Average Error: 0.5 → 0.5
Time: 20.4s
Precision: 64
\[\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\]
\[\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\]
\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)
\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)
double f(double v) {
        double r170002 = 1.0;
        double r170003 = 5.0;
        double r170004 = v;
        double r170005 = r170004 * r170004;
        double r170006 = r170003 * r170005;
        double r170007 = r170002 - r170006;
        double r170008 = r170005 - r170002;
        double r170009 = r170007 / r170008;
        double r170010 = acos(r170009);
        return r170010;
}

double f(double v) {
        double r170011 = 1.0;
        double r170012 = 5.0;
        double r170013 = v;
        double r170014 = r170013 * r170013;
        double r170015 = r170012 * r170014;
        double r170016 = r170011 - r170015;
        double r170017 = r170014 - r170011;
        double r170018 = r170016 / r170017;
        double r170019 = acos(r170018);
        return r170019;
}

Error

Bits error versus v

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.5

    \[\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\]
  2. Using strategy rm
  3. Applied add-exp-log0.5

    \[\leadsto \color{blue}{e^{\log \left(\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\right)}}\]
  4. Final simplification0.5

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

Reproduce

herbie shell --seed 2019297 
(FPCore (v)
  :name "Falkner and Boettcher, Appendix B, 1"
  :precision binary64
  (acos (/ (- 1 (* 5 (* v v))) (- (* v v) 1))))