Average Error: 0.5 → 0.5
Time: 19.2s
Precision: 64
\[\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\]
\[\cos^{-1} \left(\frac{1 - \left(v \cdot v\right) \cdot 5}{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 - \left(v \cdot v\right) \cdot 5}{v \cdot v - 1}\right)
double f(double v) {
        double r131630 = 1.0;
        double r131631 = 5.0;
        double r131632 = v;
        double r131633 = r131632 * r131632;
        double r131634 = r131631 * r131633;
        double r131635 = r131630 - r131634;
        double r131636 = r131633 - r131630;
        double r131637 = r131635 / r131636;
        double r131638 = acos(r131637);
        return r131638;
}

double f(double v) {
        double r131639 = 1.0;
        double r131640 = v;
        double r131641 = r131640 * r131640;
        double r131642 = 5.0;
        double r131643 = r131641 * r131642;
        double r131644 = r131639 - r131643;
        double r131645 = r131641 - r131639;
        double r131646 = r131644 / r131645;
        double r131647 = acos(r131646);
        return r131647;
}

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. Final simplification0.5

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

Reproduce

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