Average Error: 0.5 → 0.7
Time: 1.3m
Precision: 64
\[\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\]
\[\cos^{-1} \left(-1 + \left(v \cdot v\right) \cdot \left(4 + \left(v \cdot v\right) \cdot 4\right)\right)\]
\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)
\cos^{-1} \left(-1 + \left(v \cdot v\right) \cdot \left(4 + \left(v \cdot v\right) \cdot 4\right)\right)
double f(double v) {
        double r104971087 = 1.0;
        double r104971088 = 5.0;
        double r104971089 = v;
        double r104971090 = r104971089 * r104971089;
        double r104971091 = r104971088 * r104971090;
        double r104971092 = r104971087 - r104971091;
        double r104971093 = r104971090 - r104971087;
        double r104971094 = r104971092 / r104971093;
        double r104971095 = acos(r104971094);
        return r104971095;
}

double f(double v) {
        double r104971096 = -1.0;
        double r104971097 = v;
        double r104971098 = r104971097 * r104971097;
        double r104971099 = 4.0;
        double r104971100 = r104971098 * r104971099;
        double r104971101 = r104971099 + r104971100;
        double r104971102 = r104971098 * r104971101;
        double r104971103 = r104971096 + r104971102;
        double r104971104 = acos(r104971103);
        return r104971104;
}

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

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

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

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

Reproduce

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