\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 -1.213022955905185 \cdot 10^{-78}:\\
\;\;\;\;\left(\left(b \cdot c + \left(\left(\left(x \cdot \left(18.0 \cdot y\right)\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right)\right) - \left(4.0 \cdot x\right) \cdot i\right) - k \cdot \left(j \cdot 27.0\right)\\
\mathbf{elif}\;t \le 0.00021300604894650404:\\
\;\;\;\;\left(\left(b \cdot c + \left(\left(\left(y \cdot \left(t \cdot z\right)\right) \cdot 18.0\right) \cdot x - \left(a \cdot 4.0\right) \cdot t\right)\right) - \left(4.0 \cdot x\right) \cdot i\right) - 27.0 \cdot \left(j \cdot k\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\left(b \cdot c + \left(\left(\left(x \cdot \left(18.0 \cdot y\right)\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right)\right) - \left(4.0 \cdot x\right) \cdot i\right) - k \cdot \left(j \cdot 27.0\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 r7193508 = x;
double r7193509 = 18.0;
double r7193510 = r7193508 * r7193509;
double r7193511 = y;
double r7193512 = r7193510 * r7193511;
double r7193513 = z;
double r7193514 = r7193512 * r7193513;
double r7193515 = t;
double r7193516 = r7193514 * r7193515;
double r7193517 = a;
double r7193518 = 4.0;
double r7193519 = r7193517 * r7193518;
double r7193520 = r7193519 * r7193515;
double r7193521 = r7193516 - r7193520;
double r7193522 = b;
double r7193523 = c;
double r7193524 = r7193522 * r7193523;
double r7193525 = r7193521 + r7193524;
double r7193526 = r7193508 * r7193518;
double r7193527 = i;
double r7193528 = r7193526 * r7193527;
double r7193529 = r7193525 - r7193528;
double r7193530 = j;
double r7193531 = 27.0;
double r7193532 = r7193530 * r7193531;
double r7193533 = k;
double r7193534 = r7193532 * r7193533;
double r7193535 = r7193529 - r7193534;
return r7193535;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r7193536 = t;
double r7193537 = -1.213022955905185e-78;
bool r7193538 = r7193536 <= r7193537;
double r7193539 = b;
double r7193540 = c;
double r7193541 = r7193539 * r7193540;
double r7193542 = x;
double r7193543 = 18.0;
double r7193544 = y;
double r7193545 = r7193543 * r7193544;
double r7193546 = r7193542 * r7193545;
double r7193547 = z;
double r7193548 = r7193546 * r7193547;
double r7193549 = r7193548 * r7193536;
double r7193550 = a;
double r7193551 = 4.0;
double r7193552 = r7193550 * r7193551;
double r7193553 = r7193552 * r7193536;
double r7193554 = r7193549 - r7193553;
double r7193555 = r7193541 + r7193554;
double r7193556 = r7193551 * r7193542;
double r7193557 = i;
double r7193558 = r7193556 * r7193557;
double r7193559 = r7193555 - r7193558;
double r7193560 = k;
double r7193561 = j;
double r7193562 = 27.0;
double r7193563 = r7193561 * r7193562;
double r7193564 = r7193560 * r7193563;
double r7193565 = r7193559 - r7193564;
double r7193566 = 0.00021300604894650404;
bool r7193567 = r7193536 <= r7193566;
double r7193568 = r7193536 * r7193547;
double r7193569 = r7193544 * r7193568;
double r7193570 = r7193569 * r7193543;
double r7193571 = r7193570 * r7193542;
double r7193572 = r7193571 - r7193553;
double r7193573 = r7193541 + r7193572;
double r7193574 = r7193573 - r7193558;
double r7193575 = r7193561 * r7193560;
double r7193576 = r7193562 * r7193575;
double r7193577 = r7193574 - r7193576;
double r7193578 = r7193567 ? r7193577 : r7193565;
double r7193579 = r7193538 ? r7193565 : r7193578;
return r7193579;
}



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
Results
if t < -1.213022955905185e-78 or 0.00021300604894650404 < t Initial program 2.3
rmApplied associate-*l*2.3
if -1.213022955905185e-78 < t < 0.00021300604894650404Initial program 7.5
rmApplied associate-*l*3.7
rmApplied associate-*l*1.5
rmApplied associate-*l*1.5
Taylor expanded around inf 1.5
Final simplification1.8
herbie shell --seed 2019141 +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)))