Average Error: 29.2 → 0.0
Time: 9.7s
Precision: 64
Internal Precision: 1408
\[\log \left(N + 1\right) - \log N\]
\[\log_* (1 + \frac{1}{N})\]

Error

Bits error versus N

Derivation

  1. Initial program 29.2

    \[\log \left(N + 1\right) - \log N\]
  2. Applied simplify29.2

    \[\leadsto \color{blue}{\log_* (1 + N) - \log N}\]
  3. Using strategy rm
  4. Applied log1p-udef29.2

    \[\leadsto \color{blue}{\log \left(1 + N\right)} - \log N\]
  5. Applied diff-log29.0

    \[\leadsto \color{blue}{\log \left(\frac{1 + N}{N}\right)}\]
  6. Taylor expanded around 0 29.0

    \[\leadsto \log \color{blue}{\left(1 + \frac{1}{N}\right)}\]
  7. Applied simplify0.0

    \[\leadsto \color{blue}{\log_* (1 + \frac{1}{N})}\]

Runtime

Time bar (total: 9.7s)Debug logProfile

herbie shell --seed '#(1070131407 1246090267 3027482374 2150728003 2026520792 2347815650)' +o rules:numerics
(FPCore (N)
  :name "2log (problem 3.3.6)"
  (- (log (+ N 1)) (log N)))