Average Error: 33.0 → 16.6
Time: 1.0m
Precision: 64
Internal Precision: 1344
\[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
\[\begin{array}{l} \mathbf{if}\;\left(\frac{1}{x \cdot n} - \frac{\frac{\frac{1}{2}}{x}}{x \cdot n}\right) + \frac{\log x}{\left(n \cdot n\right) \cdot x} \le -4.3860078040343976 \cdot 10^{-113}:\\ \;\;\;\;\left(\left({\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - 1\right) - \frac{\log x \cdot \frac{\frac{1}{2}}{n}}{\frac{n}{\log x}}\right) - \frac{\log x}{n}\\ \mathbf{if}\;\left(\frac{1}{x \cdot n} - \frac{\frac{\frac{1}{2}}{x}}{x \cdot n}\right) + \frac{\log x}{\left(n \cdot n\right) \cdot x} \le 2.472355422256959 \cdot 10^{-95}:\\ \;\;\;\;\left(\frac{\frac{1}{n}}{x} - \frac{\frac{\frac{1}{2}}{n}}{x \cdot x}\right) + \frac{\log x}{\left(n \cdot x\right) \cdot n}\\ \mathbf{if}\;\left(\frac{1}{x \cdot n} - \frac{\frac{\frac{1}{2}}{x}}{x \cdot n}\right) + \frac{\log x}{\left(n \cdot n\right) \cdot x} \le 6.007545999641258 \cdot 10^{+300}:\\ \;\;\;\;\left(\left({\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - 1\right) - \frac{\log x \cdot \frac{\frac{1}{2}}{n}}{\frac{n}{\log x}}\right) - \frac{\log x}{n}\\ \mathbf{else}:\\ \;\;\;\;\log \left(e^{{\left(1 + x\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 (* x n)) (/ (/ 1/2 x) (* x n))) (/ (log x) (* (* n n) x))) < -4.3860078040343976e-113 or 2.472355422256959e-95 < (+ (- (/ 1 (* x n)) (/ (/ 1/2 x) (* x n))) (/ (log x) (* (* n n) x))) < 6.007545999641258e+300

    1. Initial program 42.0

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

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

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

    if -4.3860078040343976e-113 < (+ (- (/ 1 (* x n)) (/ (/ 1/2 x) (* x n))) (/ (log x) (* (* n n) x))) < 2.472355422256959e-95

    1. Initial program 31.2

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

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

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

    if 6.007545999641258e+300 < (+ (- (/ 1 (* x n)) (/ (/ 1/2 x) (* x n))) (/ (log x) (* (* n n) x)))

    1. Initial program 16.6

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

      \[\leadsto {\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - \color{blue}{\log \left(e^{{x}^{\left(\frac{1}{n}\right)}}\right)}\]
    4. Applied add-log-exp16.8

      \[\leadsto \color{blue}{\log \left(e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}}\right)} - \log \left(e^{{x}^{\left(\frac{1}{n}\right)}}\right)\]
    5. Applied diff-log16.8

      \[\leadsto \color{blue}{\log \left(\frac{e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}}}{e^{{x}^{\left(\frac{1}{n}\right)}}}\right)}\]
    6. Applied simplify16.8

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

Runtime

Time bar (total: 1.0m)Debug logProfile

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