Average Error: 0.6 → 0.6
Time: 4.5s
Precision: 64
\[\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\]
\[e^{\log \left(\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\right)}\]
\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)
e^{\log \left(\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\right)}
double f(double v) {
        double r153019 = 1.0;
        double r153020 = 5.0;
        double r153021 = v;
        double r153022 = r153021 * r153021;
        double r153023 = r153020 * r153022;
        double r153024 = r153019 - r153023;
        double r153025 = r153022 - r153019;
        double r153026 = r153024 / r153025;
        double r153027 = acos(r153026);
        return r153027;
}

double f(double v) {
        double r153028 = 1.0;
        double r153029 = 5.0;
        double r153030 = v;
        double r153031 = r153030 * r153030;
        double r153032 = r153029 * r153031;
        double r153033 = r153028 - r153032;
        double r153034 = r153031 - r153028;
        double r153035 = r153033 / r153034;
        double r153036 = acos(r153035);
        double r153037 = log(r153036);
        double r153038 = exp(r153037);
        return r153038;
}

Error

Bits error versus v

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.6

    \[\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.6

    \[\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.6

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

Reproduce

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