Average Error: 27.9 → 28.0
Time: 1.5m
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}\]
\[\frac{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, \left(\left(\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)} \cdot \sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}\right) \cdot \left(\left(\sqrt[3]{\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}}\right) \cdot \sqrt[3]{\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}}\right)\right), 230661.510616\right)\right), t\right)}{\mathsf{fma}\left(\left(\mathsf{fma}\left(y, \left(\mathsf{fma}\left(\left(a + y\right), y, b\right)\right), c\right)\right), y, i\right)}\]
\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}
\frac{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, \left(\left(\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)} \cdot \sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}\right) \cdot \left(\left(\sqrt[3]{\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}}\right) \cdot \sqrt[3]{\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}}\right)\right), 230661.510616\right)\right), t\right)}{\mathsf{fma}\left(\left(\mathsf{fma}\left(y, \left(\mathsf{fma}\left(\left(a + y\right), y, b\right)\right), c\right)\right), y, i\right)}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r8487285 = x;
        double r8487286 = y;
        double r8487287 = r8487285 * r8487286;
        double r8487288 = z;
        double r8487289 = r8487287 + r8487288;
        double r8487290 = r8487289 * r8487286;
        double r8487291 = 27464.7644705;
        double r8487292 = r8487290 + r8487291;
        double r8487293 = r8487292 * r8487286;
        double r8487294 = 230661.510616;
        double r8487295 = r8487293 + r8487294;
        double r8487296 = r8487295 * r8487286;
        double r8487297 = t;
        double r8487298 = r8487296 + r8487297;
        double r8487299 = a;
        double r8487300 = r8487286 + r8487299;
        double r8487301 = r8487300 * r8487286;
        double r8487302 = b;
        double r8487303 = r8487301 + r8487302;
        double r8487304 = r8487303 * r8487286;
        double r8487305 = c;
        double r8487306 = r8487304 + r8487305;
        double r8487307 = r8487306 * r8487286;
        double r8487308 = i;
        double r8487309 = r8487307 + r8487308;
        double r8487310 = r8487298 / r8487309;
        return r8487310;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r8487311 = y;
        double r8487312 = x;
        double r8487313 = z;
        double r8487314 = fma(r8487311, r8487312, r8487313);
        double r8487315 = 27464.7644705;
        double r8487316 = fma(r8487311, r8487314, r8487315);
        double r8487317 = cbrt(r8487316);
        double r8487318 = r8487317 * r8487317;
        double r8487319 = cbrt(r8487317);
        double r8487320 = r8487319 * r8487319;
        double r8487321 = r8487320 * r8487319;
        double r8487322 = r8487318 * r8487321;
        double r8487323 = 230661.510616;
        double r8487324 = fma(r8487311, r8487322, r8487323);
        double r8487325 = t;
        double r8487326 = fma(r8487311, r8487324, r8487325);
        double r8487327 = a;
        double r8487328 = r8487327 + r8487311;
        double r8487329 = b;
        double r8487330 = fma(r8487328, r8487311, r8487329);
        double r8487331 = c;
        double r8487332 = fma(r8487311, r8487330, r8487331);
        double r8487333 = i;
        double r8487334 = fma(r8487332, r8487311, r8487333);
        double r8487335 = r8487326 / r8487334;
        return r8487335;
}

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 27.9

    \[\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. Simplified27.9

    \[\leadsto \color{blue}{\frac{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)\right), 230661.510616\right)\right), t\right)}{\mathsf{fma}\left(\left(\mathsf{fma}\left(y, \left(\mathsf{fma}\left(\left(y + a\right), y, b\right)\right), c\right)\right), y, i\right)}}\]
  3. Using strategy rm
  4. Applied add-cube-cbrt28.0

    \[\leadsto \frac{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, \color{blue}{\left(\left(\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)} \cdot \sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}\right) \cdot \sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}\right)}, 230661.510616\right)\right), t\right)}{\mathsf{fma}\left(\left(\mathsf{fma}\left(y, \left(\mathsf{fma}\left(\left(y + a\right), y, b\right)\right), c\right)\right), y, i\right)}\]
  5. Using strategy rm
  6. Applied add-cube-cbrt28.0

    \[\leadsto \frac{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, \left(\left(\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)} \cdot \sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}\right) \cdot \color{blue}{\left(\left(\sqrt[3]{\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}}\right) \cdot \sqrt[3]{\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}}\right)}\right), 230661.510616\right)\right), t\right)}{\mathsf{fma}\left(\left(\mathsf{fma}\left(y, \left(\mathsf{fma}\left(\left(y + a\right), y, b\right)\right), c\right)\right), y, i\right)}\]
  7. Final simplification28.0

    \[\leadsto \frac{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, \left(\left(\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)} \cdot \sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}\right) \cdot \left(\left(\sqrt[3]{\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}}\right) \cdot \sqrt[3]{\sqrt[3]{\mathsf{fma}\left(y, \left(\mathsf{fma}\left(y, x, z\right)\right), 27464.7644705\right)}}\right)\right), 230661.510616\right)\right), t\right)}{\mathsf{fma}\left(\left(\mathsf{fma}\left(y, \left(\mathsf{fma}\left(\left(a + y\right), y, b\right)\right), c\right)\right), y, i\right)}\]

Reproduce

herbie shell --seed 2019125 +o rules:numerics
(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)))