Average Error: 32.6 → 8.4
Time: 13.3s
Precision: binary64
\[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
\[\begin{array}{l} \mathbf{if}\;x \leq 7.1995284566196765 \cdot 10^{-273}:\\ \;\;\;\;\frac{-\log x}{n}\\ \mathbf{elif}\;x \leq 9.330362945474234 \cdot 10^{-240}:\\ \;\;\;\;\left({x}^{\left(\frac{0.5}{n}\right)} + {\left(x + 1\right)}^{\left(\frac{0.5}{n}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{0.5}{n}\right)} - {x}^{\left(\frac{0.5}{n}\right)}\right)\\ \mathbf{elif}\;x \leq 1.483453497093459 \cdot 10^{-204}:\\ \;\;\;\;\frac{1}{n \cdot \frac{1}{\log \left(x + 1\right) - \log x}}\\ \mathbf{elif}\;x \leq 3.99724409399589 \cdot 10^{-196}:\\ \;\;\;\;\left(\frac{x}{n} + \left(1 + 0.5 \cdot \left(\frac{x}{n} \cdot \frac{x}{n}\right)\right)\right) - \left({x}^{\left(\frac{1}{n}\right)} + 0.5 \cdot \left(x \cdot \frac{x}{n}\right)\right)\\ \mathbf{elif}\;x \leq 5.830620068006982:\\ \;\;\;\;\left(\left(\left(0.5 \cdot \frac{{\log \left(x + 1\right)}^{2}}{n \cdot n} + 0.16666666666666666 \cdot {\left(\frac{\log \left(x + 1\right)}{n}\right)}^{3}\right) + \frac{\log \left(x + 1\right) - \log x}{n}\right) - 0.16666666666666666 \cdot {\left(\frac{\log x}{n}\right)}^{3}\right) + \frac{{\log x}^{2}}{n \cdot n} \cdot -0.5\\ \mathbf{else}:\\ \;\;\;\;\frac{{x}^{\left(\frac{1}{n}\right)}}{x \cdot n}\\ \end{array}\]
{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}
\begin{array}{l}
\mathbf{if}\;x \leq 7.1995284566196765 \cdot 10^{-273}:\\
\;\;\;\;\frac{-\log x}{n}\\

\mathbf{elif}\;x \leq 9.330362945474234 \cdot 10^{-240}:\\
\;\;\;\;\left({x}^{\left(\frac{0.5}{n}\right)} + {\left(x + 1\right)}^{\left(\frac{0.5}{n}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{0.5}{n}\right)} - {x}^{\left(\frac{0.5}{n}\right)}\right)\\

\mathbf{elif}\;x \leq 1.483453497093459 \cdot 10^{-204}:\\
\;\;\;\;\frac{1}{n \cdot \frac{1}{\log \left(x + 1\right) - \log x}}\\

\mathbf{elif}\;x \leq 3.99724409399589 \cdot 10^{-196}:\\
\;\;\;\;\left(\frac{x}{n} + \left(1 + 0.5 \cdot \left(\frac{x}{n} \cdot \frac{x}{n}\right)\right)\right) - \left({x}^{\left(\frac{1}{n}\right)} + 0.5 \cdot \left(x \cdot \frac{x}{n}\right)\right)\\

\mathbf{elif}\;x \leq 5.830620068006982:\\
\;\;\;\;\left(\left(\left(0.5 \cdot \frac{{\log \left(x + 1\right)}^{2}}{n \cdot n} + 0.16666666666666666 \cdot {\left(\frac{\log \left(x + 1\right)}{n}\right)}^{3}\right) + \frac{\log \left(x + 1\right) - \log x}{n}\right) - 0.16666666666666666 \cdot {\left(\frac{\log x}{n}\right)}^{3}\right) + \frac{{\log x}^{2}}{n \cdot n} \cdot -0.5\\

\mathbf{else}:\\
\;\;\;\;\frac{{x}^{\left(\frac{1}{n}\right)}}{x \cdot n}\\

\end{array}
(FPCore (x n)
 :precision binary64
 (- (pow (+ x 1.0) (/ 1.0 n)) (pow x (/ 1.0 n))))
(FPCore (x n)
 :precision binary64
 (if (<= x 7.1995284566196765e-273)
   (/ (- (log x)) n)
   (if (<= x 9.330362945474234e-240)
     (*
      (+ (pow x (/ 0.5 n)) (pow (+ x 1.0) (/ 0.5 n)))
      (- (pow (+ x 1.0) (/ 0.5 n)) (pow x (/ 0.5 n))))
     (if (<= x 1.483453497093459e-204)
       (/ 1.0 (* n (/ 1.0 (- (log (+ x 1.0)) (log x)))))
       (if (<= x 3.99724409399589e-196)
         (-
          (+ (/ x n) (+ 1.0 (* 0.5 (* (/ x n) (/ x n)))))
          (+ (pow x (/ 1.0 n)) (* 0.5 (* x (/ x n)))))
         (if (<= x 5.830620068006982)
           (+
            (-
             (+
              (+
               (* 0.5 (/ (pow (log (+ x 1.0)) 2.0) (* n n)))
               (* 0.16666666666666666 (pow (/ (log (+ x 1.0)) n) 3.0)))
              (/ (- (log (+ x 1.0)) (log x)) n))
             (* 0.16666666666666666 (pow (/ (log x) n) 3.0)))
            (* (/ (pow (log x) 2.0) (* n n)) -0.5))
           (/ (pow x (/ 1.0 n)) (* x n))))))))
double code(double x, double n) {
	return pow((x + 1.0), (1.0 / n)) - pow(x, (1.0 / n));
}
double code(double x, double n) {
	double tmp;
	if (x <= 7.1995284566196765e-273) {
		tmp = -log(x) / n;
	} else if (x <= 9.330362945474234e-240) {
		tmp = (pow(x, (0.5 / n)) + pow((x + 1.0), (0.5 / n))) * (pow((x + 1.0), (0.5 / n)) - pow(x, (0.5 / n)));
	} else if (x <= 1.483453497093459e-204) {
		tmp = 1.0 / (n * (1.0 / (log(x + 1.0) - log(x))));
	} else if (x <= 3.99724409399589e-196) {
		tmp = ((x / n) + (1.0 + (0.5 * ((x / n) * (x / n))))) - (pow(x, (1.0 / n)) + (0.5 * (x * (x / n))));
	} else if (x <= 5.830620068006982) {
		tmp = ((((0.5 * (pow(log(x + 1.0), 2.0) / (n * n))) + (0.16666666666666666 * pow((log(x + 1.0) / n), 3.0))) + ((log(x + 1.0) - log(x)) / n)) - (0.16666666666666666 * pow((log(x) / n), 3.0))) + ((pow(log(x), 2.0) / (n * n)) * -0.5);
	} else {
		tmp = pow(x, (1.0 / n)) / (x * n);
	}
	return tmp;
}

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 6 regimes
  2. if x < 7.19952845661967651e-273

    1. Initial program 41.3

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

      \[\leadsto \color{blue}{\frac{\log \left(x + 1\right) - \log x}{n}}\]
    3. Simplified19.7

      \[\leadsto \color{blue}{\frac{\log \left(1 + x\right) - \log x}{n}}\]
    4. Taylor expanded around 0 19.7

      \[\leadsto \frac{\color{blue}{-1 \cdot \log x}}{n}\]

    if 7.19952845661967651e-273 < x < 9.3303629454742335e-240

    1. Initial program 38.6

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

      \[\leadsto {\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - \color{blue}{\sqrt{{x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt{{x}^{\left(\frac{1}{n}\right)}}}\]
    4. Applied add-sqr-sqrt_binary6438.7

      \[\leadsto \color{blue}{\sqrt{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} \cdot \sqrt{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}}} - \sqrt{{x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt{{x}^{\left(\frac{1}{n}\right)}}\]
    5. Applied difference-of-squares_binary6438.7

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

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

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

    if 9.3303629454742335e-240 < x < 1.48345349709345905e-204

    1. Initial program 43.7

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

      \[\leadsto \color{blue}{\frac{\log \left(x + 1\right) - \log x}{n}}\]
    3. Simplified17.5

      \[\leadsto \color{blue}{\frac{\log \left(1 + x\right) - \log x}{n}}\]
    4. Using strategy rm
    5. Applied clear-num_binary6417.6

      \[\leadsto \color{blue}{\frac{1}{\frac{n}{\log \left(1 + x\right) - \log x}}}\]
    6. Simplified17.6

      \[\leadsto \frac{1}{\color{blue}{\frac{n}{\log \left(x + 1\right) - \log x}}}\]
    7. Using strategy rm
    8. Applied div-inv_binary6417.6

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

    if 1.48345349709345905e-204 < x < 3.99724409399589004e-196

    1. Initial program 43.9

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

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

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

    if 3.99724409399589004e-196 < x < 5.83062006800698196

    1. Initial program 50.9

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

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

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

    if 5.83062006800698196 < x

    1. Initial program 20.2

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

      \[\leadsto \color{blue}{\frac{e^{-1 \cdot \frac{\log \left(\frac{1}{x}\right)}{n}}}{x \cdot n}}\]
    3. Simplified1.5

      \[\leadsto \color{blue}{\frac{{x}^{\left(\frac{1}{n}\right)}}{x \cdot n}}\]
  3. Recombined 6 regimes into one program.
  4. Final simplification8.4

    \[\leadsto \begin{array}{l} \mathbf{if}\;x \leq 7.1995284566196765 \cdot 10^{-273}:\\ \;\;\;\;\frac{-\log x}{n}\\ \mathbf{elif}\;x \leq 9.330362945474234 \cdot 10^{-240}:\\ \;\;\;\;\left({x}^{\left(\frac{0.5}{n}\right)} + {\left(x + 1\right)}^{\left(\frac{0.5}{n}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{0.5}{n}\right)} - {x}^{\left(\frac{0.5}{n}\right)}\right)\\ \mathbf{elif}\;x \leq 1.483453497093459 \cdot 10^{-204}:\\ \;\;\;\;\frac{1}{n \cdot \frac{1}{\log \left(x + 1\right) - \log x}}\\ \mathbf{elif}\;x \leq 3.99724409399589 \cdot 10^{-196}:\\ \;\;\;\;\left(\frac{x}{n} + \left(1 + 0.5 \cdot \left(\frac{x}{n} \cdot \frac{x}{n}\right)\right)\right) - \left({x}^{\left(\frac{1}{n}\right)} + 0.5 \cdot \left(x \cdot \frac{x}{n}\right)\right)\\ \mathbf{elif}\;x \leq 5.830620068006982:\\ \;\;\;\;\left(\left(\left(0.5 \cdot \frac{{\log \left(x + 1\right)}^{2}}{n \cdot n} + 0.16666666666666666 \cdot {\left(\frac{\log \left(x + 1\right)}{n}\right)}^{3}\right) + \frac{\log \left(x + 1\right) - \log x}{n}\right) - 0.16666666666666666 \cdot {\left(\frac{\log x}{n}\right)}^{3}\right) + \frac{{\log x}^{2}}{n \cdot n} \cdot -0.5\\ \mathbf{else}:\\ \;\;\;\;\frac{{x}^{\left(\frac{1}{n}\right)}}{x \cdot n}\\ \end{array}\]

Reproduce

herbie shell --seed 2021173 
(FPCore (x n)
  :name "2nthrt (problem 3.4.6)"
  :precision binary64
  (- (pow (+ x 1.0) (/ 1.0 n)) (pow x (/ 1.0 n))))