\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}\;\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 = -\infty \lor \neg \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 \le 2.530535503433688 \cdot 10^{300}\right):\\
\;\;\;\;\mathsf{fma}\left(\left(t \cdot y\right) \cdot \left(z \cdot 18\right), x, b \cdot c - \mathsf{fma}\left(4, \mathsf{fma}\left(t, a, x \cdot i\right), \left(j \cdot 27\right) \cdot k\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\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) - \sqrt{27} \cdot \left(\sqrt{27} \cdot \left(k \cdot j\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 r137057 = x;
double r137058 = 18.0;
double r137059 = r137057 * r137058;
double r137060 = y;
double r137061 = r137059 * r137060;
double r137062 = z;
double r137063 = r137061 * r137062;
double r137064 = t;
double r137065 = r137063 * r137064;
double r137066 = a;
double r137067 = 4.0;
double r137068 = r137066 * r137067;
double r137069 = r137068 * r137064;
double r137070 = r137065 - r137069;
double r137071 = b;
double r137072 = c;
double r137073 = r137071 * r137072;
double r137074 = r137070 + r137073;
double r137075 = r137057 * r137067;
double r137076 = i;
double r137077 = r137075 * r137076;
double r137078 = r137074 - r137077;
double r137079 = j;
double r137080 = 27.0;
double r137081 = r137079 * r137080;
double r137082 = k;
double r137083 = r137081 * r137082;
double r137084 = r137078 - r137083;
return r137084;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r137085 = x;
double r137086 = 18.0;
double r137087 = r137085 * r137086;
double r137088 = y;
double r137089 = r137087 * r137088;
double r137090 = z;
double r137091 = r137089 * r137090;
double r137092 = t;
double r137093 = r137091 * r137092;
double r137094 = a;
double r137095 = 4.0;
double r137096 = r137094 * r137095;
double r137097 = r137096 * r137092;
double r137098 = r137093 - r137097;
double r137099 = b;
double r137100 = c;
double r137101 = r137099 * r137100;
double r137102 = r137098 + r137101;
double r137103 = r137085 * r137095;
double r137104 = i;
double r137105 = r137103 * r137104;
double r137106 = r137102 - r137105;
double r137107 = -inf.0;
bool r137108 = r137106 <= r137107;
double r137109 = 2.530535503433688e+300;
bool r137110 = r137106 <= r137109;
double r137111 = !r137110;
bool r137112 = r137108 || r137111;
double r137113 = r137092 * r137088;
double r137114 = r137090 * r137086;
double r137115 = r137113 * r137114;
double r137116 = r137085 * r137104;
double r137117 = fma(r137092, r137094, r137116);
double r137118 = j;
double r137119 = 27.0;
double r137120 = r137118 * r137119;
double r137121 = k;
double r137122 = r137120 * r137121;
double r137123 = fma(r137095, r137117, r137122);
double r137124 = r137101 - r137123;
double r137125 = fma(r137115, r137085, r137124);
double r137126 = sqrt(r137119);
double r137127 = r137121 * r137118;
double r137128 = r137126 * r137127;
double r137129 = r137126 * r137128;
double r137130 = r137106 - r137129;
double r137131 = r137112 ? r137125 : r137130;
return r137131;
}



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 (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < -inf.0 or 2.530535503433688e+300 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) Initial program 56.5
Simplified7.6
if -inf.0 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < 2.530535503433688e+300Initial program 0.4
rmApplied pow10.4
Applied pow10.4
Applied pow10.4
Applied pow-prod-down0.4
Applied pow-prod-down0.4
Simplified0.3
rmApplied add-sqr-sqrt0.3
Applied associate-*l*0.3
Final simplification0.9
herbie shell --seed 2020047 +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)))