\frac{x}{x} - \frac{1}{x} \cdot \sqrt{x \cdot x}1 - \frac{\left|x\right|}{x}double f(double x) {
double r3650105 = x;
double r3650106 = r3650105 / r3650105;
double r3650107 = 1.0;
double r3650108 = r3650107 / r3650105;
double r3650109 = r3650105 * r3650105;
double r3650110 = sqrt(r3650109);
double r3650111 = r3650108 * r3650110;
double r3650112 = r3650106 - r3650111;
return r3650112;
}
double f(double x) {
double r3650113 = 1.0;
double r3650114 = x;
double r3650115 = fabs(r3650114);
double r3650116 = r3650115 / r3650114;
double r3650117 = r3650113 - r3650116;
return r3650117;
}




Bits error versus x
Results
| Original | 32.6 |
|---|---|
| Target | 0 |
| Herbie | 0 |
Initial program 32.6
Simplified0
Final simplification0
herbie shell --seed 2019133 +o rules:numerics
(FPCore (x)
:name "sqrt sqr"
:herbie-target
(if (< x 0) 2 0)
(- (/ x x) (* (/ 1 x) (sqrt (* x x)))))