\left(\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(j \cdot 27\right) \cdot k
\begin{array}{l}
\mathbf{if}\;\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i \le -1.591976256934889034187455180953636735584 \cdot 10^{302} \lor \neg \left(\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i \le 2.618961756211518564383950228017988163092 \cdot 10^{294}\right):\\
\;\;\;\;\mathsf{fma}\left(\left(\left(z \cdot t\right) \cdot y\right) \cdot x, 18, \mathsf{fma}\left(c, b, -\mathsf{fma}\left(4, \mathsf{fma}\left(t, a, x \cdot i\right), \left(j \cdot 27\right) \cdot k\right)\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(j \cdot 27\right) \cdot k\\
\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 r104482 = x;
double r104483 = 18.0;
double r104484 = r104482 * r104483;
double r104485 = y;
double r104486 = r104484 * r104485;
double r104487 = z;
double r104488 = r104486 * r104487;
double r104489 = t;
double r104490 = r104488 * r104489;
double r104491 = a;
double r104492 = 4.0;
double r104493 = r104491 * r104492;
double r104494 = r104493 * r104489;
double r104495 = r104490 - r104494;
double r104496 = b;
double r104497 = c;
double r104498 = r104496 * r104497;
double r104499 = r104495 + r104498;
double r104500 = r104482 * r104492;
double r104501 = i;
double r104502 = r104500 * r104501;
double r104503 = r104499 - r104502;
double r104504 = j;
double r104505 = 27.0;
double r104506 = r104504 * r104505;
double r104507 = k;
double r104508 = r104506 * r104507;
double r104509 = r104503 - r104508;
return r104509;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r104510 = x;
double r104511 = 18.0;
double r104512 = r104510 * r104511;
double r104513 = y;
double r104514 = r104512 * r104513;
double r104515 = z;
double r104516 = r104514 * r104515;
double r104517 = t;
double r104518 = r104516 * r104517;
double r104519 = a;
double r104520 = 4.0;
double r104521 = r104519 * r104520;
double r104522 = r104521 * r104517;
double r104523 = r104518 - r104522;
double r104524 = b;
double r104525 = c;
double r104526 = r104524 * r104525;
double r104527 = r104523 + r104526;
double r104528 = r104510 * r104520;
double r104529 = i;
double r104530 = r104528 * r104529;
double r104531 = r104527 - r104530;
double r104532 = -1.591976256934889e+302;
bool r104533 = r104531 <= r104532;
double r104534 = 2.6189617562115186e+294;
bool r104535 = r104531 <= r104534;
double r104536 = !r104535;
bool r104537 = r104533 || r104536;
double r104538 = r104515 * r104517;
double r104539 = r104538 * r104513;
double r104540 = r104539 * r104510;
double r104541 = r104510 * r104529;
double r104542 = fma(r104517, r104519, r104541);
double r104543 = j;
double r104544 = 27.0;
double r104545 = r104543 * r104544;
double r104546 = k;
double r104547 = r104545 * r104546;
double r104548 = fma(r104520, r104542, r104547);
double r104549 = -r104548;
double r104550 = fma(r104525, r104524, r104549);
double r104551 = fma(r104540, r104511, r104550);
double r104552 = r104531 - r104547;
double r104553 = r104537 ? r104551 : r104552;
return r104553;
}



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 (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < -1.591976256934889e+302 or 2.6189617562115186e+294 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) Initial program 49.0
Simplified13.5
rmApplied associate-*r*7.4
rmApplied associate-*l*16.5
Simplified16.5
rmApplied associate-*r*6.0
Simplified6.0
if -1.591976256934889e+302 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < 2.6189617562115186e+294Initial program 0.3
Final simplification1.0
herbie shell --seed 2019325 +o rules:numerics
(FPCore (x y z t a b c i j k)
:name "Diagrams.Solve.Polynomial:cubForm from diagrams-solve-0.1"
:precision binary64
(- (- (+ (- (* (* (* (* x 18) y) z) t) (* (* a 4) t)) (* b c)) (* (* x 4) i)) (* (* j 27) k)))