\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 -7.4130880817628 \cdot 10^{-93}:\\
\;\;\;\;\left(\left(b \cdot c + \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)\right) - \left(4.0 \cdot x\right) \cdot i\right) - k \cdot \left(j \cdot 27.0\right)\\
\mathbf{elif}\;t \le 4.287180086893717 \cdot 10^{+76}:\\
\;\;\;\;\mathsf{fma}\left(b, c, \left(\left(x \cdot t\right) \cdot \left(y \cdot 18.0\right)\right) \cdot z - \mathsf{fma}\left(4.0, \mathsf{fma}\left(t, a, i \cdot x\right), \left(k \cdot 27.0\right) \cdot j\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\left(b \cdot c + \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)\right) - \left(4.0 \cdot x\right) \cdot i\right) - k \cdot \left(j \cdot 27.0\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 r4960414 = x;
double r4960415 = 18.0;
double r4960416 = r4960414 * r4960415;
double r4960417 = y;
double r4960418 = r4960416 * r4960417;
double r4960419 = z;
double r4960420 = r4960418 * r4960419;
double r4960421 = t;
double r4960422 = r4960420 * r4960421;
double r4960423 = a;
double r4960424 = 4.0;
double r4960425 = r4960423 * r4960424;
double r4960426 = r4960425 * r4960421;
double r4960427 = r4960422 - r4960426;
double r4960428 = b;
double r4960429 = c;
double r4960430 = r4960428 * r4960429;
double r4960431 = r4960427 + r4960430;
double r4960432 = r4960414 * r4960424;
double r4960433 = i;
double r4960434 = r4960432 * r4960433;
double r4960435 = r4960431 - r4960434;
double r4960436 = j;
double r4960437 = 27.0;
double r4960438 = r4960436 * r4960437;
double r4960439 = k;
double r4960440 = r4960438 * r4960439;
double r4960441 = r4960435 - r4960440;
return r4960441;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r4960442 = t;
double r4960443 = -7.4130880817628e-93;
bool r4960444 = r4960442 <= r4960443;
double r4960445 = b;
double r4960446 = c;
double r4960447 = r4960445 * r4960446;
double r4960448 = x;
double r4960449 = 18.0;
double r4960450 = r4960448 * r4960449;
double r4960451 = y;
double r4960452 = r4960450 * r4960451;
double r4960453 = z;
double r4960454 = r4960452 * r4960453;
double r4960455 = r4960454 * r4960442;
double r4960456 = a;
double r4960457 = 4.0;
double r4960458 = r4960456 * r4960457;
double r4960459 = r4960458 * r4960442;
double r4960460 = r4960455 - r4960459;
double r4960461 = r4960447 + r4960460;
double r4960462 = r4960457 * r4960448;
double r4960463 = i;
double r4960464 = r4960462 * r4960463;
double r4960465 = r4960461 - r4960464;
double r4960466 = k;
double r4960467 = j;
double r4960468 = 27.0;
double r4960469 = r4960467 * r4960468;
double r4960470 = r4960466 * r4960469;
double r4960471 = r4960465 - r4960470;
double r4960472 = 4.287180086893717e+76;
bool r4960473 = r4960442 <= r4960472;
double r4960474 = r4960448 * r4960442;
double r4960475 = r4960451 * r4960449;
double r4960476 = r4960474 * r4960475;
double r4960477 = r4960476 * r4960453;
double r4960478 = r4960463 * r4960448;
double r4960479 = fma(r4960442, r4960456, r4960478);
double r4960480 = r4960466 * r4960468;
double r4960481 = r4960480 * r4960467;
double r4960482 = fma(r4960457, r4960479, r4960481);
double r4960483 = r4960477 - r4960482;
double r4960484 = fma(r4960445, r4960446, r4960483);
double r4960485 = r4960473 ? r4960484 : r4960471;
double r4960486 = r4960444 ? r4960471 : r4960485;
return r4960486;
}



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
if t < -7.4130880817628e-93 or 4.287180086893717e+76 < t Initial program 2.3
if -7.4130880817628e-93 < t < 4.287180086893717e+76Initial program 6.7
Simplified1.8
rmApplied *-un-lft-identity1.8
Applied associate-*r*1.8
Applied associate-*r*1.8
Simplified1.8
Final simplification2.0
herbie shell --seed 2019158 +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)))