Average Error: 29.1 → 29.1
Time: 30.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{\mathsf{fma}\left(y, y \cdot \mathsf{fma}\left(y, \mathsf{fma}\left(y, x, z\right), 27464.7644704999984242022037506103515625\right) + 230661.5106160000141244381666183471679688, t\right)}{i + y \cdot \left(c + \left(\left(y + a\right) \cdot y + b\right) \cdot y\right)}\]
\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{\mathsf{fma}\left(y, y \cdot \mathsf{fma}\left(y, \mathsf{fma}\left(y, x, z\right), 27464.7644704999984242022037506103515625\right) + 230661.5106160000141244381666183471679688, t\right)}{i + y \cdot \left(c + \left(\left(y + a\right) \cdot y + b\right) \cdot y\right)}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r2975470 = x;
        double r2975471 = y;
        double r2975472 = r2975470 * r2975471;
        double r2975473 = z;
        double r2975474 = r2975472 + r2975473;
        double r2975475 = r2975474 * r2975471;
        double r2975476 = 27464.7644705;
        double r2975477 = r2975475 + r2975476;
        double r2975478 = r2975477 * r2975471;
        double r2975479 = 230661.510616;
        double r2975480 = r2975478 + r2975479;
        double r2975481 = r2975480 * r2975471;
        double r2975482 = t;
        double r2975483 = r2975481 + r2975482;
        double r2975484 = a;
        double r2975485 = r2975471 + r2975484;
        double r2975486 = r2975485 * r2975471;
        double r2975487 = b;
        double r2975488 = r2975486 + r2975487;
        double r2975489 = r2975488 * r2975471;
        double r2975490 = c;
        double r2975491 = r2975489 + r2975490;
        double r2975492 = r2975491 * r2975471;
        double r2975493 = i;
        double r2975494 = r2975492 + r2975493;
        double r2975495 = r2975483 / r2975494;
        return r2975495;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r2975496 = y;
        double r2975497 = x;
        double r2975498 = z;
        double r2975499 = fma(r2975496, r2975497, r2975498);
        double r2975500 = 27464.7644705;
        double r2975501 = fma(r2975496, r2975499, r2975500);
        double r2975502 = r2975496 * r2975501;
        double r2975503 = 230661.510616;
        double r2975504 = r2975502 + r2975503;
        double r2975505 = t;
        double r2975506 = fma(r2975496, r2975504, r2975505);
        double r2975507 = i;
        double r2975508 = c;
        double r2975509 = a;
        double r2975510 = r2975496 + r2975509;
        double r2975511 = r2975510 * r2975496;
        double r2975512 = b;
        double r2975513 = r2975511 + r2975512;
        double r2975514 = r2975513 * r2975496;
        double r2975515 = r2975508 + r2975514;
        double r2975516 = r2975496 * r2975515;
        double r2975517 = r2975507 + r2975516;
        double r2975518 = r2975506 / r2975517;
        return r2975518;
}

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 29.1

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

    \[\leadsto \frac{\left(\color{blue}{\left(\sqrt[3]{\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y} \cdot \sqrt[3]{\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y}\right) \cdot \sqrt[3]{\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}\]
  4. Using strategy rm
  5. Applied *-un-lft-identity29.1

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

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

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

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

Reproduce

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