?

Average Accuracy: 6.6% → 8.1%
Time: 16.2s
Precision: binary64
Cost: 45568

?

\[\frac{\pi}{2} - 2 \cdot \sin^{-1} \left(\sqrt{\frac{1 - x}{2}}\right) \]
\[\sqrt[3]{{\left(0.5 \cdot \pi + -2 \cdot \left(0.5 \cdot \pi - \cos^{-1} \left(\sqrt{\mathsf{fma}\left(x, -0.5, 0.5\right)}\right)\right)\right)}^{3}} \]
(FPCore (x)
 :precision binary64
 (- (/ PI 2.0) (* 2.0 (asin (sqrt (/ (- 1.0 x) 2.0))))))
(FPCore (x)
 :precision binary64
 (cbrt
  (pow
   (+ (* 0.5 PI) (* -2.0 (- (* 0.5 PI) (acos (sqrt (fma x -0.5 0.5))))))
   3.0)))
double code(double x) {
	return (((double) M_PI) / 2.0) - (2.0 * asin(sqrt(((1.0 - x) / 2.0))));
}
double code(double x) {
	return cbrt(pow(((0.5 * ((double) M_PI)) + (-2.0 * ((0.5 * ((double) M_PI)) - acos(sqrt(fma(x, -0.5, 0.5)))))), 3.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)
	return cbrt((Float64(Float64(0.5 * pi) + Float64(-2.0 * Float64(Float64(0.5 * pi) - acos(sqrt(fma(x, -0.5, 0.5)))))) ^ 3.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_] := N[Power[N[Power[N[(N[(0.5 * Pi), $MachinePrecision] + N[(-2.0 * N[(N[(0.5 * Pi), $MachinePrecision] - N[ArcCos[N[Sqrt[N[(x * -0.5 + 0.5), $MachinePrecision]], $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 3.0], $MachinePrecision], 1/3], $MachinePrecision]
\frac{\pi}{2} - 2 \cdot \sin^{-1} \left(\sqrt{\frac{1 - x}{2}}\right)
\sqrt[3]{{\left(0.5 \cdot \pi + -2 \cdot \left(0.5 \cdot \pi - \cos^{-1} \left(\sqrt{\mathsf{fma}\left(x, -0.5, 0.5\right)}\right)\right)\right)}^{3}}

Error?

Target

Original6.6%
Target100.0%
Herbie8.1%
\[\sin^{-1} x \]

Derivation?

  1. Initial program 6.1%

    \[\frac{\pi}{2} - 2 \cdot \sin^{-1} \left(\sqrt{\frac{1 - x}{2}}\right) \]
  2. Applied egg-rr6.1%

    \[\leadsto \color{blue}{\sqrt[3]{{\left(\mathsf{fma}\left(\sin^{-1} \left(\sqrt{0.5 - x \cdot 0.5}\right), -2, \pi \cdot 0.5\right)\right)}^{3}}} \]
    Proof

    [Start]6.1

    \[ \frac{\pi}{2} - 2 \cdot \sin^{-1} \left(\sqrt{\frac{1 - x}{2}}\right) \]

    add-cbrt-cube [=>]6.1

    \[ \color{blue}{\sqrt[3]{\left(\left(\frac{\pi}{2} - 2 \cdot \sin^{-1} \left(\sqrt{\frac{1 - x}{2}}\right)\right) \cdot \left(\frac{\pi}{2} - 2 \cdot \sin^{-1} \left(\sqrt{\frac{1 - x}{2}}\right)\right)\right) \cdot \left(\frac{\pi}{2} - 2 \cdot \sin^{-1} \left(\sqrt{\frac{1 - x}{2}}\right)\right)}} \]

    pow3 [=>]6.1

    \[ \sqrt[3]{\color{blue}{{\left(\frac{\pi}{2} - 2 \cdot \sin^{-1} \left(\sqrt{\frac{1 - x}{2}}\right)\right)}^{3}}} \]
  3. Applied egg-rr7.8%

    \[\leadsto \sqrt[3]{{\left(\mathsf{fma}\left(\color{blue}{\pi \cdot 0.5 - \cos^{-1} \left(\sqrt{\mathsf{fma}\left(x, -0.5, 0.5\right)}\right)}, -2, \pi \cdot 0.5\right)\right)}^{3}} \]
    Proof

    [Start]6.1

    \[ \sqrt[3]{{\left(\mathsf{fma}\left(\sin^{-1} \left(\sqrt{0.5 - x \cdot 0.5}\right), -2, \pi \cdot 0.5\right)\right)}^{3}} \]

    asin-acos [=>]7.8

    \[ \sqrt[3]{{\left(\mathsf{fma}\left(\color{blue}{\frac{\pi}{2} - \cos^{-1} \left(\sqrt{0.5 - x \cdot 0.5}\right)}, -2, \pi \cdot 0.5\right)\right)}^{3}} \]

    div-inv [=>]7.8

    \[ \sqrt[3]{{\left(\mathsf{fma}\left(\color{blue}{\pi \cdot \frac{1}{2}} - \cos^{-1} \left(\sqrt{0.5 - x \cdot 0.5}\right), -2, \pi \cdot 0.5\right)\right)}^{3}} \]

    metadata-eval [=>]7.8

    \[ \sqrt[3]{{\left(\mathsf{fma}\left(\pi \cdot \color{blue}{0.5} - \cos^{-1} \left(\sqrt{0.5 - x \cdot 0.5}\right), -2, \pi \cdot 0.5\right)\right)}^{3}} \]

    sub-neg [=>]7.8

    \[ \sqrt[3]{{\left(\mathsf{fma}\left(\pi \cdot 0.5 - \cos^{-1} \left(\sqrt{\color{blue}{0.5 + \left(-x \cdot 0.5\right)}}\right), -2, \pi \cdot 0.5\right)\right)}^{3}} \]

    +-commutative [=>]7.8

    \[ \sqrt[3]{{\left(\mathsf{fma}\left(\pi \cdot 0.5 - \cos^{-1} \left(\sqrt{\color{blue}{\left(-x \cdot 0.5\right) + 0.5}}\right), -2, \pi \cdot 0.5\right)\right)}^{3}} \]

    distribute-rgt-neg-in [=>]7.8

    \[ \sqrt[3]{{\left(\mathsf{fma}\left(\pi \cdot 0.5 - \cos^{-1} \left(\sqrt{\color{blue}{x \cdot \left(-0.5\right)} + 0.5}\right), -2, \pi \cdot 0.5\right)\right)}^{3}} \]

    metadata-eval [=>]7.8

    \[ \sqrt[3]{{\left(\mathsf{fma}\left(\pi \cdot 0.5 - \cos^{-1} \left(\sqrt{x \cdot \color{blue}{-0.5} + 0.5}\right), -2, \pi \cdot 0.5\right)\right)}^{3}} \]

    metadata-eval [<=]7.8

    \[ \sqrt[3]{{\left(\mathsf{fma}\left(\pi \cdot 0.5 - \cos^{-1} \left(\sqrt{x \cdot \color{blue}{\frac{1}{-2}} + 0.5}\right), -2, \pi \cdot 0.5\right)\right)}^{3}} \]

    metadata-eval [<=]7.8

    \[ \sqrt[3]{{\left(\mathsf{fma}\left(\pi \cdot 0.5 - \cos^{-1} \left(\sqrt{x \cdot \frac{1}{\color{blue}{-2}} + 0.5}\right), -2, \pi \cdot 0.5\right)\right)}^{3}} \]

    fma-def [=>]7.8

    \[ \sqrt[3]{{\left(\mathsf{fma}\left(\pi \cdot 0.5 - \cos^{-1} \left(\sqrt{\color{blue}{\mathsf{fma}\left(x, \frac{1}{-2}, 0.5\right)}}\right), -2, \pi \cdot 0.5\right)\right)}^{3}} \]

    metadata-eval [=>]7.8

    \[ \sqrt[3]{{\left(\mathsf{fma}\left(\pi \cdot 0.5 - \cos^{-1} \left(\sqrt{\mathsf{fma}\left(x, \frac{1}{\color{blue}{-2}}, 0.5\right)}\right), -2, \pi \cdot 0.5\right)\right)}^{3}} \]

    metadata-eval [=>]7.8

    \[ \sqrt[3]{{\left(\mathsf{fma}\left(\pi \cdot 0.5 - \cos^{-1} \left(\sqrt{\mathsf{fma}\left(x, \color{blue}{-0.5}, 0.5\right)}\right), -2, \pi \cdot 0.5\right)\right)}^{3}} \]
  4. Taylor expanded in x around 0 7.8%

    \[\leadsto \sqrt[3]{{\color{blue}{\left(0.5 \cdot \pi + -2 \cdot \left(0.5 \cdot \pi - \cos^{-1} \left(\sqrt{\mathsf{fma}\left(x, -0.5, 0.5\right)}\right)\right)\right)}}^{3}} \]
  5. Final simplification7.8%

    \[\leadsto \sqrt[3]{{\left(0.5 \cdot \pi + -2 \cdot \left(0.5 \cdot \pi - \cos^{-1} \left(\sqrt{\mathsf{fma}\left(x, -0.5, 0.5\right)}\right)\right)\right)}^{3}} \]

Alternatives

Alternative 1
Accuracy8.1%
Cost26432
\[\frac{\pi}{2} + 2 \cdot \left(\cos^{-1} \left(\sqrt{0.5 - 0.5 \cdot x}\right) - 0.5 \cdot \pi\right) \]
Alternative 2
Accuracy6.6%
Cost19840
\[\frac{\pi}{2} - 2 \cdot \sin^{-1} \left(\sqrt{\frac{1 - x}{2}}\right) \]

Error

Reproduce?

herbie shell --seed 2023157 
(FPCore (x)
  :name "Ian Simplification"
  :precision binary64

  :herbie-target
  (asin x)

  (- (/ PI 2.0) (* 2.0 (asin (sqrt (/ (- 1.0 x) 2.0))))))