\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}\;\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 \le -1.591976256934889034187455180953636735584 \cdot 10^{302} \lor \neg \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 \le 2.618961756211518564383950228017988163092 \cdot 10^{294}\right):\\
\;\;\;\;\mathsf{fma}\left(\left(\left(z \cdot t\right) \cdot y\right) \cdot x, 18, \mathsf{fma}\left(c, b, -\mathsf{fma}\left(4, \mathsf{fma}\left(t, a, x \cdot i\right), \left(j \cdot 27\right) \cdot k\right)\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\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\\
\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 r98349 = x;
double r98350 = 18.0;
double r98351 = r98349 * r98350;
double r98352 = y;
double r98353 = r98351 * r98352;
double r98354 = z;
double r98355 = r98353 * r98354;
double r98356 = t;
double r98357 = r98355 * r98356;
double r98358 = a;
double r98359 = 4.0;
double r98360 = r98358 * r98359;
double r98361 = r98360 * r98356;
double r98362 = r98357 - r98361;
double r98363 = b;
double r98364 = c;
double r98365 = r98363 * r98364;
double r98366 = r98362 + r98365;
double r98367 = r98349 * r98359;
double r98368 = i;
double r98369 = r98367 * r98368;
double r98370 = r98366 - r98369;
double r98371 = j;
double r98372 = 27.0;
double r98373 = r98371 * r98372;
double r98374 = k;
double r98375 = r98373 * r98374;
double r98376 = r98370 - r98375;
return r98376;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r98377 = x;
double r98378 = 18.0;
double r98379 = r98377 * r98378;
double r98380 = y;
double r98381 = r98379 * r98380;
double r98382 = z;
double r98383 = r98381 * r98382;
double r98384 = t;
double r98385 = r98383 * r98384;
double r98386 = a;
double r98387 = 4.0;
double r98388 = r98386 * r98387;
double r98389 = r98388 * r98384;
double r98390 = r98385 - r98389;
double r98391 = b;
double r98392 = c;
double r98393 = r98391 * r98392;
double r98394 = r98390 + r98393;
double r98395 = r98377 * r98387;
double r98396 = i;
double r98397 = r98395 * r98396;
double r98398 = r98394 - r98397;
double r98399 = -1.591976256934889e+302;
bool r98400 = r98398 <= r98399;
double r98401 = 2.6189617562115186e+294;
bool r98402 = r98398 <= r98401;
double r98403 = !r98402;
bool r98404 = r98400 || r98403;
double r98405 = r98382 * r98384;
double r98406 = r98405 * r98380;
double r98407 = r98406 * r98377;
double r98408 = r98377 * r98396;
double r98409 = fma(r98384, r98386, r98408);
double r98410 = j;
double r98411 = 27.0;
double r98412 = r98410 * r98411;
double r98413 = k;
double r98414 = r98412 * r98413;
double r98415 = fma(r98387, r98409, r98414);
double r98416 = -r98415;
double r98417 = fma(r98392, r98391, r98416);
double r98418 = fma(r98407, r98378, r98417);
double r98419 = r98398 - r98414;
double r98420 = r98404 ? r98418 : r98419;
return r98420;
}



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 (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < -1.591976256934889e+302 or 2.6189617562115186e+294 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) Initial program 49.0
Simplified13.5
rmApplied associate-*r*7.4
rmApplied associate-*l*16.5
Simplified16.5
rmApplied associate-*r*6.0
Simplified6.0
if -1.591976256934889e+302 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < 2.6189617562115186e+294Initial program 0.3
Final simplification1.0
herbie shell --seed 2019325 +o rules:numerics
(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)))