\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 -1.581084728359023 \cdot 10^{-272}:\\
\;\;\;\;\left(\left(y \cdot z - a \cdot t\right) \cdot x - b \cdot \left(z \cdot c - i \cdot a\right)\right) + \left(\sqrt[3]{j \cdot \left(c \cdot t - i \cdot y\right)} \cdot \sqrt[3]{j \cdot \left(c \cdot t - i \cdot y\right)}\right) \cdot \sqrt[3]{\left(\left(\sqrt[3]{c \cdot t - i \cdot y} \cdot \sqrt[3]{c \cdot t - i \cdot y}\right) \cdot j\right) \cdot \sqrt[3]{c \cdot t - i \cdot y}}\\
\mathbf{elif}\;x \le 8.416028997892155 \cdot 10^{-179}:\\
\;\;\;\;\left(-b\right) \cdot \left(z \cdot c - i \cdot a\right) + \sqrt[3]{j \cdot \left(c \cdot t - i \cdot y\right)} \cdot \left(\sqrt[3]{j \cdot \left(c \cdot t - i \cdot y\right)} \cdot \sqrt[3]{j \cdot \left(c \cdot t - i \cdot y\right)}\right)\\
\mathbf{else}:\\
\;\;\;\;j \cdot \left(c \cdot t - i \cdot y\right) + \left(\left(y \cdot z - a \cdot t\right) \cdot x - \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 \left(\left(\sqrt[3]{\sqrt[3]{z \cdot c - i \cdot a} \cdot \sqrt[3]{z \cdot c - i \cdot a}} \cdot \sqrt[3]{\sqrt[3]{z \cdot c - i \cdot a}}\right) \cdot \sqrt[3]{b}\right)\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 r15050975 = x;
double r15050976 = y;
double r15050977 = z;
double r15050978 = r15050976 * r15050977;
double r15050979 = t;
double r15050980 = a;
double r15050981 = r15050979 * r15050980;
double r15050982 = r15050978 - r15050981;
double r15050983 = r15050975 * r15050982;
double r15050984 = b;
double r15050985 = c;
double r15050986 = r15050985 * r15050977;
double r15050987 = i;
double r15050988 = r15050987 * r15050980;
double r15050989 = r15050986 - r15050988;
double r15050990 = r15050984 * r15050989;
double r15050991 = r15050983 - r15050990;
double r15050992 = j;
double r15050993 = r15050985 * r15050979;
double r15050994 = r15050987 * r15050976;
double r15050995 = r15050993 - r15050994;
double r15050996 = r15050992 * r15050995;
double r15050997 = r15050991 + r15050996;
return r15050997;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
double r15050998 = x;
double r15050999 = -1.581084728359023e-272;
bool r15051000 = r15050998 <= r15050999;
double r15051001 = y;
double r15051002 = z;
double r15051003 = r15051001 * r15051002;
double r15051004 = a;
double r15051005 = t;
double r15051006 = r15051004 * r15051005;
double r15051007 = r15051003 - r15051006;
double r15051008 = r15051007 * r15050998;
double r15051009 = b;
double r15051010 = c;
double r15051011 = r15051002 * r15051010;
double r15051012 = i;
double r15051013 = r15051012 * r15051004;
double r15051014 = r15051011 - r15051013;
double r15051015 = r15051009 * r15051014;
double r15051016 = r15051008 - r15051015;
double r15051017 = j;
double r15051018 = r15051010 * r15051005;
double r15051019 = r15051012 * r15051001;
double r15051020 = r15051018 - r15051019;
double r15051021 = r15051017 * r15051020;
double r15051022 = cbrt(r15051021);
double r15051023 = r15051022 * r15051022;
double r15051024 = cbrt(r15051020);
double r15051025 = r15051024 * r15051024;
double r15051026 = r15051025 * r15051017;
double r15051027 = r15051026 * r15051024;
double r15051028 = cbrt(r15051027);
double r15051029 = r15051023 * r15051028;
double r15051030 = r15051016 + r15051029;
double r15051031 = 8.416028997892155e-179;
bool r15051032 = r15050998 <= r15051031;
double r15051033 = -r15051009;
double r15051034 = r15051033 * r15051014;
double r15051035 = r15051022 * r15051023;
double r15051036 = r15051034 + r15051035;
double r15051037 = cbrt(r15051015);
double r15051038 = cbrt(r15051014);
double r15051039 = r15051038 * r15051038;
double r15051040 = cbrt(r15051039);
double r15051041 = cbrt(r15051038);
double r15051042 = r15051040 * r15051041;
double r15051043 = cbrt(r15051009);
double r15051044 = r15051042 * r15051043;
double r15051045 = r15051037 * r15051044;
double r15051046 = r15051037 * r15051045;
double r15051047 = r15051008 - r15051046;
double r15051048 = r15051021 + r15051047;
double r15051049 = r15051032 ? r15051036 : r15051048;
double r15051050 = r15051000 ? r15051030 : r15051049;
return r15051050;
}



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 < -1.581084728359023e-272Initial program 10.9
rmApplied add-cube-cbrt11.2
rmApplied add-cube-cbrt11.1
Applied associate-*r*11.1
if -1.581084728359023e-272 < x < 8.416028997892155e-179Initial program 17.8
rmApplied add-cube-cbrt18.1
Taylor expanded around 0 17.0
if 8.416028997892155e-179 < x Initial program 10.1
rmApplied add-cube-cbrt10.4
rmApplied cbrt-prod10.3
rmApplied add-cube-cbrt10.3
Applied cbrt-prod10.4
Final simplification11.9
herbie shell --seed 2019104
(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)))))