| Alternative 1 | |
|---|---|
| Accuracy | 66.7% |
| Cost | 85508 |

(FPCore (a b angle) :precision binary64 (* (* (* 2.0 (- (pow b 2.0) (pow a 2.0))) (sin (* PI (/ angle 180.0)))) (cos (* PI (/ angle 180.0)))))
(FPCore (a b angle)
:precision binary64
(let* ((t_0 (* 0.011111111111111112 (* angle PI)))
(t_1 (exp (log1p t_0)))
(t_2 (* angle (* PI 0.005555555555555556))))
(if (<= (/ angle 180.0) -1e+182)
(* 2.0 (* (+ a b) (sqrt (pow (* (sin t_0) (* 0.5 (- b a))) 2.0))))
(if (<= (/ angle 180.0) -1e-70)
(*
(sin (* (/ angle 180.0) PI))
(*
(* 2.0 (fma b b (* a (- a))))
(cos (* 0.005555555555555556 (* angle PI)))))
(if (<= (/ angle 180.0) 2e+96)
(* 2.0 (* (- b a) (* (sin t_2) (* (+ a b) (cos t_2)))))
(*
2.0
(*
(+ a b)
(*
(- b a)
(* 0.5 (- (* (sin t_1) (cos 1.0)) (* (cos t_1) (sin 1.0))))))))))))double code(double a, double b, double angle) {
return ((2.0 * (pow(b, 2.0) - pow(a, 2.0))) * sin((((double) M_PI) * (angle / 180.0)))) * cos((((double) M_PI) * (angle / 180.0)));
}
double code(double a, double b, double angle) {
double t_0 = 0.011111111111111112 * (angle * ((double) M_PI));
double t_1 = exp(log1p(t_0));
double t_2 = angle * (((double) M_PI) * 0.005555555555555556);
double tmp;
if ((angle / 180.0) <= -1e+182) {
tmp = 2.0 * ((a + b) * sqrt(pow((sin(t_0) * (0.5 * (b - a))), 2.0)));
} else if ((angle / 180.0) <= -1e-70) {
tmp = sin(((angle / 180.0) * ((double) M_PI))) * ((2.0 * fma(b, b, (a * -a))) * cos((0.005555555555555556 * (angle * ((double) M_PI)))));
} else if ((angle / 180.0) <= 2e+96) {
tmp = 2.0 * ((b - a) * (sin(t_2) * ((a + b) * cos(t_2))));
} else {
tmp = 2.0 * ((a + b) * ((b - a) * (0.5 * ((sin(t_1) * cos(1.0)) - (cos(t_1) * sin(1.0))))));
}
return tmp;
}
function code(a, b, angle) return Float64(Float64(Float64(2.0 * Float64((b ^ 2.0) - (a ^ 2.0))) * sin(Float64(pi * Float64(angle / 180.0)))) * cos(Float64(pi * Float64(angle / 180.0)))) end
function code(a, b, angle) t_0 = Float64(0.011111111111111112 * Float64(angle * pi)) t_1 = exp(log1p(t_0)) t_2 = Float64(angle * Float64(pi * 0.005555555555555556)) tmp = 0.0 if (Float64(angle / 180.0) <= -1e+182) tmp = Float64(2.0 * Float64(Float64(a + b) * sqrt((Float64(sin(t_0) * Float64(0.5 * Float64(b - a))) ^ 2.0)))); elseif (Float64(angle / 180.0) <= -1e-70) tmp = Float64(sin(Float64(Float64(angle / 180.0) * pi)) * Float64(Float64(2.0 * fma(b, b, Float64(a * Float64(-a)))) * cos(Float64(0.005555555555555556 * Float64(angle * pi))))); elseif (Float64(angle / 180.0) <= 2e+96) tmp = Float64(2.0 * Float64(Float64(b - a) * Float64(sin(t_2) * Float64(Float64(a + b) * cos(t_2))))); else tmp = Float64(2.0 * Float64(Float64(a + b) * Float64(Float64(b - a) * Float64(0.5 * Float64(Float64(sin(t_1) * cos(1.0)) - Float64(cos(t_1) * sin(1.0))))))); end return tmp end
code[a_, b_, angle_] := N[(N[(N[(2.0 * N[(N[Power[b, 2.0], $MachinePrecision] - N[Power[a, 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Sin[N[(Pi * N[(angle / 180.0), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] * N[Cos[N[(Pi * N[(angle / 180.0), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]
code[a_, b_, angle_] := Block[{t$95$0 = N[(0.011111111111111112 * N[(angle * Pi), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[Exp[N[Log[1 + t$95$0], $MachinePrecision]], $MachinePrecision]}, Block[{t$95$2 = N[(angle * N[(Pi * 0.005555555555555556), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[N[(angle / 180.0), $MachinePrecision], -1e+182], N[(2.0 * N[(N[(a + b), $MachinePrecision] * N[Sqrt[N[Power[N[(N[Sin[t$95$0], $MachinePrecision] * N[(0.5 * N[(b - a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[N[(angle / 180.0), $MachinePrecision], -1e-70], N[(N[Sin[N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]], $MachinePrecision] * N[(N[(2.0 * N[(b * b + N[(a * (-a)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Cos[N[(0.005555555555555556 * N[(angle * Pi), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[N[(angle / 180.0), $MachinePrecision], 2e+96], N[(2.0 * N[(N[(b - a), $MachinePrecision] * N[(N[Sin[t$95$2], $MachinePrecision] * N[(N[(a + b), $MachinePrecision] * N[Cos[t$95$2], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(2.0 * N[(N[(a + b), $MachinePrecision] * N[(N[(b - a), $MachinePrecision] * N[(0.5 * N[(N[(N[Sin[t$95$1], $MachinePrecision] * N[Cos[1.0], $MachinePrecision]), $MachinePrecision] - N[(N[Cos[t$95$1], $MachinePrecision] * N[Sin[1.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]
\left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \sin \left(\pi \cdot \frac{angle}{180}\right)\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)
\begin{array}{l}
t_0 := 0.011111111111111112 \cdot \left(angle \cdot \pi\right)\\
t_1 := e^{\mathsf{log1p}\left(t_0\right)}\\
t_2 := angle \cdot \left(\pi \cdot 0.005555555555555556\right)\\
\mathbf{if}\;\frac{angle}{180} \leq -1 \cdot 10^{+182}:\\
\;\;\;\;2 \cdot \left(\left(a + b\right) \cdot \sqrt{{\left(\sin t_0 \cdot \left(0.5 \cdot \left(b - a\right)\right)\right)}^{2}}\right)\\
\mathbf{elif}\;\frac{angle}{180} \leq -1 \cdot 10^{-70}:\\
\;\;\;\;\sin \left(\frac{angle}{180} \cdot \pi\right) \cdot \left(\left(2 \cdot \mathsf{fma}\left(b, b, a \cdot \left(-a\right)\right)\right) \cdot \cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)\right)\\
\mathbf{elif}\;\frac{angle}{180} \leq 2 \cdot 10^{+96}:\\
\;\;\;\;2 \cdot \left(\left(b - a\right) \cdot \left(\sin t_2 \cdot \left(\left(a + b\right) \cdot \cos t_2\right)\right)\right)\\
\mathbf{else}:\\
\;\;\;\;2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(0.5 \cdot \left(\sin t_1 \cdot \cos 1 - \cos t_1 \cdot \sin 1\right)\right)\right)\right)\\
\end{array}
Herbie found 24 alternatives:
| Alternative | Accuracy | Speedup |
|---|
if (/.f64 angle 180) < -1.0000000000000001e182Initial program 30.1%
Simplified34.1%
[Start]30.1 | \[ \left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \sin \left(\pi \cdot \frac{angle}{180}\right)\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)
\] |
|---|---|
associate-*l* [=>]30.1 | \[ \color{blue}{\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)}
\] |
associate-*l* [=>]30.1 | \[ \color{blue}{2 \cdot \left(\left({b}^{2} - {a}^{2}\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)}
\] |
unpow2 [=>]30.1 | \[ 2 \cdot \left(\left(\color{blue}{b \cdot b} - {a}^{2}\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)
\] |
unpow2 [=>]30.1 | \[ 2 \cdot \left(\left(b \cdot b - \color{blue}{a \cdot a}\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)
\] |
difference-of-squares [=>]34.1 | \[ 2 \cdot \left(\color{blue}{\left(\left(b + a\right) \cdot \left(b - a\right)\right)} \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)
\] |
Applied egg-rr10.6%
[Start]34.1 | \[ 2 \cdot \left(\left(\left(b + a\right) \cdot \left(b - a\right)\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)
\] |
|---|---|
expm1-log1p-u [=>]16.9 | \[ 2 \cdot \color{blue}{\mathsf{expm1}\left(\mathsf{log1p}\left(\left(\left(b + a\right) \cdot \left(b - a\right)\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)\right)}
\] |
expm1-udef [=>]15.2 | \[ 2 \cdot \color{blue}{\left(e^{\mathsf{log1p}\left(\left(\left(b + a\right) \cdot \left(b - a\right)\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)} - 1\right)}
\] |
Simplified30.2%
[Start]10.6 | \[ 2 \cdot \left(e^{\mathsf{log1p}\left(\left(b + a\right) \cdot \left(\left(b - a\right) \cdot \left(\left(0 + \sin \left(\left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right) \cdot 2\right)\right) \cdot 0.5\right)\right)\right)} - 1\right)
\] |
|---|---|
expm1-def [=>]12.2 | \[ 2 \cdot \color{blue}{\mathsf{expm1}\left(\mathsf{log1p}\left(\left(b + a\right) \cdot \left(\left(b - a\right) \cdot \left(\left(0 + \sin \left(\left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right) \cdot 2\right)\right) \cdot 0.5\right)\right)\right)\right)}
\] |
expm1-log1p [=>]30.2 | \[ 2 \cdot \color{blue}{\left(\left(b + a\right) \cdot \left(\left(b - a\right) \cdot \left(\left(0 + \sin \left(\left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right) \cdot 2\right)\right) \cdot 0.5\right)\right)\right)}
\] |
+-commutative [=>]30.2 | \[ 2 \cdot \left(\color{blue}{\left(a + b\right)} \cdot \left(\left(b - a\right) \cdot \left(\left(0 + \sin \left(\left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right) \cdot 2\right)\right) \cdot 0.5\right)\right)\right)
\] |
+-lft-identity [=>]30.2 | \[ 2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(\color{blue}{\sin \left(\left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right) \cdot 2\right)} \cdot 0.5\right)\right)\right)
\] |
*-commutative [=>]30.2 | \[ 2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(\sin \color{blue}{\left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right)} \cdot 0.5\right)\right)\right)
\] |
Applied egg-rr42.8%
[Start]30.2 | \[ 2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(\sin \left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right) \cdot 0.5\right)\right)\right)
\] |
|---|---|
add-sqr-sqrt [=>]16.1 | \[ 2 \cdot \left(\left(a + b\right) \cdot \color{blue}{\left(\sqrt{\left(b - a\right) \cdot \left(\sin \left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right) \cdot 0.5\right)} \cdot \sqrt{\left(b - a\right) \cdot \left(\sin \left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right) \cdot 0.5\right)}\right)}\right)
\] |
sqrt-unprod [=>]42.6 | \[ 2 \cdot \left(\left(a + b\right) \cdot \color{blue}{\sqrt{\left(\left(b - a\right) \cdot \left(\sin \left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right) \cdot 0.5\right)\right) \cdot \left(\left(b - a\right) \cdot \left(\sin \left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right) \cdot 0.5\right)\right)}}\right)
\] |
pow2 [=>]42.6 | \[ 2 \cdot \left(\left(a + b\right) \cdot \sqrt{\color{blue}{{\left(\left(b - a\right) \cdot \left(\sin \left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right) \cdot 0.5\right)\right)}^{2}}}\right)
\] |
*-commutative [=>]42.6 | \[ 2 \cdot \left(\left(a + b\right) \cdot \sqrt{{\color{blue}{\left(\left(\sin \left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right) \cdot 0.5\right) \cdot \left(b - a\right)\right)}}^{2}}\right)
\] |
associate-*l* [=>]42.6 | \[ 2 \cdot \left(\left(a + b\right) \cdot \sqrt{{\color{blue}{\left(\sin \left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right) \cdot \left(0.5 \cdot \left(b - a\right)\right)\right)}}^{2}}\right)
\] |
*-commutative [=>]42.6 | \[ 2 \cdot \left(\left(a + b\right) \cdot \sqrt{{\left(\sin \color{blue}{\left(\left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right) \cdot 2\right)} \cdot \left(0.5 \cdot \left(b - a\right)\right)\right)}^{2}}\right)
\] |
associate-*r* [=>]42.8 | \[ 2 \cdot \left(\left(a + b\right) \cdot \sqrt{{\left(\sin \left(\color{blue}{\left(\left(\pi \cdot angle\right) \cdot 0.005555555555555556\right)} \cdot 2\right) \cdot \left(0.5 \cdot \left(b - a\right)\right)\right)}^{2}}\right)
\] |
associate-*l* [=>]42.8 | \[ 2 \cdot \left(\left(a + b\right) \cdot \sqrt{{\left(\sin \color{blue}{\left(\left(\pi \cdot angle\right) \cdot \left(0.005555555555555556 \cdot 2\right)\right)} \cdot \left(0.5 \cdot \left(b - a\right)\right)\right)}^{2}}\right)
\] |
metadata-eval [=>]42.8 | \[ 2 \cdot \left(\left(a + b\right) \cdot \sqrt{{\left(\sin \left(\left(\pi \cdot angle\right) \cdot \color{blue}{0.011111111111111112}\right) \cdot \left(0.5 \cdot \left(b - a\right)\right)\right)}^{2}}\right)
\] |
if -1.0000000000000001e182 < (/.f64 angle 180) < -9.99999999999999996e-71Initial program 43.3%
Simplified51.5%
[Start]43.3 | \[ \left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \sin \left(\pi \cdot \frac{angle}{180}\right)\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)
\] |
|---|---|
*-commutative [=>]43.3 | \[ \color{blue}{\left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right)\right)} \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)
\] |
associate-*l* [=>]43.3 | \[ \color{blue}{\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)}
\] |
unpow2 [=>]43.3 | \[ \sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \left(\left(2 \cdot \left(\color{blue}{b \cdot b} - {a}^{2}\right)\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)
\] |
fma-neg [=>]51.5 | \[ \sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \left(\left(2 \cdot \color{blue}{\mathsf{fma}\left(b, b, -{a}^{2}\right)}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)
\] |
unpow2 [=>]51.5 | \[ \sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \left(\left(2 \cdot \mathsf{fma}\left(b, b, -\color{blue}{a \cdot a}\right)\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)
\] |
Taylor expanded in angle around inf 56.0%
if -9.99999999999999996e-71 < (/.f64 angle 180) < 2.0000000000000001e96Initial program 65.3%
Simplified69.7%
[Start]65.3 | \[ \left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \sin \left(\pi \cdot \frac{angle}{180}\right)\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)
\] |
|---|---|
associate-*l* [=>]65.3 | \[ \color{blue}{\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)}
\] |
associate-*l* [=>]65.3 | \[ \color{blue}{2 \cdot \left(\left({b}^{2} - {a}^{2}\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)}
\] |
unpow2 [=>]65.3 | \[ 2 \cdot \left(\left(\color{blue}{b \cdot b} - {a}^{2}\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)
\] |
unpow2 [=>]65.3 | \[ 2 \cdot \left(\left(b \cdot b - \color{blue}{a \cdot a}\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)
\] |
difference-of-squares [=>]69.7 | \[ 2 \cdot \left(\color{blue}{\left(\left(b + a\right) \cdot \left(b - a\right)\right)} \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)
\] |
Taylor expanded in b around 0 66.9%
Simplified91.5%
[Start]66.9 | \[ 2 \cdot \left(\left(a \cdot \left(\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right) \cdot \sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)\right) + -1 \cdot \left(a \cdot \left(\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right) \cdot \sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)\right)\right)\right) \cdot b + \left(\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right) \cdot \left({b}^{2} \cdot \sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)\right) + -1 \cdot \left({a}^{2} \cdot \left(\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right) \cdot \sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)\right)\right)\right)\right)
\] |
|---|---|
+-commutative [=>]66.9 | \[ 2 \cdot \left(\left(a \cdot \left(\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right) \cdot \sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)\right) + -1 \cdot \left(a \cdot \left(\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right) \cdot \sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)\right)\right)\right) \cdot b + \color{blue}{\left(-1 \cdot \left({a}^{2} \cdot \left(\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right) \cdot \sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)\right)\right) + \cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right) \cdot \left({b}^{2} \cdot \sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)\right)\right)}\right)
\] |
if 2.0000000000000001e96 < (/.f64 angle 180) Initial program 42.2%
Simplified44.2%
[Start]42.2 | \[ \left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \sin \left(\pi \cdot \frac{angle}{180}\right)\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)
\] |
|---|---|
associate-*l* [=>]42.2 | \[ \color{blue}{\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)}
\] |
associate-*l* [=>]42.2 | \[ \color{blue}{2 \cdot \left(\left({b}^{2} - {a}^{2}\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)}
\] |
unpow2 [=>]42.2 | \[ 2 \cdot \left(\left(\color{blue}{b \cdot b} - {a}^{2}\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)
\] |
unpow2 [=>]42.2 | \[ 2 \cdot \left(\left(b \cdot b - \color{blue}{a \cdot a}\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)
\] |
difference-of-squares [=>]44.2 | \[ 2 \cdot \left(\color{blue}{\left(\left(b + a\right) \cdot \left(b - a\right)\right)} \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)
\] |
Applied egg-rr24.1%
[Start]44.2 | \[ 2 \cdot \left(\left(\left(b + a\right) \cdot \left(b - a\right)\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)
\] |
|---|---|
expm1-log1p-u [=>]20.9 | \[ 2 \cdot \color{blue}{\mathsf{expm1}\left(\mathsf{log1p}\left(\left(\left(b + a\right) \cdot \left(b - a\right)\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)\right)}
\] |
expm1-udef [=>]20.0 | \[ 2 \cdot \color{blue}{\left(e^{\mathsf{log1p}\left(\left(\left(b + a\right) \cdot \left(b - a\right)\right) \cdot \left(\sin \left(\pi \cdot \frac{angle}{180}\right) \cdot \cos \left(\pi \cdot \frac{angle}{180}\right)\right)\right)} - 1\right)}
\] |
Simplified48.3%
[Start]24.1 | \[ 2 \cdot \left(e^{\mathsf{log1p}\left(\left(b + a\right) \cdot \left(\left(b - a\right) \cdot \left(\left(0 + \sin \left(\left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right) \cdot 2\right)\right) \cdot 0.5\right)\right)\right)} - 1\right)
\] |
|---|---|
expm1-def [=>]25.0 | \[ 2 \cdot \color{blue}{\mathsf{expm1}\left(\mathsf{log1p}\left(\left(b + a\right) \cdot \left(\left(b - a\right) \cdot \left(\left(0 + \sin \left(\left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right) \cdot 2\right)\right) \cdot 0.5\right)\right)\right)\right)}
\] |
expm1-log1p [=>]48.3 | \[ 2 \cdot \color{blue}{\left(\left(b + a\right) \cdot \left(\left(b - a\right) \cdot \left(\left(0 + \sin \left(\left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right) \cdot 2\right)\right) \cdot 0.5\right)\right)\right)}
\] |
+-commutative [=>]48.3 | \[ 2 \cdot \left(\color{blue}{\left(a + b\right)} \cdot \left(\left(b - a\right) \cdot \left(\left(0 + \sin \left(\left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right) \cdot 2\right)\right) \cdot 0.5\right)\right)\right)
\] |
+-lft-identity [=>]48.3 | \[ 2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(\color{blue}{\sin \left(\left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right) \cdot 2\right)} \cdot 0.5\right)\right)\right)
\] |
*-commutative [=>]48.3 | \[ 2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(\sin \color{blue}{\left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right)} \cdot 0.5\right)\right)\right)
\] |
Applied egg-rr60.6%
[Start]48.3 | \[ 2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(\sin \left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right) \cdot 0.5\right)\right)\right)
\] |
|---|---|
expm1-log1p-u [=>]51.7 | \[ 2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(\sin \color{blue}{\left(\mathsf{expm1}\left(\mathsf{log1p}\left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right)\right)\right)} \cdot 0.5\right)\right)\right)
\] |
expm1-udef [=>]52.1 | \[ 2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(\sin \color{blue}{\left(e^{\mathsf{log1p}\left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right)} - 1\right)} \cdot 0.5\right)\right)\right)
\] |
sin-diff [=>]60.6 | \[ 2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(\color{blue}{\left(\sin \left(e^{\mathsf{log1p}\left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right)}\right) \cdot \cos 1 - \cos \left(e^{\mathsf{log1p}\left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right)}\right) \cdot \sin 1\right)} \cdot 0.5\right)\right)\right)
\] |
*-commutative [=>]60.6 | \[ 2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(\left(\sin \left(e^{\mathsf{log1p}\left(\color{blue}{\left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right) \cdot 2}\right)}\right) \cdot \cos 1 - \cos \left(e^{\mathsf{log1p}\left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right)}\right) \cdot \sin 1\right) \cdot 0.5\right)\right)\right)
\] |
associate-*r* [=>]60.6 | \[ 2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(\left(\sin \left(e^{\mathsf{log1p}\left(\color{blue}{\left(\left(\pi \cdot angle\right) \cdot 0.005555555555555556\right)} \cdot 2\right)}\right) \cdot \cos 1 - \cos \left(e^{\mathsf{log1p}\left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right)}\right) \cdot \sin 1\right) \cdot 0.5\right)\right)\right)
\] |
associate-*l* [=>]60.6 | \[ 2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(\left(\sin \left(e^{\mathsf{log1p}\left(\color{blue}{\left(\pi \cdot angle\right) \cdot \left(0.005555555555555556 \cdot 2\right)}\right)}\right) \cdot \cos 1 - \cos \left(e^{\mathsf{log1p}\left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right)}\right) \cdot \sin 1\right) \cdot 0.5\right)\right)\right)
\] |
metadata-eval [=>]60.6 | \[ 2 \cdot \left(\left(a + b\right) \cdot \left(\left(b - a\right) \cdot \left(\left(\sin \left(e^{\mathsf{log1p}\left(\left(\pi \cdot angle\right) \cdot \color{blue}{0.011111111111111112}\right)}\right) \cdot \cos 1 - \cos \left(e^{\mathsf{log1p}\left(2 \cdot \left(\pi \cdot \left(angle \cdot 0.005555555555555556\right)\right)\right)}\right) \cdot \sin 1\right) \cdot 0.5\right)\right)\right)
\] |
Final simplification72.4%
| Alternative 1 | |
|---|---|
| Accuracy | 66.7% |
| Cost | 85508 |
| Alternative 2 | |
|---|---|
| Accuracy | 66.9% |
| Cost | 85508 |
| Alternative 3 | |
|---|---|
| Accuracy | 67.3% |
| Cost | 40268 |
| Alternative 4 | |
|---|---|
| Accuracy | 67.4% |
| Cost | 33672 |
| Alternative 5 | |
|---|---|
| Accuracy | 66.8% |
| Cost | 27212 |
| Alternative 6 | |
|---|---|
| Accuracy | 66.8% |
| Cost | 27212 |
| Alternative 7 | |
|---|---|
| Accuracy | 66.6% |
| Cost | 14348 |
| Alternative 8 | |
|---|---|
| Accuracy | 66.6% |
| Cost | 14348 |
| Alternative 9 | |
|---|---|
| Accuracy | 63.3% |
| Cost | 14224 |
| Alternative 10 | |
|---|---|
| Accuracy | 65.2% |
| Cost | 14220 |
| Alternative 11 | |
|---|---|
| Accuracy | 65.1% |
| Cost | 13960 |
| Alternative 12 | |
|---|---|
| Accuracy | 64.0% |
| Cost | 13832 |
| Alternative 13 | |
|---|---|
| Accuracy | 51.9% |
| Cost | 7305 |
| Alternative 14 | |
|---|---|
| Accuracy | 52.0% |
| Cost | 7304 |
| Alternative 15 | |
|---|---|
| Accuracy | 52.1% |
| Cost | 7304 |
| Alternative 16 | |
|---|---|
| Accuracy | 56.6% |
| Cost | 7300 |
| Alternative 17 | |
|---|---|
| Accuracy | 52.0% |
| Cost | 7177 |
| Alternative 18 | |
|---|---|
| Accuracy | 52.0% |
| Cost | 7177 |
| Alternative 19 | |
|---|---|
| Accuracy | 62.5% |
| Cost | 7168 |
| Alternative 20 | |
|---|---|
| Accuracy | 62.5% |
| Cost | 7168 |
| Alternative 21 | |
|---|---|
| Accuracy | 62.6% |
| Cost | 7168 |
| Alternative 22 | |
|---|---|
| Accuracy | 35.3% |
| Cost | 6912 |
| Alternative 23 | |
|---|---|
| Accuracy | 38.2% |
| Cost | 6912 |
herbie shell --seed 2023162
(FPCore (a b angle)
:name "ab-angle->ABCF B"
:precision binary64
(* (* (* 2.0 (- (pow b 2.0) (pow a 2.0))) (sin (* PI (/ angle 180.0)))) (cos (* PI (/ angle 180.0)))))