\frac{x}{x} - \frac{1}{x} \cdot \sqrt{x \cdot x}1 - \sqrt[3]{{\left(\left|x\right| \cdot \frac{1}{x}\right)}^{3}}double f(double x) {
double r99019 = x;
double r99020 = r99019 / r99019;
double r99021 = 1.0;
double r99022 = r99021 / r99019;
double r99023 = r99019 * r99019;
double r99024 = sqrt(r99023);
double r99025 = r99022 * r99024;
double r99026 = r99020 - r99025;
return r99026;
}
double f(double x) {
double r99027 = 1.0;
double r99028 = x;
double r99029 = fabs(r99028);
double r99030 = 1.0;
double r99031 = r99030 / r99028;
double r99032 = r99029 * r99031;
double r99033 = 3.0;
double r99034 = pow(r99032, r99033);
double r99035 = cbrt(r99034);
double r99036 = r99027 - r99035;
return r99036;
}




Bits error versus x
Results
| Original | 32.8 |
|---|---|
| Target | 0 |
| Herbie | 0.0 |
Initial program 32.8
Simplified4.5
rmApplied add-cbrt-cube45.5
Applied add-cbrt-cube43.8
Applied add-cbrt-cube43.8
Applied cbrt-undiv49.5
Applied cbrt-unprod42.9
Simplified0.0
Final simplification0.0
herbie shell --seed 2019325 +o rules:numerics
(FPCore (x)
:name "sqrt sqr"
:precision binary64
:herbie-target
(if (< x 0.0) 2 0.0)
(- (/ x x) (* (/ 1 x) (sqrt (* x x)))))