Math FPCore C Java Python Julia MATLAB Wolfram TeX \[\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right) \cdot \log base + \tan^{-1}_* \frac{im}{re} \cdot 0}{\log base \cdot \log base + 0 \cdot 0}
\]
↓
\[\frac{\log \left(\mathsf{hypot}\left(re, im\right)\right)}{\log base}
\]
(FPCore (re im base)
:precision binary64
(/
(+ (* (log (sqrt (+ (* re re) (* im im)))) (log base)) (* (atan2 im re) 0.0))
(+ (* (log base) (log base)) (* 0.0 0.0)))) ↓
(FPCore (re im base) :precision binary64 (/ (log (hypot re im)) (log base))) double code(double re, double im, double base) {
return ((log(sqrt(((re * re) + (im * im)))) * log(base)) + (atan2(im, re) * 0.0)) / ((log(base) * log(base)) + (0.0 * 0.0));
}
↓
double code(double re, double im, double base) {
return log(hypot(re, im)) / log(base);
}
public static double code(double re, double im, double base) {
return ((Math.log(Math.sqrt(((re * re) + (im * im)))) * Math.log(base)) + (Math.atan2(im, re) * 0.0)) / ((Math.log(base) * Math.log(base)) + (0.0 * 0.0));
}
↓
public static double code(double re, double im, double base) {
return Math.log(Math.hypot(re, im)) / Math.log(base);
}
def code(re, im, base):
return ((math.log(math.sqrt(((re * re) + (im * im)))) * math.log(base)) + (math.atan2(im, re) * 0.0)) / ((math.log(base) * math.log(base)) + (0.0 * 0.0))
↓
def code(re, im, base):
return math.log(math.hypot(re, im)) / math.log(base)
function code(re, im, base)
return Float64(Float64(Float64(log(sqrt(Float64(Float64(re * re) + Float64(im * im)))) * log(base)) + Float64(atan(im, re) * 0.0)) / Float64(Float64(log(base) * log(base)) + Float64(0.0 * 0.0)))
end
↓
function code(re, im, base)
return Float64(log(hypot(re, im)) / log(base))
end
function tmp = code(re, im, base)
tmp = ((log(sqrt(((re * re) + (im * im)))) * log(base)) + (atan2(im, re) * 0.0)) / ((log(base) * log(base)) + (0.0 * 0.0));
end
↓
function tmp = code(re, im, base)
tmp = log(hypot(re, im)) / log(base);
end
code[re_, im_, base_] := N[(N[(N[(N[Log[N[Sqrt[N[(N[(re * re), $MachinePrecision] + N[(im * im), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]], $MachinePrecision] * N[Log[base], $MachinePrecision]), $MachinePrecision] + N[(N[ArcTan[im / re], $MachinePrecision] * 0.0), $MachinePrecision]), $MachinePrecision] / N[(N[(N[Log[base], $MachinePrecision] * N[Log[base], $MachinePrecision]), $MachinePrecision] + N[(0.0 * 0.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
↓
code[re_, im_, base_] := N[(N[Log[N[Sqrt[re ^ 2 + im ^ 2], $MachinePrecision]], $MachinePrecision] / N[Log[base], $MachinePrecision]), $MachinePrecision]
\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right) \cdot \log base + \tan^{-1}_* \frac{im}{re} \cdot 0}{\log base \cdot \log base + 0 \cdot 0}
↓
\frac{\log \left(\mathsf{hypot}\left(re, im\right)\right)}{\log base}
Alternatives Alternative 1 Accuracy 43.5% Cost 13645
\[\begin{array}{l}
t_0 := \log \left(\frac{-1}{re}\right)\\
\mathbf{if}\;re \leq -9.8 \cdot 10^{-12}:\\
\;\;\;\;\frac{-t_0}{\log base}\\
\mathbf{elif}\;re \leq -1.9 \cdot 10^{-59} \lor \neg \left(re \leq -1.45 \cdot 10^{-154}\right):\\
\;\;\;\;\frac{\log im}{\log base}\\
\mathbf{else}:\\
\;\;\;\;t_0 \cdot \frac{-1}{\log base}\\
\end{array}
\]
Alternative 2 Accuracy 43.5% Cost 13581
\[\begin{array}{l}
\mathbf{if}\;re \leq -4 \cdot 10^{-11} \lor \neg \left(re \leq -1.9 \cdot 10^{-59}\right) \land re \leq -1.4 \cdot 10^{-154}:\\
\;\;\;\;\frac{-\log \left(\frac{-1}{re}\right)}{\log base}\\
\mathbf{else}:\\
\;\;\;\;\frac{\log im}{\log base}\\
\end{array}
\]
Alternative 3 Accuracy 32.7% Cost 13124
\[\begin{array}{l}
\mathbf{if}\;im \leq 3.3 \cdot 10^{-291}:\\
\;\;\;\;1\\
\mathbf{else}:\\
\;\;\;\;\frac{\log im}{\log base}\\
\end{array}
\]
Alternative 4 Accuracy 13.9% Cost 196
\[\begin{array}{l}
\mathbf{if}\;base \leq 1:\\
\;\;\;\;-1\\
\mathbf{else}:\\
\;\;\;\;0.1111111111111111\\
\end{array}
\]
Alternative 5 Accuracy 14.1% Cost 196
\[\begin{array}{l}
\mathbf{if}\;base \leq 1:\\
\;\;\;\;-1\\
\mathbf{else}:\\
\;\;\;\;0.16666666666666666\\
\end{array}
\]
Alternative 6 Accuracy 14.3% Cost 196
\[\begin{array}{l}
\mathbf{if}\;base \leq 1:\\
\;\;\;\;-1\\
\mathbf{else}:\\
\;\;\;\;0.25\\
\end{array}
\]
Alternative 7 Accuracy 14.5% Cost 196
\[\begin{array}{l}
\mathbf{if}\;base \leq 1:\\
\;\;\;\;-1\\
\mathbf{else}:\\
\;\;\;\;0.3333333333333333\\
\end{array}
\]
Alternative 8 Accuracy 14.8% Cost 196
\[\begin{array}{l}
\mathbf{if}\;base \leq 1.1:\\
\;\;\;\;-1\\
\mathbf{else}:\\
\;\;\;\;0.5\\
\end{array}
\]
Alternative 9 Accuracy 15.0% Cost 196
\[\begin{array}{l}
\mathbf{if}\;base \leq 1:\\
\;\;\;\;-1\\
\mathbf{else}:\\
\;\;\;\;0.6666666666666666\\
\end{array}
\]
Alternative 10 Accuracy 15.1% Cost 196
\[\begin{array}{l}
\mathbf{if}\;base \leq 1:\\
\;\;\;\;-1\\
\mathbf{else}:\\
\;\;\;\;0.8333333333333334\\
\end{array}
\]
Alternative 11 Accuracy 15.1% Cost 196
\[\begin{array}{l}
\mathbf{if}\;base \leq 3.1 \cdot 10^{-6}:\\
\;\;\;\;-1\\
\mathbf{else}:\\
\;\;\;\;1\\
\end{array}
\]
Alternative 12 Accuracy 9.3% Cost 64
\[-6
\]
Alternative 13 Accuracy 9.6% Cost 64
\[-4
\]
Alternative 14 Accuracy 9.8% Cost 64
\[-3
\]
Alternative 15 Accuracy 10.1% Cost 64
\[-2
\]
Alternative 16 Accuracy 10.4% Cost 64
\[-1
\]