Average Error: 29.7 → 0.1
Time: 19.5s
Precision: 64
Internal Precision: 128
\[\log \left(N + 1\right) - \log N\]
\[\begin{array}{l} \mathbf{if}\;N \le 5250.505171858608:\\ \;\;\;\;\sqrt{\log \left(1 + N\right)} \cdot \sqrt{\log \left(1 + N\right)} - \log N\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\left(\frac{1}{2} + \frac{\frac{1}{3}}{N}\right) - \frac{\frac{1}{4}}{N}\right) - \frac{\frac{\frac{-1}{9}}{N} \cdot \frac{1}{N}}{N}}{\frac{1}{2} \cdot N + \frac{1}{3}}\\ \end{array}\]

Error

Bits error versus N

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if N < 5250.505171858608

    1. Initial program 0.1

      \[\log \left(N + 1\right) - \log N\]
    2. Using strategy rm
    3. Applied add-sqr-sqrt0.1

      \[\leadsto \color{blue}{\sqrt{\log \left(N + 1\right)} \cdot \sqrt{\log \left(N + 1\right)}} - \log N\]

    if 5250.505171858608 < N

    1. Initial program 59.5

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

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

      \[\leadsto \color{blue}{\frac{1}{N} - \frac{1}{N \cdot N} \cdot \left(\frac{1}{2} - \frac{\frac{1}{3}}{N}\right)}\]
    4. Using strategy rm
    5. Applied flip--0.0

      \[\leadsto \frac{1}{N} - \frac{1}{N \cdot N} \cdot \color{blue}{\frac{\frac{1}{2} \cdot \frac{1}{2} - \frac{\frac{1}{3}}{N} \cdot \frac{\frac{1}{3}}{N}}{\frac{1}{2} + \frac{\frac{1}{3}}{N}}}\]
    6. Applied associate-*r/0.0

      \[\leadsto \frac{1}{N} - \color{blue}{\frac{\frac{1}{N \cdot N} \cdot \left(\frac{1}{2} \cdot \frac{1}{2} - \frac{\frac{1}{3}}{N} \cdot \frac{\frac{1}{3}}{N}\right)}{\frac{1}{2} + \frac{\frac{1}{3}}{N}}}\]
    7. Applied frac-sub0.0

      \[\leadsto \color{blue}{\frac{1 \cdot \left(\frac{1}{2} + \frac{\frac{1}{3}}{N}\right) - N \cdot \left(\frac{1}{N \cdot N} \cdot \left(\frac{1}{2} \cdot \frac{1}{2} - \frac{\frac{1}{3}}{N} \cdot \frac{\frac{1}{3}}{N}\right)\right)}{N \cdot \left(\frac{1}{2} + \frac{\frac{1}{3}}{N}\right)}}\]
    8. Simplified0.0

      \[\leadsto \frac{\color{blue}{\left(\left(\frac{\frac{1}{3}}{N} + \frac{1}{2}\right) - \frac{\frac{1}{4}}{N}\right) - \frac{\frac{\frac{-1}{9}}{N} \cdot \frac{1}{N}}{N}}}{N \cdot \left(\frac{1}{2} + \frac{\frac{1}{3}}{N}\right)}\]
    9. Simplified0.1

      \[\leadsto \frac{\left(\left(\frac{\frac{1}{3}}{N} + \frac{1}{2}\right) - \frac{\frac{1}{4}}{N}\right) - \frac{\frac{\frac{-1}{9}}{N} \cdot \frac{1}{N}}{N}}{\color{blue}{\frac{1}{3} + N \cdot \frac{1}{2}}}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification0.1

    \[\leadsto \begin{array}{l} \mathbf{if}\;N \le 5250.505171858608:\\ \;\;\;\;\sqrt{\log \left(1 + N\right)} \cdot \sqrt{\log \left(1 + N\right)} - \log N\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\left(\frac{1}{2} + \frac{\frac{1}{3}}{N}\right) - \frac{\frac{1}{4}}{N}\right) - \frac{\frac{\frac{-1}{9}}{N} \cdot \frac{1}{N}}{N}}{\frac{1}{2} \cdot N + \frac{1}{3}}\\ \end{array}\]

Reproduce

herbie shell --seed 2019002 
(FPCore (N)
  :name "2log (problem 3.3.6)"
  (- (log (+ N 1)) (log N)))

Details

Time bar (total: 18.7s)Debug log

sample131.0ms

Algorithm
intervals

simplify8.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

8.0ms
(- (log (+ N 1)) (log N))

prune9.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 31.9b

localize25.0ms

Local error

Found 2 expressions with local error:

2.9b
(- (log (+ N 1)) (log N))
2.5b
(log (+ N 1))

rewrite12.0ms

Algorithm
rewrite-expression-head
Counts
2 → 34
Calls

2 calls. Slowest were:

10.0ms
(- (log (+ N 1)) (log N))
2.0ms
(log (+ N 1))

series110.0ms

Counts
2 → 6
Calls

2 calls. Slowest were:

82.0ms
(- (log (+ N 1)) (log N))
28.0ms
(log (+ N 1))

simplify1.0s

Counts
22 → 40
Calls

22 calls. Slowest were:

