\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}\;y \le -138023816.617849797 \lor \neg \left(y \le 4.51721422379651299 \cdot 10^{34}\right):\\
\;\;\;\;\left(\left(t \cdot \left(18 \cdot \left(x \cdot z\right)\right)\right) \cdot y + t \cdot \left(-a \cdot 4\right)\right) + \left(b \cdot c - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\right)\\
\mathbf{else}:\\
\;\;\;\;t \cdot \left({\left(18 \cdot \left(x \cdot \left(z \cdot y\right)\right)\right)}^{1} - 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 r129441 = x;
double r129442 = 18.0;
double r129443 = r129441 * r129442;
double r129444 = y;
double r129445 = r129443 * r129444;
double r129446 = z;
double r129447 = r129445 * r129446;
double r129448 = t;
double r129449 = r129447 * r129448;
double r129450 = a;
double r129451 = 4.0;
double r129452 = r129450 * r129451;
double r129453 = r129452 * r129448;
double r129454 = r129449 - r129453;
double r129455 = b;
double r129456 = c;
double r129457 = r129455 * r129456;
double r129458 = r129454 + r129457;
double r129459 = r129441 * r129451;
double r129460 = i;
double r129461 = r129459 * r129460;
double r129462 = r129458 - r129461;
double r129463 = j;
double r129464 = 27.0;
double r129465 = r129463 * r129464;
double r129466 = k;
double r129467 = r129465 * r129466;
double r129468 = r129462 - r129467;
return r129468;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r129469 = y;
double r129470 = -138023816.6178498;
bool r129471 = r129469 <= r129470;
double r129472 = 4.517214223796513e+34;
bool r129473 = r129469 <= r129472;
double r129474 = !r129473;
bool r129475 = r129471 || r129474;
double r129476 = t;
double r129477 = 18.0;
double r129478 = x;
double r129479 = z;
double r129480 = r129478 * r129479;
double r129481 = r129477 * r129480;
double r129482 = r129476 * r129481;
double r129483 = r129482 * r129469;
double r129484 = a;
double r129485 = 4.0;
double r129486 = r129484 * r129485;
double r129487 = -r129486;
double r129488 = r129476 * r129487;
double r129489 = r129483 + r129488;
double r129490 = b;
double r129491 = c;
double r129492 = r129490 * r129491;
double r129493 = r129478 * r129485;
double r129494 = i;
double r129495 = r129493 * r129494;
double r129496 = j;
double r129497 = 27.0;
double r129498 = r129496 * r129497;
double r129499 = k;
double r129500 = r129498 * r129499;
double r129501 = r129495 + r129500;
double r129502 = r129492 - r129501;
double r129503 = r129489 + r129502;
double r129504 = r129479 * r129469;
double r129505 = r129478 * r129504;
double r129506 = r129477 * r129505;
double r129507 = 1.0;
double r129508 = pow(r129506, r129507);
double r129509 = r129508 - r129486;
double r129510 = r129476 * r129509;
double r129511 = r129497 * r129499;
double r129512 = r129496 * r129511;
double r129513 = r129495 + r129512;
double r129514 = r129492 - r129513;
double r129515 = r129510 + r129514;
double r129516 = r129475 ? r129503 : r129515;
return r129516;
}



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 y < -138023816.6178498 or 4.517214223796513e+34 < y Initial program 11.2
Simplified11.2
rmApplied pow111.2
Applied pow111.2
Applied pow111.2
Applied pow111.2
Applied pow-prod-down11.2
Applied pow-prod-down11.2
Applied pow-prod-down11.2
Simplified13.4
rmApplied associate-*r*6.9
rmApplied associate-*r*7.0
rmApplied sub-neg7.0
Applied distribute-lft-in7.0
Simplified1.5
if -138023816.6178498 < y < 4.517214223796513e+34Initial program 1.4
Simplified1.4
rmApplied pow11.4
Applied pow11.4
Applied pow11.4
Applied pow11.4
Applied pow-prod-down1.4
Applied pow-prod-down1.4
Applied pow-prod-down1.4
Simplified1.4
rmApplied associate-*l*1.3
Final simplification1.4
herbie shell --seed 2020034
(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)))