\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.0358597655674074 \cdot 10^{-175}:\\
\;\;\;\;\left(\left(b \cdot c + \left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot \left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right)\right) \cdot \sqrt[3]{z}\right) \cdot t - t \cdot \left(4.0 \cdot a\right)\right)\right) - i \cdot \left(4.0 \cdot x\right)\right) - \left(k \cdot j\right) \cdot 27.0\\
\mathbf{elif}\;t \le 2.4153633075671652 \cdot 10^{-129}:\\
\;\;\;\;\left(\left(b \cdot c + t \cdot \left(4.0 \cdot \left(-a\right)\right)\right) - i \cdot \left(4.0 \cdot x\right)\right) - \left(k \cdot j\right) \cdot 27.0\\
\mathbf{else}:\\
\;\;\;\;\left(\left(b \cdot c + \left(t \cdot \left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) - t \cdot \left(4.0 \cdot a\right)\right)\right) - i \cdot \left(4.0 \cdot x\right)\right) - \left(k \cdot 27.0\right) \cdot j\\
\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 r15375526 = x;
double r15375527 = 18.0;
double r15375528 = r15375526 * r15375527;
double r15375529 = y;
double r15375530 = r15375528 * r15375529;
double r15375531 = z;
double r15375532 = r15375530 * r15375531;
double r15375533 = t;
double r15375534 = r15375532 * r15375533;
double r15375535 = a;
double r15375536 = 4.0;
double r15375537 = r15375535 * r15375536;
double r15375538 = r15375537 * r15375533;
double r15375539 = r15375534 - r15375538;
double r15375540 = b;
double r15375541 = c;
double r15375542 = r15375540 * r15375541;
double r15375543 = r15375539 + r15375542;
double r15375544 = r15375526 * r15375536;
double r15375545 = i;
double r15375546 = r15375544 * r15375545;
double r15375547 = r15375543 - r15375546;
double r15375548 = j;
double r15375549 = 27.0;
double r15375550 = r15375548 * r15375549;
double r15375551 = k;
double r15375552 = r15375550 * r15375551;
double r15375553 = r15375547 - r15375552;
return r15375553;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r15375554 = t;
double r15375555 = -1.0358597655674074e-175;
bool r15375556 = r15375554 <= r15375555;
double r15375557 = b;
double r15375558 = c;
double r15375559 = r15375557 * r15375558;
double r15375560 = x;
double r15375561 = 18.0;
double r15375562 = r15375560 * r15375561;
double r15375563 = y;
double r15375564 = r15375562 * r15375563;
double r15375565 = z;
double r15375566 = cbrt(r15375565);
double r15375567 = r15375566 * r15375566;
double r15375568 = r15375564 * r15375567;
double r15375569 = r15375568 * r15375566;
double r15375570 = r15375569 * r15375554;
double r15375571 = 4.0;
double r15375572 = a;
double r15375573 = r15375571 * r15375572;
double r15375574 = r15375554 * r15375573;
double r15375575 = r15375570 - r15375574;
double r15375576 = r15375559 + r15375575;
double r15375577 = i;
double r15375578 = r15375571 * r15375560;
double r15375579 = r15375577 * r15375578;
double r15375580 = r15375576 - r15375579;
double r15375581 = k;
double r15375582 = j;
double r15375583 = r15375581 * r15375582;
double r15375584 = 27.0;
double r15375585 = r15375583 * r15375584;
double r15375586 = r15375580 - r15375585;
double r15375587 = 2.4153633075671652e-129;
bool r15375588 = r15375554 <= r15375587;
double r15375589 = -r15375572;
double r15375590 = r15375571 * r15375589;
double r15375591 = r15375554 * r15375590;
double r15375592 = r15375559 + r15375591;
double r15375593 = r15375592 - r15375579;
double r15375594 = r15375593 - r15375585;
double r15375595 = r15375564 * r15375565;
double r15375596 = r15375554 * r15375595;
double r15375597 = r15375596 - r15375574;
double r15375598 = r15375559 + r15375597;
double r15375599 = r15375598 - r15375579;
double r15375600 = r15375581 * r15375584;
double r15375601 = r15375600 * r15375582;
double r15375602 = r15375599 - r15375601;
double r15375603 = r15375588 ? r15375594 : r15375602;
double r15375604 = r15375556 ? r15375586 : r15375603;
return r15375604;
}



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.0358597655674074e-175Initial program 3.7
Taylor expanded around 0 3.6
rmApplied add-cube-cbrt3.7
Applied associate-*r*3.7
if -1.0358597655674074e-175 < t < 2.4153633075671652e-129Initial program 8.8
Taylor expanded around 0 8.8
rmApplied add-cube-cbrt8.8
Applied associate-*r*8.8
Taylor expanded around 0 5.4
if 2.4153633075671652e-129 < t Initial program 3.0
rmApplied associate-*l*3.1
Final simplification4.0
herbie shell --seed 2019121 +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)))