\[\frac{\pi}{2} - 2 \cdot \sin^{-1} \left(\sqrt{\frac{1 - x}{2}}\right)
\]
↓
\[\begin{array}{l}
t_0 := 0.25 \cdot {\pi}^{2}\\
t_1 := \cos^{-1} \left(\sqrt{0.5 + x \cdot -0.5}\right)\\
\frac{\mathsf{expm1}\left(\mathsf{log1p}\left(16 \cdot {\cos^{-1} \left(\sqrt{\mathsf{fma}\left(x, -0.5, 0.5\right)}\right)}^{4}\right)\right) + t_0 \cdot \left({\pi}^{2} \cdot -0.25\right)}{\mathsf{fma}\left(2, t_1, 0.5 \cdot \pi\right) \cdot \left(t_0 + 4 \cdot {t_1}^{2}\right)}
\end{array}
\]
(FPCore (x)
:precision binary64
(- (/ PI 2.0) (* 2.0 (asin (sqrt (/ (- 1.0 x) 2.0))))))
↓
(FPCore (x)
:precision binary64
(let* ((t_0 (* 0.25 (pow PI 2.0))) (t_1 (acos (sqrt (+ 0.5 (* x -0.5))))))
(/
(+
(expm1 (log1p (* 16.0 (pow (acos (sqrt (fma x -0.5 0.5))) 4.0))))
(* t_0 (* (pow PI 2.0) -0.25)))
(* (fma 2.0 t_1 (* 0.5 PI)) (+ t_0 (* 4.0 (pow t_1 2.0)))))))double code(double x) {
return (((double) M_PI) / 2.0) - (2.0 * asin(sqrt(((1.0 - x) / 2.0))));
}
↓
double code(double x) {
double t_0 = 0.25 * pow(((double) M_PI), 2.0);
double t_1 = acos(sqrt((0.5 + (x * -0.5))));
return (expm1(log1p((16.0 * pow(acos(sqrt(fma(x, -0.5, 0.5))), 4.0)))) + (t_0 * (pow(((double) M_PI), 2.0) * -0.25))) / (fma(2.0, t_1, (0.5 * ((double) M_PI))) * (t_0 + (4.0 * pow(t_1, 2.0))));
}
function code(x)
return Float64(Float64(pi / 2.0) - Float64(2.0 * asin(sqrt(Float64(Float64(1.0 - x) / 2.0)))))
end
↓
function code(x)
t_0 = Float64(0.25 * (pi ^ 2.0))
t_1 = acos(sqrt(Float64(0.5 + Float64(x * -0.5))))
return Float64(Float64(expm1(log1p(Float64(16.0 * (acos(sqrt(fma(x, -0.5, 0.5))) ^ 4.0)))) + Float64(t_0 * Float64((pi ^ 2.0) * -0.25))) / Float64(fma(2.0, t_1, Float64(0.5 * pi)) * Float64(t_0 + Float64(4.0 * (t_1 ^ 2.0)))))
end
code[x_] := N[(N[(Pi / 2.0), $MachinePrecision] - N[(2.0 * N[ArcSin[N[Sqrt[N[(N[(1.0 - x), $MachinePrecision] / 2.0), $MachinePrecision]], $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
↓
code[x_] := Block[{t$95$0 = N[(0.25 * N[Power[Pi, 2.0], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[ArcCos[N[Sqrt[N[(0.5 + N[(x * -0.5), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]], $MachinePrecision]}, N[(N[(N[(Exp[N[Log[1 + N[(16.0 * N[Power[N[ArcCos[N[Sqrt[N[(x * -0.5 + 0.5), $MachinePrecision]], $MachinePrecision]], $MachinePrecision], 4.0], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]] - 1), $MachinePrecision] + N[(t$95$0 * N[(N[Power[Pi, 2.0], $MachinePrecision] * -0.25), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(N[(2.0 * t$95$1 + N[(0.5 * Pi), $MachinePrecision]), $MachinePrecision] * N[(t$95$0 + N[(4.0 * N[Power[t$95$1, 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]
\frac{\pi}{2} - 2 \cdot \sin^{-1} \left(\sqrt{\frac{1 - x}{2}}\right)
↓
\begin{array}{l}
t_0 := 0.25 \cdot {\pi}^{2}\\
t_1 := \cos^{-1} \left(\sqrt{0.5 + x \cdot -0.5}\right)\\
\frac{\mathsf{expm1}\left(\mathsf{log1p}\left(16 \cdot {\cos^{-1} \left(\sqrt{\mathsf{fma}\left(x, -0.5, 0.5\right)}\right)}^{4}\right)\right) + t_0 \cdot \left({\pi}^{2} \cdot -0.25\right)}{\mathsf{fma}\left(2, t_1, 0.5 \cdot \pi\right) \cdot \left(t_0 + 4 \cdot {t_1}^{2}\right)}
\end{array}