\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}\;t \le -4.23687781110933502 \cdot 10^{-231}:\\
\;\;\;\;t \cdot \left({\left(\left(z \cdot y\right) \cdot \left(x \cdot 18\right)\right)}^{1} - a \cdot 4\right) + \left(b \cdot c - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\right)\\
\mathbf{elif}\;t \le -3.94513555421917625 \cdot 10^{-297}:\\
\;\;\;\;0 + \left(b \cdot c - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\right)\\
\mathbf{elif}\;t \le 6.13398898620058475 \cdot 10^{-138}:\\
\;\;\;\;t \cdot \left(\left(x \cdot \left(18 \cdot y\right)\right) \cdot z - a \cdot 4\right) + \left(b \cdot c - \left(\left(x \cdot 4\right) \cdot i + j \cdot \left(27 \cdot k\right)\right)\right)\\
\mathbf{elif}\;t \le 2.7075755514912269 \cdot 10^{-99}:\\
\;\;\;\;0 + \left(b \cdot c - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\right)\\
\mathbf{else}:\\
\;\;\;\;t \cdot \left(\left(x \cdot \left(18 \cdot y\right)\right) \cdot z - a \cdot 4\right) + \left(b \cdot c - \left(\left(x \cdot 4\right) \cdot i + j \cdot \left(27 \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 r158288 = x;
double r158289 = 18.0;
double r158290 = r158288 * r158289;
double r158291 = y;
double r158292 = r158290 * r158291;
double r158293 = z;
double r158294 = r158292 * r158293;
double r158295 = t;
double r158296 = r158294 * r158295;
double r158297 = a;
double r158298 = 4.0;
double r158299 = r158297 * r158298;
double r158300 = r158299 * r158295;
double r158301 = r158296 - r158300;
double r158302 = b;
double r158303 = c;
double r158304 = r158302 * r158303;
double r158305 = r158301 + r158304;
double r158306 = r158288 * r158298;
double r158307 = i;
double r158308 = r158306 * r158307;
double r158309 = r158305 - r158308;
double r158310 = j;
double r158311 = 27.0;
double r158312 = r158310 * r158311;
double r158313 = k;
double r158314 = r158312 * r158313;
double r158315 = r158309 - r158314;
return r158315;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r158316 = t;
double r158317 = -4.236877811109335e-231;
bool r158318 = r158316 <= r158317;
double r158319 = z;
double r158320 = y;
double r158321 = r158319 * r158320;
double r158322 = x;
double r158323 = 18.0;
double r158324 = r158322 * r158323;
double r158325 = r158321 * r158324;
double r158326 = 1.0;
double r158327 = pow(r158325, r158326);
double r158328 = a;
double r158329 = 4.0;
double r158330 = r158328 * r158329;
double r158331 = r158327 - r158330;
double r158332 = r158316 * r158331;
double r158333 = b;
double r158334 = c;
double r158335 = r158333 * r158334;
double r158336 = r158322 * r158329;
double r158337 = i;
double r158338 = r158336 * r158337;
double r158339 = j;
double r158340 = 27.0;
double r158341 = r158339 * r158340;
double r158342 = k;
double r158343 = r158341 * r158342;
double r158344 = r158338 + r158343;
double r158345 = r158335 - r158344;
double r158346 = r158332 + r158345;
double r158347 = -3.945135554219176e-297;
bool r158348 = r158316 <= r158347;
double r158349 = 0.0;
double r158350 = r158349 + r158345;
double r158351 = 6.133988986200585e-138;
bool r158352 = r158316 <= r158351;
double r158353 = r158323 * r158320;
double r158354 = r158322 * r158353;
double r158355 = r158354 * r158319;
double r158356 = r158355 - r158330;
double r158357 = r158316 * r158356;
double r158358 = r158340 * r158342;
double r158359 = r158339 * r158358;
double r158360 = r158338 + r158359;
double r158361 = r158335 - r158360;
double r158362 = r158357 + r158361;
double r158363 = 2.707575551491227e-99;
bool r158364 = r158316 <= r158363;
double r158365 = r158364 ? r158350 : r158362;
double r158366 = r158352 ? r158362 : r158365;
double r158367 = r158348 ? r158350 : r158366;
double r158368 = r158318 ? r158346 : r158367;
return r158368;
}



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 t < -4.236877811109335e-231Initial program 4.3
Simplified4.3
rmApplied add-cube-cbrt4.4
Applied associate-*r*4.4
rmApplied pow14.4
Applied pow14.4
Applied pow14.4
Applied pow14.4
Applied pow-prod-down4.4
Applied pow14.4
Applied pow14.4
Applied pow-prod-down4.4
Applied pow-prod-down4.4
Applied pow-prod-down4.4
Applied pow-prod-down4.4
Simplified5.0
if -4.236877811109335e-231 < t < -3.945135554219176e-297 or 6.133988986200585e-138 < t < 2.707575551491227e-99Initial program 8.4
Simplified8.4
Taylor expanded around 0 10.2
if -3.945135554219176e-297 < t < 6.133988986200585e-138 or 2.707575551491227e-99 < t Initial program 5.2
Simplified5.2
rmApplied associate-*l*5.3
rmApplied associate-*l*5.3
Final simplification5.7
herbie shell --seed 2020039
(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)))