\frac{x}{x} - \frac{1}{x} \cdot \sqrt{x \cdot x}1 - 1 \cdot \frac{\left|x\right|}{x}double f(double x) {
double r5185836 = x;
double r5185837 = r5185836 / r5185836;
double r5185838 = 1.0;
double r5185839 = r5185838 / r5185836;
double r5185840 = r5185836 * r5185836;
double r5185841 = sqrt(r5185840);
double r5185842 = r5185839 * r5185841;
double r5185843 = r5185837 - r5185842;
return r5185843;
}
double f(double x) {
double r5185844 = 1.0;
double r5185845 = 1.0;
double r5185846 = x;
double r5185847 = fabs(r5185846);
double r5185848 = r5185847 / r5185846;
double r5185849 = r5185845 * r5185848;
double r5185850 = r5185844 - r5185849;
return r5185850;
}




Bits error versus x
Results
| Original | 32.6 |
|---|---|
| Target | 0 |
| Herbie | 0 |
Initial program 32.6
Simplified4.6
rmApplied div-inv4.6
Applied associate-*l*4.6
Simplified0
Final simplification0
herbie shell --seed 2019171
(FPCore (x)
:name "sqrt sqr"
:herbie-target
(if (< x 0.0) 2.0 0.0)
(- (/ x x) (* (/ 1.0 x) (sqrt (* x x)))))