Average Error: 29.2 → 29.3
Time: 8.7s
Precision: 64
\[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\]
\[\left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\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}\]
\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}
\left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\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}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r63513 = x;
        double r63514 = y;
        double r63515 = r63513 * r63514;
        double r63516 = z;
        double r63517 = r63515 + r63516;
        double r63518 = r63517 * r63514;
        double r63519 = 27464.7644705;
        double r63520 = r63518 + r63519;
        double r63521 = r63520 * r63514;
        double r63522 = 230661.510616;
        double r63523 = r63521 + r63522;
        double r63524 = r63523 * r63514;
        double r63525 = t;
        double r63526 = r63524 + r63525;
        double r63527 = a;
        double r63528 = r63514 + r63527;
        double r63529 = r63528 * r63514;
        double r63530 = b;
        double r63531 = r63529 + r63530;
        double r63532 = r63531 * r63514;
        double r63533 = c;
        double r63534 = r63532 + r63533;
        double r63535 = r63534 * r63514;
        double r63536 = i;
        double r63537 = r63535 + r63536;
        double r63538 = r63526 / r63537;
        return r63538;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r63539 = x;
        double r63540 = y;
        double r63541 = r63539 * r63540;
        double r63542 = z;
        double r63543 = r63541 + r63542;
        double r63544 = r63543 * r63540;
        double r63545 = 27464.7644705;
        double r63546 = r63544 + r63545;
        double r63547 = r63546 * r63540;
        double r63548 = 230661.510616;
        double r63549 = r63547 + r63548;
        double r63550 = r63549 * r63540;
        double r63551 = t;
        double r63552 = r63550 + r63551;
        double r63553 = 1.0;
        double r63554 = a;
        double r63555 = r63540 + r63554;
        double r63556 = r63555 * r63540;
        double r63557 = b;
        double r63558 = r63556 + r63557;
        double r63559 = r63558 * r63540;
        double r63560 = c;
        double r63561 = r63559 + r63560;
        double r63562 = r63561 * r63540;
        double r63563 = i;
        double r63564 = r63562 + r63563;
        double r63565 = r63553 / r63564;
        double r63566 = r63552 * r63565;
        return r63566;
}

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.764470499998\right) \cdot y + 230661.510616000014\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-inv29.3

    \[\leadsto \color{blue}{\left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\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 simplification29.3

    \[\leadsto \left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\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}\]

Reproduce

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