\left(\left(n + 1\right) \cdot \log \left(n + 1\right) - n \cdot \log n\right) - 1
\left(\left(1 - \left(1 \cdot \log \left(\frac{1}{n}\right) + 0.16666666666666669 \cdot \frac{1}{{n}^{2}}\right)\right) + \frac{0.5}{n}\right) - 1double f(double n) {
double r60218 = n;
double r60219 = 1.0;
double r60220 = r60218 + r60219;
double r60221 = log(r60220);
double r60222 = r60220 * r60221;
double r60223 = log(r60218);
double r60224 = r60218 * r60223;
double r60225 = r60222 - r60224;
double r60226 = r60225 - r60219;
return r60226;
}
double f(double n) {
double r60227 = 1.0;
double r60228 = 1.0;
double r60229 = n;
double r60230 = r60228 / r60229;
double r60231 = log(r60230);
double r60232 = r60227 * r60231;
double r60233 = 0.16666666666666669;
double r60234 = 2.0;
double r60235 = pow(r60229, r60234);
double r60236 = r60228 / r60235;
double r60237 = r60233 * r60236;
double r60238 = r60232 + r60237;
double r60239 = r60227 - r60238;
double r60240 = 0.5;
double r60241 = r60240 / r60229;
double r60242 = r60239 + r60241;
double r60243 = r60242 - r60227;
return r60243;
}




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 2020083
(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))