\[\frac{a \cdot {\left(\left|a\right|\right)}^{p} - b \cdot {\left(\left|b\right|\right)}^{p}}{a - b}
\]
↓
\[\begin{array}{l}
t_0 := {\left(\left|a\right|\right)}^{p}\\
t_1 := {\left(\left|b\right|\right)}^{p}\\
t_2 := \frac{t_0}{a} - \frac{t_1}{a}\\
t_3 := b \cdot t_1\\
\mathbf{if}\;a \leq -2.4 \cdot 10^{-141}:\\
\;\;\;\;\frac{a \cdot t_0 - t_3}{a - b}\\
\mathbf{elif}\;a \leq -1 \cdot 10^{-178}:\\
\;\;\;\;\mathsf{fma}\left(t_2, b, t_0\right) + \frac{t_2}{\frac{a}{b \cdot b}}\\
\mathbf{elif}\;a \leq 3.3 \cdot 10^{-144}:\\
\;\;\;\;t_1\\
\mathbf{else}:\\
\;\;\;\;\frac{a \cdot {a}^{p} - t_3}{a - b}\\
\end{array}
\]
double code(double a, double p, double b) {
return ((a * pow(fabs(a), p)) - (b * pow(fabs(b), p))) / (a - b);
}
↓
double code(double a, double p, double b) {
double t_0 = pow(fabs(a), p);
double t_1 = pow(fabs(b), p);
double t_2 = (t_0 / a) - (t_1 / a);
double t_3 = b * t_1;
double tmp;
if (a <= -2.4e-141) {
tmp = ((a * t_0) - t_3) / (a - b);
} else if (a <= -1e-178) {
tmp = fma(t_2, b, t_0) + (t_2 / (a / (b * b)));
} else if (a <= 3.3e-144) {
tmp = t_1;
} else {
tmp = ((a * pow(a, p)) - t_3) / (a - b);
}
return tmp;
}
function code(a, p, b)
return Float64(Float64(Float64(a * (abs(a) ^ p)) - Float64(b * (abs(b) ^ p))) / Float64(a - b))
end
↓
function code(a, p, b)
t_0 = abs(a) ^ p
t_1 = abs(b) ^ p
t_2 = Float64(Float64(t_0 / a) - Float64(t_1 / a))
t_3 = Float64(b * t_1)
tmp = 0.0
if (a <= -2.4e-141)
tmp = Float64(Float64(Float64(a * t_0) - t_3) / Float64(a - b));
elseif (a <= -1e-178)
tmp = Float64(fma(t_2, b, t_0) + Float64(t_2 / Float64(a / Float64(b * b))));
elseif (a <= 3.3e-144)
tmp = t_1;
else
tmp = Float64(Float64(Float64(a * (a ^ p)) - t_3) / Float64(a - b));
end
return tmp
end
code[a_, p_, b_] := N[(N[(N[(a * N[Power[N[Abs[a], $MachinePrecision], p], $MachinePrecision]), $MachinePrecision] - N[(b * N[Power[N[Abs[b], $MachinePrecision], p], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(a - b), $MachinePrecision]), $MachinePrecision]
↓
code[a_, p_, b_] := Block[{t$95$0 = N[Power[N[Abs[a], $MachinePrecision], p], $MachinePrecision]}, Block[{t$95$1 = N[Power[N[Abs[b], $MachinePrecision], p], $MachinePrecision]}, Block[{t$95$2 = N[(N[(t$95$0 / a), $MachinePrecision] - N[(t$95$1 / a), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(b * t$95$1), $MachinePrecision]}, If[LessEqual[a, -2.4e-141], N[(N[(N[(a * t$95$0), $MachinePrecision] - t$95$3), $MachinePrecision] / N[(a - b), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, -1e-178], N[(N[(t$95$2 * b + t$95$0), $MachinePrecision] + N[(t$95$2 / N[(a / N[(b * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, 3.3e-144], t$95$1, N[(N[(N[(a * N[Power[a, p], $MachinePrecision]), $MachinePrecision] - t$95$3), $MachinePrecision] / N[(a - b), $MachinePrecision]), $MachinePrecision]]]]]]]]
\frac{a \cdot {\left(\left|a\right|\right)}^{p} - b \cdot {\left(\left|b\right|\right)}^{p}}{a - b}
↓
\begin{array}{l}
t_0 := {\left(\left|a\right|\right)}^{p}\\
t_1 := {\left(\left|b\right|\right)}^{p}\\
t_2 := \frac{t_0}{a} - \frac{t_1}{a}\\
t_3 := b \cdot t_1\\
\mathbf{if}\;a \leq -2.4 \cdot 10^{-141}:\\
\;\;\;\;\frac{a \cdot t_0 - t_3}{a - b}\\
\mathbf{elif}\;a \leq -1 \cdot 10^{-178}:\\
\;\;\;\;\mathsf{fma}\left(t_2, b, t_0\right) + \frac{t_2}{\frac{a}{b \cdot b}}\\
\mathbf{elif}\;a \leq 3.3 \cdot 10^{-144}:\\
\;\;\;\;t_1\\
\mathbf{else}:\\
\;\;\;\;\frac{a \cdot {a}^{p} - t_3}{a - b}\\
\end{array}