Math FPCore C Java Python Julia MATLAB Wolfram TeX \[\frac{b \cdot c - a \cdot d}{c \cdot c + d \cdot d}
\]
↓
\[\begin{array}{l}
\mathbf{if}\;d \leq -3 \cdot 10^{+24} \lor \neg \left(d \leq 1.8 \cdot 10^{+94}\right):\\
\;\;\;\;\frac{c}{d} \cdot \frac{b}{d} - \frac{a}{d}\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{\mathsf{hypot}\left(c, d\right)} \cdot \frac{c \cdot b - d \cdot a}{\mathsf{hypot}\left(c, d\right)}\\
\end{array}
\]
(FPCore (a b c d)
:precision binary64
(/ (- (* b c) (* a d)) (+ (* c c) (* d d)))) ↓
(FPCore (a b c d)
:precision binary64
(if (or (<= d -3e+24) (not (<= d 1.8e+94)))
(- (* (/ c d) (/ b d)) (/ a d))
(* (/ 1.0 (hypot c d)) (/ (- (* c b) (* d a)) (hypot c d))))) double code(double a, double b, double c, double d) {
return ((b * c) - (a * d)) / ((c * c) + (d * d));
}
↓
double code(double a, double b, double c, double d) {
double tmp;
if ((d <= -3e+24) || !(d <= 1.8e+94)) {
tmp = ((c / d) * (b / d)) - (a / d);
} else {
tmp = (1.0 / hypot(c, d)) * (((c * b) - (d * a)) / hypot(c, d));
}
return tmp;
}
public static double code(double a, double b, double c, double d) {
return ((b * c) - (a * d)) / ((c * c) + (d * d));
}
↓
public static double code(double a, double b, double c, double d) {
double tmp;
if ((d <= -3e+24) || !(d <= 1.8e+94)) {
tmp = ((c / d) * (b / d)) - (a / d);
} else {
tmp = (1.0 / Math.hypot(c, d)) * (((c * b) - (d * a)) / Math.hypot(c, d));
}
return tmp;
}
def code(a, b, c, d):
return ((b * c) - (a * d)) / ((c * c) + (d * d))
↓
def code(a, b, c, d):
tmp = 0
if (d <= -3e+24) or not (d <= 1.8e+94):
tmp = ((c / d) * (b / d)) - (a / d)
else:
tmp = (1.0 / math.hypot(c, d)) * (((c * b) - (d * a)) / math.hypot(c, d))
return tmp
function code(a, b, c, d)
return Float64(Float64(Float64(b * c) - Float64(a * d)) / Float64(Float64(c * c) + Float64(d * d)))
end
↓
function code(a, b, c, d)
tmp = 0.0
if ((d <= -3e+24) || !(d <= 1.8e+94))
tmp = Float64(Float64(Float64(c / d) * Float64(b / d)) - Float64(a / d));
else
tmp = Float64(Float64(1.0 / hypot(c, d)) * Float64(Float64(Float64(c * b) - Float64(d * a)) / hypot(c, d)));
end
return tmp
end
function tmp = code(a, b, c, d)
tmp = ((b * c) - (a * d)) / ((c * c) + (d * d));
end
↓
function tmp_2 = code(a, b, c, d)
tmp = 0.0;
if ((d <= -3e+24) || ~((d <= 1.8e+94)))
tmp = ((c / d) * (b / d)) - (a / d);
else
tmp = (1.0 / hypot(c, d)) * (((c * b) - (d * a)) / hypot(c, d));
end
tmp_2 = tmp;
end
code[a_, b_, c_, d_] := N[(N[(N[(b * c), $MachinePrecision] - N[(a * d), $MachinePrecision]), $MachinePrecision] / N[(N[(c * c), $MachinePrecision] + N[(d * d), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
↓
code[a_, b_, c_, d_] := If[Or[LessEqual[d, -3e+24], N[Not[LessEqual[d, 1.8e+94]], $MachinePrecision]], N[(N[(N[(c / d), $MachinePrecision] * N[(b / d), $MachinePrecision]), $MachinePrecision] - N[(a / d), $MachinePrecision]), $MachinePrecision], N[(N[(1.0 / N[Sqrt[c ^ 2 + d ^ 2], $MachinePrecision]), $MachinePrecision] * N[(N[(N[(c * b), $MachinePrecision] - N[(d * a), $MachinePrecision]), $MachinePrecision] / N[Sqrt[c ^ 2 + d ^ 2], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]
\frac{b \cdot c - a \cdot d}{c \cdot c + d \cdot d}
↓
\begin{array}{l}
\mathbf{if}\;d \leq -3 \cdot 10^{+24} \lor \neg \left(d \leq 1.8 \cdot 10^{+94}\right):\\
\;\;\;\;\frac{c}{d} \cdot \frac{b}{d} - \frac{a}{d}\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{\mathsf{hypot}\left(c, d\right)} \cdot \frac{c \cdot b - d \cdot a}{\mathsf{hypot}\left(c, d\right)}\\
\end{array}
Alternatives Alternative 1 Accuracy 89.2% Cost 14025
\[\begin{array}{l}
\mathbf{if}\;d \leq -3 \cdot 10^{+24} \lor \neg \left(d \leq 1.8 \cdot 10^{+94}\right):\\
\;\;\;\;\frac{c}{d} \cdot \frac{b}{d} - \frac{a}{d}\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{\mathsf{hypot}\left(c, d\right)} \cdot \frac{c \cdot b - d \cdot a}{\mathsf{hypot}\left(c, d\right)}\\
\end{array}
\]
Alternative 2 Accuracy 86.7% Cost 7628
\[\begin{array}{l}
\mathbf{if}\;c \leq -12500000000000:\\
\;\;\;\;\frac{b - a \cdot \frac{d}{c}}{c}\\
\mathbf{elif}\;c \leq 4.6 \cdot 10^{-123}:\\
\;\;\;\;\left(\frac{c}{\frac{d}{b}} - a\right) \cdot \frac{1}{d}\\
\mathbf{elif}\;c \leq 4.5 \cdot 10^{+15}:\\
\;\;\;\;\frac{c \cdot b - d \cdot a}{\mathsf{fma}\left(c, c, d \cdot d\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{b - \frac{d \cdot a}{c}}{c}\\
\end{array}
\]
Alternative 3 Accuracy 86.7% Cost 1356
\[\begin{array}{l}
\mathbf{if}\;c \leq -12500000000000:\\
\;\;\;\;\frac{b - a \cdot \frac{d}{c}}{c}\\
\mathbf{elif}\;c \leq 4.7 \cdot 10^{-123}:\\
\;\;\;\;\left(\frac{c}{\frac{d}{b}} - a\right) \cdot \frac{1}{d}\\
\mathbf{elif}\;c \leq 4.2 \cdot 10^{+19}:\\
\;\;\;\;\frac{c \cdot b - d \cdot a}{d \cdot d + c \cdot c}\\
\mathbf{else}:\\
\;\;\;\;\frac{b - \frac{d \cdot a}{c}}{c}\\
\end{array}
\]
Alternative 4 Accuracy 80.7% Cost 1236
\[\begin{array}{l}
t_0 := \frac{-a}{d}\\
t_1 := \frac{b - a \cdot \frac{d}{c}}{c}\\
\mathbf{if}\;d \leq -850000000000:\\
\;\;\;\;t_0\\
\mathbf{elif}\;d \leq -2.4 \cdot 10^{-44}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;d \leq -1.08 \cdot 10^{-69}:\\
\;\;\;\;t_0\\
\mathbf{elif}\;d \leq -2.5 \cdot 10^{-136}:\\
\;\;\;\;\frac{b - d \cdot \frac{a}{c}}{c}\\
\mathbf{elif}\;d \leq 4.8 \cdot 10^{-11}:\\
\;\;\;\;t_1\\
\mathbf{else}:\\
\;\;\;\;t_0\\
\end{array}
\]
Alternative 5 Accuracy 83.3% Cost 968
\[\begin{array}{l}
\mathbf{if}\;c \leq -12500000000000:\\
\;\;\;\;\frac{b - a \cdot \frac{d}{c}}{c}\\
\mathbf{elif}\;c \leq 8.5 \cdot 10^{-86}:\\
\;\;\;\;\left(\frac{c}{\frac{d}{b}} - a\right) \cdot \frac{1}{d}\\
\mathbf{else}:\\
\;\;\;\;\frac{b - \frac{d \cdot a}{c}}{c}\\
\end{array}
\]
Alternative 6 Accuracy 81.4% Cost 841
\[\begin{array}{l}
\mathbf{if}\;d \leq -10000000000000 \lor \neg \left(d \leq 2.45 \cdot 10^{-11}\right):\\
\;\;\;\;\frac{-a}{d}\\
\mathbf{else}:\\
\;\;\;\;\frac{b - a \cdot \frac{d}{c}}{c}\\
\end{array}
\]
Alternative 7 Accuracy 69.9% Cost 521
\[\begin{array}{l}
\mathbf{if}\;d \leq -1.65 \cdot 10^{-71} \lor \neg \left(d \leq 4.2 \cdot 10^{-11}\right):\\
\;\;\;\;\frac{-a}{d}\\
\mathbf{else}:\\
\;\;\;\;\frac{b}{c}\\
\end{array}
\]
Alternative 8 Accuracy 14.1% Cost 456
\[\begin{array}{l}
\mathbf{if}\;d \leq -4.8 \cdot 10^{+79}:\\
\;\;\;\;\frac{a}{d}\\
\mathbf{elif}\;d \leq 10^{+72}:\\
\;\;\;\;\frac{a}{c}\\
\mathbf{else}:\\
\;\;\;\;\frac{a}{d}\\
\end{array}
\]
Alternative 9 Accuracy 50.2% Cost 456
\[\begin{array}{l}
\mathbf{if}\;d \leq -1.02 \cdot 10^{+58}:\\
\;\;\;\;\frac{a}{d}\\
\mathbf{elif}\;d \leq 2.6 \cdot 10^{+51}:\\
\;\;\;\;\frac{b}{c}\\
\mathbf{else}:\\
\;\;\;\;\frac{a}{d}\\
\end{array}
\]
Alternative 10 Accuracy 7.7% Cost 192
\[\frac{a}{c}
\]