\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}\;z \le -1.4624631829341433 \cdot 10^{+37}:\\
\;\;\;\;\left(\left(b \cdot c + \left(\left(z \cdot t\right) \cdot \left(\left(x \cdot 18.0\right) \cdot y\right) - \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}\;z \le 4.36042650378674 \cdot 10^{+116}:\\
\;\;\;\;\mathsf{fma}\left(\left(x \cdot 18.0\right) \cdot \left(z \cdot y\right) - a \cdot 4.0, t, b \cdot c - \mathsf{fma}\left(j, k \cdot 27.0, x \cdot \left(4.0 \cdot i\right)\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\left(b \cdot c + \left(\left(z \cdot t\right) \cdot \left(\left(x \cdot 18.0\right) \cdot y\right) - \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 r4043397 = x;
double r4043398 = 18.0;
double r4043399 = r4043397 * r4043398;
double r4043400 = y;
double r4043401 = r4043399 * r4043400;
double r4043402 = z;
double r4043403 = r4043401 * r4043402;
double r4043404 = t;
double r4043405 = r4043403 * r4043404;
double r4043406 = a;
double r4043407 = 4.0;
double r4043408 = r4043406 * r4043407;
double r4043409 = r4043408 * r4043404;
double r4043410 = r4043405 - r4043409;
double r4043411 = b;
double r4043412 = c;
double r4043413 = r4043411 * r4043412;
double r4043414 = r4043410 + r4043413;
double r4043415 = r4043397 * r4043407;
double r4043416 = i;
double r4043417 = r4043415 * r4043416;
double r4043418 = r4043414 - r4043417;
double r4043419 = j;
double r4043420 = 27.0;
double r4043421 = r4043419 * r4043420;
double r4043422 = k;
double r4043423 = r4043421 * r4043422;
double r4043424 = r4043418 - r4043423;
return r4043424;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r4043425 = z;
double r4043426 = -1.4624631829341433e+37;
bool r4043427 = r4043425 <= r4043426;
double r4043428 = b;
double r4043429 = c;
double r4043430 = r4043428 * r4043429;
double r4043431 = t;
double r4043432 = r4043425 * r4043431;
double r4043433 = x;
double r4043434 = 18.0;
double r4043435 = r4043433 * r4043434;
double r4043436 = y;
double r4043437 = r4043435 * r4043436;
double r4043438 = r4043432 * r4043437;
double r4043439 = a;
double r4043440 = 4.0;
double r4043441 = r4043439 * r4043440;
double r4043442 = r4043441 * r4043431;
double r4043443 = r4043438 - r4043442;
double r4043444 = r4043430 + r4043443;
double r4043445 = r4043440 * r4043433;
double r4043446 = i;
double r4043447 = r4043445 * r4043446;
double r4043448 = r4043444 - r4043447;
double r4043449 = k;
double r4043450 = j;
double r4043451 = 27.0;
double r4043452 = r4043450 * r4043451;
double r4043453 = r4043449 * r4043452;
double r4043454 = r4043448 - r4043453;
double r4043455 = 4.36042650378674e+116;
bool r4043456 = r4043425 <= r4043455;
double r4043457 = r4043425 * r4043436;
double r4043458 = r4043435 * r4043457;
double r4043459 = r4043458 - r4043441;
double r4043460 = r4043449 * r4043451;
double r4043461 = r4043440 * r4043446;
double r4043462 = r4043433 * r4043461;
double r4043463 = fma(r4043450, r4043460, r4043462);
double r4043464 = r4043430 - r4043463;
double r4043465 = fma(r4043459, r4043431, r4043464);
double r4043466 = r4043456 ? r4043465 : r4043454;
double r4043467 = r4043427 ? r4043454 : r4043466;
return r4043467;
}



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 z < -1.4624631829341433e+37 or 4.36042650378674e+116 < z Initial program 7.9
rmApplied associate-*l*9.9
if -1.4624631829341433e+37 < z < 4.36042650378674e+116Initial program 4.1
Simplified1.7
Taylor expanded around inf 1.7
Simplified1.8
Final simplification4.4
herbie shell --seed 2019151 +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)))