Average Error: 0.5 → 0.6
Time: 24.1s
Precision: 64
\[\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\]
\[\cos^{-1} \left(\frac{1 - \log \left(e^{5 \cdot \left(v \cdot v\right)}\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 - \log \left(e^{5 \cdot \left(v \cdot v\right)}\right)}{v \cdot v - 1}\right)
double f(double v) {
        double r147792 = 1.0;
        double r147793 = 5.0;
        double r147794 = v;
        double r147795 = r147794 * r147794;
        double r147796 = r147793 * r147795;
        double r147797 = r147792 - r147796;
        double r147798 = r147795 - r147792;
        double r147799 = r147797 / r147798;
        double r147800 = acos(r147799);
        return r147800;
}

double f(double v) {
        double r147801 = 1.0;
        double r147802 = 5.0;
        double r147803 = v;
        double r147804 = r147803 * r147803;
        double r147805 = r147802 * r147804;
        double r147806 = exp(r147805);
        double r147807 = log(r147806);
        double r147808 = r147801 - r147807;
        double r147809 = r147804 - r147801;
        double r147810 = r147808 / r147809;
        double r147811 = acos(r147810);
        return r147811;
}

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-log-exp0.6

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

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

Reproduce

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