\frac{6 \cdot \left(x - 1\right)}{\left(x + 1\right) + 4 \cdot \sqrt{x}}6 \cdot \frac{x - 1}{\left(x + 1\right) + 4 \cdot \sqrt{x}}double f(double x) {
double r565310 = 6.0;
double r565311 = x;
double r565312 = 1.0;
double r565313 = r565311 - r565312;
double r565314 = r565310 * r565313;
double r565315 = r565311 + r565312;
double r565316 = 4.0;
double r565317 = sqrt(r565311);
double r565318 = r565316 * r565317;
double r565319 = r565315 + r565318;
double r565320 = r565314 / r565319;
return r565320;
}
double f(double x) {
double r565321 = 6.0;
double r565322 = x;
double r565323 = 1.0;
double r565324 = r565322 - r565323;
double r565325 = r565322 + r565323;
double r565326 = 4.0;
double r565327 = sqrt(r565322);
double r565328 = r565326 * r565327;
double r565329 = r565325 + r565328;
double r565330 = r565324 / r565329;
double r565331 = r565321 * r565330;
return r565331;
}




Bits error versus x
Results
| Original | 0.2 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.2
rmApplied *-un-lft-identity0.2
Applied times-frac0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019323
(FPCore (x)
:name "Data.Approximate.Numerics:blog from approximate-0.2.2.1"
:precision binary64
:herbie-target
(/ 6 (/ (+ (+ x 1) (* 4 (sqrt x))) (- x 1)))
(/ (* 6 (- x 1)) (+ (+ x 1) (* 4 (sqrt x)))))