Average Error: 28.1 → 28.1
Time: 35.4s
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(\mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, x, z\right), 27464.7644705\right), 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(y, \mathsf{fma}\left(y + a, y, b\right), c\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(\mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, x, z\right), 27464.7644705\right), 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(y, \mathsf{fma}\left(y + a, y, b\right), c\right), y, i\right)}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r2069360 = x;
        double r2069361 = y;
        double r2069362 = r2069360 * r2069361;
        double r2069363 = z;
        double r2069364 = r2069362 + r2069363;
        double r2069365 = r2069364 * r2069361;
        double r2069366 = 27464.7644705;
        double r2069367 = r2069365 + r2069366;
        double r2069368 = r2069367 * r2069361;
        double r2069369 = 230661.510616;
        double r2069370 = r2069368 + r2069369;
        double r2069371 = r2069370 * r2069361;
        double r2069372 = t;
        double r2069373 = r2069371 + r2069372;
        double r2069374 = a;
        double r2069375 = r2069361 + r2069374;
        double r2069376 = r2069375 * r2069361;
        double r2069377 = b;
        double r2069378 = r2069376 + r2069377;
        double r2069379 = r2069378 * r2069361;
        double r2069380 = c;
        double r2069381 = r2069379 + r2069380;
        double r2069382 = r2069381 * r2069361;
        double r2069383 = i;
        double r2069384 = r2069382 + r2069383;
        double r2069385 = r2069373 / r2069384;
        return r2069385;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r2069386 = y;
        double r2069387 = x;
        double r2069388 = z;
        double r2069389 = fma(r2069386, r2069387, r2069388);
        double r2069390 = 27464.7644705;
        double r2069391 = fma(r2069386, r2069389, r2069390);
        double r2069392 = 230661.510616;
        double r2069393 = fma(r2069386, r2069391, r2069392);
        double r2069394 = t;
        double r2069395 = fma(r2069393, r2069386, r2069394);
        double r2069396 = a;
        double r2069397 = r2069386 + r2069396;
        double r2069398 = b;
        double r2069399 = fma(r2069397, r2069386, r2069398);
        double r2069400 = c;
        double r2069401 = fma(r2069386, r2069399, r2069400);
        double r2069402 = i;
        double r2069403 = fma(r2069401, r2069386, r2069402);
        double r2069404 = r2069395 / r2069403;
        return r2069404;
}

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

    \[\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. Simplified28.1

    \[\leadsto \color{blue}{\frac{\mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, x, z\right), 27464.7644705\right), 230661.510616\right), t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(y, \mathsf{fma}\left(y + a, y, b\right), c\right), y, i\right)}}\]
  3. Using strategy rm
  4. Applied *-un-lft-identity28.1

    \[\leadsto \frac{\color{blue}{1 \cdot \mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, x, z\right), 27464.7644705\right), 230661.510616\right), t\right)}}{\mathsf{fma}\left(\mathsf{fma}\left(y, \mathsf{fma}\left(y + a, y, b\right), c\right), y, i\right)}\]
  5. Applied associate-/l*28.3

    \[\leadsto \color{blue}{\frac{1}{\frac{\mathsf{fma}\left(\mathsf{fma}\left(y, \mathsf{fma}\left(y + a, y, b\right), c\right), y, i\right)}{\mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, x, z\right), 27464.7644705\right), 230661.510616\right), t\right)}}}\]
  6. Using strategy rm
  7. Applied div-inv28.3

    \[\leadsto \frac{1}{\color{blue}{\mathsf{fma}\left(\mathsf{fma}\left(y, \mathsf{fma}\left(y + a, y, b\right), c\right), y, i\right) \cdot \frac{1}{\mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, x, z\right), 27464.7644705\right), 230661.510616\right), t\right)}}}\]
  8. Applied *-un-lft-identity28.3

    \[\leadsto \frac{\color{blue}{1 \cdot 1}}{\mathsf{fma}\left(\mathsf{fma}\left(y, \mathsf{fma}\left(y + a, y, b\right), c\right), y, i\right) \cdot \frac{1}{\mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, x, z\right), 27464.7644705\right), 230661.510616\right), t\right)}}\]
  9. Applied times-frac28.2

    \[\leadsto \color{blue}{\frac{1}{\mathsf{fma}\left(\mathsf{fma}\left(y, \mathsf{fma}\left(y + a, y, b\right), c\right), y, i\right)} \cdot \frac{1}{\frac{1}{\mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, x, z\right), 27464.7644705\right), 230661.510616\right), t\right)}}}\]
  10. Simplified28.1

    \[\leadsto \frac{1}{\mathsf{fma}\left(\mathsf{fma}\left(y, \mathsf{fma}\left(y + a, y, b\right), c\right), y, i\right)} \cdot \color{blue}{\mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(\mathsf{fma}\left(y, x, z\right), y, 27464.7644705\right), 230661.510616\right), t\right)}\]
  11. Using strategy rm
  12. Applied associate-*l/28.1

    \[\leadsto \color{blue}{\frac{1 \cdot \mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(\mathsf{fma}\left(y, x, z\right), y, 27464.7644705\right), 230661.510616\right), t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(y, \mathsf{fma}\left(y + a, y, b\right), c\right), y, i\right)}}\]
  13. Simplified28.1

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

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

Reproduce

herbie shell --seed 2019143 +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)))