Average Error: 31.0 → 1.3
Time: 1.8s
Precision: binary64
\[\sqrt{2 \cdot {x}^{2}} \]
\[{\left(\sqrt[3]{2 \cdot x} \cdot \sqrt[3]{x}\right)}^{1.5} \]
(FPCore (x) :precision binary64 (sqrt (* 2.0 (pow x 2.0))))
(FPCore (x) :precision binary64 (pow (* (cbrt (* 2.0 x)) (cbrt x)) 1.5))
double code(double x) {
	return sqrt((2.0 * pow(x, 2.0)));
}
double code(double x) {
	return pow((cbrt((2.0 * x)) * cbrt(x)), 1.5);
}
public static double code(double x) {
	return Math.sqrt((2.0 * Math.pow(x, 2.0)));
}
public static double code(double x) {
	return Math.pow((Math.cbrt((2.0 * x)) * Math.cbrt(x)), 1.5);
}
function code(x)
	return sqrt(Float64(2.0 * (x ^ 2.0)))
end
function code(x)
	return Float64(cbrt(Float64(2.0 * x)) * cbrt(x)) ^ 1.5
end
code[x_] := N[Sqrt[N[(2.0 * N[Power[x, 2.0], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]
code[x_] := N[Power[N[(N[Power[N[(2.0 * x), $MachinePrecision], 1/3], $MachinePrecision] * N[Power[x, 1/3], $MachinePrecision]), $MachinePrecision], 1.5], $MachinePrecision]
\sqrt{2 \cdot {x}^{2}}
{\left(\sqrt[3]{2 \cdot x} \cdot \sqrt[3]{x}\right)}^{1.5}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 31.0

    \[\sqrt{2 \cdot {x}^{2}} \]
  2. Applied egg-rr31.4

    \[\leadsto \color{blue}{{\left(\sqrt[3]{2 \cdot \left(x \cdot x\right)}\right)}^{1.5}} \]
  3. Applied egg-rr1.3

    \[\leadsto {\color{blue}{\left(\sqrt[3]{2 \cdot x} \cdot \sqrt[3]{x}\right)}}^{1.5} \]
  4. Final simplification1.3

    \[\leadsto {\left(\sqrt[3]{2 \cdot x} \cdot \sqrt[3]{x}\right)}^{1.5} \]

Reproduce

herbie shell --seed 2022150 
(FPCore (x)
  :name "sqrt D"
  :precision binary64
  (sqrt (* 2.0 (pow x 2.0))))