\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 = -\infty \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 5.079768789962101655659363683754551466573 \cdot 10^{304}\right):\\
\;\;\;\;\mathsf{fma}\left(\left(t \cdot y\right) \cdot \left(z \cdot x\right), 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) - j \cdot \left(27 \cdot k\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 r32301 = x;
double r32302 = 18.0;
double r32303 = r32301 * r32302;
double r32304 = y;
double r32305 = r32303 * r32304;
double r32306 = z;
double r32307 = r32305 * r32306;
double r32308 = t;
double r32309 = r32307 * r32308;
double r32310 = a;
double r32311 = 4.0;
double r32312 = r32310 * r32311;
double r32313 = r32312 * r32308;
double r32314 = r32309 - r32313;
double r32315 = b;
double r32316 = c;
double r32317 = r32315 * r32316;
double r32318 = r32314 + r32317;
double r32319 = r32301 * r32311;
double r32320 = i;
double r32321 = r32319 * r32320;
double r32322 = r32318 - r32321;
double r32323 = j;
double r32324 = 27.0;
double r32325 = r32323 * r32324;
double r32326 = k;
double r32327 = r32325 * r32326;
double r32328 = r32322 - r32327;
return r32328;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r32329 = x;
double r32330 = 18.0;
double r32331 = r32329 * r32330;
double r32332 = y;
double r32333 = r32331 * r32332;
double r32334 = z;
double r32335 = r32333 * r32334;
double r32336 = t;
double r32337 = r32335 * r32336;
double r32338 = a;
double r32339 = 4.0;
double r32340 = r32338 * r32339;
double r32341 = r32340 * r32336;
double r32342 = r32337 - r32341;
double r32343 = b;
double r32344 = c;
double r32345 = r32343 * r32344;
double r32346 = r32342 + r32345;
double r32347 = r32329 * r32339;
double r32348 = i;
double r32349 = r32347 * r32348;
double r32350 = r32346 - r32349;
double r32351 = -inf.0;
bool r32352 = r32350 <= r32351;
double r32353 = 5.079768789962102e+304;
bool r32354 = r32350 <= r32353;
double r32355 = !r32354;
bool r32356 = r32352 || r32355;
double r32357 = r32336 * r32332;
double r32358 = r32334 * r32329;
double r32359 = r32357 * r32358;
double r32360 = r32329 * r32348;
double r32361 = fma(r32336, r32338, r32360);
double r32362 = j;
double r32363 = 27.0;
double r32364 = r32362 * r32363;
double r32365 = k;
double r32366 = r32364 * r32365;
double r32367 = fma(r32339, r32361, r32366);
double r32368 = -r32367;
double r32369 = fma(r32344, r32343, r32368);
double r32370 = fma(r32359, r32330, r32369);
double r32371 = r32363 * r32365;
double r32372 = r32362 * r32371;
double r32373 = r32350 - r32372;
double r32374 = r32356 ? r32370 : r32373;
return r32374;
}



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)) < -inf.0 or 5.079768789962102e+304 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) Initial program 60.2
Simplified13.4
if -inf.0 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < 5.079768789962102e+304Initial program 0.3
rmApplied associate-*l*0.3
Final simplification1.5
herbie shell --seed 2019315 +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)))