Average Error: 0.0 → 0.0
Time: 3.9s
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 r80495 = 2.30753;
        double r80496 = x;
        double r80497 = 0.27061;
        double r80498 = r80496 * r80497;
        double r80499 = r80495 + r80498;
        double r80500 = 1.0;
        double r80501 = 0.99229;
        double r80502 = 0.04481;
        double r80503 = r80496 * r80502;
        double r80504 = r80501 + r80503;
        double r80505 = r80496 * r80504;
        double r80506 = r80500 + r80505;
        double r80507 = r80499 / r80506;
        double r80508 = r80507 - r80496;
        return r80508;
}

double f(double x) {
        double r80509 = 1.0;
        double r80510 = x;
        double r80511 = 0.04481;
        double r80512 = 0.99229;
        double r80513 = fma(r80511, r80510, r80512);
        double r80514 = 1.0;
        double r80515 = fma(r80510, r80513, r80514);
        double r80516 = 0.27061;
        double r80517 = 2.30753;
        double r80518 = fma(r80516, r80510, r80517);
        double r80519 = r80515 / r80518;
        double r80520 = 3.0;
        double r80521 = pow(r80519, r80520);
        double r80522 = cbrt(r80521);
        double r80523 = r80509 / r80522;
        double r80524 = r80523 - r80510;
        return r80524;
}

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))