\frac{x}{x} - \frac{1}{x} \cdot \sqrt{x \cdot x}1 - 1 \cdot \frac{\left|x\right|}{x}double f(double x) {
double r4539270 = x;
double r4539271 = r4539270 / r4539270;
double r4539272 = 1.0;
double r4539273 = r4539272 / r4539270;
double r4539274 = r4539270 * r4539270;
double r4539275 = sqrt(r4539274);
double r4539276 = r4539273 * r4539275;
double r4539277 = r4539271 - r4539276;
return r4539277;
}
double f(double x) {
double r4539278 = 1.0;
double r4539279 = 1.0;
double r4539280 = x;
double r4539281 = fabs(r4539280);
double r4539282 = r4539281 / r4539280;
double r4539283 = r4539279 * r4539282;
double r4539284 = r4539278 - r4539283;
return r4539284;
}




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