\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}\;a \leq -1.0998407691602487 \cdot 10^{+22}:\\
\;\;\;\;\left(a \cdot \left(b \cdot \left(x \cdot y - z \cdot t\right)\right) + c \cdot \left(i \cdot \left(z \cdot t - x \cdot y\right)\right)\right) + \left(\left(x \cdot j - z \cdot k\right) \cdot \left(i \cdot y1 - b \cdot y0\right) + \left(\left(x \cdot y2 - z \cdot y3\right) \cdot \left(c \cdot y0 - a \cdot y1\right) + \left(\left(k \cdot \left(y \cdot \left(i \cdot y5\right)\right) - \left(t \cdot \left(j \cdot \left(i \cdot y5\right)\right) + y \cdot \left(k \cdot \left(b \cdot y4\right)\right)\right)\right) + \left(\left(k \cdot y2 - j \cdot y3\right) \cdot \left(y1 \cdot y4 - y0 \cdot y5\right) + \left(t \cdot y2 - y \cdot y3\right) \cdot \left(a \cdot y5 - c \cdot y4\right)\right)\right)\right)\right)\\
\mathbf{elif}\;a \leq -9.020989232513019 \cdot 10^{-13}:\\
\;\;\;\;\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) + \left(\left(x \cdot j - z \cdot k\right) \cdot \left(i \cdot y1 - b \cdot y0\right) + \left(\left(x \cdot y2 - z \cdot y3\right) \cdot \left(c \cdot y0 - a \cdot y1\right) + \left(\left(t \cdot j - y \cdot k\right) \cdot \left(b \cdot y4 - i \cdot y5\right) + \left(\left(t \cdot y2 - y \cdot y3\right) \cdot \left(a \cdot y5 - c \cdot y4\right) + \left(y0 \cdot \left(y3 \cdot \left(j \cdot y5\right) - y2 \cdot \left(k \cdot y5\right)\right) - y3 \cdot \left(y4 \cdot \left(j \cdot y1\right)\right)\right)\right)\right)\right)\right)\\
\mathbf{elif}\;a \leq -3.0887687255830314 \cdot 10^{-74}:\\
\;\;\;\;\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) + \left(\left(x \cdot j - z \cdot k\right) \cdot \left(i \cdot y1 - b \cdot y0\right) + \left(\left(x \cdot y2 - z \cdot y3\right) \cdot \left(c \cdot y0 - a \cdot y1\right) + \left(\left(\left(k \cdot y2 - j \cdot y3\right) \cdot \left(y1 \cdot y4 - y0 \cdot y5\right) + \left(t \cdot y2 - y \cdot y3\right) \cdot \left(a \cdot y5 - c \cdot y4\right)\right) + \left(i \cdot \left(k \cdot \left(y \cdot y5\right)\right) - \left(y \cdot \left(k \cdot \left(b \cdot y4\right)\right) + t \cdot \left(i \cdot \left(j \cdot y5\right)\right)\right)\right)\right)\right)\right)\\
\mathbf{elif}\;a \leq 2.400762160623862 \cdot 10^{-226}:\\
\;\;\;\;\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) + \left(\left(x \cdot j - z \cdot k\right) \cdot \left(i \cdot y1 - b \cdot y0\right) + \left(\left(x \cdot y2 - z \cdot y3\right) \cdot \left(c \cdot y0 - a \cdot y1\right) + \left(\left(t \cdot j - y \cdot k\right) \cdot \left(b \cdot y4 - i \cdot y5\right) + \left(\left(t \cdot y2 - y \cdot y3\right) \cdot \left(a \cdot y5 - c \cdot y4\right) + \left(y1 \cdot \left(y4 \cdot \left(k \cdot y2 - j \cdot y3\right)\right) + y0 \cdot \left(y5 \cdot \left(j \cdot y3 - k \cdot y2\right)\right)\right)\right)\right)\right)\right)\\
\mathbf{elif}\;a \leq 1.2718187720690202 \cdot 10^{-104}:\\
\;\;\;\;\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) + \left(\left(x \cdot j - z \cdot k\right) \cdot \left(i \cdot y1 - b \cdot y0\right) + \left(\left(z \cdot \left(a \cdot \left(y1 \cdot y3\right)\right) - \left(z \cdot \left(y0 \cdot \left(c \cdot y3\right)\right) + x \cdot \left(a \cdot \left(y1 \cdot y2\right)\right)\right)\right) + \left(\left(\left(k \cdot y2 - j \cdot y3\right) \cdot \left(y1 \cdot y4 - y0 \cdot y5\right) + \left(t \cdot y2 - y \cdot y3\right) \cdot \left(a \cdot y5 - c \cdot y4\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(b \cdot y4 - i \cdot y5\right)\right)\right)\right)\\
\mathbf{elif}\;a \leq 9.056734751352332 \cdot 10^{+21}:\\
\;\;\;\;\left(a \cdot \left(b \cdot \left(x \cdot y - z \cdot t\right)\right) + c \cdot \left(i \cdot \left(z \cdot t - x \cdot y\right)\right)\right) + \left(\left(z \cdot \left(y0 \cdot \left(b \cdot k\right)\right) - \left(k \cdot \left(z \cdot \left(i \cdot y1\right)\right) + x \cdot \left(y0 \cdot \left(b \cdot j\right)\right)\right)\right) + \left(\left(x \cdot y2 - z \cdot y3\right) \cdot \left(c \cdot y0 - a \cdot y1\right) + \left(\left(\left(k \cdot y2 - j \cdot y3\right) \cdot \left(y1 \cdot y4 - y0 \cdot y5\right) + \left(t \cdot y2 - y \cdot y3\right) \cdot \left(a \cdot y5 - c \cdot y4\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(b \cdot y4 - i \cdot y5\right)\right)\right)\right)\\
\mathbf{elif}\;a \leq 2.9842974761197588 \cdot 10^{+112}:\\
\;\;\;\;\left(a \cdot \left(b \cdot \left(x \cdot y - z \cdot t\right)\right) + c \cdot \left(i \cdot \left(z \cdot t - x \cdot y\right)\right)\right) + \left(\left(x \cdot j - z \cdot k\right) \cdot \left(i \cdot y1 - b \cdot y0\right) + \left(\left(x \cdot y2 - z \cdot y3\right) \cdot \left(c \cdot y0 - a \cdot y1\right) + \left(\left(k \cdot \left(y \cdot \left(i \cdot y5\right)\right) - \left(t \cdot \left(j \cdot \left(i \cdot y5\right)\right) + y \cdot \left(k \cdot \left(b \cdot y4\right)\right)\right)\right) + \left(\left(k \cdot y2 - j \cdot y3\right) \cdot \left(y1 \cdot y4 - y0 \cdot y5\right) + \left(t \cdot y2 - y \cdot y3\right) \cdot \left(a \cdot y5 - c \cdot y4\right)\right)\right)\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) + \left(\left(x \cdot j - z \cdot k\right) \cdot \left(i \cdot y1 - b \cdot y0\right) + \left(\left(z \cdot \left(a \cdot \left(y1 \cdot y3\right)\right) - \left(z \cdot \left(y0 \cdot \left(c \cdot y3\right)\right) + x \cdot \left(a \cdot \left(y1 \cdot y2\right)\right)\right)\right) + \left(\left(\left(k \cdot y2 - j \cdot y3\right) \cdot \left(y1 \cdot y4 - y0 \cdot y5\right) + \left(t \cdot y2 - y \cdot y3\right) \cdot \left(a \cdot y5 - c \cdot y4\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(b \cdot y4 - i \cdot y5\right)\right)\right)\right)\\
\end{array}(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
: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)))))(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(if (<= a -1.0998407691602487e+22)
(+
(+ (* a (* b (- (* x y) (* z t)))) (* c (* i (- (* z t) (* x y)))))
(+
(* (- (* x j) (* z k)) (- (* i y1) (* b y0)))
(+
(* (- (* x y2) (* z y3)) (- (* c y0) (* a y1)))
(+
(- (* k (* y (* i y5))) (+ (* t (* j (* i y5))) (* y (* k (* b y4)))))
(+
(* (- (* k y2) (* j y3)) (- (* y1 y4) (* y0 y5)))
(* (- (* t y2) (* y y3)) (- (* a y5) (* c y4))))))))
(if (<= a -9.020989232513019e-13)
(+
(* (- (* x y) (* z t)) (- (* a b) (* c i)))
(+
(* (- (* x j) (* z k)) (- (* i y1) (* b y0)))
(+
(* (- (* x y2) (* z y3)) (- (* c y0) (* a y1)))
(+
(* (- (* t j) (* y k)) (- (* b y4) (* i y5)))
(+
(* (- (* t y2) (* y y3)) (- (* a y5) (* c y4)))
(-
(* y0 (- (* y3 (* j y5)) (* y2 (* k y5))))
(* y3 (* y4 (* j y1)))))))))
(if (<= a -3.0887687255830314e-74)
(+
(* (- (* x y) (* z t)) (- (* a b) (* c i)))
(+
(* (- (* x j) (* z k)) (- (* i y1) (* b y0)))
(+
(* (- (* x y2) (* z y3)) (- (* c y0) (* a y1)))
(+
(+
(* (- (* k y2) (* j y3)) (- (* y1 y4) (* y0 y5)))
(* (- (* t y2) (* y y3)) (- (* a y5) (* c y4))))
(-
(* i (* k (* y y5)))
(+ (* y (* k (* b y4))) (* t (* i (* j y5)))))))))
(if (<= a 2.400762160623862e-226)
(+
(* (- (* x y) (* z t)) (- (* a b) (* c i)))
(+
(* (- (* x j) (* z k)) (- (* i y1) (* b y0)))
(+
(* (- (* x y2) (* z y3)) (- (* c y0) (* a y1)))
(+
(* (- (* t j) (* y k)) (- (* b y4) (* i y5)))
(+
(* (- (* t y2) (* y y3)) (- (* a y5) (* c y4)))
(+
(* y1 (* y4 (- (* k y2) (* j y3))))
(* y0 (* y5 (- (* j y3) (* k y2))))))))))
(if (<= a 1.2718187720690202e-104)
(+
(* (- (* x y) (* z t)) (- (* a b) (* c i)))
(+
(* (- (* x j) (* z k)) (- (* i y1) (* b y0)))
(+
(-
(* z (* a (* y1 y3)))
(+ (* z (* y0 (* c y3))) (* x (* a (* y1 y2)))))
(+
(+
(* (- (* k y2) (* j y3)) (- (* y1 y4) (* y0 y5)))
(* (- (* t y2) (* y y3)) (- (* a y5) (* c y4))))
(* (- (* t j) (* y k)) (- (* b y4) (* i y5)))))))
(if (<= a 9.056734751352332e+21)
(+
(+
(* a (* b (- (* x y) (* z t))))
(* c (* i (- (* z t) (* x y)))))
(+
(-
(* z (* y0 (* b k)))
(+ (* k (* z (* i y1))) (* x (* y0 (* b j)))))
(+
(* (- (* x y2) (* z y3)) (- (* c y0) (* a y1)))
(+
(+
(* (- (* k y2) (* j y3)) (- (* y1 y4) (* y0 y5)))
(* (- (* t y2) (* y y3)) (- (* a y5) (* c y4))))
(* (- (* t j) (* y k)) (- (* b y4) (* i y5)))))))
(if (<= a 2.9842974761197588e+112)
(+
(+
(* a (* b (- (* x y) (* z t))))
(* c (* i (- (* z t) (* x y)))))
(+
(* (- (* x j) (* z k)) (- (* i y1) (* b y0)))
(+
(* (- (* x y2) (* z y3)) (- (* c y0) (* a y1)))
(+
(-
(* k (* y (* i y5)))
(+ (* t (* j (* i y5))) (* y (* k (* b y4)))))
(+
(* (- (* k y2) (* j y3)) (- (* y1 y4) (* y0 y5)))
(* (- (* t y2) (* y y3)) (- (* a y5) (* c y4))))))))
(+
(* (- (* x y) (* z t)) (- (* a b) (* c i)))
(+
(* (- (* x j) (* z k)) (- (* i y1) (* b y0)))
(+
(-
(* z (* a (* y1 y3)))
(+ (* z (* y0 (* c y3))) (* x (* a (* y1 y2)))))
(+
(+
(* (- (* k y2) (* j y3)) (- (* y1 y4) (* y0 y5)))
(* (- (* t y2) (* y y3)) (- (* a y5) (* c y4))))
(* (- (* t j) (* y k)) (- (* b y4) (* i y5)))))))))))))))double code(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) {
return ((double) (((double) (((double) (((double) (((double) (((double) (((double) (((double) (x * y)) - ((double) (z * t)))) * ((double) (((double) (a * b)) - ((double) (c * i)))))) - ((double) (((double) (((double) (x * j)) - ((double) (z * k)))) * ((double) (((double) (y0 * b)) - ((double) (y1 * i)))))))) + ((double) (((double) (((double) (x * y2)) - ((double) (z * y3)))) * ((double) (((double) (y0 * c)) - ((double) (y1 * a)))))))) + ((double) (((double) (((double) (t * j)) - ((double) (y * k)))) * ((double) (((double) (y4 * b)) - ((double) (y5 * i)))))))) - ((double) (((double) (((double) (t * y2)) - ((double) (y * y3)))) * ((double) (((double) (y4 * c)) - ((double) (y5 * a)))))))) + ((double) (((double) (((double) (k * y2)) - ((double) (j * y3)))) * ((double) (((double) (y4 * y1)) - ((double) (y5 * y0))))))));
}
double code(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 tmp;
if ((a <= -1.0998407691602487e+22)) {
tmp = ((double) (((double) (((double) (a * ((double) (b * ((double) (((double) (x * y)) - ((double) (z * t)))))))) + ((double) (c * ((double) (i * ((double) (((double) (z * t)) - ((double) (x * y)))))))))) + ((double) (((double) (((double) (((double) (x * j)) - ((double) (z * k)))) * ((double) (((double) (i * y1)) - ((double) (b * y0)))))) + ((double) (((double) (((double) (((double) (x * y2)) - ((double) (z * y3)))) * ((double) (((double) (c * y0)) - ((double) (a * y1)))))) + ((double) (((double) (((double) (k * ((double) (y * ((double) (i * y5)))))) - ((double) (((double) (t * ((double) (j * ((double) (i * y5)))))) + ((double) (y * ((double) (k * ((double) (b * y4)))))))))) + ((double) (((double) (((double) (((double) (k * y2)) - ((double) (j * y3)))) * ((double) (((double) (y1 * y4)) - ((double) (y0 * y5)))))) + ((double) (((double) (((double) (t * y2)) - ((double) (y * y3)))) * ((double) (((double) (a * y5)) - ((double) (c * y4))))))))))))))));
} else {
double tmp_1;
if ((a <= -9.020989232513019e-13)) {
tmp_1 = ((double) (((double) (((double) (((double) (x * y)) - ((double) (z * t)))) * ((double) (((double) (a * b)) - ((double) (c * i)))))) + ((double) (((double) (((double) (((double) (x * j)) - ((double) (z * k)))) * ((double) (((double) (i * y1)) - ((double) (b * y0)))))) + ((double) (((double) (((double) (((double) (x * y2)) - ((double) (z * y3)))) * ((double) (((double) (c * y0)) - ((double) (a * y1)))))) + ((double) (((double) (((double) (((double) (t * j)) - ((double) (y * k)))) * ((double) (((double) (b * y4)) - ((double) (i * y5)))))) + ((double) (((double) (((double) (((double) (t * y2)) - ((double) (y * y3)))) * ((double) (((double) (a * y5)) - ((double) (c * y4)))))) + ((double) (((double) (y0 * ((double) (((double) (y3 * ((double) (j * y5)))) - ((double) (y2 * ((double) (k * y5)))))))) - ((double) (y3 * ((double) (y4 * ((double) (j * y1))))))))))))))))));
} else {
double tmp_2;
if ((a <= -3.0887687255830314e-74)) {
tmp_2 = ((double) (((double) (((double) (((double) (x * y)) - ((double) (z * t)))) * ((double) (((double) (a * b)) - ((double) (c * i)))))) + ((double) (((double) (((double) (((double) (x * j)) - ((double) (z * k)))) * ((double) (((double) (i * y1)) - ((double) (b * y0)))))) + ((double) (((double) (((double) (((double) (x * y2)) - ((double) (z * y3)))) * ((double) (((double) (c * y0)) - ((double) (a * y1)))))) + ((double) (((double) (((double) (((double) (((double) (k * y2)) - ((double) (j * y3)))) * ((double) (((double) (y1 * y4)) - ((double) (y0 * y5)))))) + ((double) (((double) (((double) (t * y2)) - ((double) (y * y3)))) * ((double) (((double) (a * y5)) - ((double) (c * y4)))))))) + ((double) (((double) (i * ((double) (k * ((double) (y * y5)))))) - ((double) (((double) (y * ((double) (k * ((double) (b * y4)))))) + ((double) (t * ((double) (i * ((double) (j * y5))))))))))))))))));
} else {
double tmp_3;
if ((a <= 2.400762160623862e-226)) {
tmp_3 = ((double) (((double) (((double) (((double) (x * y)) - ((double) (z * t)))) * ((double) (((double) (a * b)) - ((double) (c * i)))))) + ((double) (((double) (((double) (((double) (x * j)) - ((double) (z * k)))) * ((double) (((double) (i * y1)) - ((double) (b * y0)))))) + ((double) (((double) (((double) (((double) (x * y2)) - ((double) (z * y3)))) * ((double) (((double) (c * y0)) - ((double) (a * y1)))))) + ((double) (((double) (((double) (((double) (t * j)) - ((double) (y * k)))) * ((double) (((double) (b * y4)) - ((double) (i * y5)))))) + ((double) (((double) (((double) (((double) (t * y2)) - ((double) (y * y3)))) * ((double) (((double) (a * y5)) - ((double) (c * y4)))))) + ((double) (((double) (y1 * ((double) (y4 * ((double) (((double) (k * y2)) - ((double) (j * y3)))))))) + ((double) (y0 * ((double) (y5 * ((double) (((double) (j * y3)) - ((double) (k * y2))))))))))))))))))));
} else {
double tmp_4;
if ((a <= 1.2718187720690202e-104)) {
tmp_4 = ((double) (((double) (((double) (((double) (x * y)) - ((double) (z * t)))) * ((double) (((double) (a * b)) - ((double) (c * i)))))) + ((double) (((double) (((double) (((double) (x * j)) - ((double) (z * k)))) * ((double) (((double) (i * y1)) - ((double) (b * y0)))))) + ((double) (((double) (((double) (z * ((double) (a * ((double) (y1 * y3)))))) - ((double) (((double) (z * ((double) (y0 * ((double) (c * y3)))))) + ((double) (x * ((double) (a * ((double) (y1 * y2)))))))))) + ((double) (((double) (((double) (((double) (((double) (k * y2)) - ((double) (j * y3)))) * ((double) (((double) (y1 * y4)) - ((double) (y0 * y5)))))) + ((double) (((double) (((double) (t * y2)) - ((double) (y * y3)))) * ((double) (((double) (a * y5)) - ((double) (c * y4)))))))) + ((double) (((double) (((double) (t * j)) - ((double) (y * k)))) * ((double) (((double) (b * y4)) - ((double) (i * y5))))))))))))));
} else {
double tmp_5;
if ((a <= 9.056734751352332e+21)) {
tmp_5 = ((double) (((double) (((double) (a * ((double) (b * ((double) (((double) (x * y)) - ((double) (z * t)))))))) + ((double) (c * ((double) (i * ((double) (((double) (z * t)) - ((double) (x * y)))))))))) + ((double) (((double) (((double) (z * ((double) (y0 * ((double) (b * k)))))) - ((double) (((double) (k * ((double) (z * ((double) (i * y1)))))) + ((double) (x * ((double) (y0 * ((double) (b * j)))))))))) + ((double) (((double) (((double) (((double) (x * y2)) - ((double) (z * y3)))) * ((double) (((double) (c * y0)) - ((double) (a * y1)))))) + ((double) (((double) (((double) (((double) (((double) (k * y2)) - ((double) (j * y3)))) * ((double) (((double) (y1 * y4)) - ((double) (y0 * y5)))))) + ((double) (((double) (((double) (t * y2)) - ((double) (y * y3)))) * ((double) (((double) (a * y5)) - ((double) (c * y4)))))))) + ((double) (((double) (((double) (t * j)) - ((double) (y * k)))) * ((double) (((double) (b * y4)) - ((double) (i * y5))))))))))))));
} else {
double tmp_6;
if ((a <= 2.9842974761197588e+112)) {
tmp_6 = ((double) (((double) (((double) (a * ((double) (b * ((double) (((double) (x * y)) - ((double) (z * t)))))))) + ((double) (c * ((double) (i * ((double) (((double) (z * t)) - ((double) (x * y)))))))))) + ((double) (((double) (((double) (((double) (x * j)) - ((double) (z * k)))) * ((double) (((double) (i * y1)) - ((double) (b * y0)))))) + ((double) (((double) (((double) (((double) (x * y2)) - ((double) (z * y3)))) * ((double) (((double) (c * y0)) - ((double) (a * y1)))))) + ((double) (((double) (((double) (k * ((double) (y * ((double) (i * y5)))))) - ((double) (((double) (t * ((double) (j * ((double) (i * y5)))))) + ((double) (y * ((double) (k * ((double) (b * y4)))))))))) + ((double) (((double) (((double) (((double) (k * y2)) - ((double) (j * y3)))) * ((double) (((double) (y1 * y4)) - ((double) (y0 * y5)))))) + ((double) (((double) (((double) (t * y2)) - ((double) (y * y3)))) * ((double) (((double) (a * y5)) - ((double) (c * y4))))))))))))))));
} else {
tmp_6 = ((double) (((double) (((double) (((double) (x * y)) - ((double) (z * t)))) * ((double) (((double) (a * b)) - ((double) (c * i)))))) + ((double) (((double) (((double) (((double) (x * j)) - ((double) (z * k)))) * ((double) (((double) (i * y1)) - ((double) (b * y0)))))) + ((double) (((double) (((double) (z * ((double) (a * ((double) (y1 * y3)))))) - ((double) (((double) (z * ((double) (y0 * ((double) (c * y3)))))) + ((double) (x * ((double) (a * ((double) (y1 * y2)))))))))) + ((double) (((double) (((double) (((double) (((double) (k * y2)) - ((double) (j * y3)))) * ((double) (((double) (y1 * y4)) - ((double) (y0 * y5)))))) + ((double) (((double) (((double) (t * y2)) - ((double) (y * y3)))) * ((double) (((double) (a * y5)) - ((double) (c * y4)))))))) + ((double) (((double) (((double) (t * j)) - ((double) (y * k)))) * ((double) (((double) (b * y4)) - ((double) (i * y5))))))))))))));
}
tmp_5 = tmp_6;
}
tmp_4 = tmp_5;
}
tmp_3 = tmp_4;
}
tmp_2 = tmp_3;
}
tmp_1 = tmp_2;
}
tmp = tmp_1;
}
return tmp;
}




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
| Original | 26.9 |
|---|---|
| Target | 30.8 |
| Herbie | 27.9 |
if a < -1.0998407691602487e22 or 9.0567347513523322e21 < a < 2.9842974761197588e112Initial program Error: 27.7 bits
SimplifiedError: 27.7 bits
rmApplied sub-negError: 27.7 bits
Applied distribute-lft-inError: 27.7 bits
SimplifiedError: 25.7 bits
SimplifiedError: 25.7 bits
Taylor expanded around inf Error: 26.7 bits
SimplifiedError: 26.7 bits
if -1.0998407691602487e22 < a < -9.02098923251301864e-13Initial program Error: 23.4 bits
SimplifiedError: 23.4 bits
Taylor expanded around inf Error: 23.8 bits
SimplifiedError: 23.6 bits
if -9.02098923251301864e-13 < a < -3.08876872558303145e-74Initial program Error: 22.3 bits
SimplifiedError: 22.3 bits
Taylor expanded around inf Error: 25.3 bits
SimplifiedError: 26.1 bits
if -3.08876872558303145e-74 < a < 2.400762160623862e-226Initial program Error: 26.8 bits
SimplifiedError: 26.8 bits
rmApplied sub-negError: 26.8 bits
Applied distribute-lft-inError: 26.8 bits
SimplifiedError: 27.0 bits
SimplifiedError: 27.2 bits
if 2.400762160623862e-226 < a < 1.2718187720690202e-104 or 2.9842974761197588e112 < a Initial program Error: 28.8 bits
SimplifiedError: 28.8 bits
Taylor expanded around inf Error: 30.0 bits
SimplifiedError: 30.6 bits
if 1.2718187720690202e-104 < a < 9.0567347513523322e21Initial program Error: 25.2 bits
SimplifiedError: 25.2 bits
rmApplied sub-negError: 25.2 bits
Applied distribute-lft-inError: 25.2 bits
SimplifiedError: 25.7 bits
SimplifiedError: 26.2 bits
Taylor expanded around inf Error: 28.5 bits
SimplifiedError: 29.0 bits
Final simplificationError: 27.9 bits
herbie shell --seed 2020203
(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
:herbie-target
(if (< y4 -7.206256231996481e+60) (- (- (* (- (* b a) (* i c)) (- (* y x) (* t z))) (- (* (- (* j x) (* k z)) (- (* y0 b) (* i y1))) (* (- (* j t) (* k y)) (- (* y4 b) (* y5 i))))) (- (/ (- (* y2 t) (* y3 y)) (/ 1.0 (- (* y4 c) (* y5 a)))) (* (- (* y2 k) (* y3 j)) (- (* y4 y1) (* y5 y0))))) (if (< y4 -3.364603505246317e-66) (+ (- (- (- (* (* t c) (* i z)) (* (* a t) (* b z))) (* (* y c) (* i x))) (* (- (* b y0) (* i y1)) (- (* j x) (* k z)))) (- (* (- (* y0 c) (* a y1)) (- (* x y2) (* z y3))) (- (* (- (* t y2) (* y y3)) (- (* y4 c) (* a y5))) (* (- (* y1 y4) (* y5 y0)) (- (* k y2) (* j y3)))))) (if (< y4 -1.2000065055686116e-105) (+ (+ (- (* (- (* j t) (* k y)) (- (* y4 b) (* y5 i))) (* (* y3 y) (- (* y5 a) (* y4 c)))) (+ (* (* y5 a) (* t y2)) (* (- (* k y2) (* j y3)) (- (* y4 y1) (* y5 y0))))) (- (* (- (* x y2) (* z y3)) (- (* c y0) (* a y1))) (- (* (- (* b y0) (* i y1)) (- (* j x) (* k z))) (* (- (* y x) (* z t)) (- (* b a) (* i c)))))) (if (< y4 6.718963124057495e-279) (+ (- (- (- (* (* k y) (* y5 i)) (* (* y b) (* y4 k))) (* (* y5 t) (* i j))) (- (* (- (* y2 t) (* y3 y)) (- (* y4 c) (* y5 a))) (* (- (* y2 k) (* y3 j)) (- (* y4 y1) (* y5 y0))))) (- (* (- (* b a) (* i c)) (- (* y x) (* t z))) (- (* (- (* j x) (* k z)) (- (* y0 b) (* i y1))) (* (- (* y2 x) (* y3 z)) (- (* c y0) (* y1 a)))))) (if (< y4 4.77962681403792e-222) (+ (+ (- (* (- (* j t) (* k y)) (- (* y4 b) (* y5 i))) (* (* y3 y) (- (* y5 a) (* y4 c)))) (+ (* (* y5 a) (* t y2)) (* (- (* k y2) (* j y3)) (- (* y4 y1) (* y5 y0))))) (- (* (- (* x y2) (* z y3)) (- (* c y0) (* a y1))) (- (* (- (* b y0) (* i y1)) (- (* j x) (* k z))) (* (- (* y x) (* z t)) (- (* b a) (* i c)))))) (if (< y4 2.2852241541266835e-175) (+ (- (- (- (* (* k y) (* y5 i)) (* (* y b) (* y4 k))) (* (* y5 t) (* i j))) (- (* (- (* y2 t) (* y3 y)) (- (* y4 c) (* y5 a))) (* (- (* y2 k) (* y3 j)) (- (* y4 y1) (* y5 y0))))) (- (* (- (* b a) (* i c)) (- (* y x) (* t z))) (- (* (- (* j x) (* k z)) (- (* y0 b) (* i y1))) (* (- (* y2 x) (* y3 z)) (- (* c y0) (* y1 a)))))) (+ (- (+ (+ (- (* (- (* x y) (* z t)) (- (* a b) (* c i))) (- (* k (* i (* z y1))) (+ (* j (* i (* x y1))) (* y0 (* k (* z b)))))) (- (* z (* y3 (* a y1))) (+ (* y2 (* x (* a y1))) (* y0 (* z (* c y3)))))) (* (- (* t j) (* y k)) (- (* y4 b) (* y5 i)))) (* (- (* t y2) (* y y3)) (- (* y4 c) (* y5 a)))) (* (- (* k y2) (* j y3)) (- (* y4 y1) (* y5 y0))))))))))
(+ (- (+ (+ (- (* (- (* 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)))))