\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 -6.28675062008647420685048405194703959789 \cdot 10^{-106}:\\
\;\;\;\;\left(c \cdot t - y \cdot i\right) \cdot j + \left(\left(\sqrt[3]{y \cdot z - a \cdot t} \cdot \left(\sqrt[3]{y \cdot z - a \cdot t} \cdot \sqrt[3]{y \cdot z - a \cdot t}\right)\right) \cdot x - b \cdot \left(z \cdot c - i \cdot a\right)\right)\\
\mathbf{elif}\;x \le 1.718764671788456768674222323018543641954 \cdot 10^{-95}:\\
\;\;\;\;\left(c \cdot t - y \cdot i\right) \cdot j + \left(\left(\left(y \cdot x\right) \cdot z + \left(x \cdot t\right) \cdot \left(-a\right)\right) - \left(\sqrt[3]{b} \cdot \left(z \cdot c - i \cdot a\right)\right) \cdot \left(\sqrt[3]{b} \cdot \sqrt[3]{b}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(c \cdot t - y \cdot i\right) \cdot j + \left(\left(\left(-x \cdot \left(a \cdot t\right)\right) + \sqrt{x} \cdot \left(\left(y \cdot z\right) \cdot \sqrt{x}\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 r4331836 = x;
double r4331837 = y;
double r4331838 = z;
double r4331839 = r4331837 * r4331838;
double r4331840 = t;
double r4331841 = a;
double r4331842 = r4331840 * r4331841;
double r4331843 = r4331839 - r4331842;
double r4331844 = r4331836 * r4331843;
double r4331845 = b;
double r4331846 = c;
double r4331847 = r4331846 * r4331838;
double r4331848 = i;
double r4331849 = r4331848 * r4331841;
double r4331850 = r4331847 - r4331849;
double r4331851 = r4331845 * r4331850;
double r4331852 = r4331844 - r4331851;
double r4331853 = j;
double r4331854 = r4331846 * r4331840;
double r4331855 = r4331848 * r4331837;
double r4331856 = r4331854 - r4331855;
double r4331857 = r4331853 * r4331856;
double r4331858 = r4331852 + r4331857;
return r4331858;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
double r4331859 = x;
double r4331860 = -6.286750620086474e-106;
bool r4331861 = r4331859 <= r4331860;
double r4331862 = c;
double r4331863 = t;
double r4331864 = r4331862 * r4331863;
double r4331865 = y;
double r4331866 = i;
double r4331867 = r4331865 * r4331866;
double r4331868 = r4331864 - r4331867;
double r4331869 = j;
double r4331870 = r4331868 * r4331869;
double r4331871 = z;
double r4331872 = r4331865 * r4331871;
double r4331873 = a;
double r4331874 = r4331873 * r4331863;
double r4331875 = r4331872 - r4331874;
double r4331876 = cbrt(r4331875);
double r4331877 = r4331876 * r4331876;
double r4331878 = r4331876 * r4331877;
double r4331879 = r4331878 * r4331859;
double r4331880 = b;
double r4331881 = r4331871 * r4331862;
double r4331882 = r4331866 * r4331873;
double r4331883 = r4331881 - r4331882;
double r4331884 = r4331880 * r4331883;
double r4331885 = r4331879 - r4331884;
double r4331886 = r4331870 + r4331885;
double r4331887 = 1.7187646717884568e-95;
bool r4331888 = r4331859 <= r4331887;
double r4331889 = r4331865 * r4331859;
double r4331890 = r4331889 * r4331871;
double r4331891 = r4331859 * r4331863;
double r4331892 = -r4331873;
double r4331893 = r4331891 * r4331892;
double r4331894 = r4331890 + r4331893;
double r4331895 = cbrt(r4331880);
double r4331896 = r4331895 * r4331883;
double r4331897 = r4331895 * r4331895;
double r4331898 = r4331896 * r4331897;
double r4331899 = r4331894 - r4331898;
double r4331900 = r4331870 + r4331899;
double r4331901 = r4331859 * r4331874;
double r4331902 = -r4331901;
double r4331903 = sqrt(r4331859);
double r4331904 = r4331872 * r4331903;
double r4331905 = r4331903 * r4331904;
double r4331906 = r4331902 + r4331905;
double r4331907 = r4331906 - r4331884;
double r4331908 = r4331870 + r4331907;
double r4331909 = r4331888 ? r4331900 : r4331908;
double r4331910 = r4331861 ? r4331886 : r4331909;
return r4331910;
}



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 < -6.286750620086474e-106Initial program 8.6
rmApplied add-cube-cbrt9.0
if -6.286750620086474e-106 < x < 1.7187646717884568e-95Initial program 17.0
rmApplied sub-neg17.0
Applied distribute-lft-in17.0
rmApplied associate-*r*13.9
rmApplied distribute-lft-neg-in13.9
Applied associate-*r*10.9
rmApplied add-cube-cbrt11.2
Applied associate-*l*11.2
if 1.7187646717884568e-95 < x Initial program 8.0
rmApplied sub-neg8.0
Applied distribute-lft-in8.0
rmApplied add-sqr-sqrt8.1
Applied associate-*l*8.1
Final simplification9.7
herbie shell --seed 2019172
(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)))))