\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}\;i \le -8.74408787823680895778261987344205963442 \cdot 10^{88}:\\
\;\;\;\;\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(\left(x \cdot y2 - z \cdot y3\right) \cdot \left(\sqrt[3]{y0 \cdot c - y1 \cdot a} \cdot \sqrt[3]{y0 \cdot c - y1 \cdot a}\right)\right) \cdot \sqrt[3]{y0 \cdot c - y1 \cdot a}\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}\;i \le -8.158706521090690724821034295337254001684 \cdot 10^{-228}:\\
\;\;\;\;\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(y0 \cdot \left(y3 \cdot \left(j \cdot y5\right) - y2 \cdot \left(k \cdot y5\right)\right) - y1 \cdot \left(y3 \cdot \left(j \cdot y4\right)\right)\right)\\
\mathbf{elif}\;i \le -2.669620811438326382911913231425594683926 \cdot 10^{-276}:\\
\;\;\;\;\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(a \cdot \left(y3 \cdot \left(y1 \cdot z\right)\right) - \left(y0 \cdot \left(z \cdot \left(y3 \cdot c\right)\right) + a \cdot \left(x \cdot \left(y2 \cdot y1\right)\right)\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{elif}\;i \le -1.708567048804727701005981561979909311825 \cdot 10^{-307}:\\
\;\;\;\;\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(y0 \cdot \left(y3 \cdot \left(j \cdot y5\right) - y2 \cdot \left(k \cdot y5\right)\right) - y1 \cdot \left(y3 \cdot \left(j \cdot y4\right)\right)\right)\\
\mathbf{elif}\;i \le 8.109006125147522733765394377879583540923 \cdot 10^{-241}:\\
\;\;\;\;\left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right) + \left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\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(\left(t \cdot y2 - y \cdot y3\right) \cdot \left(\sqrt[3]{y4 \cdot c - y5 \cdot a} \cdot \sqrt[3]{y4 \cdot c - y5 \cdot a}\right)\right) \cdot \sqrt[3]{y4 \cdot c - y5 \cdot a}\right)\\
\mathbf{elif}\;i \le 4.577496372739185874638015994050046305091 \cdot 10^{-17}:\\
\;\;\;\;\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(a \cdot \left(y3 \cdot \left(y1 \cdot z\right)\right) - \left(y0 \cdot \left(z \cdot \left(y3 \cdot c\right)\right) + a \cdot \left(x \cdot \left(y2 \cdot y1\right)\right)\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{elif}\;i \le 2.938920074240578084576727894718378075281 \cdot 10^{121}:\\
\;\;\;\;\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{else}:\\
\;\;\;\;\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(\left(x \cdot y2 - z \cdot y3\right) \cdot \left(\sqrt[3]{y0 \cdot c - y1 \cdot a} \cdot \sqrt[3]{y0 \cdot c - y1 \cdot a}\right)\right) \cdot \sqrt[3]{y0 \cdot c - y1 \cdot a}\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)\\
\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 r162740 = x;
double r162741 = y;
double r162742 = r162740 * r162741;
double r162743 = z;
double r162744 = t;
double r162745 = r162743 * r162744;
double r162746 = r162742 - r162745;
double r162747 = a;
double r162748 = b;
double r162749 = r162747 * r162748;
double r162750 = c;
double r162751 = i;
double r162752 = r162750 * r162751;
double r162753 = r162749 - r162752;
double r162754 = r162746 * r162753;
double r162755 = j;
double r162756 = r162740 * r162755;
double r162757 = k;
double r162758 = r162743 * r162757;
double r162759 = r162756 - r162758;
double r162760 = y0;
double r162761 = r162760 * r162748;
double r162762 = y1;
double r162763 = r162762 * r162751;
double r162764 = r162761 - r162763;
double r162765 = r162759 * r162764;
double r162766 = r162754 - r162765;
double r162767 = y2;
double r162768 = r162740 * r162767;
double r162769 = y3;
double r162770 = r162743 * r162769;
double r162771 = r162768 - r162770;
double r162772 = r162760 * r162750;
double r162773 = r162762 * r162747;
double r162774 = r162772 - r162773;
double r162775 = r162771 * r162774;
double r162776 = r162766 + r162775;
double r162777 = r162744 * r162755;
double r162778 = r162741 * r162757;
double r162779 = r162777 - r162778;
double r162780 = y4;
double r162781 = r162780 * r162748;
double r162782 = y5;
double r162783 = r162782 * r162751;
double r162784 = r162781 - r162783;
double r162785 = r162779 * r162784;
double r162786 = r162776 + r162785;
double r162787 = r162744 * r162767;
double r162788 = r162741 * r162769;
double r162789 = r162787 - r162788;
double r162790 = r162780 * r162750;
double r162791 = r162782 * r162747;
double r162792 = r162790 - r162791;
double r162793 = r162789 * r162792;
double r162794 = r162786 - r162793;
double r162795 = r162757 * r162767;
double r162796 = r162755 * r162769;
double r162797 = r162795 - r162796;
double r162798 = r162780 * r162762;
double r162799 = r162782 * r162760;
double r162800 = r162798 - r162799;
double r162801 = r162797 * r162800;
double r162802 = r162794 + r162801;
return r162802;
}
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 r162803 = i;
double r162804 = -8.744087878236809e+88;
bool r162805 = r162803 <= r162804;
double r162806 = x;
double r162807 = y;
double r162808 = r162806 * r162807;
double r162809 = z;
double r162810 = t;
double r162811 = r162809 * r162810;
double r162812 = r162808 - r162811;
double r162813 = a;
double r162814 = b;
double r162815 = r162813 * r162814;
double r162816 = c;
double r162817 = r162816 * r162803;
double r162818 = r162815 - r162817;
double r162819 = r162812 * r162818;
double r162820 = k;
double r162821 = y1;
double r162822 = r162809 * r162821;
double r162823 = r162803 * r162822;
double r162824 = r162820 * r162823;
double r162825 = j;
double r162826 = r162821 * r162806;
double r162827 = r162825 * r162826;
double r162828 = r162803 * r162827;
double r162829 = y0;
double r162830 = r162820 * r162814;
double r162831 = r162809 * r162830;
double r162832 = r162829 * r162831;
double r162833 = r162828 + r162832;
double r162834 = r162824 - r162833;
double r162835 = r162819 - r162834;
double r162836 = y2;
double r162837 = r162806 * r162836;
double r162838 = y3;
double r162839 = r162809 * r162838;
double r162840 = r162837 - r162839;
double r162841 = r162829 * r162816;
double r162842 = r162821 * r162813;
double r162843 = r162841 - r162842;
double r162844 = cbrt(r162843);
double r162845 = r162844 * r162844;
double r162846 = r162840 * r162845;
double r162847 = r162846 * r162844;
double r162848 = r162835 + r162847;
double r162849 = r162810 * r162825;
double r162850 = r162807 * r162820;
double r162851 = r162849 - r162850;
double r162852 = y4;
double r162853 = r162852 * r162814;
double r162854 = y5;
double r162855 = r162854 * r162803;
double r162856 = r162853 - r162855;
double r162857 = r162851 * r162856;
double r162858 = r162848 + r162857;
double r162859 = r162810 * r162836;
double r162860 = r162807 * r162838;
double r162861 = r162859 - r162860;
double r162862 = r162852 * r162816;
double r162863 = r162854 * r162813;
double r162864 = r162862 - r162863;
double r162865 = r162861 * r162864;
double r162866 = r162858 - r162865;
double r162867 = r162820 * r162836;
double r162868 = r162825 * r162838;
double r162869 = r162867 - r162868;
double r162870 = r162852 * r162821;
double r162871 = r162854 * r162829;
double r162872 = r162870 - r162871;
double r162873 = r162869 * r162872;
double r162874 = r162866 + r162873;
double r162875 = -8.158706521090691e-228;
bool r162876 = r162803 <= r162875;
double r162877 = r162806 * r162825;
double r162878 = r162809 * r162820;
double r162879 = r162877 - r162878;
double r162880 = r162829 * r162814;
double r162881 = r162821 * r162803;
double r162882 = r162880 - r162881;
double r162883 = r162879 * r162882;
double r162884 = r162819 - r162883;
double r162885 = r162840 * r162843;
double r162886 = r162884 + r162885;
double r162887 = r162886 + r162857;
double r162888 = r162887 - r162865;
double r162889 = r162825 * r162854;
double r162890 = r162838 * r162889;
double r162891 = r162820 * r162854;
double r162892 = r162836 * r162891;
double r162893 = r162890 - r162892;
double r162894 = r162829 * r162893;
double r162895 = r162825 * r162852;
double r162896 = r162838 * r162895;
double r162897 = r162821 * r162896;
double r162898 = r162894 - r162897;
double r162899 = r162888 + r162898;
double r162900 = -2.6696208114383264e-276;
bool r162901 = r162803 <= r162900;
double r162902 = r162821 * r162809;
double r162903 = r162838 * r162902;
double r162904 = r162813 * r162903;
double r162905 = r162838 * r162816;
double r162906 = r162809 * r162905;
double r162907 = r162829 * r162906;
double r162908 = r162836 * r162821;
double r162909 = r162806 * r162908;
double r162910 = r162813 * r162909;
double r162911 = r162907 + r162910;
double r162912 = r162904 - r162911;
double r162913 = r162884 + r162912;
double r162914 = r162913 + r162857;
double r162915 = r162914 - r162865;
double r162916 = r162915 + r162873;
double r162917 = -1.7085670488047277e-307;
bool r162918 = r162803 <= r162917;
double r162919 = 8.109006125147523e-241;
bool r162920 = r162803 <= r162919;
double r162921 = r162819 + r162885;
double r162922 = r162921 + r162857;
double r162923 = cbrt(r162864);
double r162924 = r162923 * r162923;
double r162925 = r162861 * r162924;
double r162926 = r162925 * r162923;
double r162927 = r162922 - r162926;
double r162928 = r162873 + r162927;
double r162929 = 4.577496372739186e-17;
bool r162930 = r162803 <= r162929;
double r162931 = 2.938920074240578e+121;
bool r162932 = r162803 <= r162931;
double r162933 = r162807 * r162854;
double r162934 = r162803 * r162933;
double r162935 = r162820 * r162934;
double r162936 = r162803 * r162889;
double r162937 = r162810 * r162936;
double r162938 = r162807 * r162814;
double r162939 = r162852 * r162938;
double r162940 = r162820 * r162939;
double r162941 = r162937 + r162940;
double r162942 = r162935 - r162941;
double r162943 = r162886 + r162942;
double r162944 = r162943 - r162865;
double r162945 = r162944 + r162873;
double r162946 = r162932 ? r162945 : r162874;
double r162947 = r162930 ? r162916 : r162946;
double r162948 = r162920 ? r162928 : r162947;
double r162949 = r162918 ? r162899 : r162948;
double r162950 = r162901 ? r162916 : r162949;
double r162951 = r162876 ? r162899 : r162950;
double r162952 = r162805 ? r162874 : r162951;
return r162952;
}



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 i < -8.744087878236809e+88 or 2.938920074240578e+121 < i Initial program 31.2
rmApplied add-cube-cbrt31.3
Applied associate-*r*31.3
Taylor expanded around inf 30.8
if -8.744087878236809e+88 < i < -8.158706521090691e-228 or -2.6696208114383264e-276 < i < -1.7085670488047277e-307Initial program 26.2
Taylor expanded around inf 29.2
Simplified29.2
if -8.158706521090691e-228 < i < -2.6696208114383264e-276 or 8.109006125147523e-241 < i < 4.577496372739186e-17Initial program 27.1
Taylor expanded around inf 30.8
if -1.7085670488047277e-307 < i < 8.109006125147523e-241Initial program 25.0
rmApplied add-cube-cbrt25.1
Applied associate-*r*25.1
Taylor expanded around 0 28.7
if 4.577496372739186e-17 < i < 2.938920074240578e+121Initial program 27.6
Taylor expanded around inf 28.8
Final simplification29.9
herbie shell --seed 2019326
(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)))))