?

Average Error: 0.2 → 0.2
Time: 11.8s
Precision: binary64
Cost: 20544

?

\[\frac{x}{1 + \sqrt{x + 1}} \]
\[\begin{array}{l} t_0 := -1 - \sqrt{x + 1}\\ \frac{\frac{x}{t_0 \cdot t_0}}{\frac{-1}{t_0}} \end{array} \]
(FPCore (x) :precision binary64 (/ x (+ 1.0 (sqrt (+ x 1.0)))))
(FPCore (x)
 :precision binary64
 (let* ((t_0 (- -1.0 (sqrt (+ x 1.0))))) (/ (/ x (* t_0 t_0)) (/ -1.0 t_0))))
double code(double x) {
	return x / (1.0 + sqrt((x + 1.0)));
}
double code(double x) {
	double t_0 = -1.0 - sqrt((x + 1.0));
	return (x / (t_0 * t_0)) / (-1.0 / t_0);
}
real(8) function code(x)
    real(8), intent (in) :: x
    code = x / (1.0d0 + sqrt((x + 1.0d0)))
end function
real(8) function code(x)
    real(8), intent (in) :: x
    real(8) :: t_0
    t_0 = (-1.0d0) - sqrt((x + 1.0d0))
    code = (x / (t_0 * t_0)) / ((-1.0d0) / t_0)
end function
public static double code(double x) {
	return x / (1.0 + Math.sqrt((x + 1.0)));
}
public static double code(double x) {
	double t_0 = -1.0 - Math.sqrt((x + 1.0));
	return (x / (t_0 * t_0)) / (-1.0 / t_0);
}
def code(x):
	return x / (1.0 + math.sqrt((x + 1.0)))
def code(x):
	t_0 = -1.0 - math.sqrt((x + 1.0))
	return (x / (t_0 * t_0)) / (-1.0 / t_0)
function code(x)
	return Float64(x / Float64(1.0 + sqrt(Float64(x + 1.0))))
end
function code(x)
	t_0 = Float64(-1.0 - sqrt(Float64(x + 1.0)))
	return Float64(Float64(x / Float64(t_0 * t_0)) / Float64(-1.0 / t_0))
end
function tmp = code(x)
	tmp = x / (1.0 + sqrt((x + 1.0)));
end
function tmp = code(x)
	t_0 = -1.0 - sqrt((x + 1.0));
	tmp = (x / (t_0 * t_0)) / (-1.0 / t_0);
