Average Error: 4.5 → 0.1
Time: 18.4s
Precision: 64
\[\sqrt{\frac{e^{2 \cdot x} - 1}{e^{x} - 1}}\]
\[\sqrt{1 \cdot \left(e^{x} + 1\right)}\]
\sqrt{\frac{e^{2 \cdot x} - 1}{e^{x} - 1}}
\sqrt{1 \cdot \left(e^{x} + 1\right)}
double f(double x) {
        double r22413 = 2.0;
        double r22414 = x;
        double r22415 = r22413 * r22414;
        double r22416 = exp(r22415);
        double r22417 = 1.0;
        double r22418 = r22416 - r22417;
        double r22419 = exp(r22414);
        double r22420 = r22419 - r22417;
        double r22421 = r22418 / r22420;
        double r22422 = sqrt(r22421);
        return r22422;
}

double f(double x) {
        double r22423 = 1.0;
        double r22424 = x;
        double r22425 = exp(r22424);
        double r22426 = r22425 + r22423;
        double r22427 = r22423 * r22426;
        double r22428 = sqrt(r22427);
        return r22428;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 4.5

    \[\sqrt{\frac{e^{2 \cdot x} - 1}{e^{x} - 1}}\]
  2. Using strategy rm
  3. Applied flip--4.0

    \[\leadsto \sqrt{\frac{e^{2 \cdot x} - 1}{\color{blue}{\frac{e^{x} \cdot e^{x} - 1 \cdot 1}{e^{x} + 1}}}}\]
  4. Applied associate-/r/4.0

    \[\leadsto \sqrt{\color{blue}{\frac{e^{2 \cdot x} - 1}{e^{x} \cdot e^{x} - 1 \cdot 1} \cdot \left(e^{x} + 1\right)}}\]
  5. Simplified2.9

    \[\leadsto \sqrt{\color{blue}{\frac{e^{2 \cdot x} - 1}{e^{x + x} - 1 \cdot 1}} \cdot \left(e^{x} + 1\right)}\]
  6. Taylor expanded around 0 0.1

    \[\leadsto \sqrt{\color{blue}{1} \cdot \left(e^{x} + 1\right)}\]
  7. Final simplification0.1

    \[\leadsto \sqrt{1 \cdot \left(e^{x} + 1\right)}\]

Reproduce

herbie shell --seed 2019208 
(FPCore (x)
  :name "sqrtexp (problem 3.4.4)"
  :precision binary64
  (sqrt (/ (- (exp (* 2 x)) 1) (- (exp x) 1))))