\left(x - \frac{y}{z \cdot 3}\right) + \frac{t}{\left(z \cdot 3\right) \cdot y}x + \left(\frac{\frac{\frac{t}{3}}{z}}{y} - \frac{y}{z \cdot 3}\right)double f(double x, double y, double z, double t) {
double r622734 = x;
double r622735 = y;
double r622736 = z;
double r622737 = 3.0;
double r622738 = r622736 * r622737;
double r622739 = r622735 / r622738;
double r622740 = r622734 - r622739;
double r622741 = t;
double r622742 = r622738 * r622735;
double r622743 = r622741 / r622742;
double r622744 = r622740 + r622743;
return r622744;
}
double f(double x, double y, double z, double t) {
double r622745 = x;
double r622746 = t;
double r622747 = 3.0;
double r622748 = r622746 / r622747;
double r622749 = z;
double r622750 = r622748 / r622749;
double r622751 = y;
double r622752 = r622750 / r622751;
double r622753 = r622749 * r622747;
double r622754 = r622751 / r622753;
double r622755 = r622752 - r622754;
double r622756 = r622745 + r622755;
return r622756;
}




Bits error versus x




Bits error versus y




Bits error versus z




Bits error versus t
Results
| Original | 3.7 |
|---|---|
| Target | 1.6 |
| Herbie | 1.5 |
Initial program 3.7
rmApplied sub-neg3.7
Applied associate-+l+3.7
Simplified1.6
rmApplied *-un-lft-identity1.6
Applied associate-/r*1.6
Simplified1.5
Final simplification1.5
herbie shell --seed 2019196
(FPCore (x y z t)
:name "Diagrams.Solve.Polynomial:cubForm from diagrams-solve-0.1, H"
:herbie-target
(+ (- x (/ y (* z 3.0))) (/ (/ t (* z 3.0)) y))
(+ (- x (/ y (* z 3.0))) (/ t (* (* z 3.0) y))))