\left(\left(n + 1\right) \cdot \log \left(n + 1\right) - n \cdot \log n\right) - 1
\left(\left(\left(1 + \frac{0.5}{n}\right) - \frac{0.16666666666666669}{n \cdot n}\right) + \log n \cdot 1\right) - 1double f(double n) {
double r75301 = n;
double r75302 = 1.0;
double r75303 = r75301 + r75302;
double r75304 = log(r75303);
double r75305 = r75303 * r75304;
double r75306 = log(r75301);
double r75307 = r75301 * r75306;
double r75308 = r75305 - r75307;
double r75309 = r75308 - r75302;
return r75309;
}
double f(double n) {
double r75310 = 1.0;
double r75311 = 0.5;
double r75312 = n;
double r75313 = r75311 / r75312;
double r75314 = r75310 + r75313;
double r75315 = 0.16666666666666669;
double r75316 = r75312 * r75312;
double r75317 = r75315 / r75316;
double r75318 = r75314 - r75317;
double r75319 = log(r75312);
double r75320 = r75319 * r75310;
double r75321 = r75318 + r75320;
double r75322 = r75321 - r75310;
return r75322;
}




Bits error versus n
Results
| Original | 63.0 |
|---|---|
| Target | 0 |
| Herbie | 0.0 |
Initial program 63.0
Taylor expanded around inf 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020042
(FPCore (n)
:name "logs (example 3.8)"
:precision binary64
:pre (> n 6.8e+15)
:herbie-target
(- (log (+ n 1)) (- (/ 1 (* 2 n)) (- (/ 1 (* 3 (* n n))) (/ 4 (pow n 3)))))
(- (- (* (+ n 1) (log (+ n 1))) (* n (log n))) 1))