\log \left(N + 1\right) - \log N
\begin{array}{l}
\mathbf{if}\;N \le 7627.9955927630945:\\
\;\;\;\;\log \left(\frac{1 + N}{N}\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{1}{N} + \frac{\frac{-1}{2}}{N \cdot N}\right) - \frac{\frac{-1}{3}}{N \cdot \left(N \cdot N\right)}\\
\end{array}double f(double N) {
double r1804109 = N;
double r1804110 = 1.0;
double r1804111 = r1804109 + r1804110;
double r1804112 = log(r1804111);
double r1804113 = log(r1804109);
double r1804114 = r1804112 - r1804113;
return r1804114;
}
double f(double N) {
double r1804115 = N;
double r1804116 = 7627.9955927630945;
bool r1804117 = r1804115 <= r1804116;
double r1804118 = 1.0;
double r1804119 = r1804118 + r1804115;
double r1804120 = r1804119 / r1804115;
double r1804121 = log(r1804120);
double r1804122 = r1804118 / r1804115;
double r1804123 = -0.5;
double r1804124 = r1804115 * r1804115;
double r1804125 = r1804123 / r1804124;
double r1804126 = r1804122 + r1804125;
double r1804127 = -0.3333333333333333;
double r1804128 = r1804115 * r1804124;
double r1804129 = r1804127 / r1804128;
double r1804130 = r1804126 - r1804129;
double r1804131 = r1804117 ? r1804121 : r1804130;
return r1804131;
}



Bits error versus N
Results
if N < 7627.9955927630945Initial program 0.1
Simplified0.1
rmApplied log1p-udef0.1
Applied diff-log0.1
if 7627.9955927630945 < N Initial program 59.5
Simplified59.5
rmApplied log1p-udef59.5
Applied diff-log59.3
Taylor expanded around -inf 59.3
rmApplied add-exp-log59.3
Taylor expanded around inf 0.0
Simplified0.0
Final simplification0.1
herbie shell --seed 2019120 +o rules:numerics
(FPCore (N)
:name "2log (problem 3.3.6)"
(- (log (+ N 1)) (log N)))