Average Error: 0.5 → 0.5
Time: 7.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}{\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)} \cdot \sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}} \cdot \left(\mathsf{fma}\left(v, v, 1\right) \cdot \frac{1 - 5 \cdot \left(v \cdot v\right)}{\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}}\right)\right)\]
\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)
\cos^{-1} \left(\frac{1}{\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)} \cdot \sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}} \cdot \left(\mathsf{fma}\left(v, v, 1\right) \cdot \frac{1 - 5 \cdot \left(v \cdot v\right)}{\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}}\right)\right)
double f(double v) {
        double r350889 = 1.0;
        double r350890 = 5.0;
        double r350891 = v;
        double r350892 = r350891 * r350891;
        double r350893 = r350890 * r350892;
        double r350894 = r350889 - r350893;
        double r350895 = r350892 - r350889;
        double r350896 = r350894 / r350895;
        double r350897 = acos(r350896);
        return r350897;
}

double f(double v) {
        double r350898 = 1.0;
        double r350899 = 1.0;
        double r350900 = -r350899;
        double r350901 = v;
        double r350902 = 4.0;
        double r350903 = pow(r350901, r350902);
        double r350904 = fma(r350900, r350899, r350903);
        double r350905 = cbrt(r350904);
        double r350906 = r350905 * r350905;
        double r350907 = r350898 / r350906;
        double r350908 = fma(r350901, r350901, r350899);
        double r350909 = 5.0;
        double r350910 = r350901 * r350901;
        double r350911 = r350909 * r350910;
        double r350912 = r350899 - r350911;
        double r350913 = r350912 / r350905;
        double r350914 = r350908 * r350913;
        double r350915 = r350907 * r350914;
        double r350916 = acos(r350915);
        return r350916;
}

Error

Bits error versus v

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

    \[\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.5

    \[\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.5

    \[\leadsto \cos^{-1} \left(\color{blue}{\frac{1 - 5 \cdot \left(v \cdot v\right)}{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}} \cdot \left(v \cdot v + 1\right)\right)\]
  6. Using strategy rm
  7. Applied add-cube-cbrt0.5

    \[\leadsto \cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{\color{blue}{\left(\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)} \cdot \sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}\right) \cdot \sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}}} \cdot \left(v \cdot v + 1\right)\right)\]
  8. Applied *-un-lft-identity0.5

    \[\leadsto \cos^{-1} \left(\frac{\color{blue}{1 \cdot \left(1 - 5 \cdot \left(v \cdot v\right)\right)}}{\left(\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)} \cdot \sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}\right) \cdot \sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}} \cdot \left(v \cdot v + 1\right)\right)\]
  9. Applied times-frac0.5

    \[\leadsto \cos^{-1} \left(\color{blue}{\left(\frac{1}{\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)} \cdot \sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}} \cdot \frac{1 - 5 \cdot \left(v \cdot v\right)}{\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}}\right)} \cdot \left(v \cdot v + 1\right)\right)\]
  10. Applied associate-*l*0.5

    \[\leadsto \cos^{-1} \color{blue}{\left(\frac{1}{\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)} \cdot \sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}} \cdot \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}} \cdot \left(v \cdot v + 1\right)\right)\right)}\]
  11. Simplified0.5

    \[\leadsto \cos^{-1} \left(\frac{1}{\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)} \cdot \sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}} \cdot \color{blue}{\left(\mathsf{fma}\left(v, v, 1\right) \cdot \frac{1 - 5 \cdot \left(v \cdot v\right)}{\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}}\right)}\right)\]
  12. Final simplification0.5

    \[\leadsto \cos^{-1} \left(\frac{1}{\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)} \cdot \sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}} \cdot \left(\mathsf{fma}\left(v, v, 1\right) \cdot \frac{1 - 5 \cdot \left(v \cdot v\right)}{\sqrt[3]{\mathsf{fma}\left(-1, 1, {v}^{4}\right)}}\right)\right)\]

Reproduce

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