Average Error: 29.2 → 29.8
Time: 32.7s
Precision: 64
\[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\]
\[\frac{\frac{t + \left(y \cdot \left(y \cdot \left(z + x \cdot y\right) + 27464.7644704999984242022037506103515625\right) + 230661.5106160000141244381666183471679688\right) \cdot y}{\sqrt[3]{i + \left(c + y \cdot \left(b + \left(y + a\right) \cdot y\right)\right) \cdot y} \cdot \sqrt[3]{i + \left(c + y \cdot \left(b + \left(y + a\right) \cdot y\right)\right) \cdot y}}}{\sqrt[3]{i + \left(c + y \cdot \left(b + \left(y + a\right) \cdot y\right)\right) \cdot y}}\]
\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}
\frac{\frac{t + \left(y \cdot \left(y \cdot \left(z + x \cdot y\right) + 27464.7644704999984242022037506103515625\right) + 230661.5106160000141244381666183471679688\right) \cdot y}{\sqrt[3]{i + \left(c + y \cdot \left(b + \left(y + a\right) \cdot y\right)\right) \cdot y} \cdot \sqrt[3]{i + \left(c + y \cdot \left(b + \left(y + a\right) \cdot y\right)\right) \cdot y}}}{\sqrt[3]{i + \left(c + y \cdot \left(b + \left(y + a\right) \cdot y\right)\right) \cdot y}}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r4577531 = x;
        double r4577532 = y;
        double r4577533 = r4577531 * r4577532;
        double r4577534 = z;
        double r4577535 = r4577533 + r4577534;
        double r4577536 = r4577535 * r4577532;
        double r4577537 = 27464.7644705;
        double r4577538 = r4577536 + r4577537;
        double r4577539 = r4577538 * r4577532;
        double r4577540 = 230661.510616;
        double r4577541 = r4577539 + r4577540;
        double r4577542 = r4577541 * r4577532;
        double r4577543 = t;
        double r4577544 = r4577542 + r4577543;
        double r4577545 = a;
        double r4577546 = r4577532 + r4577545;
        double r4577547 = r4577546 * r4577532;
        double r4577548 = b;
        double r4577549 = r4577547 + r4577548;
        double r4577550 = r4577549 * r4577532;
        double r4577551 = c;
        double r4577552 = r4577550 + r4577551;
        double r4577553 = r4577552 * r4577532;
        double r4577554 = i;
        double r4577555 = r4577553 + r4577554;
        double r4577556 = r4577544 / r4577555;
        return r4577556;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r4577557 = t;
        double r4577558 = y;
        double r4577559 = z;
        double r4577560 = x;
        double r4577561 = r4577560 * r4577558;
        double r4577562 = r4577559 + r4577561;
        double r4577563 = r4577558 * r4577562;
        double r4577564 = 27464.7644705;
        double r4577565 = r4577563 + r4577564;
        double r4577566 = r4577558 * r4577565;
        double r4577567 = 230661.510616;
        double r4577568 = r4577566 + r4577567;
        double r4577569 = r4577568 * r4577558;
        double r4577570 = r4577557 + r4577569;
        double r4577571 = i;
        double r4577572 = c;
        double r4577573 = b;
        double r4577574 = a;
        double r4577575 = r4577558 + r4577574;
        double r4577576 = r4577575 * r4577558;
        double r4577577 = r4577573 + r4577576;
        double r4577578 = r4577558 * r4577577;
        double r4577579 = r4577572 + r4577578;
        double r4577580 = r4577579 * r4577558;
        double r4577581 = r4577571 + r4577580;
        double r4577582 = cbrt(r4577581);
        double r4577583 = r4577582 * r4577582;
        double r4577584 = r4577570 / r4577583;
        double r4577585 = r4577584 / r4577582;
        return r4577585;
}

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

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 29.2

    \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\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 add-cube-cbrt29.8

    \[\leadsto \frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\right) \cdot y + t}{\color{blue}{\left(\sqrt[3]{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \cdot \sqrt[3]{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\right) \cdot \sqrt[3]{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}}}\]
  4. Applied associate-/r*29.8

    \[\leadsto \color{blue}{\frac{\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\right) \cdot y + t}{\sqrt[3]{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \cdot \sqrt[3]{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}}}{\sqrt[3]{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}}}\]
  5. Final simplification29.8

    \[\leadsto \frac{\frac{t + \left(y \cdot \left(y \cdot \left(z + x \cdot y\right) + 27464.7644704999984242022037506103515625\right) + 230661.5106160000141244381666183471679688\right) \cdot y}{\sqrt[3]{i + \left(c + y \cdot \left(b + \left(y + a\right) \cdot y\right)\right) \cdot y} \cdot \sqrt[3]{i + \left(c + y \cdot \left(b + \left(y + a\right) \cdot y\right)\right) \cdot y}}}{\sqrt[3]{i + \left(c + y \cdot \left(b + \left(y + a\right) \cdot y\right)\right) \cdot y}}\]

Reproduce

herbie shell --seed 2019171 
(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)))