\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 -5.675593987322069 \cdot 10^{-32}:\\
\;\;\;\;\mathsf{fma}\left(b, c, 18.0 \cdot \left(t \cdot \left(\left(z \cdot y\right) \cdot x\right)\right) - \mathsf{fma}\left(4.0, \mathsf{fma}\left(t, a, i \cdot x\right), j \cdot \left(27.0 \cdot k\right)\right)\right)\\
\mathbf{elif}\;t \le 9.964823125151871 \cdot 10^{+79}:\\
\;\;\;\;\mathsf{fma}\left(b, c, \left(\left(y \cdot 18.0\right) \cdot \left(t \cdot x\right)\right) \cdot z - \mathsf{fma}\left(4.0, \mathsf{fma}\left(t, a, i \cdot x\right), k \cdot \left(j \cdot 27.0\right)\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(b, c, 18.0 \cdot \left(t \cdot \left(\left(z \cdot y\right) \cdot x\right)\right) - \mathsf{fma}\left(4.0, \mathsf{fma}\left(t, a, i \cdot x\right), j \cdot \left(27.0 \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 r4834377 = x;
double r4834378 = 18.0;
double r4834379 = r4834377 * r4834378;
double r4834380 = y;
double r4834381 = r4834379 * r4834380;
double r4834382 = z;
double r4834383 = r4834381 * r4834382;
double r4834384 = t;
double r4834385 = r4834383 * r4834384;
double r4834386 = a;
double r4834387 = 4.0;
double r4834388 = r4834386 * r4834387;
double r4834389 = r4834388 * r4834384;
double r4834390 = r4834385 - r4834389;
double r4834391 = b;
double r4834392 = c;
double r4834393 = r4834391 * r4834392;
double r4834394 = r4834390 + r4834393;
double r4834395 = r4834377 * r4834387;
double r4834396 = i;
double r4834397 = r4834395 * r4834396;
double r4834398 = r4834394 - r4834397;
double r4834399 = j;
double r4834400 = 27.0;
double r4834401 = r4834399 * r4834400;
double r4834402 = k;
double r4834403 = r4834401 * r4834402;
double r4834404 = r4834398 - r4834403;
return r4834404;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r4834405 = t;
double r4834406 = -5.675593987322069e-32;
bool r4834407 = r4834405 <= r4834406;
double r4834408 = b;
double r4834409 = c;
double r4834410 = 18.0;
double r4834411 = z;
double r4834412 = y;
double r4834413 = r4834411 * r4834412;
double r4834414 = x;
double r4834415 = r4834413 * r4834414;
double r4834416 = r4834405 * r4834415;
double r4834417 = r4834410 * r4834416;
double r4834418 = 4.0;
double r4834419 = a;
double r4834420 = i;
double r4834421 = r4834420 * r4834414;
double r4834422 = fma(r4834405, r4834419, r4834421);
double r4834423 = j;
double r4834424 = 27.0;
double r4834425 = k;
double r4834426 = r4834424 * r4834425;
double r4834427 = r4834423 * r4834426;
double r4834428 = fma(r4834418, r4834422, r4834427);
double r4834429 = r4834417 - r4834428;
double r4834430 = fma(r4834408, r4834409, r4834429);
double r4834431 = 9.964823125151871e+79;
bool r4834432 = r4834405 <= r4834431;
double r4834433 = r4834412 * r4834410;
double r4834434 = r4834405 * r4834414;
double r4834435 = r4834433 * r4834434;
double r4834436 = r4834435 * r4834411;
double r4834437 = r4834423 * r4834424;
double r4834438 = r4834425 * r4834437;
double r4834439 = fma(r4834418, r4834422, r4834438);
double r4834440 = r4834436 - r4834439;
double r4834441 = fma(r4834408, r4834409, r4834440);
double r4834442 = r4834432 ? r4834441 : r4834430;
double r4834443 = r4834407 ? r4834430 : r4834442;
return r4834443;
}



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 < -5.675593987322069e-32 or 9.964823125151871e+79 < t Initial program 2.2
Simplified9.1
rmApplied add-sqr-sqrt9.1
Applied associate-*l*9.1
Taylor expanded around 0 9.3
Simplified9.3
Taylor expanded around inf 2.2
if -5.675593987322069e-32 < t < 9.964823125151871e+79Initial program 7.5
Simplified2.0
rmApplied add-sqr-sqrt2.0
Applied associate-*l*2.0
Taylor expanded around 0 2.1
Simplified2.1
rmApplied associate-*r*2.0
Final simplification2.1
herbie shell --seed 2019162 +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)))