\frac{x}{x} - \frac{1}{x} \cdot \sqrt{x \cdot x}1 - 1 \cdot \frac{\left|x\right|}{x}double f(double x) {
double r163947 = x;
double r163948 = r163947 / r163947;
double r163949 = 1.0;
double r163950 = r163949 / r163947;
double r163951 = r163947 * r163947;
double r163952 = sqrt(r163951);
double r163953 = r163950 * r163952;
double r163954 = r163948 - r163953;
return r163954;
}
double f(double x) {
double r163955 = 1.0;
double r163956 = 1.0;
double r163957 = x;
double r163958 = fabs(r163957);
double r163959 = r163958 / r163957;
double r163960 = r163956 * r163959;
double r163961 = r163955 - r163960;
return r163961;
}




Bits error versus x
Results
| Original | 32.4 |
|---|---|
| Target | 0 |
| Herbie | 0 |
Initial program 32.4
Simplified4.8
rmApplied div-inv4.8
Applied associate-*l*4.8
Simplified0
Final simplification0
herbie shell --seed 2019235 +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)))))