\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k
\begin{array}{l}
\mathbf{if}\;t \le -1.493810714954948 \cdot 10^{-102}:\\
\;\;\;\;\left(\left(b \cdot c + \left(18.0 \cdot \left(t \cdot \left(\left(z \cdot y\right) \cdot x\right)\right) - \left(a \cdot 4.0\right) \cdot t\right)\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k\\
\mathbf{elif}\;t \le 6.970646552295907 \cdot 10^{-137}:\\
\;\;\;\;\left(\left(b \cdot c + \left(\left(z \cdot t\right) \cdot \left(\left(18.0 \cdot x\right) \cdot y\right) - \left(a \cdot 4.0\right) \cdot t\right)\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k\\
\mathbf{else}:\\
\;\;\;\;\left(\left(18.0 \cdot y\right) \cdot \left(x \cdot z\right) - a \cdot 4.0\right) \cdot t + \left(b \cdot c - \left(\left(j \cdot 27.0\right) \cdot k + \left(x \cdot 4.0\right) \cdot i\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 r12611925 = x;
double r12611926 = 18.0;
double r12611927 = r12611925 * r12611926;
double r12611928 = y;
double r12611929 = r12611927 * r12611928;
double r12611930 = z;
double r12611931 = r12611929 * r12611930;
double r12611932 = t;
double r12611933 = r12611931 * r12611932;
double r12611934 = a;
double r12611935 = 4.0;
double r12611936 = r12611934 * r12611935;
double r12611937 = r12611936 * r12611932;
double r12611938 = r12611933 - r12611937;
double r12611939 = b;
double r12611940 = c;
double r12611941 = r12611939 * r12611940;
double r12611942 = r12611938 + r12611941;
double r12611943 = r12611925 * r12611935;
double r12611944 = i;
double r12611945 = r12611943 * r12611944;
double r12611946 = r12611942 - r12611945;
double r12611947 = j;
double r12611948 = 27.0;
double r12611949 = r12611947 * r12611948;
double r12611950 = k;
double r12611951 = r12611949 * r12611950;
double r12611952 = r12611946 - r12611951;
return r12611952;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r12611953 = t;
double r12611954 = -1.493810714954948e-102;
bool r12611955 = r12611953 <= r12611954;
double r12611956 = b;
double r12611957 = c;
double r12611958 = r12611956 * r12611957;
double r12611959 = 18.0;
double r12611960 = z;
double r12611961 = y;
double r12611962 = r12611960 * r12611961;
double r12611963 = x;
double r12611964 = r12611962 * r12611963;
double r12611965 = r12611953 * r12611964;
double r12611966 = r12611959 * r12611965;
double r12611967 = a;
double r12611968 = 4.0;
double r12611969 = r12611967 * r12611968;
double r12611970 = r12611969 * r12611953;
double r12611971 = r12611966 - r12611970;
double r12611972 = r12611958 + r12611971;
double r12611973 = r12611963 * r12611968;
double r12611974 = i;
double r12611975 = r12611973 * r12611974;
double r12611976 = r12611972 - r12611975;
double r12611977 = j;
double r12611978 = 27.0;
double r12611979 = r12611977 * r12611978;
double r12611980 = k;
double r12611981 = r12611979 * r12611980;
double r12611982 = r12611976 - r12611981;
double r12611983 = 6.970646552295907e-137;
bool r12611984 = r12611953 <= r12611983;
double r12611985 = r12611960 * r12611953;
double r12611986 = r12611959 * r12611963;
double r12611987 = r12611986 * r12611961;
double r12611988 = r12611985 * r12611987;
double r12611989 = r12611988 - r12611970;
double r12611990 = r12611958 + r12611989;
double r12611991 = r12611990 - r12611975;
double r12611992 = r12611991 - r12611981;
double r12611993 = r12611959 * r12611961;
double r12611994 = r12611963 * r12611960;
double r12611995 = r12611993 * r12611994;
double r12611996 = r12611995 - r12611969;
double r12611997 = r12611996 * r12611953;
double r12611998 = r12611981 + r12611975;
double r12611999 = r12611958 - r12611998;
double r12612000 = r12611997 + r12611999;
double r12612001 = r12611984 ? r12611992 : r12612000;
double r12612002 = r12611955 ? r12611982 : r12612001;
return r12612002;
}



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
Results
if t < -1.493810714954948e-102Initial program 2.4
Taylor expanded around -inf 3.4
if -1.493810714954948e-102 < t < 6.970646552295907e-137Initial program 9.3
rmApplied associate-*l*4.3
if 6.970646552295907e-137 < t Initial program 3.3
Simplified3.3
Taylor expanded around -inf 4.4
Simplified3.3
Final simplification3.7
herbie shell --seed 2019124
(FPCore (x y z t a b c i j k)
:name "Diagrams.Solve.Polynomial:cubForm from diagrams-solve-0.1"
(- (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) (* (* j 27.0) k)))