Average Error: 0.6 → 0.8
Time: 21.3s
Precision: 64
\[\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\]
\[\cos^{-1} \left(\left(4 \cdot \left(v \cdot v\right) + \left(4 \cdot \left(v \cdot v\right)\right) \cdot \left(v \cdot v\right)\right) - 1\right)\]
\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)
\cos^{-1} \left(\left(4 \cdot \left(v \cdot v\right) + \left(4 \cdot \left(v \cdot v\right)\right) \cdot \left(v \cdot v\right)\right) - 1\right)
double f(double v) {
        double r7221800 = 1.0;
        double r7221801 = 5.0;
        double r7221802 = v;
        double r7221803 = r7221802 * r7221802;
        double r7221804 = r7221801 * r7221803;
        double r7221805 = r7221800 - r7221804;
        double r7221806 = r7221803 - r7221800;
        double r7221807 = r7221805 / r7221806;
        double r7221808 = acos(r7221807);
        return r7221808;
}

double f(double v) {
        double r7221809 = 4.0;
        double r7221810 = v;
        double r7221811 = r7221810 * r7221810;
        double r7221812 = r7221809 * r7221811;
        double r7221813 = r7221812 * r7221811;
        double r7221814 = r7221812 + r7221813;
        double r7221815 = 1.0;
        double r7221816 = r7221814 - r7221815;
        double r7221817 = acos(r7221816);
        return r7221817;
}

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. Taylor expanded around 0 0.8

    \[\leadsto \cos^{-1} \color{blue}{\left(\left(4 \cdot {v}^{4} + 4 \cdot {v}^{2}\right) - 1\right)}\]
  3. Simplified0.8

    \[\leadsto \cos^{-1} \color{blue}{\left(\left(\left(v \cdot v\right) \cdot \left(\left(v \cdot v\right) \cdot 4\right) + \left(v \cdot v\right) \cdot 4\right) - 1\right)}\]
  4. Final simplification0.8

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

Reproduce

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