Average Error: 0.0 → 0.0
Time: 3.8s
Precision: 64
\[\frac{2.30753 + x \cdot 0.27061000000000002}{1 + x \cdot \left(0.992290000000000005 + x \cdot 0.044810000000000003\right)} - x\]
\[\frac{1}{\sqrt[3]{{\left(\frac{\mathsf{fma}\left(x, \mathsf{fma}\left(0.044810000000000003, x, 0.992290000000000005\right), 1\right)}{\mathsf{fma}\left(0.27061000000000002, x, 2.30753\right)}\right)}^{3}}} - x\]
\frac{2.30753 + x \cdot 0.27061000000000002}{1 + x \cdot \left(0.992290000000000005 + x \cdot 0.044810000000000003\right)} - x
\frac{1}{\sqrt[3]{{\left(\frac{\mathsf{fma}\left(x, \mathsf{fma}\left(0.044810000000000003, x, 0.992290000000000005\right), 1\right)}{\mathsf{fma}\left(0.27061000000000002, x, 2.30753\right)}\right)}^{3}}} - x
double f(double x) {
        double r62879 = 2.30753;
        double r62880 = x;
        double r62881 = 0.27061;
        double r62882 = r62880 * r62881;
        double r62883 = r62879 + r62882;
        double r62884 = 1.0;
        double r62885 = 0.99229;
        double r62886 = 0.04481;
        double r62887 = r62880 * r62886;
        double r62888 = r62885 + r62887;
        double r62889 = r62880 * r62888;
        double r62890 = r62884 + r62889;
        double r62891 = r62883 / r62890;
        double r62892 = r62891 - r62880;
        return r62892;
}

double f(double x) {
        double r62893 = 1.0;
        double r62894 = x;
        double r62895 = 0.04481;
        double r62896 = 0.99229;
        double r62897 = fma(r62895, r62894, r62896);
        double r62898 = 1.0;
        double r62899 = fma(r62894, r62897, r62898);
        double r62900 = 0.27061;
        double r62901 = 2.30753;
        double r62902 = fma(r62900, r62894, r62901);
        double r62903 = r62899 / r62902;
        double r62904 = 3.0;
        double r62905 = pow(r62903, r62904);
        double r62906 = cbrt(r62905);
        double r62907 = r62893 / r62906;
        double r62908 = r62907 - r62894;
        return r62908;
}

Error

Bits error versus x

Derivation

  1. Initial program 0.0

    \[\frac{2.30753 + x \cdot 0.27061000000000002}{1 + x \cdot \left(0.992290000000000005 + x \cdot 0.044810000000000003\right)} - x\]
  2. Using strategy rm
  3. Applied clear-num0.0

    \[\leadsto \color{blue}{\frac{1}{\frac{1 + x \cdot \left(0.992290000000000005 + x \cdot 0.044810000000000003\right)}{2.30753 + x \cdot 0.27061000000000002}}} - x\]
  4. Simplified0.0

    \[\leadsto \frac{1}{\color{blue}{\frac{\mathsf{fma}\left(x, \mathsf{fma}\left(0.044810000000000003, x, 0.992290000000000005\right), 1\right)}{\mathsf{fma}\left(0.27061000000000002, x, 2.30753\right)}}} - x\]
  5. Using strategy rm
  6. Applied add-cbrt-cube21.8

    \[\leadsto \frac{1}{\frac{\mathsf{fma}\left(x, \mathsf{fma}\left(0.044810000000000003, x, 0.992290000000000005\right), 1\right)}{\color{blue}{\sqrt[3]{\left(\mathsf{fma}\left(0.27061000000000002, x, 2.30753\right) \cdot \mathsf{fma}\left(0.27061000000000002, x, 2.30753\right)\right) \cdot \mathsf{fma}\left(0.27061000000000002, x, 2.30753\right)}}}} - x\]
  7. Applied add-cbrt-cube21.8

    \[\leadsto \frac{1}{\frac{\color{blue}{\sqrt[3]{\left(\mathsf{fma}\left(x, \mathsf{fma}\left(0.044810000000000003, x, 0.992290000000000005\right), 1\right) \cdot \mathsf{fma}\left(x, \mathsf{fma}\left(0.044810000000000003, x, 0.992290000000000005\right), 1\right)\right) \cdot \mathsf{fma}\left(x, \mathsf{fma}\left(0.044810000000000003, x, 0.992290000000000005\right), 1\right)}}}{\sqrt[3]{\left(\mathsf{fma}\left(0.27061000000000002, x, 2.30753\right) \cdot \mathsf{fma}\left(0.27061000000000002, x, 2.30753\right)\right) \cdot \mathsf{fma}\left(0.27061000000000002, x, 2.30753\right)}}} - x\]
  8. Applied cbrt-undiv21.8

    \[\leadsto \frac{1}{\color{blue}{\sqrt[3]{\frac{\left(\mathsf{fma}\left(x, \mathsf{fma}\left(0.044810000000000003, x, 0.992290000000000005\right), 1\right) \cdot \mathsf{fma}\left(x, \mathsf{fma}\left(0.044810000000000003, x, 0.992290000000000005\right), 1\right)\right) \cdot \mathsf{fma}\left(x, \mathsf{fma}\left(0.044810000000000003, x, 0.992290000000000005\right), 1\right)}{\left(\mathsf{fma}\left(0.27061000000000002, x, 2.30753\right) \cdot \mathsf{fma}\left(0.27061000000000002, x, 2.30753\right)\right) \cdot \mathsf{fma}\left(0.27061000000000002, x, 2.30753\right)}}}} - x\]
  9. Simplified0.0

    \[\leadsto \frac{1}{\sqrt[3]{\color{blue}{{\left(\frac{\mathsf{fma}\left(x, \mathsf{fma}\left(0.044810000000000003, x, 0.992290000000000005\right), 1\right)}{\mathsf{fma}\left(0.27061000000000002, x, 2.30753\right)}\right)}^{3}}}} - x\]
  10. Final simplification0.0

    \[\leadsto \frac{1}{\sqrt[3]{{\left(\frac{\mathsf{fma}\left(x, \mathsf{fma}\left(0.044810000000000003, x, 0.992290000000000005\right), 1\right)}{\mathsf{fma}\left(0.27061000000000002, x, 2.30753\right)}\right)}^{3}}} - x\]

Reproduce

herbie shell --seed 2020060 +o rules:numerics
(FPCore (x)
  :name "Numeric.SpecFunctions:invIncompleteGamma from math-functions-0.1.5.2, C"
  :precision binary64
  (- (/ (+ 2.30753 (* x 0.27061)) (+ 1 (* x (+ 0.99229 (* x 0.04481))))) x))