\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}\;j \le -2.17350619689253189401655020029257244027 \cdot 10^{117}:\\
\;\;\;\;\left(0 - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\\
\mathbf{elif}\;j \le 10277251857021880127726352545428904345600:\\
\;\;\;\;\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(\left(j \cdot c\right) \cdot t + {\left(-1 \cdot \left(i \cdot \left(y \cdot j\right)\right)\right)}^{1}\right)\\
\mathbf{else}:\\
\;\;\;\;\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(\sqrt{j} \cdot \left(\sqrt{j} \cdot \left(c \cdot t\right)\right) + j \cdot \left(-i \cdot y\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 r104417 = x;
double r104418 = y;
double r104419 = z;
double r104420 = r104418 * r104419;
double r104421 = t;
double r104422 = a;
double r104423 = r104421 * r104422;
double r104424 = r104420 - r104423;
double r104425 = r104417 * r104424;
double r104426 = b;
double r104427 = c;
double r104428 = r104427 * r104419;
double r104429 = i;
double r104430 = r104429 * r104422;
double r104431 = r104428 - r104430;
double r104432 = r104426 * r104431;
double r104433 = r104425 - r104432;
double r104434 = j;
double r104435 = r104427 * r104421;
double r104436 = r104429 * r104418;
double r104437 = r104435 - r104436;
double r104438 = r104434 * r104437;
double r104439 = r104433 + r104438;
return r104439;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
double r104440 = j;
double r104441 = -2.173506196892532e+117;
bool r104442 = r104440 <= r104441;
double r104443 = 0.0;
double r104444 = b;
double r104445 = c;
double r104446 = z;
double r104447 = r104445 * r104446;
double r104448 = i;
double r104449 = a;
double r104450 = r104448 * r104449;
double r104451 = r104447 - r104450;
double r104452 = r104444 * r104451;
double r104453 = r104443 - r104452;
double r104454 = t;
double r104455 = r104445 * r104454;
double r104456 = y;
double r104457 = r104448 * r104456;
double r104458 = r104455 - r104457;
double r104459 = r104440 * r104458;
double r104460 = r104453 + r104459;
double r104461 = 1.027725185702188e+40;
bool r104462 = r104440 <= r104461;
double r104463 = x;
double r104464 = r104456 * r104446;
double r104465 = r104454 * r104449;
double r104466 = r104464 - r104465;
double r104467 = r104463 * r104466;
double r104468 = r104467 - r104452;
double r104469 = r104440 * r104445;
double r104470 = r104469 * r104454;
double r104471 = -1.0;
double r104472 = r104456 * r104440;
double r104473 = r104448 * r104472;
double r104474 = r104471 * r104473;
double r104475 = 1.0;
double r104476 = pow(r104474, r104475);
double r104477 = r104470 + r104476;
double r104478 = r104468 + r104477;
double r104479 = sqrt(r104440);
double r104480 = r104479 * r104455;
double r104481 = r104479 * r104480;
double r104482 = -r104457;
double r104483 = r104440 * r104482;
double r104484 = r104481 + r104483;
double r104485 = r104468 + r104484;
double r104486 = r104462 ? r104478 : r104485;
double r104487 = r104442 ? r104460 : r104486;
return r104487;
}



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 j < -2.173506196892532e+117Initial program 6.4
Taylor expanded around 0 14.3
if -2.173506196892532e+117 < j < 1.027725185702188e+40Initial program 14.5
rmApplied sub-neg14.5
Applied distribute-lft-in14.5
rmApplied pow114.5
Applied pow114.5
Applied pow-prod-down14.5
Simplified12.8
rmApplied associate-*r*10.6
if 1.027725185702188e+40 < j Initial program 6.5
rmApplied sub-neg6.5
Applied distribute-lft-in6.5
rmApplied add-sqr-sqrt6.5
Applied associate-*l*6.5
Final simplification10.3
herbie shell --seed 2019297
(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)))))