Average Error: 63.0 → 0.0
Time: 16.0s
Precision: 64
\[n \gt 6.8 \cdot 10^{15}\]
\[\left(\left(n + 1\right) \cdot \log \left(n + 1\right) - n \cdot \log n\right) - 1\]
\[0 - \left(\left(\left(2 \cdot \log \left(\frac{\sqrt{1}}{\sqrt{n}}\right)\right) \cdot 1 - \frac{\frac{1}{2}}{n}\right) + \frac{\frac{\frac{3002399751580331}{18014398509481984}}{n}}{n}\right)\]
\left(\left(n + 1\right) \cdot \log \left(n + 1\right) - n \cdot \log n\right) - 1
0 - \left(\left(\left(2 \cdot \log \left(\frac{\sqrt{1}}{\sqrt{n}}\right)\right) \cdot 1 - \frac{\frac{1}{2}}{n}\right) + \frac{\frac{\frac{3002399751580331}{18014398509481984}}{n}}{n}\right)
double f(double n) {
        double r54362 = n;
        double r54363 = 1.0;
        double r54364 = r54362 + r54363;
        double r54365 = log(r54364);
        double r54366 = r54364 * r54365;
        double r54367 = log(r54362);
        double r54368 = r54362 * r54367;
        double r54369 = r54366 - r54368;
        double r54370 = r54369 - r54363;
        return r54370;
}

double f(double n) {
        double r54371 = 0.0;
        double r54372 = 2.0;
        double r54373 = 1.0;
        double r54374 = sqrt(r54373);
        double r54375 = n;
        double r54376 = sqrt(r54375);
        double r54377 = r54374 / r54376;
        double r54378 = log(r54377);
        double r54379 = r54372 * r54378;
        double r54380 = 1.0;
        double r54381 = r54379 * r54380;
        double r54382 = 2.0;
        double r54383 = r54380 / r54382;
        double r54384 = r54383 / r54375;
        double r54385 = r54381 - r54384;
        double r54386 = 3002399751580331.0;
        double r54387 = 18014398509481984.0;
        double r54388 = r54386 / r54387;
        double r54389 = r54388 / r54375;
        double r54390 = r54389 / r54375;
        double r54391 = r54385 + r54390;
        double r54392 = r54371 - r54391;
        return r54392;
}

Error

Bits error versus n

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original63.0
Target0
Herbie0.0
\[\log \left(n + 1\right) - \left(\frac{1}{2 \cdot n} - \left(\frac{1}{3 \cdot \left(n \cdot n\right)} - \frac{4}{{n}^{3}}\right)\right)\]

Derivation

  1. Initial program 63.0

    \[\left(\left(n + 1\right) \cdot \log \left(n + 1\right) - n \cdot \log n\right) - 1\]
  2. Taylor expanded around inf 0.0

    \[\leadsto \color{blue}{\left(\left(0.5 \cdot \frac{1}{n} + 1\right) - \left(1 \cdot \log \left(\frac{1}{n}\right) + 0.1666666666666666851703837437526090070605 \cdot \frac{1}{{n}^{2}}\right)\right)} - 1\]
  3. Simplified0.0

    \[\leadsto \color{blue}{\left(\left(1 - \left(1 \cdot \log \left(\frac{1}{n}\right) + \frac{3002399751580331}{18014398509481984} \cdot \frac{1}{{n}^{2}}\right)\right) + \frac{\frac{1}{2}}{n}\right)} - 1\]
  4. Using strategy rm
  5. Applied add-sqr-sqrt0.0

    \[\leadsto \left(\left(1 - \left(1 \cdot \log \left(\frac{1}{\color{blue}{\sqrt{n} \cdot \sqrt{n}}}\right) + \frac{3002399751580331}{18014398509481984} \cdot \frac{1}{{n}^{2}}\right)\right) + \frac{\frac{1}{2}}{n}\right) - 1\]
  6. Applied add-sqr-sqrt0.0

    \[\leadsto \left(\left(1 - \left(1 \cdot \log \left(\frac{\color{blue}{\sqrt{1} \cdot \sqrt{1}}}{\sqrt{n} \cdot \sqrt{n}}\right) + \frac{3002399751580331}{18014398509481984} \cdot \frac{1}{{n}^{2}}\right)\right) + \frac{\frac{1}{2}}{n}\right) - 1\]
  7. Applied times-frac0.0

    \[\leadsto \left(\left(1 - \left(1 \cdot \log \color{blue}{\left(\frac{\sqrt{1}}{\sqrt{n}} \cdot \frac{\sqrt{1}}{\sqrt{n}}\right)} + \frac{3002399751580331}{18014398509481984} \cdot \frac{1}{{n}^{2}}\right)\right) + \frac{\frac{1}{2}}{n}\right) - 1\]
  8. Applied log-prod0.0

    \[\leadsto \left(\left(1 - \left(1 \cdot \color{blue}{\left(\log \left(\frac{\sqrt{1}}{\sqrt{n}}\right) + \log \left(\frac{\sqrt{1}}{\sqrt{n}}\right)\right)} + \frac{3002399751580331}{18014398509481984} \cdot \frac{1}{{n}^{2}}\right)\right) + \frac{\frac{1}{2}}{n}\right) - 1\]
  9. Final simplification0.0

    \[\leadsto 0 - \left(\left(\left(2 \cdot \log \left(\frac{\sqrt{1}}{\sqrt{n}}\right)\right) \cdot 1 - \frac{\frac{1}{2}}{n}\right) + \frac{\frac{\frac{3002399751580331}{18014398509481984}}{n}}{n}\right)\]

Reproduce

herbie shell --seed 2019303 
(FPCore (n)
  :name "logs (example 3.8)"
  :precision binary64
  :pre (> n 6.8e15)

  :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))