\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}\;t \le -2.3859305432149377 \cdot 10^{-202}:\\
\;\;\;\;t \cdot \left(\left(x \cdot \left(18 \cdot y\right)\right) \cdot z - a \cdot 4\right) + \left(b \cdot c - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\right)\\
\mathbf{elif}\;t \le 1.24034573106726284 \cdot 10^{-70}:\\
\;\;\;\;t \cdot \left(0 - a \cdot 4\right) + \left(b \cdot c - \left(\left(x \cdot 4\right) \cdot i + j \cdot \left(27 \cdot k\right)\right)\right)\\
\mathbf{else}:\\
\;\;\;\;t \cdot \left(\left(x \cdot 18\right) \cdot \left(y \cdot z\right) - a \cdot 4\right) + \left(b \cdot c - \left(\left(x \cdot 4\right) \cdot i + j \cdot \left(27 \cdot k\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 r171472 = x;
double r171473 = 18.0;
double r171474 = r171472 * r171473;
double r171475 = y;
double r171476 = r171474 * r171475;
double r171477 = z;
double r171478 = r171476 * r171477;
double r171479 = t;
double r171480 = r171478 * r171479;
double r171481 = a;
double r171482 = 4.0;
double r171483 = r171481 * r171482;
double r171484 = r171483 * r171479;
double r171485 = r171480 - r171484;
double r171486 = b;
double r171487 = c;
double r171488 = r171486 * r171487;
double r171489 = r171485 + r171488;
double r171490 = r171472 * r171482;
double r171491 = i;
double r171492 = r171490 * r171491;
double r171493 = r171489 - r171492;
double r171494 = j;
double r171495 = 27.0;
double r171496 = r171494 * r171495;
double r171497 = k;
double r171498 = r171496 * r171497;
double r171499 = r171493 - r171498;
return r171499;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r171500 = t;
double r171501 = -2.3859305432149377e-202;
bool r171502 = r171500 <= r171501;
double r171503 = x;
double r171504 = 18.0;
double r171505 = y;
double r171506 = r171504 * r171505;
double r171507 = r171503 * r171506;
double r171508 = z;
double r171509 = r171507 * r171508;
double r171510 = a;
double r171511 = 4.0;
double r171512 = r171510 * r171511;
double r171513 = r171509 - r171512;
double r171514 = r171500 * r171513;
double r171515 = b;
double r171516 = c;
double r171517 = r171515 * r171516;
double r171518 = r171503 * r171511;
double r171519 = i;
double r171520 = r171518 * r171519;
double r171521 = j;
double r171522 = 27.0;
double r171523 = r171521 * r171522;
double r171524 = k;
double r171525 = r171523 * r171524;
double r171526 = r171520 + r171525;
double r171527 = r171517 - r171526;
double r171528 = r171514 + r171527;
double r171529 = 1.2403457310672628e-70;
bool r171530 = r171500 <= r171529;
double r171531 = 0.0;
double r171532 = r171531 - r171512;
double r171533 = r171500 * r171532;
double r171534 = r171522 * r171524;
double r171535 = r171521 * r171534;
double r171536 = r171520 + r171535;
double r171537 = r171517 - r171536;
double r171538 = r171533 + r171537;
double r171539 = r171503 * r171504;
double r171540 = r171505 * r171508;
double r171541 = r171539 * r171540;
double r171542 = r171541 - r171512;
double r171543 = r171500 * r171542;
double r171544 = r171543 + r171537;
double r171545 = r171530 ? r171538 : r171544;
double r171546 = r171502 ? r171528 : r171545;
return r171546;
}



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 < -2.3859305432149377e-202Initial program 4.2
Simplified4.2
rmApplied associate-*l*4.2
if -2.3859305432149377e-202 < t < 1.2403457310672628e-70Initial program 8.3
Simplified8.3
rmApplied associate-*l*8.4
Taylor expanded around 0 6.0
if 1.2403457310672628e-70 < t Initial program 2.3
Simplified2.3
rmApplied associate-*l*2.3
rmApplied associate-*l*3.5
Final simplification4.6
herbie shell --seed 2020047
(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)))