\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)
\begin{array}{l}
\mathbf{if}\;y5 \le -1.6084907598970989 \cdot 10^{43}:\\
\;\;\;\;\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(k \cdot \left(i \cdot \left(z \cdot y1\right)\right) - \left(i \cdot \left(j \cdot \left(y1 \cdot x\right)\right) + y0 \cdot \left(z \cdot \left(k \cdot b\right)\right)\right)\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\\
\mathbf{elif}\;y5 \le -5.85578856103732813 \cdot 10^{-278}:\\
\;\;\;\;\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(k \cdot \left(i \cdot \left(y \cdot y5\right)\right) - \left(t \cdot \left(i \cdot \left(j \cdot y5\right)\right) + k \cdot \left(y4 \cdot \left(y \cdot b\right)\right)\right)\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\\
\mathbf{elif}\;y5 \le 2.1175995628501873 \cdot 10^{-109}:\\
\;\;\;\;\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(\sqrt[3]{\left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)} \cdot \sqrt[3]{\left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)}\right) \cdot \sqrt[3]{\left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)}\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\\
\mathbf{elif}\;y5 \le 1.79915058883167506 \cdot 10^{25}:\\
\;\;\;\;\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(k \cdot \left(i \cdot \left(y \cdot y5\right)\right) - \left(t \cdot \left(i \cdot \left(j \cdot y5\right)\right) + k \cdot \left(y4 \cdot \left(y \cdot b\right)\right)\right)\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\\
\mathbf{elif}\;y5 \le 5.3579850394983738 \cdot 10^{107}:\\
\;\;\;\;\left(\left(\left(\left(\left(t \cdot \left(i \cdot \left(z \cdot c\right)\right) - \left(i \cdot \left(c \cdot \left(y \cdot x\right)\right) + a \cdot \left(t \cdot \left(z \cdot b\right)\right)\right)\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(\sqrt[3]{x \cdot y2 - z \cdot y3} \cdot \sqrt[3]{x \cdot y2 - z \cdot y3}\right) \cdot \left(\sqrt[3]{x \cdot y2 - z \cdot y3} \cdot \left(y0 \cdot c - y1 \cdot a\right)\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(k \cdot \left(i \cdot \left(y \cdot y5\right)\right) - \left(t \cdot \left(i \cdot \left(j \cdot y5\right)\right) + k \cdot \left(y4 \cdot \left(y \cdot b\right)\right)\right)\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k, double y0, double y1, double y2, double y3, double y4, double y5) {
double r159356 = x;
double r159357 = y;
double r159358 = r159356 * r159357;
double r159359 = z;
double r159360 = t;
double r159361 = r159359 * r159360;
double r159362 = r159358 - r159361;
double r159363 = a;
double r159364 = b;
double r159365 = r159363 * r159364;
double r159366 = c;
double r159367 = i;
double r159368 = r159366 * r159367;
double r159369 = r159365 - r159368;
double r159370 = r159362 * r159369;
double r159371 = j;
double r159372 = r159356 * r159371;
double r159373 = k;
double r159374 = r159359 * r159373;
double r159375 = r159372 - r159374;
double r159376 = y0;
double r159377 = r159376 * r159364;
double r159378 = y1;
double r159379 = r159378 * r159367;
double r159380 = r159377 - r159379;
double r159381 = r159375 * r159380;
double r159382 = r159370 - r159381;
double r159383 = y2;
double r159384 = r159356 * r159383;
double r159385 = y3;
double r159386 = r159359 * r159385;
double r159387 = r159384 - r159386;
double r159388 = r159376 * r159366;
double r159389 = r159378 * r159363;
double r159390 = r159388 - r159389;
double r159391 = r159387 * r159390;
double r159392 = r159382 + r159391;
double r159393 = r159360 * r159371;
double r159394 = r159357 * r159373;
double r159395 = r159393 - r159394;
double r159396 = y4;
double r159397 = r159396 * r159364;
double r159398 = y5;
double r159399 = r159398 * r159367;
double r159400 = r159397 - r159399;
double r159401 = r159395 * r159400;
double r159402 = r159392 + r159401;
double r159403 = r159360 * r159383;
double r159404 = r159357 * r159385;
double r159405 = r159403 - r159404;
double r159406 = r159396 * r159366;
double r159407 = r159398 * r159363;
double r159408 = r159406 - r159407;
double r159409 = r159405 * r159408;
double r159410 = r159402 - r159409;
double r159411 = r159373 * r159383;
double r159412 = r159371 * r159385;
double r159413 = r159411 - r159412;
double r159414 = r159396 * r159378;
double r159415 = r159398 * r159376;
double r159416 = r159414 - r159415;
double r159417 = r159413 * r159416;
double r159418 = r159410 + r159417;
return r159418;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k, double y0, double y1, double y2, double y3, double y4, double y5) {
double r159419 = y5;
double r159420 = -1.608490759897099e+43;
bool r159421 = r159419 <= r159420;
double r159422 = x;
double r159423 = y;
double r159424 = r159422 * r159423;
double r159425 = z;
double r159426 = t;
double r159427 = r159425 * r159426;
double r159428 = r159424 - r159427;
double r159429 = a;
double r159430 = b;
double r159431 = r159429 * r159430;
double r159432 = c;
double r159433 = i;
double r159434 = r159432 * r159433;
double r159435 = r159431 - r159434;
double r159436 = r159428 * r159435;
double r159437 = k;
double r159438 = y1;
double r159439 = r159425 * r159438;
double r159440 = r159433 * r159439;
double r159441 = r159437 * r159440;
double r159442 = j;
double r159443 = r159438 * r159422;
double r159444 = r159442 * r159443;
double r159445 = r159433 * r159444;
double r159446 = y0;
double r159447 = r159437 * r159430;
double r159448 = r159425 * r159447;
double r159449 = r159446 * r159448;
double r159450 = r159445 + r159449;
double r159451 = r159441 - r159450;
double r159452 = r159436 - r159451;
double r159453 = y2;
double r159454 = r159422 * r159453;
double r159455 = y3;
double r159456 = r159425 * r159455;
double r159457 = r159454 - r159456;
double r159458 = r159446 * r159432;
double r159459 = r159438 * r159429;
double r159460 = r159458 - r159459;
double r159461 = r159457 * r159460;
double r159462 = r159452 + r159461;
double r159463 = r159426 * r159442;
double r159464 = r159423 * r159437;
double r159465 = r159463 - r159464;
double r159466 = y4;
double r159467 = r159466 * r159430;
double r159468 = r159419 * r159433;
double r159469 = r159467 - r159468;
double r159470 = r159465 * r159469;
double r159471 = r159462 + r159470;
double r159472 = r159426 * r159453;
double r159473 = r159423 * r159455;
double r159474 = r159472 - r159473;
double r159475 = r159466 * r159432;
double r159476 = r159419 * r159429;
double r159477 = r159475 - r159476;
double r159478 = r159474 * r159477;
double r159479 = r159471 - r159478;
double r159480 = r159437 * r159453;
double r159481 = r159442 * r159455;
double r159482 = r159480 - r159481;
double r159483 = r159466 * r159438;
double r159484 = r159419 * r159446;
double r159485 = r159483 - r159484;
double r159486 = r159482 * r159485;
double r159487 = r159479 + r159486;
double r159488 = -5.855788561037328e-278;
bool r159489 = r159419 <= r159488;
double r159490 = r159422 * r159442;
double r159491 = r159425 * r159437;
double r159492 = r159490 - r159491;
double r159493 = r159446 * r159430;
double r159494 = r159438 * r159433;
double r159495 = r159493 - r159494;
double r159496 = r159492 * r159495;
double r159497 = r159436 - r159496;
double r159498 = r159497 + r159461;
double r159499 = r159423 * r159419;
double r159500 = r159433 * r159499;
double r159501 = r159437 * r159500;
double r159502 = r159442 * r159419;
double r159503 = r159433 * r159502;
double r159504 = r159426 * r159503;
double r159505 = r159423 * r159430;
double r159506 = r159466 * r159505;
double r159507 = r159437 * r159506;
double r159508 = r159504 + r159507;
double r159509 = r159501 - r159508;
double r159510 = r159498 + r159509;
double r159511 = r159510 - r159478;
double r159512 = r159511 + r159486;
double r159513 = 2.1175995628501873e-109;
bool r159514 = r159419 <= r159513;
double r159515 = r159498 + r159470;
double r159516 = cbrt(r159478);
double r159517 = r159516 * r159516;
double r159518 = r159517 * r159516;
double r159519 = r159515 - r159518;
double r159520 = r159519 + r159486;
double r159521 = 1.799150588831675e+25;
bool r159522 = r159419 <= r159521;
double r159523 = 5.357985039498374e+107;
bool r159524 = r159419 <= r159523;
double r159525 = r159425 * r159432;
double r159526 = r159433 * r159525;
double r159527 = r159426 * r159526;
double r159528 = r159423 * r159422;
double r159529 = r159432 * r159528;
double r159530 = r159433 * r159529;
double r159531 = r159425 * r159430;
double r159532 = r159426 * r159531;
double r159533 = r159429 * r159532;
double r159534 = r159530 + r159533;
double r159535 = r159527 - r159534;
double r159536 = r159535 - r159496;
double r159537 = cbrt(r159457);
double r159538 = r159537 * r159537;
double r159539 = r159537 * r159460;
double r159540 = r159538 * r159539;
double r159541 = r159536 + r159540;
double r159542 = r159541 + r159470;
double r159543 = r159542 - r159478;
double r159544 = r159543 + r159486;
double r159545 = r159524 ? r159544 : r159512;
double r159546 = r159522 ? r159512 : r159545;
double r159547 = r159514 ? r159520 : r159546;
double r159548 = r159489 ? r159512 : r159547;
double r159549 = r159421 ? r159487 : r159548;
return r159549;
}



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



Bits error versus k



Bits error versus y0



Bits error versus y1



Bits error versus y2



Bits error versus y3



Bits error versus y4



Bits error versus y5
Results
if y5 < -1.608490759897099e+43Initial program 29.3
Taylor expanded around inf 31.8
if -1.608490759897099e+43 < y5 < -5.855788561037328e-278 or 2.1175995628501873e-109 < y5 < 1.799150588831675e+25 or 5.357985039498374e+107 < y5 Initial program 26.7
Taylor expanded around inf 28.9
if -5.855788561037328e-278 < y5 < 2.1175995628501873e-109Initial program 26.6
rmApplied add-cube-cbrt26.7
if 1.799150588831675e+25 < y5 < 5.357985039498374e+107Initial program 24.6
rmApplied add-cube-cbrt24.7
Applied associate-*l*24.7
Taylor expanded around inf 26.2
Final simplification28.6
herbie shell --seed 2020059
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:name "Linear.Matrix:det44 from linear-1.19.1.3"
:precision binary64
(+ (- (+ (+ (- (* (- (* x y) (* z t)) (- (* a b) (* c i))) (* (- (* x j) (* z k)) (- (* y0 b) (* y1 i)))) (* (- (* x y2) (* z y3)) (- (* y0 c) (* y1 a)))) (* (- (* t j) (* y k)) (- (* y4 b) (* y5 i)))) (* (- (* t y2) (* y y3)) (- (* y4 c) (* y5 a)))) (* (- (* k y2) (* j y3)) (- (* y4 y1) (* y5 y0)))))