\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)
\begin{array}{l}
\mathbf{if}\;y \le -7.276076652476422723184151660607198493295 \cdot 10^{-42}:\\
\;\;\;\;\left(\left(x \cdot \left(y \cdot z\right) + \left(-a \cdot \left(x \cdot t\right)\right)\right) - \left(b \cdot \left(\sqrt[3]{c \cdot z - i \cdot a} \cdot \sqrt[3]{c \cdot z - i \cdot a}\right)\right) \cdot \sqrt[3]{c \cdot z - i \cdot a}\right) + j \cdot \left(c \cdot t - i \cdot y\right)\\
\mathbf{elif}\;y \le -2.765207802801297782227349629851777181967 \cdot 10^{-96}:\\
\;\;\;\;\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(t \cdot \left(j \cdot c\right) + \left(-i \cdot \left(j \cdot y\right)\right)\right)\\
\mathbf{elif}\;y \le 7.448778321262618814210345647292621144017 \cdot 10^{-301}:\\
\;\;\;\;\left(\left(\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right) \cdot \left(\sqrt[3]{x} \cdot \left(y \cdot z\right)\right) + \left(-a \cdot \left(x \cdot t\right)\right)\right) - \left(z \cdot \left(b \cdot c\right) + \left(-i \cdot a\right) \cdot b\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\\
\mathbf{elif}\;y \le 1.714973672352425960028893737750560179991 \cdot 10^{93}:\\
\;\;\;\;\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(t \cdot \left(j \cdot c\right) + \left(-i \cdot \left(j \cdot y\right)\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\left(x \cdot \left(y \cdot z\right) + \left(-t \cdot \left(x \cdot a\right)\right)\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
double r95450 = x;
double r95451 = y;
double r95452 = z;
double r95453 = r95451 * r95452;
double r95454 = t;
double r95455 = a;
double r95456 = r95454 * r95455;
double r95457 = r95453 - r95456;
double r95458 = r95450 * r95457;
double r95459 = b;
double r95460 = c;
double r95461 = r95460 * r95452;
double r95462 = i;
double r95463 = r95462 * r95455;
double r95464 = r95461 - r95463;
double r95465 = r95459 * r95464;
double r95466 = r95458 - r95465;
double r95467 = j;
double r95468 = r95460 * r95454;
double r95469 = r95462 * r95451;
double r95470 = r95468 - r95469;
double r95471 = r95467 * r95470;
double r95472 = r95466 + r95471;
return r95472;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
double r95473 = y;
double r95474 = -7.276076652476423e-42;
bool r95475 = r95473 <= r95474;
double r95476 = x;
double r95477 = z;
double r95478 = r95473 * r95477;
double r95479 = r95476 * r95478;
double r95480 = a;
double r95481 = t;
double r95482 = r95476 * r95481;
double r95483 = r95480 * r95482;
double r95484 = -r95483;
double r95485 = r95479 + r95484;
double r95486 = b;
double r95487 = c;
double r95488 = r95487 * r95477;
double r95489 = i;
double r95490 = r95489 * r95480;
double r95491 = r95488 - r95490;
double r95492 = cbrt(r95491);
double r95493 = r95492 * r95492;
double r95494 = r95486 * r95493;
double r95495 = r95494 * r95492;
double r95496 = r95485 - r95495;
double r95497 = j;
double r95498 = r95487 * r95481;
double r95499 = r95489 * r95473;
double r95500 = r95498 - r95499;
double r95501 = r95497 * r95500;
double r95502 = r95496 + r95501;
double r95503 = -2.7652078028012978e-96;
bool r95504 = r95473 <= r95503;
double r95505 = r95481 * r95480;
double r95506 = r95478 - r95505;
double r95507 = r95476 * r95506;
double r95508 = r95486 * r95491;
double r95509 = r95507 - r95508;
double r95510 = r95497 * r95487;
double r95511 = r95481 * r95510;
double r95512 = r95497 * r95473;
double r95513 = r95489 * r95512;
double r95514 = -r95513;
double r95515 = r95511 + r95514;
double r95516 = r95509 + r95515;
double r95517 = 7.448778321262619e-301;
bool r95518 = r95473 <= r95517;
double r95519 = cbrt(r95476);
double r95520 = r95519 * r95519;
double r95521 = r95519 * r95478;
double r95522 = r95520 * r95521;
double r95523 = r95522 + r95484;
double r95524 = r95486 * r95487;
double r95525 = r95477 * r95524;
double r95526 = -r95490;
double r95527 = r95526 * r95486;
double r95528 = r95525 + r95527;
double r95529 = r95523 - r95528;
double r95530 = r95529 + r95501;
double r95531 = 1.714973672352426e+93;
bool r95532 = r95473 <= r95531;
double r95533 = r95476 * r95480;
double r95534 = r95481 * r95533;
double r95535 = -r95534;
double r95536 = r95479 + r95535;
double r95537 = r95536 - r95508;
double r95538 = r95537 + r95501;
double r95539 = r95532 ? r95516 : r95538;
double r95540 = r95518 ? r95530 : r95539;
double r95541 = r95504 ? r95516 : r95540;
double r95542 = r95475 ? r95502 : r95541;
return r95542;
}



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
Results
if y < -7.276076652476423e-42Initial program 15.1
rmApplied sub-neg15.1
Applied distribute-lft-in15.1
Simplified14.7
rmApplied add-cube-cbrt14.9
Applied associate-*r*14.9
if -7.276076652476423e-42 < y < -2.7652078028012978e-96 or 7.448778321262619e-301 < y < 1.714973672352426e+93Initial program 9.0
rmApplied sub-neg9.0
Applied distribute-lft-in9.0
Simplified9.6
Simplified9.5
if -2.7652078028012978e-96 < y < 7.448778321262619e-301Initial program 10.4
rmApplied sub-neg10.4
Applied distribute-lft-in10.4
Simplified10.4
rmApplied add-cube-cbrt10.5
Applied associate-*l*10.5
rmApplied sub-neg10.5
Applied distribute-lft-in10.5
Simplified9.8
Simplified9.8
if 1.714973672352426e+93 < y Initial program 20.8
rmApplied sub-neg20.8
Applied distribute-lft-in20.8
Simplified20.4
Taylor expanded around inf 19.9
Final simplification12.0
herbie shell --seed 2019350
(FPCore (x y z t a b c i j)
:name "Linear.Matrix:det33 from linear-1.19.1.3"
:precision binary64
(+ (- (* x (- (* y z) (* t a))) (* b (- (* c z) (* i a)))) (* j (- (* c t) (* i y)))))