\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 1.191425524707375816183030560675713891259 \cdot 10^{284}\right):\\
\;\;\;\;\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot \left(t \cdot z\right) - \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\\
\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) - 27 \cdot \left(k \cdot j\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 r110777 = x;
double r110778 = 18.0;
double r110779 = r110777 * r110778;
double r110780 = y;
double r110781 = r110779 * r110780;
double r110782 = z;
double r110783 = r110781 * r110782;
double r110784 = t;
double r110785 = r110783 * r110784;
double r110786 = a;
double r110787 = 4.0;
double r110788 = r110786 * r110787;
double r110789 = r110788 * r110784;
double r110790 = r110785 - r110789;
double r110791 = b;
double r110792 = c;
double r110793 = r110791 * r110792;
double r110794 = r110790 + r110793;
double r110795 = r110777 * r110787;
double r110796 = i;
double r110797 = r110795 * r110796;
double r110798 = r110794 - r110797;
double r110799 = j;
double r110800 = 27.0;
double r110801 = r110799 * r110800;
double r110802 = k;
double r110803 = r110801 * r110802;
double r110804 = r110798 - r110803;
return r110804;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r110805 = x;
double r110806 = 18.0;
double r110807 = r110805 * r110806;
double r110808 = y;
double r110809 = r110807 * r110808;
double r110810 = z;
double r110811 = r110809 * r110810;
double r110812 = t;
double r110813 = r110811 * r110812;
double r110814 = a;
double r110815 = 4.0;
double r110816 = r110814 * r110815;
double r110817 = r110816 * r110812;
double r110818 = r110813 - r110817;
double r110819 = b;
double r110820 = c;
double r110821 = r110819 * r110820;
double r110822 = r110818 + r110821;
double r110823 = r110805 * r110815;
double r110824 = i;
double r110825 = r110823 * r110824;
double r110826 = r110822 - r110825;
double r110827 = -inf.0;
bool r110828 = r110826 <= r110827;
double r110829 = 1.1914255247073758e+284;
bool r110830 = r110826 <= r110829;
double r110831 = !r110830;
bool r110832 = r110828 || r110831;
double r110833 = r110812 * r110810;
double r110834 = r110809 * r110833;
double r110835 = r110834 - r110817;
double r110836 = r110835 + r110821;
double r110837 = r110836 - r110825;
double r110838 = j;
double r110839 = 27.0;
double r110840 = r110838 * r110839;
double r110841 = k;
double r110842 = r110840 * r110841;
double r110843 = r110837 - r110842;
double r110844 = r110841 * r110838;
double r110845 = r110839 * r110844;
double r110846 = r110826 - r110845;
double r110847 = r110832 ? r110843 : r110846;
return r110847;
}



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 (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < -inf.0 or 1.1914255247073758e+284 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) Initial program 46.8
rmApplied associate-*l*28.1
Simplified28.1
if -inf.0 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < 1.1914255247073758e+284Initial program 0.3
rmApplied associate-*l*0.4
rmApplied pow10.4
Applied pow10.4
Applied pow-prod-down0.4
Applied pow10.4
Applied pow-prod-down0.4
Simplified0.3
Final simplification3.5
herbie shell --seed 2019306
(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)))