\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}\;x \le -1.15848203748868583 \cdot 10^{-15} \lor \neg \left(x \le 4.75949776591493624 \cdot 10^{-71}\right):\\
\;\;\;\;\left(\left(\left(x \cdot \left(\left(18 \cdot y\right) \cdot \left(z \cdot t\right)\right) - \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\\
\mathbf{else}:\\
\;\;\;\;\left(\left(\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot \left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)\right) \cdot \sqrt[3]{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 r142410 = x;
double r142411 = 18.0;
double r142412 = r142410 * r142411;
double r142413 = y;
double r142414 = r142412 * r142413;
double r142415 = z;
double r142416 = r142414 * r142415;
double r142417 = t;
double r142418 = r142416 * r142417;
double r142419 = a;
double r142420 = 4.0;
double r142421 = r142419 * r142420;
double r142422 = r142421 * r142417;
double r142423 = r142418 - r142422;
double r142424 = b;
double r142425 = c;
double r142426 = r142424 * r142425;
double r142427 = r142423 + r142426;
double r142428 = r142410 * r142420;
double r142429 = i;
double r142430 = r142428 * r142429;
double r142431 = r142427 - r142430;
double r142432 = j;
double r142433 = 27.0;
double r142434 = r142432 * r142433;
double r142435 = k;
double r142436 = r142434 * r142435;
double r142437 = r142431 - r142436;
return r142437;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r142438 = x;
double r142439 = -1.1584820374886858e-15;
bool r142440 = r142438 <= r142439;
double r142441 = 4.759497765914936e-71;
bool r142442 = r142438 <= r142441;
double r142443 = !r142442;
bool r142444 = r142440 || r142443;
double r142445 = 18.0;
double r142446 = y;
double r142447 = r142445 * r142446;
double r142448 = z;
double r142449 = t;
double r142450 = r142448 * r142449;
double r142451 = r142447 * r142450;
double r142452 = r142438 * r142451;
double r142453 = a;
double r142454 = 4.0;
double r142455 = r142453 * r142454;
double r142456 = r142455 * r142449;
double r142457 = r142452 - r142456;
double r142458 = b;
double r142459 = c;
double r142460 = r142458 * r142459;
double r142461 = r142457 + r142460;
double r142462 = r142438 * r142454;
double r142463 = i;
double r142464 = r142462 * r142463;
double r142465 = r142461 - r142464;
double r142466 = j;
double r142467 = 27.0;
double r142468 = r142466 * r142467;
double r142469 = k;
double r142470 = r142468 * r142469;
double r142471 = r142465 - r142470;
double r142472 = r142438 * r142445;
double r142473 = r142472 * r142446;
double r142474 = r142473 * r142448;
double r142475 = cbrt(r142449);
double r142476 = r142475 * r142475;
double r142477 = r142474 * r142476;
double r142478 = r142477 * r142475;
double r142479 = r142478 - r142456;
double r142480 = r142479 + r142460;
double r142481 = r142480 - r142464;
double r142482 = r142481 - r142470;
double r142483 = r142444 ? r142471 : r142482;
return r142483;
}



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 x < -1.1584820374886858e-15 or 4.759497765914936e-71 < x Initial program 10.4
rmApplied associate-*l*7.5
rmApplied associate-*l*7.5
rmApplied associate-*l*1.9
if -1.1584820374886858e-15 < x < 4.759497765914936e-71Initial program 1.5
rmApplied add-cube-cbrt1.6
Applied associate-*r*1.6
Final simplification1.7
herbie shell --seed 2020083
(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)))