\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}\;x \le -4.231030079622034677757047713069532532969 \cdot 10^{-84} \lor \neg \left(x \le 3.987060137731610333464591129755943173549 \cdot 10^{-19}\right):\\
\;\;\;\;\left(\left(\left(x \cdot \left(18 \cdot \left(\left(y \cdot z\right) \cdot t\right)\right) - \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\\
\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 r108382 = x;
double r108383 = 18.0;
double r108384 = r108382 * r108383;
double r108385 = y;
double r108386 = r108384 * r108385;
double r108387 = z;
double r108388 = r108386 * r108387;
double r108389 = t;
double r108390 = r108388 * r108389;
double r108391 = a;
double r108392 = 4.0;
double r108393 = r108391 * r108392;
double r108394 = r108393 * r108389;
double r108395 = r108390 - r108394;
double r108396 = b;
double r108397 = c;
double r108398 = r108396 * r108397;
double r108399 = r108395 + r108398;
double r108400 = r108382 * r108392;
double r108401 = i;
double r108402 = r108400 * r108401;
double r108403 = r108399 - r108402;
double r108404 = j;
double r108405 = 27.0;
double r108406 = r108404 * r108405;
double r108407 = k;
double r108408 = r108406 * r108407;
double r108409 = r108403 - r108408;
return r108409;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r108410 = x;
double r108411 = -4.231030079622035e-84;
bool r108412 = r108410 <= r108411;
double r108413 = 3.9870601377316103e-19;
bool r108414 = r108410 <= r108413;
double r108415 = !r108414;
bool r108416 = r108412 || r108415;
double r108417 = 18.0;
double r108418 = y;
double r108419 = z;
double r108420 = r108418 * r108419;
double r108421 = t;
double r108422 = r108420 * r108421;
double r108423 = r108417 * r108422;
double r108424 = r108410 * r108423;
double r108425 = a;
double r108426 = 4.0;
double r108427 = r108425 * r108426;
double r108428 = r108427 * r108421;
double r108429 = r108424 - r108428;
double r108430 = b;
double r108431 = c;
double r108432 = r108430 * r108431;
double r108433 = r108429 + r108432;
double r108434 = r108410 * r108426;
double r108435 = i;
double r108436 = r108434 * r108435;
double r108437 = r108433 - r108436;
double r108438 = j;
double r108439 = 27.0;
double r108440 = r108438 * r108439;
double r108441 = k;
double r108442 = r108440 * r108441;
double r108443 = r108437 - r108442;
double r108444 = r108410 * r108417;
double r108445 = r108444 * r108418;
double r108446 = r108445 * r108419;
double r108447 = r108446 * r108421;
double r108448 = r108447 - r108428;
double r108449 = r108448 + r108432;
double r108450 = r108449 - r108436;
double r108451 = r108439 * r108441;
double r108452 = r108438 * r108451;
double r108453 = r108450 - r108452;
double r108454 = r108416 ? r108443 : r108453;
return r108454;
}



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
Results
if x < -4.231030079622035e-84 or 3.9870601377316103e-19 < x Initial program 9.9
rmApplied associate-*l*6.6
rmApplied associate-*l*3.1
rmApplied associate-*l*3.0
if -4.231030079622035e-84 < x < 3.9870601377316103e-19Initial program 1.6
rmApplied associate-*l*1.6
Final simplification2.3
herbie shell --seed 2019351 +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)))