\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}\;c \le -2.8863398083870065 \cdot 10^{153}:\\
\;\;\;\;\left(-b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(\left(t \cdot j\right) \cdot c + \left(-\left(i \cdot j\right) \cdot y\right)\right)\\
\mathbf{elif}\;c \le 2.68297578013394932 \cdot 10^{-296}:\\
\;\;\;\;\left(x \cdot \left(y \cdot z - t \cdot a\right) - \left(\sqrt[3]{b} \cdot \sqrt[3]{b}\right) \cdot \left(\sqrt[3]{b} \cdot \left(c \cdot z - i \cdot a\right)\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\\
\mathbf{elif}\;c \le 4.3576839570294526 \cdot 10^{-218}:\\
\;\;\;\;\left(\left(x \cdot \left(y \cdot z\right) + \left(-a \cdot \left(x \cdot t\right)\right)\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(t \cdot \left(j \cdot c\right) + \left(-i \cdot \left(j \cdot y\right)\right)\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(\left(\sqrt[3]{\left(t \cdot j\right) \cdot c} \cdot \sqrt[3]{\left(t \cdot j\right) \cdot c}\right) \cdot \sqrt[3]{\left(t \cdot j\right) \cdot c} + \left(-\left(i \cdot j\right) \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 r80091 = x;
double r80092 = y;
double r80093 = z;
double r80094 = r80092 * r80093;
double r80095 = t;
double r80096 = a;
double r80097 = r80095 * r80096;
double r80098 = r80094 - r80097;
double r80099 = r80091 * r80098;
double r80100 = b;
double r80101 = c;
double r80102 = r80101 * r80093;
double r80103 = i;
double r80104 = r80103 * r80096;
double r80105 = r80102 - r80104;
double r80106 = r80100 * r80105;
double r80107 = r80099 - r80106;
double r80108 = j;
double r80109 = r80101 * r80095;
double r80110 = r80103 * r80092;
double r80111 = r80109 - r80110;
double r80112 = r80108 * r80111;
double r80113 = r80107 + r80112;
return r80113;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
double r80114 = c;
double r80115 = -2.8863398083870065e+153;
bool r80116 = r80114 <= r80115;
double r80117 = b;
double r80118 = z;
double r80119 = r80114 * r80118;
double r80120 = i;
double r80121 = a;
double r80122 = r80120 * r80121;
double r80123 = r80119 - r80122;
double r80124 = r80117 * r80123;
double r80125 = -r80124;
double r80126 = t;
double r80127 = j;
double r80128 = r80126 * r80127;
double r80129 = r80128 * r80114;
double r80130 = r80120 * r80127;
double r80131 = y;
double r80132 = r80130 * r80131;
double r80133 = -r80132;
double r80134 = r80129 + r80133;
double r80135 = r80125 + r80134;
double r80136 = 2.6829757801339493e-296;
bool r80137 = r80114 <= r80136;
double r80138 = x;
double r80139 = r80131 * r80118;
double r80140 = r80126 * r80121;
double r80141 = r80139 - r80140;
double r80142 = r80138 * r80141;
double r80143 = cbrt(r80117);
double r80144 = r80143 * r80143;
double r80145 = r80143 * r80123;
double r80146 = r80144 * r80145;
double r80147 = r80142 - r80146;
double r80148 = r80114 * r80126;
double r80149 = r80120 * r80131;
double r80150 = r80148 - r80149;
double r80151 = r80127 * r80150;
double r80152 = r80147 + r80151;
double r80153 = 4.3576839570294526e-218;
bool r80154 = r80114 <= r80153;
double r80155 = r80138 * r80139;
double r80156 = r80138 * r80126;
double r80157 = r80121 * r80156;
double r80158 = -r80157;
double r80159 = r80155 + r80158;
double r80160 = r80159 - r80124;
double r80161 = r80127 * r80114;
double r80162 = r80126 * r80161;
double r80163 = r80127 * r80131;
double r80164 = r80120 * r80163;
double r80165 = -r80164;
double r80166 = r80162 + r80165;
double r80167 = r80160 + r80166;
double r80168 = r80142 - r80124;
double r80169 = cbrt(r80129);
double r80170 = r80169 * r80169;
double r80171 = r80170 * r80169;
double r80172 = r80171 + r80133;
double r80173 = r80168 + r80172;
double r80174 = r80154 ? r80167 : r80173;
double r80175 = r80137 ? r80152 : r80174;
double r80176 = r80116 ? r80135 : r80175;
return r80176;
}



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 c < -2.8863398083870065e+153Initial program 24.5
rmApplied sub-neg24.5
Applied distribute-lft-in24.5
Simplified26.2
Simplified24.6
rmApplied associate-*r*18.0
rmApplied associate-*r*17.1
Taylor expanded around 0 23.5
if -2.8863398083870065e+153 < c < 2.6829757801339493e-296Initial program 9.6
rmApplied add-cube-cbrt9.9
Applied associate-*l*9.9
if 2.6829757801339493e-296 < c < 4.3576839570294526e-218Initial program 8.4
rmApplied sub-neg8.4
Applied distribute-lft-in8.4
Simplified8.3
Simplified8.8
rmApplied sub-neg8.8
Applied distribute-lft-in8.8
Simplified10.7
if 4.3576839570294526e-218 < c Initial program 12.5
rmApplied sub-neg12.5
Applied distribute-lft-in12.5
Simplified13.2
Simplified12.9
rmApplied associate-*r*11.8
rmApplied associate-*r*11.9
rmApplied add-cube-cbrt12.1
Final simplification12.0
herbie shell --seed 2019199
(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)))))