\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(t \cdot \left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) - \left(a \cdot 4\right) \cdot t\right) + c \cdot b\right) - \left(x \cdot 4\right) \cdot i \le -3.562733702540698501769975042751072620323 \cdot 10^{286} \lor \neg \left(\left(\left(t \cdot \left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) - \left(a \cdot 4\right) \cdot t\right) + c \cdot b\right) - \left(x \cdot 4\right) \cdot i \le 8.107231729667045342202036618227366964577 \cdot 10^{306}\right):\\
\;\;\;\;\left(\left(\left(\left(y \cdot \left(t \cdot z\right)\right) \cdot \left(x \cdot 18\right) - \left(a \cdot 4\right) \cdot t\right) + c \cdot b\right) - \left(x \cdot 4\right) \cdot i\right) - \left(27 \cdot j\right) \cdot k\\
\mathbf{else}:\\
\;\;\;\;\left(\left(c \cdot b + \left(\left(z \cdot \left(\left(y \cdot x\right) \cdot 18\right)\right) \cdot t - \left(a \cdot 4\right) \cdot t\right)\right) - \left(x \cdot 4\right) \cdot i\right) - \left(\sqrt[3]{\left(27 \cdot k\right) \cdot j} \cdot \sqrt[3]{\left(27 \cdot k\right) \cdot j}\right) \cdot \left(\sqrt[3]{27 \cdot k} \cdot \sqrt[3]{j}\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 r193231 = x;
double r193232 = 18.0;
double r193233 = r193231 * r193232;
double r193234 = y;
double r193235 = r193233 * r193234;
double r193236 = z;
double r193237 = r193235 * r193236;
double r193238 = t;
double r193239 = r193237 * r193238;
double r193240 = a;
double r193241 = 4.0;
double r193242 = r193240 * r193241;
double r193243 = r193242 * r193238;
double r193244 = r193239 - r193243;
double r193245 = b;
double r193246 = c;
double r193247 = r193245 * r193246;
double r193248 = r193244 + r193247;
double r193249 = r193231 * r193241;
double r193250 = i;
double r193251 = r193249 * r193250;
double r193252 = r193248 - r193251;
double r193253 = j;
double r193254 = 27.0;
double r193255 = r193253 * r193254;
double r193256 = k;
double r193257 = r193255 * r193256;
double r193258 = r193252 - r193257;
return r193258;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r193259 = t;
double r193260 = x;
double r193261 = 18.0;
double r193262 = r193260 * r193261;
double r193263 = y;
double r193264 = r193262 * r193263;
double r193265 = z;
double r193266 = r193264 * r193265;
double r193267 = r193259 * r193266;
double r193268 = a;
double r193269 = 4.0;
double r193270 = r193268 * r193269;
double r193271 = r193270 * r193259;
double r193272 = r193267 - r193271;
double r193273 = c;
double r193274 = b;
double r193275 = r193273 * r193274;
double r193276 = r193272 + r193275;
double r193277 = r193260 * r193269;
double r193278 = i;
double r193279 = r193277 * r193278;
double r193280 = r193276 - r193279;
double r193281 = -3.5627337025406985e+286;
bool r193282 = r193280 <= r193281;
double r193283 = 8.107231729667045e+306;
bool r193284 = r193280 <= r193283;
double r193285 = !r193284;
bool r193286 = r193282 || r193285;
double r193287 = r193259 * r193265;
double r193288 = r193263 * r193287;
double r193289 = r193288 * r193262;
double r193290 = r193289 - r193271;
double r193291 = r193290 + r193275;
double r193292 = r193291 - r193279;
double r193293 = 27.0;
double r193294 = j;
double r193295 = r193293 * r193294;
double r193296 = k;
double r193297 = r193295 * r193296;
double r193298 = r193292 - r193297;
double r193299 = r193263 * r193260;
double r193300 = r193299 * r193261;
double r193301 = r193265 * r193300;
double r193302 = r193301 * r193259;
double r193303 = r193302 - r193271;
double r193304 = r193275 + r193303;
double r193305 = r193304 - r193279;
double r193306 = r193293 * r193296;
double r193307 = r193306 * r193294;
double r193308 = cbrt(r193307);
double r193309 = r193308 * r193308;
double r193310 = cbrt(r193306);
double r193311 = cbrt(r193294);
double r193312 = r193310 * r193311;
double r193313 = r193309 * r193312;
double r193314 = r193305 - r193313;
double r193315 = r193286 ? r193298 : r193314;
return r193315;
}



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 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < -3.5627337025406985e+286 or 8.107231729667045e+306 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) Initial program 47.1
rmApplied pow147.1
Applied pow147.1
Applied pow147.1
Applied pow147.1
Applied pow147.1
Applied pow-prod-down47.1
Applied pow-prod-down47.1
Applied pow-prod-down47.1
Applied pow-prod-down47.1
Simplified7.7
if -3.5627337025406985e+286 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < 8.107231729667045e+306Initial program 0.4
rmApplied add-cube-cbrt0.6
Simplified0.7
Simplified0.7
rmApplied cbrt-prod0.6
Simplified0.6
rmApplied *-un-lft-identity0.6
Applied associate-*r*0.6
Simplified0.6
Final simplification1.5
herbie shell --seed 2019174
(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)))