Average Error: 0.0 → 0.0
Time: 6.2s
Precision: binary64
\[e^{\left(x \cdot y\right) \cdot y} \]
\[\begin{array}{l} t_0 := e^{y \cdot \left(x \cdot y\right)}\\ \left(\sqrt[3]{\sqrt{t_0}} \cdot \sqrt{e^{x \cdot \left(y \cdot y\right)}}\right) \cdot \sqrt[3]{t_0} \end{array} \]
(FPCore (x y) :precision binary64 (exp (* (* x y) y)))
(FPCore (x y)
 :precision binary64
 (let* ((t_0 (exp (* y (* x y)))))
   (* (* (cbrt (sqrt t_0)) (sqrt (exp (* x (* y y))))) (cbrt t_0))))
double code(double x, double y) {
	return exp(((x * y) * y));
}
double code(double x, double y) {
	double t_0 = exp((y * (x * y)));
	return (cbrt(sqrt(t_0)) * sqrt(exp((x * (y * y))))) * cbrt(t_0);
}
public static double code(double x, double y) {
	return Math.exp(((x * y) * y));
}
public static double code(double x, double y) {
	double t_0 = Math.exp((y * (x * y)));
	return (Math.cbrt(Math.sqrt(t_0)) * Math.sqrt(Math.exp((x * (y * y))))) * Math.cbrt(t_0);
}
function code(x, y)
	return exp(Float64(Float64(x * y) * y))
end
function code(x, y)
	t_0 = exp(Float64(y * Float64(x * y)))
	return Float64(Float64(cbrt(sqrt(t_0)) * sqrt(exp(Float64(x * Float64(y * y))))) * cbrt(t_0))
end
code[x_, y_] := N[Exp[N[(N[(x * y), $MachinePrecision] * y), $MachinePrecision]], $MachinePrecision]
code[x_, y_] := Block[{t$95$0 = N[Exp[N[(y * N[(x * y), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]}, N[(N[(N[Power[N[Sqrt[t$95$0], $MachinePrecision], 1/3], $MachinePrecision] * N[Sqrt[N[Exp[N[(x * N[(y * y), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]], $MachinePrecision]), $MachinePrecision] * N[Power[t$95$0, 1/3], $MachinePrecision]), $MachinePrecision]]
e^{\left(x \cdot y\right) \cdot y}
\begin{array}{l}
t_0 := e^{y \cdot \left(x \cdot y\right)}\\
\left(\sqrt[3]{\sqrt{t_0}} \cdot \sqrt{e^{x \cdot \left(y \cdot y\right)}}\right) \cdot \sqrt[3]{t_0}
\end{array}

Error

Bits error versus x

Bits error versus y

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[e^{\left(x \cdot y\right) \cdot y} \]
  2. Applied add-cube-cbrt_binary640.0

    \[\leadsto \color{blue}{\left(\sqrt[3]{e^{\left(x \cdot y\right) \cdot y}} \cdot \sqrt[3]{e^{\left(x \cdot y\right) \cdot y}}\right) \cdot \sqrt[3]{e^{\left(x \cdot y\right) \cdot y}}} \]
  3. Applied add-sqr-sqrt_binary640.0

    \[\leadsto \left(\sqrt[3]{\color{blue}{\sqrt{e^{\left(x \cdot y\right) \cdot y}} \cdot \sqrt{e^{\left(x \cdot y\right) \cdot y}}}} \cdot \sqrt[3]{e^{\left(x \cdot y\right) \cdot y}}\right) \cdot \sqrt[3]{e^{\left(x \cdot y\right) \cdot y}} \]
  4. Applied cbrt-prod_binary640.0

    \[\leadsto \left(\color{blue}{\left(\sqrt[3]{\sqrt{e^{\left(x \cdot y\right) \cdot y}}} \cdot \sqrt[3]{\sqrt{e^{\left(x \cdot y\right) \cdot y}}}\right)} \cdot \sqrt[3]{e^{\left(x \cdot y\right) \cdot y}}\right) \cdot \sqrt[3]{e^{\left(x \cdot y\right) \cdot y}} \]
  5. Applied associate-*l*_binary640.0

    \[\leadsto \color{blue}{\left(\sqrt[3]{\sqrt{e^{\left(x \cdot y\right) \cdot y}}} \cdot \left(\sqrt[3]{\sqrt{e^{\left(x \cdot y\right) \cdot y}}} \cdot \sqrt[3]{e^{\left(x \cdot y\right) \cdot y}}\right)\right)} \cdot \sqrt[3]{e^{\left(x \cdot y\right) \cdot y}} \]
  6. Simplified0.0

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

    \[\leadsto \left(\sqrt[3]{\sqrt{e^{y \cdot \left(x \cdot y\right)}}} \cdot \sqrt{e^{x \cdot \left(y \cdot y\right)}}\right) \cdot \sqrt[3]{e^{y \cdot \left(x \cdot y\right)}} \]

Reproduce

herbie shell --seed 2022129 
(FPCore (x y)
  :name "Data.Random.Distribution.Normal:normalF from random-fu-0.2.6.2"
  :precision binary64
  (exp (* (* x y) y)))