\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}\;a \le -1.672795493860766634501209364427778643557 \cdot 10^{-35}:\\
\;\;\;\;\left(x \cdot \left(y \cdot z - a \cdot t\right) + \sqrt[3]{\left(t \cdot c - y \cdot i\right) \cdot j} \cdot \left(\sqrt[3]{\left(t \cdot c - y \cdot i\right) \cdot j} \cdot \sqrt[3]{\left(t \cdot c - y \cdot i\right) \cdot j}\right)\right) + \left(\left(i \cdot b\right) \cdot a - \left(b \cdot z\right) \cdot c\right)\\
\mathbf{elif}\;a \le 1.363075426981875327339653073768105985957 \cdot 10^{-173}:\\
\;\;\;\;\left(i \cdot a - c \cdot z\right) \cdot b + \left(x \cdot \left(y \cdot z - a \cdot t\right) + \left(\left(i \cdot j\right) \cdot \left(-y\right) + t \cdot \left(j \cdot c\right)\right)\right)\\
\mathbf{elif}\;a \le 2.77838378540003226799654426646560472166 \cdot 10^{-74}:\\
\;\;\;\;\left(\left(t \cdot c - y \cdot i\right) \cdot j + x \cdot \left(y \cdot z - a \cdot t\right)\right) + \left(\left(i \cdot b\right) \cdot a - \left(c \cdot b\right) \cdot z\right)\\
\mathbf{elif}\;a \le 30772525990492999025426432:\\
\;\;\;\;\left(i \cdot a - c \cdot z\right) \cdot b + \left(x \cdot \left(y \cdot z - a \cdot t\right) + \left(\left(i \cdot j\right) \cdot \left(-y\right) + t \cdot \left(j \cdot c\right)\right)\right)\\
\mathbf{elif}\;a \le 1.992368486632287830436354769032418169245 \cdot 10^{58}:\\
\;\;\;\;\left(\left(\left(y \cdot z - a \cdot t\right) \cdot \left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)\right) \cdot \sqrt[3]{x} + \left(t \cdot c - y \cdot i\right) \cdot j\right) + \left(\left(i \cdot b\right) \cdot a - \left(b \cdot z\right) \cdot c\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\left(t \cdot c - y \cdot i\right) \cdot j + x \cdot \left(y \cdot z - a \cdot t\right)\right) + \left(\left(i \cdot b\right) \cdot a - \left(c \cdot b\right) \cdot z\right)\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
double r99268 = x;
double r99269 = y;
double r99270 = z;
double r99271 = r99269 * r99270;
double r99272 = t;
double r99273 = a;
double r99274 = r99272 * r99273;
double r99275 = r99271 - r99274;
double r99276 = r99268 * r99275;
double r99277 = b;
double r99278 = c;
double r99279 = r99278 * r99270;
double r99280 = i;
double r99281 = r99280 * r99273;
double r99282 = r99279 - r99281;
double r99283 = r99277 * r99282;
double r99284 = r99276 - r99283;
double r99285 = j;
double r99286 = r99278 * r99272;
double r99287 = r99280 * r99269;
double r99288 = r99286 - r99287;
double r99289 = r99285 * r99288;
double r99290 = r99284 + r99289;
return r99290;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
double r99291 = a;
double r99292 = -1.6727954938607666e-35;
bool r99293 = r99291 <= r99292;
double r99294 = x;
double r99295 = y;
double r99296 = z;
double r99297 = r99295 * r99296;
double r99298 = t;
double r99299 = r99291 * r99298;
double r99300 = r99297 - r99299;
double r99301 = r99294 * r99300;
double r99302 = c;
double r99303 = r99298 * r99302;
double r99304 = i;
double r99305 = r99295 * r99304;
double r99306 = r99303 - r99305;
double r99307 = j;
double r99308 = r99306 * r99307;
double r99309 = cbrt(r99308);
double r99310 = r99309 * r99309;
double r99311 = r99309 * r99310;
double r99312 = r99301 + r99311;
double r99313 = b;
double r99314 = r99304 * r99313;
double r99315 = r99314 * r99291;
double r99316 = r99313 * r99296;
double r99317 = r99316 * r99302;
double r99318 = r99315 - r99317;
double r99319 = r99312 + r99318;
double r99320 = 1.3630754269818753e-173;
bool r99321 = r99291 <= r99320;
double r99322 = r99304 * r99291;
double r99323 = r99302 * r99296;
double r99324 = r99322 - r99323;
double r99325 = r99324 * r99313;
double r99326 = r99304 * r99307;
double r99327 = -r99295;
double r99328 = r99326 * r99327;
double r99329 = r99307 * r99302;
double r99330 = r99298 * r99329;
double r99331 = r99328 + r99330;
double r99332 = r99301 + r99331;
double r99333 = r99325 + r99332;
double r99334 = 2.7783837854000323e-74;
bool r99335 = r99291 <= r99334;
double r99336 = r99308 + r99301;
double r99337 = r99302 * r99313;
double r99338 = r99337 * r99296;
double r99339 = r99315 - r99338;
double r99340 = r99336 + r99339;
double r99341 = 3.0772525990493e+25;
bool r99342 = r99291 <= r99341;
double r99343 = 1.9923684866322878e+58;
bool r99344 = r99291 <= r99343;
double r99345 = cbrt(r99294);
double r99346 = r99345 * r99345;
double r99347 = r99300 * r99346;
double r99348 = r99347 * r99345;
double r99349 = r99348 + r99308;
double r99350 = r99349 + r99318;
double r99351 = r99344 ? r99350 : r99340;
double r99352 = r99342 ? r99333 : r99351;
double r99353 = r99335 ? r99340 : r99352;
double r99354 = r99321 ? r99333 : r99353;
double r99355 = r99293 ? r99319 : r99354;
return r99355;
}



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 a < -1.6727954938607666e-35Initial program 16.1
Simplified16.1
Taylor expanded around inf 12.9
Simplified11.9
rmApplied add-cube-cbrt12.1
Simplified12.1
Simplified12.1
if -1.6727954938607666e-35 < a < 1.3630754269818753e-173 or 2.7783837854000323e-74 < a < 3.0772525990493e+25Initial program 9.2
Simplified9.2
rmApplied sub-neg9.2
Applied distribute-lft-in9.2
Simplified8.9
Simplified9.4
if 1.3630754269818753e-173 < a < 2.7783837854000323e-74 or 1.9923684866322878e+58 < a Initial program 15.8
Simplified15.8
Taylor expanded around inf 14.2
Simplified13.8
Taylor expanded around inf 14.2
Simplified14.2
if 3.0772525990493e+25 < a < 1.9923684866322878e+58Initial program 11.6
Simplified11.6
Taylor expanded around inf 10.7
Simplified9.1
rmApplied add-cube-cbrt9.4
Applied associate-*r*9.4
Simplified9.4
Final simplification11.1
herbie shell --seed 2019195
(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)))))