Average Error: 29.5 → 29.5
Time: 2.1m
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}\]
\[\left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\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.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}
\left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\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 r740268 = x;
        double r740269 = y;
        double r740270 = r740268 * r740269;
        double r740271 = z;
        double r740272 = r740270 + r740271;
        double r740273 = r740272 * r740269;
        double r740274 = 27464.7644705;
        double r740275 = r740273 + r740274;
        double r740276 = r740275 * r740269;
        double r740277 = 230661.510616;
        double r740278 = r740276 + r740277;
        double r740279 = r740278 * r740269;
        double r740280 = t;
        double r740281 = r740279 + r740280;
        double r740282 = a;
        double r740283 = r740269 + r740282;
        double r740284 = r740283 * r740269;
        double r740285 = b;
        double r740286 = r740284 + r740285;
        double r740287 = r740286 * r740269;
        double r740288 = c;
        double r740289 = r740287 + r740288;
        double r740290 = r740289 * r740269;
        double r740291 = i;
        double r740292 = r740290 + r740291;
        double r740293 = r740281 / r740292;
        return r740293;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r740294 = x;
        double r740295 = y;
        double r740296 = r740294 * r740295;
        double r740297 = z;
        double r740298 = r740296 + r740297;
        double r740299 = r740298 * r740295;
        double r740300 = 27464.7644705;
        double r740301 = r740299 + r740300;
        double r740302 = r740301 * r740295;
        double r740303 = 230661.510616;
        double r740304 = r740302 + r740303;
        double r740305 = r740304 * r740295;
        double r740306 = t;
        double r740307 = r740305 + r740306;
        double r740308 = 1.0;
        double r740309 = a;
        double r740310 = r740295 + r740309;
        double r740311 = r740310 * r740295;
        double r740312 = b;
        double r740313 = r740311 + r740312;
        double r740314 = r740313 * r740295;
        double r740315 = c;
        double r740316 = r740314 + r740315;
        double r740317 = r740316 * r740295;
        double r740318 = i;
        double r740319 = r740317 + r740318;
        double r740320 = r740308 / r740319;
        double r740321 = r740307 * r740320;
        return r740321;
}

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.5

    \[\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 div-inv29.5

    \[\leadsto \color{blue}{\left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\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.5

    \[\leadsto \left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\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 2019209 
(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.764470499998) y) 230661.510616000014) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))