\log \left(N + 1\right) - \log N
\begin{array}{l}
\mathbf{if}\;N \le 5705.402280155900371028110384941101074219:\\
\;\;\;\;\log \left(\sqrt{\frac{1 + N}{N}}\right) + \left(\log \left(\sqrt{1 + N}\right) - \log \left(\sqrt{N}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(\frac{1}{N}, 1, \frac{\frac{1}{N}}{N} \cdot \left(\frac{0.3333333333333333148296162562473909929395}{N} - 0.5\right)\right)\\
\end{array}double f(double N) {
double r3015077 = N;
double r3015078 = 1.0;
double r3015079 = r3015077 + r3015078;
double r3015080 = log(r3015079);
double r3015081 = log(r3015077);
double r3015082 = r3015080 - r3015081;
return r3015082;
}
double f(double N) {
double r3015083 = N;
double r3015084 = 5705.4022801559;
bool r3015085 = r3015083 <= r3015084;
double r3015086 = 1.0;
double r3015087 = r3015086 + r3015083;
double r3015088 = r3015087 / r3015083;
double r3015089 = sqrt(r3015088);
double r3015090 = log(r3015089);
double r3015091 = sqrt(r3015087);
double r3015092 = log(r3015091);
double r3015093 = sqrt(r3015083);
double r3015094 = log(r3015093);
double r3015095 = r3015092 - r3015094;
double r3015096 = r3015090 + r3015095;
double r3015097 = 1.0;
double r3015098 = r3015097 / r3015083;
double r3015099 = r3015098 / r3015083;
double r3015100 = 0.3333333333333333;
double r3015101 = r3015100 / r3015083;
double r3015102 = 0.5;
double r3015103 = r3015101 - r3015102;
double r3015104 = r3015099 * r3015103;
double r3015105 = fma(r3015098, r3015086, r3015104);
double r3015106 = r3015085 ? r3015096 : r3015105;
return r3015106;
}



Bits error versus N
if N < 5705.4022801559Initial program 0.1
rmApplied diff-log0.1
rmApplied add-sqr-sqrt0.1
Applied log-prod0.1
rmApplied sqrt-div0.1
Applied log-div0.1
if 5705.4022801559 < N Initial program 59.3
Taylor expanded around inf 0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019174 +o rules:numerics
(FPCore (N)
:name "2log (problem 3.3.6)"
(- (log (+ N 1.0)) (log N)))