Average Error: 29.3 → 22.7
Time: 42.8s
Precision: 64
Internal Precision: 128
\[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
\[\begin{array}{l} \mathbf{if}\;\frac{1}{n} \le -1.6150109847344082 \cdot 10^{-11}:\\ \;\;\;\;\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)}\right) \cdot \sqrt[3]{\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)}\\ \mathbf{elif}\;\frac{1}{n} \le 9.765714322859071 \cdot 10^{-40}:\\ \;\;\;\;\left(\frac{1}{x \cdot n} + \frac{\frac{\frac{-1}{2}}{x}}{x \cdot n}\right) + \frac{\log x}{\left(x \cdot n\right) \cdot n}\\ \mathbf{else}:\\ \;\;\;\;e^{\log \left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\right)}\\ \end{array}\]

Error

Bits error versus x

Bits error versus n

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 3 regimes
  2. if (/ 1 n) < -1.6150109847344082e-11

    1. Initial program 1.2

      \[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
    2. Using strategy rm
    3. Applied add-cube-cbrt1.2

      \[\leadsto \color{blue}{\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}}\]
    4. Using strategy rm
    5. Applied add-cube-cbrt1.2

      \[\leadsto \left(\sqrt[3]{\color{blue}{\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\]
    6. Using strategy rm
    7. Applied add-cube-cbrt1.2

      \[\leadsto \left(\sqrt[3]{\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{\color{blue}{\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}}}\]

    if -1.6150109847344082e-11 < (/ 1 n) < 9.765714322859071e-40

    1. Initial program 44.3

      \[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
    2. Taylor expanded around inf 32.2

      \[\leadsto \color{blue}{\frac{1}{x \cdot n} - \left(\frac{\log \left(\frac{1}{x}\right)}{x \cdot {n}^{2}} + \frac{1}{2} \cdot \frac{1}{{x}^{2} \cdot n}\right)}\]
    3. Simplified32.1

      \[\leadsto \color{blue}{\frac{\log x}{n \cdot \left(n \cdot x\right)} + \left(\frac{\frac{\frac{-1}{2}}{x}}{n \cdot x} + \frac{1}{n \cdot x}\right)}\]

    if 9.765714322859071e-40 < (/ 1 n)

    1. Initial program 29.8

      \[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
    2. Using strategy rm
    3. Applied add-exp-log29.8

      \[\leadsto \color{blue}{e^{\log \left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\right)}}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification22.7

    \[\leadsto \begin{array}{l} \mathbf{if}\;\frac{1}{n} \le -1.6150109847344082 \cdot 10^{-11}:\\ \;\;\;\;\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)}\right) \cdot \sqrt[3]{\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)}\\ \mathbf{elif}\;\frac{1}{n} \le 9.765714322859071 \cdot 10^{-40}:\\ \;\;\;\;\left(\frac{1}{x \cdot n} + \frac{\frac{\frac{-1}{2}}{x}}{x \cdot n}\right) + \frac{\log x}{\left(x \cdot n\right) \cdot n}\\ \mathbf{else}:\\ \;\;\;\;e^{\log \left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\right)}\\ \end{array}\]

Reproduce

herbie shell --seed 323378853 
(FPCore (x n)
  :name "2nthrt (problem 3.4.6)"
  (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))

Details

Time bar (total: 40.3s)Debug log

sample469.0ms

Algorithm
intervals
Results
141.0ms99×body1280valid
73.0ms45×body640valid
61.0ms35×body10240exit
39.0ms163×body80valid
29.0ms173×body80nan
25.0ms16×body1280nan
20.0ms17×body640nan
12.0ms16×body320nan
11.0ms16×body320valid
8.0ms17×body160valid
2.0msbody160nan

simplify11.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
11.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))

prune13.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 26.1b

localize42.0ms

Local error

Found 3 expressions with local error:

1.9b
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
1.2b
(pow (+ x 1) (/ 1 n))
0.5b
(pow x (/ 1 n))

rewrite26.0ms

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt
*-un-lft-identity
pow-unpow
add-cube-cbrt
add-log-exp
add-exp-log
unpow-prod-down
pow1
add-cbrt-cube
difference-of-squares
div-inv
pow-to-exp
distribute-lft-out--
flip--
pow-exp
diff-log
flip3--
pow-pow
sub-neg
Counts
3 → 44
Calls
3 calls:
Slowest
20.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
4.0ms
(pow (+ x 1) (/ 1 n))
1.0ms
(pow x (/ 1 n))

series543.0ms

Counts
3 → 9
Calls
3 calls:
Slowest
319.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
118.0ms
(pow (+ x 1) (/ 1 n))
106.0ms
(pow x (/ 1 n))

simplify2.2s

Counts
28 → 53
Calls
28 calls:
Slowest
775.0ms
(- (+ (/ (log -1) n) (+ 1 (/ 1 (* x n)))) (/ (log (/ -1 x)) n))
406.0ms
(- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2)))))
355.0ms
(- (/ 1 (* x n)) (+ (/ (log (/ 1 x)) (* x (pow n 2))) (* 1/2 (/ 1 (* (pow x 2) n)))))
312.0ms
(- (+ (* 1/2 (/ (pow (log (/ 1 x)) 2) (pow n 2))) 1) (/ (log (/ 1 x)) n))
134.0ms
(- (+ (/ (log -1) n) (+ (* 1/2 (/ (pow (log -1) 2) (pow n 2))) (+ (* 1/2 (/ (pow (log (/ -1 x)) 2) (pow n 2))) 1))) (+ (/ (log (/ -1 x)) n) (/ (* (log (/ -1 x)) (log -1)) (pow n 2))))

