Average Error: 0.2 → 0.3
Time: 8.4s
Precision: 64
\[\frac{x}{1 + \sqrt{x + 1}}\]
\[\frac{1}{\frac{1 + \sqrt{x + 1}}{x}}\]
\frac{x}{1 + \sqrt{x + 1}}
\frac{1}{\frac{1 + \sqrt{x + 1}}{x}}
double f(double x) {
        double r116484 = x;
        double r116485 = 1.0;
        double r116486 = r116484 + r116485;
        double r116487 = sqrt(r116486);
        double r116488 = r116485 + r116487;
        double r116489 = r116484 / r116488;
        return r116489;
}

double f(double x) {
        double r116490 = 1.0;
        double r116491 = 1.0;
        double r116492 = x;
        double r116493 = r116492 + r116491;
        double r116494 = sqrt(r116493);
        double r116495 = r116491 + r116494;
        double r116496 = r116495 / r116492;
        double r116497 = r116490 / r116496;
        return r116497;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.2

    \[\frac{x}{1 + \sqrt{x + 1}}\]
  2. Using strategy rm
  3. Applied clear-num0.3

    \[\leadsto \color{blue}{\frac{1}{\frac{1 + \sqrt{x + 1}}{x}}}\]
  4. Final simplification0.3

    \[\leadsto \frac{1}{\frac{1 + \sqrt{x + 1}}{x}}\]

Reproduce

herbie shell --seed 2019351 +o rules:numerics
(FPCore (x)
  :name "Numeric.Log:$clog1p from log-domain-0.10.2.1, B"
  :precision binary64
  (/ x (+ 1 (sqrt (+ x 1)))))