\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k
\begin{array}{l}
\mathbf{if}\;t \le -6.101903851563751 \cdot 10^{-120}:\\
\;\;\;\;\mathsf{fma}\left(\left(\left(z \cdot y\right) \cdot \left(x \cdot 18.0\right) - a \cdot 4.0\right), t, \left(b \cdot c - \mathsf{fma}\left(k, \left(27.0 \cdot j\right), \left(\left(x \cdot 4.0\right) \cdot i\right)\right)\right)\right)\\
\mathbf{elif}\;t \le 5.017735877809698 \cdot 10^{-162}:\\
\;\;\;\;\mathsf{fma}\left(\left(a \cdot \left(-4.0\right)\right), t, \left(b \cdot c - \mathsf{fma}\left(k, \left(27.0 \cdot j\right), \left(\left(x \cdot 4.0\right) \cdot i\right)\right)\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(\left(z \cdot \left(\left(x \cdot y\right) \cdot 18.0\right) - a \cdot 4.0\right), t, \left(b \cdot c - \mathsf{fma}\left(k, \left(27.0 \cdot j\right), \left(\left(x \cdot 4.0\right) \cdot i\right)\right)\right)\right)\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r3668505 = x;
double r3668506 = 18.0;
double r3668507 = r3668505 * r3668506;
double r3668508 = y;
double r3668509 = r3668507 * r3668508;
double r3668510 = z;
double r3668511 = r3668509 * r3668510;
double r3668512 = t;
double r3668513 = r3668511 * r3668512;
double r3668514 = a;
double r3668515 = 4.0;
double r3668516 = r3668514 * r3668515;
double r3668517 = r3668516 * r3668512;
double r3668518 = r3668513 - r3668517;
double r3668519 = b;
double r3668520 = c;
double r3668521 = r3668519 * r3668520;
double r3668522 = r3668518 + r3668521;
double r3668523 = r3668505 * r3668515;
double r3668524 = i;
double r3668525 = r3668523 * r3668524;
double r3668526 = r3668522 - r3668525;
double r3668527 = j;
double r3668528 = 27.0;
double r3668529 = r3668527 * r3668528;
double r3668530 = k;
double r3668531 = r3668529 * r3668530;
double r3668532 = r3668526 - r3668531;
return r3668532;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r3668533 = t;
double r3668534 = -6.101903851563751e-120;
bool r3668535 = r3668533 <= r3668534;
double r3668536 = z;
double r3668537 = y;
double r3668538 = r3668536 * r3668537;
double r3668539 = x;
double r3668540 = 18.0;
double r3668541 = r3668539 * r3668540;
double r3668542 = r3668538 * r3668541;
double r3668543 = a;
double r3668544 = 4.0;
double r3668545 = r3668543 * r3668544;
double r3668546 = r3668542 - r3668545;
double r3668547 = b;
double r3668548 = c;
double r3668549 = r3668547 * r3668548;
double r3668550 = k;
double r3668551 = 27.0;
double r3668552 = j;
double r3668553 = r3668551 * r3668552;
double r3668554 = r3668539 * r3668544;
double r3668555 = i;
double r3668556 = r3668554 * r3668555;
double r3668557 = fma(r3668550, r3668553, r3668556);
double r3668558 = r3668549 - r3668557;
double r3668559 = fma(r3668546, r3668533, r3668558);
double r3668560 = 5.017735877809698e-162;
bool r3668561 = r3668533 <= r3668560;
double r3668562 = -r3668544;
double r3668563 = r3668543 * r3668562;
double r3668564 = fma(r3668563, r3668533, r3668558);
double r3668565 = r3668539 * r3668537;
double r3668566 = r3668565 * r3668540;
double r3668567 = r3668536 * r3668566;
double r3668568 = r3668567 - r3668545;
double r3668569 = fma(r3668568, r3668533, r3668558);
double r3668570 = r3668561 ? r3668564 : r3668569;
double r3668571 = r3668535 ? r3668559 : r3668570;
return r3668571;
}



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



Bits error versus j



Bits error versus k
if t < -6.101903851563751e-120Initial program 3.0
Simplified3.0
rmApplied associate-*l*3.5
if -6.101903851563751e-120 < t < 5.017735877809698e-162Initial program 8.9
Simplified8.9
Taylor expanded around 0 5.9
if 5.017735877809698e-162 < t Initial program 3.9
Simplified3.9
rmApplied associate-*l*3.9
Taylor expanded around 0 3.9
Final simplification4.5
herbie shell --seed 2019129 +o rules:numerics
(FPCore (x y z t a b c i j k)
:name "Diagrams.Solve.Polynomial:cubForm from diagrams-solve-0.1"
(- (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) (* (* j 27.0) k)))