\left(\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(j \cdot 27\right) \cdot k
\begin{array}{l}
\mathbf{if}\;t \le -1.816104989340000263533513256286904752193 \cdot 10^{-100}:\\
\;\;\;\;\mathsf{fma}\left(t, \left(x \cdot 18\right) \cdot \left(y \cdot z\right) - a \cdot 4, b \cdot c - \mathsf{fma}\left(x, 4 \cdot i, \left(j \cdot 27\right) \cdot k\right)\right)\\
\mathbf{elif}\;t \le 1.945396783892281696257471720471681450496 \cdot 10^{-140}:\\
\;\;\;\;\mathsf{fma}\left(t, 0 - a \cdot 4, b \cdot c - \mathsf{fma}\left(x, 4 \cdot i, \left(j \cdot 27\right) \cdot k\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(t, \left(x \cdot \left(18 \cdot y\right)\right) \cdot z - a \cdot 4, b \cdot c - \mathsf{fma}\left(x, 4 \cdot i, \left(j \cdot 27\right) \cdot k\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 r136937 = x;
double r136938 = 18.0;
double r136939 = r136937 * r136938;
double r136940 = y;
double r136941 = r136939 * r136940;
double r136942 = z;
double r136943 = r136941 * r136942;
double r136944 = t;
double r136945 = r136943 * r136944;
double r136946 = a;
double r136947 = 4.0;
double r136948 = r136946 * r136947;
double r136949 = r136948 * r136944;
double r136950 = r136945 - r136949;
double r136951 = b;
double r136952 = c;
double r136953 = r136951 * r136952;
double r136954 = r136950 + r136953;
double r136955 = r136937 * r136947;
double r136956 = i;
double r136957 = r136955 * r136956;
double r136958 = r136954 - r136957;
double r136959 = j;
double r136960 = 27.0;
double r136961 = r136959 * r136960;
double r136962 = k;
double r136963 = r136961 * r136962;
double r136964 = r136958 - r136963;
return r136964;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r136965 = t;
double r136966 = -1.8161049893400003e-100;
bool r136967 = r136965 <= r136966;
double r136968 = x;
double r136969 = 18.0;
double r136970 = r136968 * r136969;
double r136971 = y;
double r136972 = z;
double r136973 = r136971 * r136972;
double r136974 = r136970 * r136973;
double r136975 = a;
double r136976 = 4.0;
double r136977 = r136975 * r136976;
double r136978 = r136974 - r136977;
double r136979 = b;
double r136980 = c;
double r136981 = r136979 * r136980;
double r136982 = i;
double r136983 = r136976 * r136982;
double r136984 = j;
double r136985 = 27.0;
double r136986 = r136984 * r136985;
double r136987 = k;
double r136988 = r136986 * r136987;
double r136989 = fma(r136968, r136983, r136988);
double r136990 = r136981 - r136989;
double r136991 = fma(r136965, r136978, r136990);
double r136992 = 1.9453967838922817e-140;
bool r136993 = r136965 <= r136992;
double r136994 = 0.0;
double r136995 = r136994 - r136977;
double r136996 = fma(r136965, r136995, r136990);
double r136997 = r136969 * r136971;
double r136998 = r136968 * r136997;
double r136999 = r136998 * r136972;
double r137000 = r136999 - r136977;
double r137001 = fma(r136965, r137000, r136990);
double r137002 = r136993 ? r136996 : r137001;
double r137003 = r136967 ? r136991 : r137002;
return r137003;
}



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
if t < -1.8161049893400003e-100Initial program 3.3
Simplified3.3
rmApplied associate-*l*3.7
if -1.8161049893400003e-100 < t < 1.9453967838922817e-140Initial program 8.9
Simplified8.9
Taylor expanded around 0 6.2
if 1.9453967838922817e-140 < t Initial program 3.8
Simplified3.8
rmApplied associate-*l*3.9
Final simplification4.8
herbie shell --seed 2020001 +o rules:numerics
(FPCore (x y z t a b c i j k)
:name "Diagrams.Solve.Polynomial:cubForm from diagrams-solve-0.1"
:precision binary64
(- (- (+ (- (* (* (* (* x 18) y) z) t) (* (* a 4) t)) (* b c)) (* (* x 4) i)) (* (* j 27) k)))