x - \frac{3}{8} \cdot y\frac{3}{8} \cdot \left(\left(-y\right) + y\right) + \left(x - \frac{\frac{1}{\sqrt{\sqrt{8}}}}{\sqrt{\frac{8}{3}}} \cdot \frac{y}{\sqrt{\frac{\sqrt{8}}{3}}}\right)double f(double x, double y) {
double r8587819 = x;
double r8587820 = 3.0;
double r8587821 = 8.0;
double r8587822 = r8587820 / r8587821;
double r8587823 = y;
double r8587824 = r8587822 * r8587823;
double r8587825 = r8587819 - r8587824;
return r8587825;
}
double f(double x, double y) {
double r8587826 = 3.0;
double r8587827 = 8.0;
double r8587828 = r8587826 / r8587827;
double r8587829 = y;
double r8587830 = -r8587829;
double r8587831 = r8587830 + r8587829;
double r8587832 = r8587828 * r8587831;
double r8587833 = x;
double r8587834 = 1.0;
double r8587835 = sqrt(r8587827);
double r8587836 = sqrt(r8587835);
double r8587837 = r8587834 / r8587836;
double r8587838 = r8587827 / r8587826;
double r8587839 = sqrt(r8587838);
double r8587840 = r8587837 / r8587839;
double r8587841 = r8587835 / r8587826;
double r8587842 = sqrt(r8587841);
double r8587843 = r8587829 / r8587842;
double r8587844 = r8587840 * r8587843;
double r8587845 = r8587833 - r8587844;
double r8587846 = r8587832 + r8587845;
return r8587846;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.1
rmApplied add-cube-cbrt0.8
Applied prod-diff0.8
Simplified0.2
Simplified0.2
rmApplied add-sqr-sqrt0.2
Applied *-un-lft-identity0.2
Applied times-frac0.3
rmApplied *-un-lft-identity0.3
Applied add-sqr-sqrt0.6
Applied times-frac0.3
Applied sqrt-prod0.6
Applied *-un-lft-identity0.6
Applied times-frac0.5
Applied associate-*r*0.6
Simplified0.2
Final simplification0.2
herbie shell --seed 2019168 +o rules:numerics
(FPCore (x y)
:name "Diagrams.Solve.Polynomial:quartForm from diagrams-solve-0.1, A"
(- x (* (/ 3.0 8.0) y)))