\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}\;z \le -1.472198629438373467176788070401966553082 \cdot 10^{186}:\\
\;\;\;\;\mathsf{fma}\left(t \cdot c - y \cdot i, j, \left(x \cdot y - c \cdot b\right) \cdot z - t \cdot \left(x \cdot a\right)\right)\\
\mathbf{elif}\;z \le 4.88790623320237152630256737661557323239 \cdot 10^{94}:\\
\;\;\;\;\mathsf{fma}\left(t \cdot c - y \cdot i, j, \mathsf{fma}\left(b, i \cdot a - c \cdot z, \left(\left(y \cdot z - t \cdot a\right) \cdot \left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)\right) \cdot \sqrt[3]{x}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(t \cdot c - y \cdot i, j, \left(x \cdot y - c \cdot b\right) \cdot z - t \cdot \left(x \cdot a\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 r3891480 = x;
double r3891481 = y;
double r3891482 = z;
double r3891483 = r3891481 * r3891482;
double r3891484 = t;
double r3891485 = a;
double r3891486 = r3891484 * r3891485;
double r3891487 = r3891483 - r3891486;
double r3891488 = r3891480 * r3891487;
double r3891489 = b;
double r3891490 = c;
double r3891491 = r3891490 * r3891482;
double r3891492 = i;
double r3891493 = r3891492 * r3891485;
double r3891494 = r3891491 - r3891493;
double r3891495 = r3891489 * r3891494;
double r3891496 = r3891488 - r3891495;
double r3891497 = j;
double r3891498 = r3891490 * r3891484;
double r3891499 = r3891492 * r3891481;
double r3891500 = r3891498 - r3891499;
double r3891501 = r3891497 * r3891500;
double r3891502 = r3891496 + r3891501;
return r3891502;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
double r3891503 = z;
double r3891504 = -1.4721986294383735e+186;
bool r3891505 = r3891503 <= r3891504;
double r3891506 = t;
double r3891507 = c;
double r3891508 = r3891506 * r3891507;
double r3891509 = y;
double r3891510 = i;
double r3891511 = r3891509 * r3891510;
double r3891512 = r3891508 - r3891511;
double r3891513 = j;
double r3891514 = x;
double r3891515 = r3891514 * r3891509;
double r3891516 = b;
double r3891517 = r3891507 * r3891516;
double r3891518 = r3891515 - r3891517;
double r3891519 = r3891518 * r3891503;
double r3891520 = a;
double r3891521 = r3891514 * r3891520;
double r3891522 = r3891506 * r3891521;
double r3891523 = r3891519 - r3891522;
double r3891524 = fma(r3891512, r3891513, r3891523);
double r3891525 = 4.8879062332023715e+94;
bool r3891526 = r3891503 <= r3891525;
double r3891527 = r3891510 * r3891520;
double r3891528 = r3891507 * r3891503;
double r3891529 = r3891527 - r3891528;
double r3891530 = r3891509 * r3891503;
double r3891531 = r3891506 * r3891520;
double r3891532 = r3891530 - r3891531;
double r3891533 = cbrt(r3891514);
double r3891534 = r3891533 * r3891533;
double r3891535 = r3891532 * r3891534;
double r3891536 = r3891535 * r3891533;
double r3891537 = fma(r3891516, r3891529, r3891536);
double r3891538 = fma(r3891512, r3891513, r3891537);
double r3891539 = r3891526 ? r3891538 : r3891524;
double r3891540 = r3891505 ? r3891524 : r3891539;
return r3891540;
}



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
if z < -1.4721986294383735e+186 or 4.8879062332023715e+94 < z Initial program 22.6
Simplified22.6
rmApplied add-cube-cbrt22.9
Applied associate-*r*22.9
Taylor expanded around inf 19.6
Simplified11.4
if -1.4721986294383735e+186 < z < 4.8879062332023715e+94Initial program 10.4
Simplified10.4
rmApplied add-cube-cbrt10.7
Applied associate-*r*10.7
Final simplification10.8
herbie shell --seed 2019192 +o rules:numerics
(FPCore (x y z t a b c i j)
:name "Linear.Matrix:det33 from linear-1.19.1.3"
(+ (- (* x (- (* y z) (* t a))) (* b (- (* c z) (* i a)))) (* j (- (* c t) (* i y)))))