Average Error: 28.3 → 28.3
Time: 1.8m
Precision: 64
\[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\]
\[\left(t + \left(y \cdot \left(y \cdot \left(z + x \cdot y\right) + 27464.7644705\right) + 230661.510616\right) \cdot y\right) \cdot \frac{1}{i + y \cdot \left(\left(\left(a + y\right) \cdot y + b\right) \cdot y + c\right)}\]
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r9835530 = x;
        double r9835531 = y;
        double r9835532 = r9835530 * r9835531;
        double r9835533 = z;
        double r9835534 = r9835532 + r9835533;
        double r9835535 = r9835534 * r9835531;
        double r9835536 = 27464.7644705;
        double r9835537 = r9835535 + r9835536;
        double r9835538 = r9835537 * r9835531;
        double r9835539 = 230661.510616;
        double r9835540 = r9835538 + r9835539;
        double r9835541 = r9835540 * r9835531;
        double r9835542 = t;
        double r9835543 = r9835541 + r9835542;
        double r9835544 = a;
        double r9835545 = r9835531 + r9835544;
        double r9835546 = r9835545 * r9835531;
        double r9835547 = b;
        double r9835548 = r9835546 + r9835547;
        double r9835549 = r9835548 * r9835531;
        double r9835550 = c;
        double r9835551 = r9835549 + r9835550;
        double r9835552 = r9835551 * r9835531;
        double r9835553 = i;
        double r9835554 = r9835552 + r9835553;
        double r9835555 = r9835543 / r9835554;
        return r9835555;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r9835556 = t;
        double r9835557 = y;
        double r9835558 = z;
        double r9835559 = x;
        double r9835560 = r9835559 * r9835557;
        double r9835561 = r9835558 + r9835560;
        double r9835562 = r9835557 * r9835561;
        double r9835563 = 27464.7644705;
        double r9835564 = r9835562 + r9835563;
        double r9835565 = r9835557 * r9835564;
        double r9835566 = 230661.510616;
        double r9835567 = r9835565 + r9835566;
        double r9835568 = r9835567 * r9835557;
        double r9835569 = r9835556 + r9835568;
        double r9835570 = 1.0;
        double r9835571 = i;
        double r9835572 = a;
        double r9835573 = r9835572 + r9835557;
        double r9835574 = r9835573 * r9835557;
        double r9835575 = b;
        double r9835576 = r9835574 + r9835575;
        double r9835577 = r9835576 * r9835557;
        double r9835578 = c;
        double r9835579 = r9835577 + r9835578;
        double r9835580 = r9835557 * r9835579;
        double r9835581 = r9835571 + r9835580;
        double r9835582 = r9835570 / r9835581;
        double r9835583 = r9835569 * r9835582;
        return r9835583;
}

\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}
\left(t + \left(y \cdot \left(y \cdot \left(z + x \cdot y\right) + 27464.7644705\right) + 230661.510616\right) \cdot y\right) \cdot \frac{1}{i + y \cdot \left(\left(\left(a + y\right) \cdot y + b\right) \cdot y + c\right)}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Bits error versus b

Bits error versus c

Bits error versus i

Derivation

  1. Initial program 28.3

    \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\]
  2. Using strategy rm
  3. Applied div-inv28.3

    \[\leadsto \color{blue}{\left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t\right) \cdot \frac{1}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}}\]
  4. Final simplification28.3

    \[\leadsto \left(t + \left(y \cdot \left(y \cdot \left(z + x \cdot y\right) + 27464.7644705\right) + 230661.510616\right) \cdot y\right) \cdot \frac{1}{i + y \cdot \left(\left(\left(a + y\right) \cdot y + b\right) \cdot y + c\right)}\]

Reproduce

herbie shell --seed 2019102 
(FPCore (x y z t a b c i)
  :name "Numeric.SpecFunctions:logGamma from math-functions-0.1.5.2"
  (/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))