\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
\left(c \cdot b - \left(i \cdot \left(x \cdot 4.0\right) + \sqrt{27.0} \cdot \left(k \cdot \left(\sqrt{27.0} \cdot j\right)\right)\right)\right) + t \cdot \left(\left(z \cdot x\right) \cdot \left(y \cdot 18.0\right) - 4.0 \cdot a\right)double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r14449867 = x;
double r14449868 = 18.0;
double r14449869 = r14449867 * r14449868;
double r14449870 = y;
double r14449871 = r14449869 * r14449870;
double r14449872 = z;
double r14449873 = r14449871 * r14449872;
double r14449874 = t;
double r14449875 = r14449873 * r14449874;
double r14449876 = a;
double r14449877 = 4.0;
double r14449878 = r14449876 * r14449877;
double r14449879 = r14449878 * r14449874;
double r14449880 = r14449875 - r14449879;
double r14449881 = b;
double r14449882 = c;
double r14449883 = r14449881 * r14449882;
double r14449884 = r14449880 + r14449883;
double r14449885 = r14449867 * r14449877;
double r14449886 = i;
double r14449887 = r14449885 * r14449886;
double r14449888 = r14449884 - r14449887;
double r14449889 = j;
double r14449890 = 27.0;
double r14449891 = r14449889 * r14449890;
double r14449892 = k;
double r14449893 = r14449891 * r14449892;
double r14449894 = r14449888 - r14449893;
return r14449894;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r14449895 = c;
double r14449896 = b;
double r14449897 = r14449895 * r14449896;
double r14449898 = i;
double r14449899 = x;
double r14449900 = 4.0;
double r14449901 = r14449899 * r14449900;
double r14449902 = r14449898 * r14449901;
double r14449903 = 27.0;
double r14449904 = sqrt(r14449903);
double r14449905 = k;
double r14449906 = j;
double r14449907 = r14449904 * r14449906;
double r14449908 = r14449905 * r14449907;
double r14449909 = r14449904 * r14449908;
double r14449910 = r14449902 + r14449909;
double r14449911 = r14449897 - r14449910;
double r14449912 = t;
double r14449913 = z;
double r14449914 = r14449913 * r14449899;
double r14449915 = y;
double r14449916 = 18.0;
double r14449917 = r14449915 * r14449916;
double r14449918 = r14449914 * r14449917;
double r14449919 = a;
double r14449920 = r14449900 * r14449919;
double r14449921 = r14449918 - r14449920;
double r14449922 = r14449912 * r14449921;
double r14449923 = r14449911 + r14449922;
return r14449923;
}



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
Initial program 4.9
Simplified4.7
Taylor expanded around inf 5.8
Simplified4.7
rmApplied associate-*l*4.6
rmApplied add-sqr-sqrt4.6
Applied associate-*l*4.7
rmApplied associate-*r*4.7
Final simplification4.7
herbie shell --seed 2019112
(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)))