end
code[x_] := N[(x / N[(1.0 + N[Sqrt[N[(x + 1.0), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
code[x_] := Block[{t$95$0 = N[(-1.0 - N[Sqrt[N[(x + 1.0), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]}, N[(N[(x / N[(t$95$0 * t$95$0), $MachinePrecision]), $MachinePrecision] / N[(-1.0 / t$95$0), $MachinePrecision]), $MachinePrecision]]
\frac{x}{1 + \sqrt{x + 1}}
\begin{array}{l}
t_0 := -1 - \sqrt{x + 1}\\
\frac{\frac{x}{t_0 \cdot t_0}}{\frac{-1}{t_0}}
\end{array}

Error?

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. Applied egg-rr0.2

    \[\leadsto \color{blue}{\frac{1}{1 + \sqrt{x + 1}} \cdot x} \]
  3. Applied egg-rr0.2

    \[\leadsto \color{blue}{\left(\left(1 + \sqrt{1 + x}\right) \cdot \frac{1}{\left(1 + \sqrt{1 + x}\right) \cdot \left(1 + \sqrt{1 + x}\right)}\right)} \cdot x \]
  4. Simplified0.2

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

    [Start]0.2

    \[ \left(\left(1 + \sqrt{1 + x}\right) \cdot \frac{1}{\left(1 + \sqrt{1 + x}\right) \cdot \left(1 + \sqrt{1 + x}\right)}\right) \cdot x \]

    rational.json-simplify-2 [=>]0.2

    \[ \color{blue}{\left(\frac{1}{\left(1 + \sqrt{1 + x}\right) \cdot \left(1 + \sqrt{1 + x}\right)} \cdot \left(1 + \sqrt{1 + x}\right)\right)} \cdot x \]

    rational.json-simplify-7 [<=]0.2

    \[ \left(\frac{1}{\left(1 + \sqrt{1 + x}\right) \cdot \left(1 + \sqrt{1 + x}\right)} \cdot \color{blue}{\frac{1 + \sqrt{1 + x}}{1}}\right) \cdot x \]

    rational.json-simplify-55 [=>]0.2

    \[ \color{blue}{\frac{\frac{1 + \sqrt{1 + x}}{1}}{\frac{\left(1 + \sqrt{1 + x}\right) \cdot \left(1 + \sqrt{1 + x}\right)}{1}}} \cdot x \]

    rational.json-simplify-7 [=>]0.2

    \[ \frac{\color{blue}{1 + \sqrt{1 + x}}}{\frac{\left(1 + \sqrt{1 + x}\right) \cdot \left(1 + \sqrt{1 + x}\right)}{1}} \cdot x \]

    rational.json-simplify-1 [=>]0.2

    \[ \frac{1 + \sqrt{\color{blue}{x + 1}}}{\frac{\left(1 + \sqrt{1 + x}\right) \cdot \left(1 + \sqrt{1 + x}\right)}{1}} \cdot x \]

    rational.json-simplify-7 [=>]0.2

    \[ \frac{1 + \sqrt{x + 1}}{\color{blue}{\left(1 + \sqrt{1 + x}\right) \cdot \left(1 + \sqrt{1 + x}\right)}} \cdot x \]

    rational.json-simplify-21 [=>]0.2

    \[ \frac{1 + \sqrt{x + 1}}{\color{blue}{\left|\left(1 + \sqrt{1 + x}\right) \cdot \left(1 + \sqrt{1 + x}\right)\right|}} \cdot x \]

    rational.json-simplify-39 [=>]0.2

    \[ \frac{1 + \sqrt{x + 1}}{\color{blue}{\left|1 + \sqrt{1 + x}\right| \cdot \left|1 + \sqrt{1 + x}\right|}} \cdot x \]

    rational.json-simplify-17 [=>]0.2

    \[ \frac{1 + \sqrt{x + 1}}{\left|\color{blue}{\sqrt{1 + x} - -1}\right| \cdot \left|1 + \sqrt{1 + x}\right|} \cdot x \]

    rational.json-simplify-58 [=>]0.2

    \[ \frac{1 + \sqrt{x + 1}}{\color{blue}{\left|-1 - \sqrt{1 + x}\right|} \cdot \left|1 + \sqrt{1 + x}\right|} \cdot x \]

    rational.json-simplify-17 [=>]0.2

    \[ \frac{1 + \sqrt{x + 1}}{\left|-1 - \sqrt{1 + x}\right| \cdot \left|\color{blue}{\sqrt{1 + x} - -1}\right|} \cdot x \]

    rational.json-simplify-58 [=>]0.2

    \[ \frac{1 + \sqrt{x + 1}}{\left|-1 - \sqrt{1 + x}\right| \cdot \color{blue}{\left|-1 - \sqrt{1 + x}\right|}} \cdot x \]

    rational.json-simplify-38 [=>]0.2

    \[ \frac{1 + \sqrt{x + 1}}{\color{blue}{\left|\left(-1 - \sqrt{1 + x}\right) \cdot \left(-1 - \sqrt{1 + x}\right)\right|}} \cdot x \]

    rational.json-simplify-21 [<=]0.2

    \[ \frac{1 + \sqrt{x + 1}}{\color{blue}{\left(-1 - \sqrt{1 + x}\right) \cdot \left(-1 - \sqrt{1 + x}\right)}} \cdot x \]
  5. Applied egg-rr0.2

    \[\leadsto \color{blue}{\frac{\frac{x}{\left(-1 - \sqrt{x + 1}\right) \cdot \left(-1 - \sqrt{x + 1}\right)}}{\frac{-1}{-1 - \sqrt{x + 1}}}} \]
  6. Final simplification0.2

    \[\leadsto \frac{\frac{x}{\left(-1 - \sqrt{x + 1}\right) \cdot \left(-1 - \sqrt{x + 1}\right)}}{\frac{-1}{-1 - \sqrt{x + 1}}} \]

Alternatives

Alternative 1
Error0.2
Cost20416
\[\begin{array}{l} t_0 := \sqrt{x + 1}\\ t_1 := -1 - t_0\\ \frac{1 + t_0}{t_1 \cdot t_1} \cdot x \end{array} \]
Alternative 2
Error0.2
Cost6848
\[\frac{x}{1 + \sqrt{x + 1}} \]
Alternative 3
Error20.0
Cost448
\[\frac{2}{1 + \frac{4}{x}} \]
Alternative 4
Error19.9
Cost448
\[\frac{x}{0.5 \cdot x + 2} \]
Alternative 5
Error20.3
Cost192
\[\frac{x}{2} \]
Alternative 6
Error60.9
Cost64
\[2 \]

Error

Reproduce?

herbie shell --seed 2023068 
(FPCore (x)
  :name "Numeric.Log:$clog1p from log-domain-0.10.2.1, B"
  :precision binary64
  (/ x (+ 1.0 (sqrt (+ x 1.0)))))