\[\left(\left(\log \left(x + y\right) + \log z\right) - t\right) + \left(a - 0.5\right) \cdot \log t
\]
↓
\[\log \left(x + y\right) + \left(\log z - \mathsf{fma}\left(\log t, 0.5 - a, t\right)\right)
\]
(FPCore (x y z t a)
:precision binary64
(+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t))))
↓
(FPCore (x y z t a)
:precision binary64
(+ (log (+ x y)) (- (log z) (fma (log t) (- 0.5 a) t))))
double code(double x, double y, double z, double t, double a) {
return ((log((x + y)) + log(z)) - t) + ((a - 0.5) * log(t));
}
↓
double code(double x, double y, double z, double t, double a) {
return log((x + y)) + (log(z) - fma(log(t), (0.5 - a), t));
}
function code(x, y, z, t, a)
return Float64(Float64(Float64(log(Float64(x + y)) + log(z)) - t) + Float64(Float64(a - 0.5) * log(t)))
end
↓
function code(x, y, z, t, a)
return Float64(log(Float64(x + y)) + Float64(log(z) - fma(log(t), Float64(0.5 - a), t)))
end
code[x_, y_, z_, t_, a_] := N[(N[(N[(N[Log[N[(x + y), $MachinePrecision]], $MachinePrecision] + N[Log[z], $MachinePrecision]), $MachinePrecision] - t), $MachinePrecision] + N[(N[(a - 0.5), $MachinePrecision] * N[Log[t], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
↓
code[x_, y_, z_, t_, a_] := N[(N[Log[N[(x + y), $MachinePrecision]], $MachinePrecision] + N[(N[Log[z], $MachinePrecision] - N[(N[Log[t], $MachinePrecision] * N[(0.5 - a), $MachinePrecision] + t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\left(\left(\log \left(x + y\right) + \log z\right) - t\right) + \left(a - 0.5\right) \cdot \log t
↓
\log \left(x + y\right) + \left(\log z - \mathsf{fma}\left(\log t, 0.5 - a, t\right)\right)
Alternatives
| Alternative 1 |
|---|
| Error | 12.5 |
|---|
| Cost | 20296 |
|---|
\[\begin{array}{l}
\mathbf{if}\;a + -0.5 \leq -1 \cdot 10^{+16}:\\
\;\;\;\;\mathsf{fma}\left(a + -0.5, \log t, -t\right)\\
\mathbf{elif}\;a + -0.5 \leq -0.49998:\\
\;\;\;\;\log y + \left(\log z + \left(\log t \cdot -0.5 - t\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\log t \cdot a - t\\
\end{array}
\]
| Alternative 2 |
|---|
| Error | 0.9 |
|---|
| Cost | 20036 |
|---|
\[\begin{array}{l}
\mathbf{if}\;t \leq 350:\\
\;\;\;\;\log \left(x + y\right) + \left(\log z + \log t \cdot \left(a + -0.5\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\log z - t\right) + \log t \cdot a\\
\end{array}
\]
| Alternative 3 |
|---|
| Error | 0.3 |
|---|
| Cost | 20032 |
|---|
\[\left(\log \left(x + y\right) + \left(\log z - t\right)\right) + \log t \cdot \left(a + -0.5\right)
\]
| Alternative 4 |
|---|
| Error | 12.4 |
|---|
| Cost | 19908 |
|---|
\[\begin{array}{l}
\mathbf{if}\;t \leq 310:\\
\;\;\;\;\log t \cdot \left(a + -0.5\right) + \left(\log z + \log y\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\log z - t\right) + \log t \cdot a\\
\end{array}
\]
| Alternative 5 |
|---|
| Error | 16.0 |
|---|
| Cost | 13904 |
|---|
\[\begin{array}{l}
\mathbf{if}\;a \leq -1.55 \cdot 10^{+26}:\\
\;\;\;\;\mathsf{fma}\left(a + -0.5, \log t, -t\right)\\
\mathbf{elif}\;a \leq 7.4 \cdot 10^{-194}:\\
\;\;\;\;\left(\log t \cdot \left(a + -0.5\right) + \log \left(y \cdot z\right)\right) - t\\
\mathbf{elif}\;a \leq 3 \cdot 10^{-179}:\\
\;\;\;\;\log \left(x + y\right) + \left(\log z - t\right)\\
\mathbf{elif}\;a \leq 124000:\\
\;\;\;\;\log \left(\frac{z}{\sqrt{t}} \cdot \left(x + y\right)\right) - t\\
\mathbf{else}:\\
\;\;\;\;\log t \cdot a - t\\
\end{array}
\]
| Alternative 6 |
|---|
| Error | 9.8 |
|---|
| Cost | 13904 |
|---|
\[\begin{array}{l}
\mathbf{if}\;a \leq -1.55 \cdot 10^{+26}:\\
\;\;\;\;\mathsf{fma}\left(a + -0.5, \log t, -t\right)\\
\mathbf{elif}\;a \leq 7.4 \cdot 10^{-194}:\\
\;\;\;\;\left(\log t \cdot \left(a + -0.5\right) + \log \left(z \cdot \left(x + y\right)\right)\right) - t\\
\mathbf{elif}\;a \leq 5.6 \cdot 10^{-183}:\\
\;\;\;\;\log \left(x + y\right) + \left(\log z - t\right)\\
\mathbf{elif}\;a \leq 124000:\\
\;\;\;\;\log \left(\frac{z}{\sqrt{t}} \cdot \left(x + y\right)\right) - t\\
\mathbf{else}:\\
\;\;\;\;\log t \cdot a - t\\
\end{array}
\]
| Alternative 7 |
|---|
| Error | 17.9 |
|---|
| Cost | 13777 |
|---|
\[\begin{array}{l}
\mathbf{if}\;a \leq -1.35 \cdot 10^{-293}:\\
\;\;\;\;\mathsf{fma}\left(a + -0.5, \log t, -t\right)\\
\mathbf{elif}\;a \leq 5.2 \cdot 10^{-260} \lor \neg \left(a \leq 3.3 \cdot 10^{-108}\right) \land a \leq 2.7 \cdot 10^{-18}:\\
\;\;\;\;\log \left(y \cdot z\right) + \log t \cdot -0.5\\
\mathbf{else}:\\
\;\;\;\;\log t \cdot \left(a + -0.5\right) - t\\
\end{array}
\]
| Alternative 8 |
|---|
| Error | 17.8 |
|---|
| Cost | 13776 |
|---|
\[\begin{array}{l}
t_1 := \log \left(y \cdot z\right) + \log t \cdot -0.5\\
\mathbf{if}\;a \leq -1.3 \cdot 10^{-293}:\\
\;\;\;\;\mathsf{fma}\left(a + -0.5, \log t, -t\right)\\
\mathbf{elif}\;a \leq 2.7 \cdot 10^{-253}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;a \leq 2.75 \cdot 10^{-108}:\\
\;\;\;\;\log \left(x + y\right) + \left(\log z - t\right)\\
\mathbf{elif}\;a \leq 1.55 \cdot 10^{-18}:\\
\;\;\;\;t_1\\
\mathbf{else}:\\
\;\;\;\;\log t \cdot \left(a + -0.5\right) - t\\
\end{array}
\]
| Alternative 9 |
|---|
| Error | 17.6 |
|---|
| Cost | 13776 |
|---|
\[\begin{array}{l}
t_1 := \log \left(y \cdot z\right) + \log t \cdot -0.5\\
t_2 := \log z - t\\
\mathbf{if}\;a \leq -1.3 \cdot 10^{-293}:\\
\;\;\;\;\mathsf{fma}\left(a + -0.5, \log t, -t\right)\\
\mathbf{elif}\;a \leq 6.8 \cdot 10^{-258}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;a \leq 3.35 \cdot 10^{-108}:\\
\;\;\;\;\log \left(x + y\right) + t_2\\
\mathbf{elif}\;a \leq 1.52 \cdot 10^{-18}:\\
\;\;\;\;t_1\\
\mathbf{else}:\\
\;\;\;\;t_2 + \log t \cdot a\\
\end{array}
\]
| Alternative 10 |
|---|
| Error | 17.9 |
|---|
| Cost | 13776 |
|---|
\[\begin{array}{l}
t_1 := \log z - t\\
t_2 := \log \left(y \cdot \frac{z}{\sqrt{t}}\right) - t\\
\mathbf{if}\;a \leq -5.4 \cdot 10^{-7}:\\
\;\;\;\;\mathsf{fma}\left(a + -0.5, \log t, -t\right)\\
\mathbf{elif}\;a \leq 1.2 \cdot 10^{-245}:\\
\;\;\;\;t_2\\
\mathbf{elif}\;a \leq 4 \cdot 10^{-183}:\\
\;\;\;\;\log \left(x + y\right) + t_1\\
\mathbf{elif}\;a \leq 6.4 \cdot 10^{-18}:\\
\;\;\;\;t_2\\
\mathbf{else}:\\
\;\;\;\;t_1 + \log t \cdot a\\
\end{array}
\]
| Alternative 11 |
|---|
| Error | 15.5 |
|---|
| Cost | 13772 |
|---|
\[\begin{array}{l}
\mathbf{if}\;a \leq -110000:\\
\;\;\;\;\mathsf{fma}\left(a + -0.5, \log t, -t\right)\\
\mathbf{elif}\;a \leq 1.76 \cdot 10^{-202}:\\
\;\;\;\;\left(\log \left(y \cdot z\right) + \log t \cdot -0.5\right) - t\\
\mathbf{elif}\;a \leq 3.05 \cdot 10^{-18}:\\
\;\;\;\;\log \left(\frac{z}{\sqrt{t}} \cdot \left(x + y\right)\right) - t\\
\mathbf{else}:\\
\;\;\;\;\left(\log z - t\right) + \log t \cdot a\\
\end{array}
\]
| Alternative 12 |
|---|
| Error | 9.7 |
|---|
| Cost | 13772 |
|---|
\[\begin{array}{l}
\mathbf{if}\;a \leq -110000:\\
\;\;\;\;\mathsf{fma}\left(a + -0.5, \log t, -t\right)\\
\mathbf{elif}\;a \leq 4.5 \cdot 10^{-202}:\\
\;\;\;\;\left(\log \left(z \cdot \left(x + y\right)\right) + \log t \cdot -0.5\right) - t\\
\mathbf{elif}\;a \leq 6.2 \cdot 10^{-18}:\\
\;\;\;\;\log \left(\frac{z}{\sqrt{t}} \cdot \left(x + y\right)\right) - t\\
\mathbf{else}:\\
\;\;\;\;\left(\log z - t\right) + \log t \cdot a\\
\end{array}
\]
| Alternative 13 |
|---|
| Error | 17.3 |
|---|
| Cost | 13508 |
|---|
\[\begin{array}{l}
\mathbf{if}\;t \leq 5.3 \cdot 10^{-14}:\\
\;\;\;\;\log t \cdot \left(a + -0.5\right) + \log \left(y \cdot z\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\log z - t\right) + \log t \cdot a\\
\end{array}
\]
| Alternative 14 |
|---|
| Error | 14.9 |
|---|
| Cost | 13184 |
|---|
\[\mathsf{fma}\left(a + -0.5, \log t, -t\right)
\]
| Alternative 15 |
|---|
| Error | 14.9 |
|---|
| Cost | 6848 |
|---|
\[\log t \cdot \left(a + -0.5\right) - t
\]
| Alternative 16 |
|---|
| Error | 24.2 |
|---|
| Cost | 6724 |
|---|
\[\begin{array}{l}
\mathbf{if}\;t \leq 2.3 \cdot 10^{+18}:\\
\;\;\;\;\log t \cdot a\\
\mathbf{else}:\\
\;\;\;\;-t\\
\end{array}
\]
| Alternative 17 |
|---|
| Error | 16.6 |
|---|
| Cost | 6720 |
|---|
\[\log t \cdot a - t
\]
| Alternative 18 |
|---|
| Error | 40.0 |
|---|
| Cost | 128 |
|---|
\[-t
\]