\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 -4.31316871954506083868573310292063806129 \cdot 10^{-109}:\\
\;\;\;\;\left(j \cdot \left(c \cdot t - i \cdot y\right) + x \cdot \left(y \cdot z - t \cdot a\right)\right) + \left(a \cdot \left(b \cdot i\right) - z \cdot \left(b \cdot c\right)\right)\\
\mathbf{elif}\;x \le 3.217371995632368362710845571958895917258 \cdot 10^{-105}:\\
\;\;\;\;\left(i \cdot \left(a \cdot b\right) - c \cdot \left(b \cdot z\right)\right) + \left(j \cdot \left(c \cdot t - i \cdot y\right) + \left(\left(x \cdot z\right) \cdot y - a \cdot \left(t \cdot x\right)\right)\right)\\
\mathbf{elif}\;x \le 1.68252005080698548650945614352565896303 \cdot 10^{50}:\\
\;\;\;\;\left(x \cdot \left(y \cdot z - t \cdot a\right) + \left(\left(y \cdot j\right) \cdot \left(-i\right) + \left(j \cdot c\right) \cdot t\right)\right) + \left(i \cdot \left(a \cdot b\right) - z \cdot \left(b \cdot c\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(i \cdot \left(a \cdot b\right) - \left(\left(\sqrt[3]{z} \cdot b\right) \cdot c\right) \cdot \left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right)\right) + \left(j \cdot \left(c \cdot t - i \cdot y\right) + x \cdot \left(y \cdot z - t \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 r102368 = x;
double r102369 = y;
double r102370 = z;
double r102371 = r102369 * r102370;
double r102372 = t;
double r102373 = a;
double r102374 = r102372 * r102373;
double r102375 = r102371 - r102374;
double r102376 = r102368 * r102375;
double r102377 = b;
double r102378 = c;
double r102379 = r102378 * r102370;
double r102380 = i;
double r102381 = r102380 * r102373;
double r102382 = r102379 - r102381;
double r102383 = r102377 * r102382;
double r102384 = r102376 - r102383;
double r102385 = j;
double r102386 = r102378 * r102372;
double r102387 = r102380 * r102369;
double r102388 = r102386 - r102387;
double r102389 = r102385 * r102388;
double r102390 = r102384 + r102389;
return r102390;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
double r102391 = x;
double r102392 = -4.313168719545061e-109;
bool r102393 = r102391 <= r102392;
double r102394 = j;
double r102395 = c;
double r102396 = t;
double r102397 = r102395 * r102396;
double r102398 = i;
double r102399 = y;
double r102400 = r102398 * r102399;
double r102401 = r102397 - r102400;
double r102402 = r102394 * r102401;
double r102403 = z;
double r102404 = r102399 * r102403;
double r102405 = a;
double r102406 = r102396 * r102405;
double r102407 = r102404 - r102406;
double r102408 = r102391 * r102407;
double r102409 = r102402 + r102408;
double r102410 = b;
double r102411 = r102410 * r102398;
double r102412 = r102405 * r102411;
double r102413 = r102410 * r102395;
double r102414 = r102403 * r102413;
double r102415 = r102412 - r102414;
double r102416 = r102409 + r102415;
double r102417 = 3.2173719956323684e-105;
bool r102418 = r102391 <= r102417;
double r102419 = r102405 * r102410;
double r102420 = r102398 * r102419;
double r102421 = r102410 * r102403;
double r102422 = r102395 * r102421;
double r102423 = r102420 - r102422;
double r102424 = r102391 * r102403;
double r102425 = r102424 * r102399;
double r102426 = r102396 * r102391;
double r102427 = r102405 * r102426;
double r102428 = r102425 - r102427;
double r102429 = r102402 + r102428;
double r102430 = r102423 + r102429;
double r102431 = 1.6825200508069855e+50;
bool r102432 = r102391 <= r102431;
double r102433 = r102399 * r102394;
double r102434 = -r102398;
double r102435 = r102433 * r102434;
double r102436 = r102394 * r102395;
double r102437 = r102436 * r102396;
double r102438 = r102435 + r102437;
double r102439 = r102408 + r102438;
double r102440 = r102420 - r102414;
double r102441 = r102439 + r102440;
double r102442 = cbrt(r102403);
double r102443 = r102442 * r102410;
double r102444 = r102443 * r102395;
double r102445 = r102442 * r102442;
double r102446 = r102444 * r102445;
double r102447 = r102420 - r102446;
double r102448 = r102447 + r102409;
double r102449 = r102432 ? r102441 : r102448;
double r102450 = r102418 ? r102430 : r102449;
double r102451 = r102393 ? r102416 : r102450;
return r102451;
}



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 < -4.313168719545061e-109Initial program 9.9
Simplified9.9
Taylor expanded around inf 10.3
Simplified10.0
rmApplied associate-*r*9.9
Simplified9.9
rmApplied associate-*l*10.3
Simplified10.3
rmApplied associate-*l*10.3
if -4.313168719545061e-109 < x < 3.2173719956323684e-105Initial program 16.2
Simplified16.2
Taylor expanded around inf 16.3
Simplified16.6
rmApplied associate-*r*16.7
Simplified16.7
Taylor expanded around inf 13.9
Simplified10.9
if 3.2173719956323684e-105 < x < 1.6825200508069855e+50Initial program 11.5
Simplified11.5
Taylor expanded around inf 9.9
Simplified11.6
rmApplied associate-*r*11.2
Simplified11.2
rmApplied associate-*l*10.1
Simplified10.1
rmApplied sub-neg10.1
Applied distribute-lft-in10.1
Simplified10.4
Simplified9.7
if 1.6825200508069855e+50 < x Initial program 7.0
Simplified7.0
Taylor expanded around inf 8.1
Simplified6.6
rmApplied associate-*r*7.1
Simplified7.1
rmApplied associate-*l*8.2
Simplified8.2
rmApplied add-cube-cbrt8.3
Applied associate-*l*8.3
Simplified7.1
Final simplification10.0
herbie shell --seed 2019196
(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)))))