\[\frac{2}{1 + e^{-2 \cdot x}} - 1
\]
↓
\[\begin{array}{l}
\mathbf{if}\;-2 \cdot x \leq -20000000:\\
\;\;\;\;\frac{2}{1 + e^{-2 \cdot x}} + -1\\
\mathbf{elif}\;-2 \cdot x \leq 0.001:\\
\;\;\;\;x + \mathsf{fma}\left(-0.3333333333333333, {x}^{3}, 0.13333333333333333 \cdot {x}^{5}\right)\\
\mathbf{else}:\\
\;\;\;\;-1\\
\end{array}
\]
(FPCore (x y) :precision binary64 (- (/ 2.0 (+ 1.0 (exp (* -2.0 x)))) 1.0))
↓
(FPCore (x y)
:precision binary64
(if (<= (* -2.0 x) -20000000.0)
(+ (/ 2.0 (+ 1.0 (exp (* -2.0 x)))) -1.0)
(if (<= (* -2.0 x) 0.001)
(+
x
(fma
-0.3333333333333333
(pow x 3.0)
(* 0.13333333333333333 (pow x 5.0))))
-1.0)))double code(double x, double y) {
return (2.0 / (1.0 + exp((-2.0 * x)))) - 1.0;
}
↓
double code(double x, double y) {
double tmp;
if ((-2.0 * x) <= -20000000.0) {
tmp = (2.0 / (1.0 + exp((-2.0 * x)))) + -1.0;
} else if ((-2.0 * x) <= 0.001) {
tmp = x + fma(-0.3333333333333333, pow(x, 3.0), (0.13333333333333333 * pow(x, 5.0)));
} else {
tmp = -1.0;
}
return tmp;
}
function code(x, y)
return Float64(Float64(2.0 / Float64(1.0 + exp(Float64(-2.0 * x)))) - 1.0)
end
↓
function code(x, y)
tmp = 0.0
if (Float64(-2.0 * x) <= -20000000.0)
tmp = Float64(Float64(2.0 / Float64(1.0 + exp(Float64(-2.0 * x)))) + -1.0);
elseif (Float64(-2.0 * x) <= 0.001)
tmp = Float64(x + fma(-0.3333333333333333, (x ^ 3.0), Float64(0.13333333333333333 * (x ^ 5.0))));
else
tmp = -1.0;
end
return tmp
end
code[x_, y_] := N[(N[(2.0 / N[(1.0 + N[Exp[N[(-2.0 * x), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - 1.0), $MachinePrecision]
↓
code[x_, y_] := If[LessEqual[N[(-2.0 * x), $MachinePrecision], -20000000.0], N[(N[(2.0 / N[(1.0 + N[Exp[N[(-2.0 * x), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + -1.0), $MachinePrecision], If[LessEqual[N[(-2.0 * x), $MachinePrecision], 0.001], N[(x + N[(-0.3333333333333333 * N[Power[x, 3.0], $MachinePrecision] + N[(0.13333333333333333 * N[Power[x, 5.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], -1.0]]
\frac{2}{1 + e^{-2 \cdot x}} - 1
↓
\begin{array}{l}
\mathbf{if}\;-2 \cdot x \leq -20000000:\\
\;\;\;\;\frac{2}{1 + e^{-2 \cdot x}} + -1\\
\mathbf{elif}\;-2 \cdot x \leq 0.001:\\
\;\;\;\;x + \mathsf{fma}\left(-0.3333333333333333, {x}^{3}, 0.13333333333333333 \cdot {x}^{5}\right)\\
\mathbf{else}:\\
\;\;\;\;-1\\
\end{array}
Alternatives
| Alternative 1 |
|---|
| Error | 0.5 |
|---|
| Cost | 14024 |
|---|
\[\begin{array}{l}
\mathbf{if}\;-2 \cdot x \leq -20000000:\\
\;\;\;\;\frac{2}{1 + e^{-2 \cdot x}} + -1\\
\mathbf{elif}\;-2 \cdot x \leq 0.001:\\
\;\;\;\;-0.3333333333333333 \cdot {x}^{3} + \left(x + 0.13333333333333333 \cdot {x}^{5}\right)\\
\mathbf{else}:\\
\;\;\;\;-1\\
\end{array}
\]
| Alternative 2 |
|---|
| Error | 0.6 |
|---|
| Cost | 7304 |
|---|
\[\begin{array}{l}
\mathbf{if}\;-2 \cdot x \leq -20000000:\\
\;\;\;\;\frac{2}{1 + e^{-2 \cdot x}} + -1\\
\mathbf{elif}\;-2 \cdot x \leq 0.001:\\
\;\;\;\;x + -0.3333333333333333 \cdot {x}^{3}\\
\mathbf{else}:\\
\;\;\;\;-1\\
\end{array}
\]
| Alternative 3 |
|---|
| Error | 13.3 |
|---|
| Cost | 584 |
|---|
\[\begin{array}{l}
\mathbf{if}\;x \leq -1:\\
\;\;\;\;-1\\
\mathbf{elif}\;x \leq 2.55:\\
\;\;\;\;x\\
\mathbf{else}:\\
\;\;\;\;2 - \frac{4}{x}\\
\end{array}
\]
| Alternative 4 |
|---|
| Error | 13.6 |
|---|
| Cost | 580 |
|---|
\[\begin{array}{l}
\mathbf{if}\;x \leq -0.65:\\
\;\;\;\;-1\\
\mathbf{else}:\\
\;\;\;\;x \cdot \frac{2}{x + 2}\\
\end{array}
\]
| Alternative 5 |
|---|
| Error | 13.3 |
|---|
| Cost | 328 |
|---|
\[\begin{array}{l}
\mathbf{if}\;x \leq -1:\\
\;\;\;\;-1\\
\mathbf{elif}\;x \leq 2:\\
\;\;\;\;x\\
\mathbf{else}:\\
\;\;\;\;2\\
\end{array}
\]
| Alternative 6 |
|---|
| Error | 43.9 |
|---|
| Cost | 196 |
|---|
\[\begin{array}{l}
\mathbf{if}\;x \leq 1.1 \cdot 10^{-308}:\\
\;\;\;\;-1\\
\mathbf{else}:\\
\;\;\;\;2\\
\end{array}
\]
| Alternative 7 |
|---|
| Error | 47.1 |
|---|
| Cost | 64 |
|---|
\[-1
\]