280.0ms
(- (+ (/ 1 N) (log -1)) (+ (* 1/2 (/ 1 (pow N 2))) (log (/ -1 N))))
203.0ms
(- (/ 1 N) (+ (* 1/2 (/ 1 (pow N 2))) (log (/ 1 N))))
137.0ms
(- (+ (* 1/3 (/ 1 (pow N 3))) (/ 1 N)) (* 1/2 (/ 1 (pow N 2))))

prune339.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0.0b

localize38.0ms

Local error

Found 4 expressions with local error:

0.4b
(/ 1/3 N)
0.2b
(/ 1 (* N N))
0.1b
(* (/ 1 (* N N)) (- 1/2 (/ 1/3 N)))
0.0b
(- (/ 1 N) (* (/ 1 (* N N)) (- 1/2 (/ 1/3 N))))

rewrite12.0ms

Algorithm
rewrite-expression-head
Counts
4 → 74
Calls

4 calls. Slowest were:

5.0ms
(- (/ 1 N) (* (/ 1 (* N N)) (- 1/2 (/ 1/3 N))))
5.0ms
(* (/ 1 (* N N)) (- 1/2 (/ 1/3 N)))
1.0ms
(/ 1 (* N N))

series85.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

44.0ms
(* (/ 1 (* N N)) (- 1/2 (/ 1/3 N)))
20.0ms
(- (/ 1 N) (* (/ 1 (* N N)) (- 1/2 (/ 1/3 N))))
11.0ms
(/ 1 (* N N))
9.0ms
(/ 1/3 N)

simplify7.5s

Counts
49 → 86
Calls

49 calls. Slowest were:

535.0ms
(* (/ 1 (* N N)) (- (/ 1/3 N)))
486.0ms
(* (- (/ 1/3 N)) (/ 1 (* N N)))
482.0ms
(* (/ 1 (* N N)) (- (/ 1/3 N)))

prune641.0ms

Pruning

3 alts after pruning (2 fresh and 1 done)

Merged error: 0b

localize33.0ms

Local error

Found 4 expressions with local error:

0.4b
(- (+ (/ 1/3 N) 1/2) (/ 1/4 N))
0.4b
(/ 1/3 N)
0.4b
(/ -1/9 N)
0.2b
(* (/ -1/9 N) (/ 1 N))

rewrite28.0ms

Algorithm
rewrite-expression-head
Counts
4 → 60
Calls

4 calls. Slowest were:

24.0ms
(- (+ (/ 1/3 N) 1/2) (/ 1/4 N))
3.0ms
(* (/ -1/9 N) (/ 1 N))
0.0ms
(/ 1/3 N)

series56.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

21.0ms
(* (/ -1/9 N) (/ 1 N))
13.0ms
(- (+ (/ 1/3 N) 1/2) (/ 1/4 N))
13.0ms
(/ -1/9 N)
8.0ms
(/ 1/3 N)

simplify2.0s

Counts
33 → 72
Calls

33 calls. Slowest were:

580.0ms
(* (* (* (/ -1/9 N) (/ -1/9 N)) (/ -1/9 N)) (* (* (/ 1 N) (/ 1 N)) (/ 1 N)))
442.0ms
(* (+ (* (/ 1/3 N) (/ 1/3 N)) (- (* 1/2 1/2) (* (/ 1/3 N) 1/2))) N)
344.0ms
(/ -1/9 (pow N 2))

prune803.0ms

Pruning

3 alts after pruning (1 fresh and 2 done)

Merged error: 0b

localize16.0ms

Local error

Found 4 expressions with local error:

19.3b
(- (* (sqrt (log (+ N 1))) (sqrt (log (+ N 1)))) (log N))
2.5b
(log (+ N 1))
2.5b
(log (+ N 1))
0.2b
(* (sqrt (log (+ N 1))) (sqrt (log (+ N 1))))

rewrite28.0ms

Algorithm
rewrite-expression-head
Counts
4 → 73
Calls

4 calls. Slowest were:

13.0ms
(- (* (sqrt (log (+ N 1))) (sqrt (log (+ N 1)))) (log N))
10.0ms
(* (sqrt (log (+ N 1))) (sqrt (log (+ N 1))))
2.0ms
(log (+ N 1))

series169.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

94.0ms
(- (* (sqrt (log (+ N 1))) (sqrt (log (+ N 1)))) (log N))
26.0ms
(log (+ N 1))
24.0ms
(* (sqrt (log (+ N 1))) (sqrt (log (+ N 1))))
24.0ms
(log (+ N 1))

simplify2.0s

Counts
51 → 85
Calls

51 calls. Slowest were:

257.0ms
(- (+ (/ 1 N) (log -1)) (+ (* 1/2 (/ 1 (pow N 2))) (log (/ -1 N))))
243.0ms
(- (+ (/ 1 N) (log -1)) (+ (* 1/2 (/ 1 (pow N 2))) (log (/ -1 N))))
200.0ms
(- (+ (/ 1 N) (log -1)) (+ (* 1/2 (/ 1 (pow N 2))) (log (/ -1 N))))

prune780.0ms

Pruning

3 alts after pruning (0 fresh and 3 done)

Merged error: 0b

regimes36.0ms

Accuracy

100% (0.0b remaining)

Error of 0.1b against oracle of 0.1b and baseline of 30.7b

bsearch92.0ms

end0.0ms

sample2.9s

Algorithm
intervals