\left(\left(n + 1\right) \cdot \log \left(n + 1\right) - n \cdot \log n\right) - 1
\left(\log n + \frac{\frac{-1}{6}}{n \cdot n}\right) + \frac{\frac{1}{2}}{n}double f(double n) {
double r1198354 = n;
double r1198355 = 1.0;
double r1198356 = r1198354 + r1198355;
double r1198357 = log(r1198356);
double r1198358 = r1198356 * r1198357;
double r1198359 = log(r1198354);
double r1198360 = r1198354 * r1198359;
double r1198361 = r1198358 - r1198360;
double r1198362 = r1198361 - r1198355;
return r1198362;
}
double f(double n) {
double r1198363 = n;
double r1198364 = log(r1198363);
double r1198365 = -0.16666666666666666;
double r1198366 = r1198363 * r1198363;
double r1198367 = r1198365 / r1198366;
double r1198368 = r1198364 + r1198367;
double r1198369 = 0.5;
double r1198370 = r1198369 / r1198363;
double r1198371 = r1198368 + r1198370;
return r1198371;
}




Bits error versus n
Results
| Original | 63.0 |
|---|---|
| Target | 0 |
| Herbie | 0 |
Initial program 63.0
Taylor expanded around inf 0.0
Simplified0.0
Taylor expanded around 0 0
Simplified0
Final simplification0
herbie shell --seed 2019152
(FPCore (n)
:name "logs (example 3.8)"
: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))