\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}\;z \le -3240160021670852289976336384:\\
\;\;\;\;\left(\left(b \cdot c + \left(18 \cdot \left(y \cdot \left(\left(t \cdot x\right) \cdot z\right)\right) - t \cdot \left(a \cdot 4\right)\right)\right) - \left(x \cdot 4\right) \cdot i\right) - j \cdot \left(27 \cdot k\right)\\
\mathbf{elif}\;z \le 3.081878854711681516799884746506413502473 \cdot 10^{-29}:\\
\;\;\;\;t \cdot \left(y \cdot \left(\left(18 \cdot z\right) \cdot x\right) - a \cdot 4\right) - \left(\left(\left(i \cdot x\right) \cdot 4 - b \cdot c\right) + j \cdot \left(27 \cdot k\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\left(\left(z \cdot \left(\left(x \cdot \left(18 \cdot y\right)\right) \cdot t\right) - t \cdot \left(a \cdot 4\right)\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - k \cdot \left(j \cdot 27\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 r113512 = x;
double r113513 = 18.0;
double r113514 = r113512 * r113513;
double r113515 = y;
double r113516 = r113514 * r113515;
double r113517 = z;
double r113518 = r113516 * r113517;
double r113519 = t;
double r113520 = r113518 * r113519;
double r113521 = a;
double r113522 = 4.0;
double r113523 = r113521 * r113522;
double r113524 = r113523 * r113519;
double r113525 = r113520 - r113524;
double r113526 = b;
double r113527 = c;
double r113528 = r113526 * r113527;
double r113529 = r113525 + r113528;
double r113530 = r113512 * r113522;
double r113531 = i;
double r113532 = r113530 * r113531;
double r113533 = r113529 - r113532;
double r113534 = j;
double r113535 = 27.0;
double r113536 = r113534 * r113535;
double r113537 = k;
double r113538 = r113536 * r113537;
double r113539 = r113533 - r113538;
return r113539;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r113540 = z;
double r113541 = -3.2401600216708523e+27;
bool r113542 = r113540 <= r113541;
double r113543 = b;
double r113544 = c;
double r113545 = r113543 * r113544;
double r113546 = 18.0;
double r113547 = y;
double r113548 = t;
double r113549 = x;
double r113550 = r113548 * r113549;
double r113551 = r113550 * r113540;
double r113552 = r113547 * r113551;
double r113553 = r113546 * r113552;
double r113554 = a;
double r113555 = 4.0;
double r113556 = r113554 * r113555;
double r113557 = r113548 * r113556;
double r113558 = r113553 - r113557;
double r113559 = r113545 + r113558;
double r113560 = r113549 * r113555;
double r113561 = i;
double r113562 = r113560 * r113561;
double r113563 = r113559 - r113562;
double r113564 = j;
double r113565 = 27.0;
double r113566 = k;
double r113567 = r113565 * r113566;
double r113568 = r113564 * r113567;
double r113569 = r113563 - r113568;
double r113570 = 3.0818788547116815e-29;
bool r113571 = r113540 <= r113570;
double r113572 = r113546 * r113540;
double r113573 = r113572 * r113549;
double r113574 = r113547 * r113573;
double r113575 = r113574 - r113556;
double r113576 = r113548 * r113575;
double r113577 = r113561 * r113549;
double r113578 = r113577 * r113555;
double r113579 = r113578 - r113545;
double r113580 = r113579 + r113568;
double r113581 = r113576 - r113580;
double r113582 = r113546 * r113547;
double r113583 = r113549 * r113582;
double r113584 = r113583 * r113548;
double r113585 = r113540 * r113584;
double r113586 = r113585 - r113557;
double r113587 = r113586 + r113545;
double r113588 = r113587 - r113562;
double r113589 = r113564 * r113565;
double r113590 = r113566 * r113589;
double r113591 = r113588 - r113590;
double r113592 = r113571 ? r113581 : r113591;
double r113593 = r113542 ? r113569 : r113592;
return r113593;
}



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 z < -3.2401600216708523e+27Initial program 7.5
Taylor expanded around inf 13.3
Simplified6.0
rmApplied associate-*l*6.0
if -3.2401600216708523e+27 < z < 3.0818788547116815e-29Initial program 5.1
Simplified1.6
if 3.0818788547116815e-29 < z Initial program 6.2
rmApplied pow16.2
Applied pow16.2
Applied pow16.2
Applied pow16.2
Applied pow16.2
Applied pow-prod-down6.2
Applied pow-prod-down6.2
Applied pow-prod-down6.2
Applied pow-prod-down6.2
Simplified1.5
Final simplification2.5
herbie shell --seed 2019179
(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)))