\left(\frac{1}{x + 1} - \frac{2}{x}\right) + \frac{1}{x - 1}2 \cdot \frac{\frac{1}{x}}{x \cdot x - 1}double f(double x) {
double r3828752 = 1.0;
double r3828753 = x;
double r3828754 = r3828753 + r3828752;
double r3828755 = r3828752 / r3828754;
double r3828756 = 2.0;
double r3828757 = r3828756 / r3828753;
double r3828758 = r3828755 - r3828757;
double r3828759 = r3828753 - r3828752;
double r3828760 = r3828752 / r3828759;
double r3828761 = r3828758 + r3828760;
return r3828761;
}
double f(double x) {
double r3828762 = 2.0;
double r3828763 = 1.0;
double r3828764 = x;
double r3828765 = r3828763 / r3828764;
double r3828766 = r3828764 * r3828764;
double r3828767 = r3828766 - r3828763;
double r3828768 = r3828765 / r3828767;
double r3828769 = r3828762 * r3828768;
return r3828769;
}




Bits error versus x
Results
| Original | 9.8 |
|---|---|
| Target | 0.3 |
| Herbie | 0.1 |
Initial program 9.8
rmApplied frac-sub26.0
Applied frac-add25.4
Taylor expanded around inf 0.3
rmApplied div-inv0.3
Simplified0.1
Final simplification0.1
herbie shell --seed 2019151
(FPCore (x)
:name "3frac (problem 3.3.3)"
:herbie-target
(/ 2 (* x (- (* x x) 1)))
(+ (- (/ 1 (+ x 1)) (/ 2 x)) (/ 1 (- x 1))))