Average Error: 0.5 → 0.6
Time: 18.2s
Precision: 64
\[\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\]
\[\cos^{-1} \left(\mathsf{log1p}\left(\mathsf{expm1}\left(\frac{1 - 5 \cdot {v}^{2}}{{v}^{4} - 1 \cdot 1}\right)\right) \cdot \left(v \cdot v + 1\right)\right)\]
\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)
\cos^{-1} \left(\mathsf{log1p}\left(\mathsf{expm1}\left(\frac{1 - 5 \cdot {v}^{2}}{{v}^{4} - 1 \cdot 1}\right)\right) \cdot \left(v \cdot v + 1\right)\right)
double f(double v) {
        double r168540 = 1.0;
        double r168541 = 5.0;
        double r168542 = v;
        double r168543 = r168542 * r168542;
        double r168544 = r168541 * r168543;
        double r168545 = r168540 - r168544;
        double r168546 = r168543 - r168540;
        double r168547 = r168545 / r168546;
        double r168548 = acos(r168547);
        return r168548;
}

double f(double v) {
        double r168549 = 1.0;
        double r168550 = 5.0;
        double r168551 = v;
        double r168552 = 2.0;
        double r168553 = pow(r168551, r168552);
        double r168554 = r168550 * r168553;
        double r168555 = r168549 - r168554;
        double r168556 = 4.0;
        double r168557 = pow(r168551, r168556);
        double r168558 = r168549 * r168549;
        double r168559 = r168557 - r168558;
        double r168560 = r168555 / r168559;
        double r168561 = expm1(r168560);
        double r168562 = log1p(r168561);
        double r168563 = r168551 * r168551;
        double r168564 = r168563 + r168549;
        double r168565 = r168562 * r168564;
        double r168566 = acos(r168565);
        return r168566;
}

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 flip--0.6

    \[\leadsto \cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{\color{blue}{\frac{\left(v \cdot v\right) \cdot \left(v \cdot v\right) - 1 \cdot 1}{v \cdot v + 1}}}\right)\]
  4. Applied associate-/r/0.6

    \[\leadsto \cos^{-1} \color{blue}{\left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{\left(v \cdot v\right) \cdot \left(v \cdot v\right) - 1 \cdot 1} \cdot \left(v \cdot v + 1\right)\right)}\]
  5. Simplified0.6

    \[\leadsto \cos^{-1} \left(\color{blue}{\frac{1 - 5 \cdot {v}^{2}}{{v}^{4} - 1 \cdot 1}} \cdot \left(v \cdot v + 1\right)\right)\]
  6. Using strategy rm
  7. Applied log1p-expm1-u0.6

    \[\leadsto \cos^{-1} \left(\color{blue}{\mathsf{log1p}\left(\mathsf{expm1}\left(\frac{1 - 5 \cdot {v}^{2}}{{v}^{4} - 1 \cdot 1}\right)\right)} \cdot \left(v \cdot v + 1\right)\right)\]
  8. Final simplification0.6

    \[\leadsto \cos^{-1} \left(\mathsf{log1p}\left(\mathsf{expm1}\left(\frac{1 - 5 \cdot {v}^{2}}{{v}^{4} - 1 \cdot 1}\right)\right) \cdot \left(v \cdot v + 1\right)\right)\]

Reproduce

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