prune891.0ms

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 17.2b

localize27.0ms

Local error

Found 4 expressions with local error:

1.9b
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
1.9b
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
1.9b
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
1.2b
(pow (+ x 1) (/ 1 n))

rewrite63.0ms

Algorithm
rewrite-expression-head
Rules
18×add-sqr-sqrt
12×*-un-lft-identity
10×add-log-exp
difference-of-squares
add-cube-cbrt
unpow-prod-down
add-exp-log
pow1
add-cbrt-cube
pow-unpow
distribute-lft-out--
flip--
diff-log
flip3--
sub-neg
div-inv
pow-exp
pow-pow
pow-to-exp
Counts
4 → 62
Calls
4 calls:
Slowest
20.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
19.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
19.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
4.0ms
(pow (+ x 1) (/ 1 n))

series1.0s

Counts
4 → 12
Calls
4 calls:
Slowest
309.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
305.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
305.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
127.0ms
(pow (+ x 1) (/ 1 n))

simplify3.6s

Counts
39 → 74
Calls
39 calls:
Slowest
841.0ms
(- (+ (/ (log -1) n) (+ 1 (/ 1 (* x n)))) (/ (log (/ -1 x)) n))
441.0ms
(- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2)))))
414.0ms
(- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2)))))
404.0ms
(- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2)))))
376.0ms
(- (/ 1 (* x n)) (+ (/ (log (/ 1 x)) (* x (pow n 2))) (* 1/2 (/ 1 (* (pow x 2) n)))))

prune1.7s

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 17.2b

localize67.0ms

Local error

Found 4 expressions with local error:

2.0b
(- (sqrt (pow (+ x 1) (/ 1 n))) (sqrt (pow x (/ 1 n))))
1.9b
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
1.9b
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
1.2b
(pow (+ x 1) (/ 1 n))

rewrite70.0ms

Algorithm
rewrite-expression-head
Rules
26×add-sqr-sqrt
14×*-un-lft-identity
10×difference-of-squares
10×add-log-exp
sqrt-prod
unpow-prod-down
add-cube-cbrt
add-exp-log
pow1
distribute-lft-out--
add-cbrt-cube
pow-unpow
flip--
diff-log
flip3--
sub-neg
div-inv
pow-exp
pow-pow
pow-to-exp
Counts
4 → 67
Calls
4 calls:
Slowest
25.0ms
(- (sqrt (pow (+ x 1) (/ 1 n))) (sqrt (pow x (/ 1 n))))
20.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
19.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
4.0ms
(pow (+ x 1) (/ 1 n))

series1.2s

Counts
4 → 12
Calls
4 calls:
Slowest
384.0ms
(- (sqrt (pow (+ x 1) (/ 1 n))) (sqrt (pow x (/ 1 n))))
339.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
318.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
118.0ms
(pow (+ x 1) (/ 1 n))

simplify3.6s

Counts
49 → 79
Calls
49 calls:
Slowest
770.0ms
(- (+ (/ (log -1) n) (+ 1 (/ 1 (* x n)))) (/ (log (/ -1 x)) n))
425.0ms
(- (+ (* 1/4 (/ (log -1) (* x (pow n 2)))) (* 1/2 (/ 1 (* x n)))) (+ (* 1/4 (/ 1 (* (pow x 2) n))) (* 1/4 (/ (log (/ -1 x)) (* x (pow n 2))))))
411.0ms
(- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2)))))
407.0ms
(- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2)))))
362.0ms
(- (/ 1 (* x n)) (+ (/ (log (/ 1 x)) (* x (pow n 2))) (* 1/2 (/ 1 (* (pow x 2) n)))))

prune2.2s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 17.2b

localize34.0ms

Local error

Found 4 expressions with local error:

1.9b
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
1.9b
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
1.9b
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
1.9b
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))

rewrite80.0ms

Algorithm
rewrite-expression-head
Rules
20×add-sqr-sqrt
12×add-log-exp
12×*-un-lft-identity
difference-of-squares
distribute-lft-out--
flip--
add-cube-cbrt
add-exp-log
diff-log
add-cbrt-cube
flip3--
unpow-prod-down
sub-neg
pow1
Counts
4 → 60
Calls
4 calls:
Slowest
20.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
20.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
19.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
19.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))

series1.2s

Counts
4 → 12
Calls
4 calls:
Slowest
312.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
311.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
306.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))
306.0ms
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)))

simplify3.8s

Counts
36 → 72
Calls
36 calls:
Slowest
780.0ms
(- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2)))))
407.0ms
(- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2)))))
406.0ms
(- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2)))))
405.0ms
(- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2)))))
360.0ms
(- (/ 1 (* x n)) (+ (/ (log (/ 1 x)) (* x (pow n 2))) (* 1/2 (/ 1 (* (pow x 2) n)))))

prune1.7s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 17.2b

regimes810.0ms

Accuracy

79.3% (1.7b remaining)

Error of 22.7b against oracle of 21.0b and baseline of 29.3b

bsearch11.0ms

end0.0ms

sample14.9s

Algorithm
intervals
Results
4.8s3136×body1280valid
2.2s1117×body10240exit
2.0s1648×body640valid
1.2s4661×body80valid
1.1s685×body1280nan
1.0s818×body320valid
932.0ms5077×body80nan
665.0ms591×body640nan
248.0ms335×body320nan
240.0ms434×body160valid
82.0ms186×body160nan