Math FPCore C Fortran Java Python Julia MATLAB Wolfram TeX \[\left(0.5 \cdot \sin re\right) \cdot \left(e^{0 - im} + e^{im}\right)
\]
↓
\[\left(0.5 \cdot \sin re\right) \cdot \left(e^{-im} + e^{im}\right)
\]
(FPCore (re im)
:precision binary64
(* (* 0.5 (sin re)) (+ (exp (- 0.0 im)) (exp im)))) ↓
(FPCore (re im)
:precision binary64
(* (* 0.5 (sin re)) (+ (exp (- im)) (exp im)))) double code(double re, double im) {
return (0.5 * sin(re)) * (exp((0.0 - im)) + exp(im));
}
↓
double code(double re, double im) {
return (0.5 * sin(re)) * (exp(-im) + exp(im));
}
real(8) function code(re, im)
real(8), intent (in) :: re
real(8), intent (in) :: im
code = (0.5d0 * sin(re)) * (exp((0.0d0 - im)) + exp(im))
end function
↓
real(8) function code(re, im)
real(8), intent (in) :: re
real(8), intent (in) :: im
code = (0.5d0 * sin(re)) * (exp(-im) + exp(im))
end function
public static double code(double re, double im) {
return (0.5 * Math.sin(re)) * (Math.exp((0.0 - im)) + Math.exp(im));
}
↓
public static double code(double re, double im) {
return (0.5 * Math.sin(re)) * (Math.exp(-im) + Math.exp(im));
}
def code(re, im):
return (0.5 * math.sin(re)) * (math.exp((0.0 - im)) + math.exp(im))
↓
def code(re, im):
return (0.5 * math.sin(re)) * (math.exp(-im) + math.exp(im))
function code(re, im)
return Float64(Float64(0.5 * sin(re)) * Float64(exp(Float64(0.0 - im)) + exp(im)))
end
↓
function code(re, im)
return Float64(Float64(0.5 * sin(re)) * Float64(exp(Float64(-im)) + exp(im)))
end
function tmp = code(re, im)
tmp = (0.5 * sin(re)) * (exp((0.0 - im)) + exp(im));
end
↓
function tmp = code(re, im)
tmp = (0.5 * sin(re)) * (exp(-im) + exp(im));
end
code[re_, im_] := N[(N[(0.5 * N[Sin[re], $MachinePrecision]), $MachinePrecision] * N[(N[Exp[N[(0.0 - im), $MachinePrecision]], $MachinePrecision] + N[Exp[im], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
↓
code[re_, im_] := N[(N[(0.5 * N[Sin[re], $MachinePrecision]), $MachinePrecision] * N[(N[Exp[(-im)], $MachinePrecision] + N[Exp[im], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\left(0.5 \cdot \sin re\right) \cdot \left(e^{0 - im} + e^{im}\right)
↓
\left(0.5 \cdot \sin re\right) \cdot \left(e^{-im} + e^{im}\right)
Alternatives Alternative 1 Accuracy 93.3% Cost 13842
\[\begin{array}{l}
\mathbf{if}\;im \leq -2.1 \cdot 10^{+154} \lor \neg \left(im \leq -0.62\right) \land \left(im \leq 2.3 \lor \neg \left(im \leq 1.35 \cdot 10^{+154}\right)\right):\\
\;\;\;\;\sin re \cdot \mathsf{fma}\left(0.5, im \cdot im, 1\right)\\
\mathbf{else}:\\
\;\;\;\;\left(0.5 \cdot re\right) \cdot \left(e^{-im} + e^{im}\right)\\
\end{array}
\]
Alternative 2 Accuracy 93.3% Cost 13840
\[\begin{array}{l}
t_0 := \left(0.5 \cdot re\right) \cdot \left(e^{-im} + e^{im}\right)\\
t_1 := \sin re \cdot \mathsf{fma}\left(0.5, im \cdot im, 1\right)\\
\mathbf{if}\;im \leq -2.1 \cdot 10^{+154}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;im \leq -0.55:\\
\;\;\;\;t_0\\
\mathbf{elif}\;im \leq 2.3:\\
\;\;\;\;\sin re + 0.5 \cdot \left(im \cdot \left(\sin re \cdot im\right)\right)\\
\mathbf{elif}\;im \leq 1.35 \cdot 10^{+154}:\\
\;\;\;\;t_0\\
\mathbf{else}:\\
\;\;\;\;t_1\\
\end{array}
\]
Alternative 3 Accuracy 93.3% Cost 13840
\[\begin{array}{l}
t_0 := \left(0.5 \cdot re\right) \cdot \left(e^{-im} + e^{im}\right)\\
t_1 := \sin re \cdot \mathsf{fma}\left(0.5, im \cdot im, 1\right)\\
\mathbf{if}\;im \leq -2.1 \cdot 10^{+154}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;im \leq -0.55:\\
\;\;\;\;t_0\\
\mathbf{elif}\;im \leq 2.3:\\
\;\;\;\;\sin re + \left(0.5 \cdot \sin re\right) \cdot \left(im \cdot im\right)\\
\mathbf{elif}\;im \leq 1.35 \cdot 10^{+154}:\\
\;\;\;\;t_0\\
\mathbf{else}:\\
\;\;\;\;t_1\\
\end{array}
\]
Alternative 4 Accuracy 85.8% Cost 13778
\[\begin{array}{l}
\mathbf{if}\;im \leq -1.35 \cdot 10^{+154} \lor \neg \left(im \leq -1.85 \cdot 10^{+30}\right) \land \left(im \leq 4000000000 \lor \neg \left(im \leq 1.35 \cdot 10^{+154}\right)\right):\\
\;\;\;\;\sin re \cdot \mathsf{fma}\left(0.5, im \cdot im, 1\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{re \cdot \left(1 - 0.25 \cdot {im}^{4}\right)}{1 + \left(im \cdot im\right) \cdot -0.5}\\
\end{array}
\]
Alternative 5 Accuracy 79.5% Cost 7952
\[\begin{array}{l}
t_0 := 0.5 \cdot \left(im \cdot im\right)\\
t_1 := \frac{re \cdot \left(1 - 0.25 \cdot {im}^{4}\right)}{1 + \left(im \cdot im\right) \cdot -0.5}\\
\mathbf{if}\;im \leq -1.35 \cdot 10^{+154}:\\
\;\;\;\;re \cdot t_0\\
\mathbf{elif}\;im \leq -2.35 \cdot 10^{+27}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;im \leq 35000000000:\\
\;\;\;\;\sin re\\
\mathbf{elif}\;im \leq 1.35 \cdot 10^{+154}:\\
\;\;\;\;t_1\\
\mathbf{else}:\\
\;\;\;\;re \cdot \left(1 + t_0\right)\\
\end{array}
\]
Alternative 6 Accuracy 73.2% Cost 6728
\[\begin{array}{l}
t_0 := 0.5 \cdot \left(im \cdot im\right)\\
\mathbf{if}\;im \leq -7.6 \cdot 10^{+28}:\\
\;\;\;\;re \cdot t_0\\
\mathbf{elif}\;im \leq 680:\\
\;\;\;\;\sin re\\
\mathbf{elif}\;im \leq 7 \cdot 10^{+125}:\\
\;\;\;\;0.08333333333333333 + \left(\frac{0.25}{re \cdot re} + \left(re \cdot re\right) \cdot 0.016666666666666666\right)\\
\mathbf{else}:\\
\;\;\;\;re \cdot \left(1 + t_0\right)\\
\end{array}
\]
Alternative 7 Accuracy 48.4% Cost 1097
\[\begin{array}{l}
\mathbf{if}\;im \leq 2.2 \lor \neg \left(im \leq 4.5 \cdot 10^{+121}\right):\\
\;\;\;\;re \cdot \left(1 + 0.5 \cdot \left(im \cdot im\right)\right)\\
\mathbf{else}:\\
\;\;\;\;0.08333333333333333 + \left(\frac{0.25}{re \cdot re} + \left(re \cdot re\right) \cdot 0.016666666666666666\right)\\
\end{array}
\]
Alternative 8 Accuracy 40.5% Cost 844
\[\begin{array}{l}
t_0 := im \cdot \left(0.5 \cdot \left(re \cdot im\right)\right)\\
\mathbf{if}\;im \leq -1.45:\\
\;\;\;\;t_0\\
\mathbf{elif}\;im \leq 0.0125:\\
\;\;\;\;re\\
\mathbf{elif}\;im \leq 8.5 \cdot 10^{+187}:\\
\;\;\;\;\frac{1}{re \cdot re}\\
\mathbf{else}:\\
\;\;\;\;t_0\\
\end{array}
\]
Alternative 9 Accuracy 46.9% Cost 844
\[\begin{array}{l}
t_0 := re \cdot \left(0.5 \cdot \left(im \cdot im\right)\right)\\
\mathbf{if}\;im \leq -1.45:\\
\;\;\;\;t_0\\
\mathbf{elif}\;im \leq 0.0125:\\
\;\;\;\;re\\
\mathbf{elif}\;im \leq 6.8 \cdot 10^{+143}:\\
\;\;\;\;0.08333333333333333 + \frac{0.25}{re \cdot re}\\
\mathbf{else}:\\
\;\;\;\;t_0\\
\end{array}
\]
Alternative 10 Accuracy 47.0% Cost 841
\[\begin{array}{l}
\mathbf{if}\;im \leq 0.0125 \lor \neg \left(im \leq 4 \cdot 10^{+143}\right):\\
\;\;\;\;re \cdot \left(1 + 0.5 \cdot \left(im \cdot im\right)\right)\\
\mathbf{else}:\\
\;\;\;\;0.08333333333333333 + \frac{0.25}{re \cdot re}\\
\end{array}
\]
Alternative 11 Accuracy 47.0% Cost 713
\[\begin{array}{l}
\mathbf{if}\;im \leq -1.45 \lor \neg \left(im \leq 0.0125\right):\\
\;\;\;\;re \cdot \left(0.5 \cdot \left(im \cdot im\right)\right)\\
\mathbf{else}:\\
\;\;\;\;re\\
\end{array}
\]
Alternative 12 Accuracy 30.7% Cost 585
\[\begin{array}{l}
\mathbf{if}\;im \leq -3.7 \cdot 10^{+95} \lor \neg \left(im \leq 0.0125\right):\\
\;\;\;\;\frac{0.25}{re \cdot re}\\
\mathbf{else}:\\
\;\;\;\;re\\
\end{array}
\]
Alternative 13 Accuracy 30.7% Cost 585
\[\begin{array}{l}
\mathbf{if}\;im \leq -3.7 \cdot 10^{+95} \lor \neg \left(im \leq 0.0125\right):\\
\;\;\;\;\frac{1}{re \cdot re}\\
\mathbf{else}:\\
\;\;\;\;re\\
\end{array}
\]
Alternative 14 Accuracy 25.5% Cost 64
\[re
\]