\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}\;x \le -2.987700109246694 \cdot 10^{-143}:\\
\;\;\;\;\left(c \cdot t - i \cdot y\right) \cdot j + \left(\left(y \cdot z - a \cdot t\right) \cdot x - \left(\sqrt[3]{b \cdot \left(z \cdot c - i \cdot a\right)} \cdot \sqrt[3]{\sqrt[3]{b \cdot \left(z \cdot c - i \cdot a\right)} \cdot \left(\sqrt[3]{b \cdot \left(z \cdot c - i \cdot a\right)} \cdot \sqrt[3]{b \cdot \left(z \cdot c - i \cdot a\right)}\right)}\right) \cdot \sqrt[3]{b \cdot \left(z \cdot c - i \cdot a\right)}\right)\\
\mathbf{elif}\;x \le 8.952328813322225 \cdot 10^{-195}:\\
\;\;\;\;\left(c \cdot t - i \cdot y\right) \cdot j + \left(-b\right) \cdot \left(z \cdot c - i \cdot a\right)\\
\mathbf{else}:\\
\;\;\;\;\left(c \cdot t - i \cdot y\right) \cdot j + \left(\sqrt{x} \cdot \left(\sqrt{x} \cdot \left(y \cdot z - a \cdot t\right)\right) - b \cdot \left(z \cdot c - i \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 r13045310 = x;
double r13045311 = y;
double r13045312 = z;
double r13045313 = r13045311 * r13045312;
double r13045314 = t;
double r13045315 = a;
double r13045316 = r13045314 * r13045315;
double r13045317 = r13045313 - r13045316;
double r13045318 = r13045310 * r13045317;
double r13045319 = b;
double r13045320 = c;
double r13045321 = r13045320 * r13045312;
double r13045322 = i;
double r13045323 = r13045322 * r13045315;
double r13045324 = r13045321 - r13045323;
double r13045325 = r13045319 * r13045324;
double r13045326 = r13045318 - r13045325;
double r13045327 = j;
double r13045328 = r13045320 * r13045314;
double r13045329 = r13045322 * r13045311;
double r13045330 = r13045328 - r13045329;
double r13045331 = r13045327 * r13045330;
double r13045332 = r13045326 + r13045331;
return r13045332;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
double r13045333 = x;
double r13045334 = -2.987700109246694e-143;
bool r13045335 = r13045333 <= r13045334;
double r13045336 = c;
double r13045337 = t;
double r13045338 = r13045336 * r13045337;
double r13045339 = i;
double r13045340 = y;
double r13045341 = r13045339 * r13045340;
double r13045342 = r13045338 - r13045341;
double r13045343 = j;
double r13045344 = r13045342 * r13045343;
double r13045345 = z;
double r13045346 = r13045340 * r13045345;
double r13045347 = a;
double r13045348 = r13045347 * r13045337;
double r13045349 = r13045346 - r13045348;
double r13045350 = r13045349 * r13045333;
double r13045351 = b;
double r13045352 = r13045345 * r13045336;
double r13045353 = r13045339 * r13045347;
double r13045354 = r13045352 - r13045353;
double r13045355 = r13045351 * r13045354;
double r13045356 = cbrt(r13045355);
double r13045357 = r13045356 * r13045356;
double r13045358 = r13045356 * r13045357;
double r13045359 = cbrt(r13045358);
double r13045360 = r13045356 * r13045359;
double r13045361 = r13045360 * r13045356;
double r13045362 = r13045350 - r13045361;
double r13045363 = r13045344 + r13045362;
double r13045364 = 8.952328813322225e-195;
bool r13045365 = r13045333 <= r13045364;
double r13045366 = -r13045351;
double r13045367 = r13045366 * r13045354;
double r13045368 = r13045344 + r13045367;
double r13045369 = sqrt(r13045333);
double r13045370 = r13045369 * r13045349;
double r13045371 = r13045369 * r13045370;
double r13045372 = r13045371 - r13045355;
double r13045373 = r13045344 + r13045372;
double r13045374 = r13045365 ? r13045368 : r13045373;
double r13045375 = r13045335 ? r13045363 : r13045374;
return r13045375;
}



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 x < -2.987700109246694e-143Initial program 10.0
rmApplied add-cube-cbrt10.2
rmApplied add-cube-cbrt10.2
if -2.987700109246694e-143 < x < 8.952328813322225e-195Initial program 14.7
Taylor expanded around 0 16.3
if 8.952328813322225e-195 < x Initial program 9.8
rmApplied add-sqr-sqrt10.0
Applied associate-*l*9.9
Final simplification11.9
herbie shell --seed 2019121
(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)))))