\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}\;b \le -9.427248904452578 \cdot 10^{-129}:\\
\;\;\;\;j \cdot \left(t \cdot c - y \cdot i\right) + \left(\left(x \cdot \left(y \cdot z\right) + \left(-x\right) \cdot \left(a \cdot t\right)\right) - \left(\sqrt[3]{b} \cdot \sqrt[3]{b}\right) \cdot \left(\left(c \cdot z - a \cdot i\right) \cdot \sqrt[3]{b}\right)\right)\\
\mathbf{elif}\;b \le 1.4812126748566952 \cdot 10^{-249}:\\
\;\;\;\;j \cdot \left(t \cdot c - y \cdot i\right) + \left(x \cdot \left(y \cdot z\right) + \left(-x\right) \cdot \left(a \cdot t\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\left(\left(x \cdot z\right) \cdot y + \left(-x\right) \cdot \left(a \cdot t\right)\right) - b \cdot \left(c \cdot z - a \cdot i\right)\right) + j \cdot \left(t \cdot c - y \cdot i\right)\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
double r3301731 = x;
double r3301732 = y;
double r3301733 = z;
double r3301734 = r3301732 * r3301733;
double r3301735 = t;
double r3301736 = a;
double r3301737 = r3301735 * r3301736;
double r3301738 = r3301734 - r3301737;
double r3301739 = r3301731 * r3301738;
double r3301740 = b;
double r3301741 = c;
double r3301742 = r3301741 * r3301733;
double r3301743 = i;
double r3301744 = r3301743 * r3301736;
double r3301745 = r3301742 - r3301744;
double r3301746 = r3301740 * r3301745;
double r3301747 = r3301739 - r3301746;
double r3301748 = j;
double r3301749 = r3301741 * r3301735;
double r3301750 = r3301743 * r3301732;
double r3301751 = r3301749 - r3301750;
double r3301752 = r3301748 * r3301751;
double r3301753 = r3301747 + r3301752;
return r3301753;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
double r3301754 = b;
double r3301755 = -9.427248904452578e-129;
bool r3301756 = r3301754 <= r3301755;
double r3301757 = j;
double r3301758 = t;
double r3301759 = c;
double r3301760 = r3301758 * r3301759;
double r3301761 = y;
double r3301762 = i;
double r3301763 = r3301761 * r3301762;
double r3301764 = r3301760 - r3301763;
double r3301765 = r3301757 * r3301764;
double r3301766 = x;
double r3301767 = z;
double r3301768 = r3301761 * r3301767;
double r3301769 = r3301766 * r3301768;
double r3301770 = -r3301766;
double r3301771 = a;
double r3301772 = r3301771 * r3301758;
double r3301773 = r3301770 * r3301772;
double r3301774 = r3301769 + r3301773;
double r3301775 = cbrt(r3301754);
double r3301776 = r3301775 * r3301775;
double r3301777 = r3301759 * r3301767;
double r3301778 = r3301771 * r3301762;
double r3301779 = r3301777 - r3301778;
double r3301780 = r3301779 * r3301775;
double r3301781 = r3301776 * r3301780;
double r3301782 = r3301774 - r3301781;
double r3301783 = r3301765 + r3301782;
double r3301784 = 1.4812126748566952e-249;
bool r3301785 = r3301754 <= r3301784;
double r3301786 = r3301765 + r3301774;
double r3301787 = r3301766 * r3301767;
double r3301788 = r3301787 * r3301761;
double r3301789 = r3301788 + r3301773;
double r3301790 = r3301754 * r3301779;
double r3301791 = r3301789 - r3301790;
double r3301792 = r3301791 + r3301765;
double r3301793 = r3301785 ? r3301786 : r3301792;
double r3301794 = r3301756 ? r3301783 : r3301793;
return r3301794;
}



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 b < -9.427248904452578e-129Initial program 8.1
rmApplied sub-neg8.1
Applied distribute-lft-in8.1
rmApplied add-cube-cbrt8.5
Applied associate-*l*8.5
if -9.427248904452578e-129 < b < 1.4812126748566952e-249Initial program 16.0
rmApplied sub-neg16.0
Applied distribute-lft-in16.0
Taylor expanded around 0 17.9
if 1.4812126748566952e-249 < b Initial program 10.4
rmApplied sub-neg10.4
Applied distribute-lft-in10.4
rmApplied add-cube-cbrt10.6
Applied associate-*l*10.6
rmApplied pow110.6
Applied pow110.6
Applied pow-prod-down10.6
Applied pow110.6
Applied pow-prod-down10.6
Applied pow110.6
Applied pow110.6
Applied pow-prod-down10.6
Applied pow-prod-down10.6
Simplified10.7
Final simplification11.8
herbie shell --seed 2019152
(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)))))