\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}\;b \le -8.551998012102175 \cdot 10^{-158}:\\
\;\;\;\;\left(\left(\left(\left(c \cdot y0 - y1 \cdot a\right) \cdot \left(x \cdot y2 - z \cdot y3\right) + \left(\left(x \cdot y - t \cdot z\right) \cdot \left(b \cdot a - i \cdot c\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(b \cdot y0 - i \cdot y1\right)\right)\right) + \left(j \cdot t - y \cdot k\right) \cdot \left(b \cdot y4 - i \cdot y5\right)\right) - \left(a \cdot \left(y3 \cdot \left(y \cdot y5\right)\right) - \left(\left(\left(y5 \cdot t\right) \cdot y2\right) \cdot a + y3 \cdot \left(\left(y \cdot c\right) \cdot y4\right)\right)\right)\right) + \left(y2 \cdot k - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\\
\mathbf{elif}\;b \le 1.0030947182803238 \cdot 10^{-143}:\\
\;\;\;\;\left(y2 \cdot k - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right) + \left(\left(\left(j \cdot t - y \cdot k\right) \cdot \left(b \cdot y4 - i \cdot y5\right) + \left(\left(c \cdot y0 - y1 \cdot a\right) \cdot \left(x \cdot y2 - z \cdot y3\right) + \left(\left(\left(\left(c \cdot z\right) \cdot i\right) \cdot t - \left(\left(t \cdot \left(b \cdot z\right)\right) \cdot a + i \cdot \left(\left(y \cdot c\right) \cdot x\right)\right)\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(b \cdot y0 - i \cdot y1\right)\right)\right)\right) - \left(y4 \cdot c - y5 \cdot a\right) \cdot \left(t \cdot y2 - y \cdot y3\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\sqrt[3]{\left(y2 \cdot k - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)} \cdot \sqrt[3]{\left(y2 \cdot k - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)}\right) \cdot \sqrt[3]{\left(y2 \cdot k - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)} + \left(\left(\left(\left(c \cdot y0 - y1 \cdot a\right) \cdot \left(x \cdot y2 - z \cdot y3\right) + \left(\left(x \cdot y - t \cdot z\right) \cdot \left(b \cdot a - i \cdot c\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(b \cdot y0 - i \cdot y1\right)\right)\right) + \left(j \cdot t - y \cdot k\right) \cdot \left(b \cdot y4 - i \cdot y5\right)\right) - \left(y4 \cdot c - y5 \cdot a\right) \cdot \left(t \cdot y2 - y \cdot y3\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 k, double y0, double y1, double y2, double y3, double y4, double y5) {
double r4899836 = x;
double r4899837 = y;
double r4899838 = r4899836 * r4899837;
double r4899839 = z;
double r4899840 = t;
double r4899841 = r4899839 * r4899840;
double r4899842 = r4899838 - r4899841;
double r4899843 = a;
double r4899844 = b;
double r4899845 = r4899843 * r4899844;
double r4899846 = c;
double r4899847 = i;
double r4899848 = r4899846 * r4899847;
double r4899849 = r4899845 - r4899848;
double r4899850 = r4899842 * r4899849;
double r4899851 = j;
double r4899852 = r4899836 * r4899851;
double r4899853 = k;
double r4899854 = r4899839 * r4899853;
double r4899855 = r4899852 - r4899854;
double r4899856 = y0;
double r4899857 = r4899856 * r4899844;
double r4899858 = y1;
double r4899859 = r4899858 * r4899847;
double r4899860 = r4899857 - r4899859;
double r4899861 = r4899855 * r4899860;
double r4899862 = r4899850 - r4899861;
double r4899863 = y2;
double r4899864 = r4899836 * r4899863;
double r4899865 = y3;
double r4899866 = r4899839 * r4899865;
double r4899867 = r4899864 - r4899866;
double r4899868 = r4899856 * r4899846;
double r4899869 = r4899858 * r4899843;
double r4899870 = r4899868 - r4899869;
double r4899871 = r4899867 * r4899870;
double r4899872 = r4899862 + r4899871;
double r4899873 = r4899840 * r4899851;
double r4899874 = r4899837 * r4899853;
double r4899875 = r4899873 - r4899874;
double r4899876 = y4;
double r4899877 = r4899876 * r4899844;
double r4899878 = y5;
double r4899879 = r4899878 * r4899847;
double r4899880 = r4899877 - r4899879;
double r4899881 = r4899875 * r4899880;
double r4899882 = r4899872 + r4899881;
double r4899883 = r4899840 * r4899863;
double r4899884 = r4899837 * r4899865;
double r4899885 = r4899883 - r4899884;
double r4899886 = r4899876 * r4899846;
double r4899887 = r4899878 * r4899843;
double r4899888 = r4899886 - r4899887;
double r4899889 = r4899885 * r4899888;
double r4899890 = r4899882 - r4899889;
double r4899891 = r4899853 * r4899863;
double r4899892 = r4899851 * r4899865;
double r4899893 = r4899891 - r4899892;
double r4899894 = r4899876 * r4899858;
double r4899895 = r4899878 * r4899856;
double r4899896 = r4899894 - r4899895;
double r4899897 = r4899893 * r4899896;
double r4899898 = r4899890 + r4899897;
return r4899898;
}
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 r4899899 = b;
double r4899900 = -8.551998012102175e-158;
bool r4899901 = r4899899 <= r4899900;
double r4899902 = c;
double r4899903 = y0;
double r4899904 = r4899902 * r4899903;
double r4899905 = y1;
double r4899906 = a;
double r4899907 = r4899905 * r4899906;
double r4899908 = r4899904 - r4899907;
double r4899909 = x;
double r4899910 = y2;
double r4899911 = r4899909 * r4899910;
double r4899912 = z;
double r4899913 = y3;
double r4899914 = r4899912 * r4899913;
double r4899915 = r4899911 - r4899914;
double r4899916 = r4899908 * r4899915;
double r4899917 = y;
double r4899918 = r4899909 * r4899917;
double r4899919 = t;
double r4899920 = r4899919 * r4899912;
double r4899921 = r4899918 - r4899920;
double r4899922 = r4899899 * r4899906;
double r4899923 = i;
double r4899924 = r4899923 * r4899902;
double r4899925 = r4899922 - r4899924;
double r4899926 = r4899921 * r4899925;
double r4899927 = j;
double r4899928 = r4899909 * r4899927;
double r4899929 = k;
double r4899930 = r4899912 * r4899929;
double r4899931 = r4899928 - r4899930;
double r4899932 = r4899899 * r4899903;
double r4899933 = r4899923 * r4899905;
double r4899934 = r4899932 - r4899933;
double r4899935 = r4899931 * r4899934;
double r4899936 = r4899926 - r4899935;
double r4899937 = r4899916 + r4899936;
double r4899938 = r4899927 * r4899919;
double r4899939 = r4899917 * r4899929;
double r4899940 = r4899938 - r4899939;
double r4899941 = y4;
double r4899942 = r4899899 * r4899941;
double r4899943 = y5;
double r4899944 = r4899923 * r4899943;
double r4899945 = r4899942 - r4899944;
double r4899946 = r4899940 * r4899945;
double r4899947 = r4899937 + r4899946;
double r4899948 = r4899917 * r4899943;
double r4899949 = r4899913 * r4899948;
double r4899950 = r4899906 * r4899949;
double r4899951 = r4899943 * r4899919;
double r4899952 = r4899951 * r4899910;
double r4899953 = r4899952 * r4899906;
double r4899954 = r4899917 * r4899902;
double r4899955 = r4899954 * r4899941;
double r4899956 = r4899913 * r4899955;
double r4899957 = r4899953 + r4899956;
double r4899958 = r4899950 - r4899957;
double r4899959 = r4899947 - r4899958;
double r4899960 = r4899910 * r4899929;
double r4899961 = r4899927 * r4899913;
double r4899962 = r4899960 - r4899961;
double r4899963 = r4899941 * r4899905;
double r4899964 = r4899943 * r4899903;
double r4899965 = r4899963 - r4899964;
double r4899966 = r4899962 * r4899965;
double r4899967 = r4899959 + r4899966;
double r4899968 = 1.0030947182803238e-143;
bool r4899969 = r4899899 <= r4899968;
double r4899970 = r4899902 * r4899912;
double r4899971 = r4899970 * r4899923;
double r4899972 = r4899971 * r4899919;
double r4899973 = r4899899 * r4899912;
double r4899974 = r4899919 * r4899973;
double r4899975 = r4899974 * r4899906;
double r4899976 = r4899954 * r4899909;
double r4899977 = r4899923 * r4899976;
double r4899978 = r4899975 + r4899977;
double r4899979 = r4899972 - r4899978;
double r4899980 = r4899979 - r4899935;
double r4899981 = r4899916 + r4899980;
double r4899982 = r4899946 + r4899981;
double r4899983 = r4899941 * r4899902;
double r4899984 = r4899943 * r4899906;
double r4899985 = r4899983 - r4899984;
double r4899986 = r4899919 * r4899910;
double r4899987 = r4899917 * r4899913;
double r4899988 = r4899986 - r4899987;
double r4899989 = r4899985 * r4899988;
double r4899990 = r4899982 - r4899989;
double r4899991 = r4899966 + r4899990;
double r4899992 = cbrt(r4899966);
double r4899993 = r4899992 * r4899992;
double r4899994 = r4899993 * r4899992;
double r4899995 = r4899947 - r4899989;
double r4899996 = r4899994 + r4899995;
double r4899997 = r4899969 ? r4899991 : r4899996;
double r4899998 = r4899901 ? r4899967 : r4899997;
return r4899998;
}



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 b < -8.551998012102175e-158Initial program 25.1
Taylor expanded around -inf 27.7
if -8.551998012102175e-158 < b < 1.0030947182803238e-143Initial program 25.3
Taylor expanded around inf 25.3
if 1.0030947182803238e-143 < b Initial program 25.6
rmApplied add-cube-cbrt25.7
Final simplification26.2
herbie shell --seed 2019138
(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"
(+ (- (+ (+ (- (* (- (* 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)))))