
Herbie found 14 alternatives:
| Alternative | Accuracy | Speedup |
|---|
Initial program 99.6%
associate-*l*99.6%
cancel-sign-sub-inv99.6%
cancel-sign-sub99.6%
remove-double-neg99.6%
fma-def99.6%
associate-*l*99.6%
Simplified99.6%
sin-asin99.6%
add-sqr-sqrt45.9%
sqrt-unprod92.7%
sqr-neg92.7%
sqrt-unprod46.8%
add-sqr-sqrt86.0%
fma-udef86.0%
associate-*r*86.0%
expm1-log1p-u86.0%
Applied egg-rr99.6%
Final simplification99.6%
Initial program 99.6%
associate-*l*99.6%
cancel-sign-sub-inv99.6%
cancel-sign-sub99.6%
remove-double-neg99.6%
fma-def99.6%
associate-*l*99.6%
Simplified99.6%
Taylor expanded in phi1 around inf 99.6%
associate-*r*99.6%
*-commutative99.6%
fma-udef99.6%
*-commutative99.6%
fma-udef99.6%
*-commutative99.6%
*-commutative99.6%
associate-*r*99.6%
fma-udef99.6%
associate-*r*99.6%
*-commutative99.6%
*-commutative99.6%
Simplified99.6%
Final simplification99.6%
Initial program 99.6%
associate-*l*99.6%
cancel-sign-sub-inv99.6%
cancel-sign-sub99.6%
remove-double-neg99.6%
fma-def99.6%
associate-*l*99.6%
Simplified99.6%
Taylor expanded in delta around inf 99.6%
Final simplification99.6%
Initial program 99.6%
associate-*l*99.6%
cancel-sign-sub-inv99.6%
cancel-sign-sub99.6%
remove-double-neg99.6%
fma-def99.6%
associate-*l*99.6%
Simplified99.6%
Taylor expanded in theta around 0 93.4%
Taylor expanded in theta around inf 93.5%
Final simplification93.5%
Initial program 99.6%
*-commutative99.6%
associate-*l*99.6%
sub-neg99.6%
+-commutative99.6%
*-commutative99.6%
distribute-rgt-neg-in99.6%
fma-def99.6%
Simplified99.6%
Taylor expanded in theta around 0 93.5%
Taylor expanded in delta around 0 91.1%
unpow291.1%
sin-mult91.1%
Applied egg-rr91.1%
div-sub91.1%
+-inverses91.1%
cos-091.1%
metadata-eval91.1%
Simplified91.1%
Final simplification91.1%
if delta < -5.5000000000000002e-5 or 2.15e15 < delta Initial program 99.6%
*-commutative99.6%
associate-*l*99.7%
sub-neg99.7%
+-commutative99.7%
*-commutative99.7%
distribute-rgt-neg-in99.7%
fma-def99.7%
Simplified99.6%
Taylor expanded in phi1 around 0 83.2%
Taylor expanded in delta around inf 83.2%
associate-*r*83.2%
*-commutative83.2%
associate-*l*83.2%
Simplified83.2%
if -5.5000000000000002e-5 < delta < 2.15e15Initial program 99.5%
*-commutative99.5%
associate-*l*99.5%
sub-neg99.5%
+-commutative99.5%
*-commutative99.5%
distribute-rgt-neg-in99.5%
fma-def99.5%
Simplified99.5%
Taylor expanded in theta around 0 98.4%
Taylor expanded in delta around 0 98.0%
mul-1-neg98.0%
unsub-neg98.0%
unpow298.0%
1-sub-sin98.2%
unpow298.2%
Simplified98.2%
Final simplification90.8%
if delta < -4.3000000000000001e-7 or 2.15e15 < delta Initial program 99.6%
*-commutative99.6%
associate-*l*99.7%
sub-neg99.7%
+-commutative99.7%
*-commutative99.7%
distribute-rgt-neg-in99.7%
fma-def99.7%
Simplified99.6%
Taylor expanded in phi1 around 0 83.2%
Taylor expanded in delta around inf 83.2%
associate-*r*83.2%
*-commutative83.2%
associate-*l*83.2%
Simplified83.2%
if -4.3000000000000001e-7 < delta < 2.15e15Initial program 99.5%
associate-*l*99.6%
cancel-sign-sub-inv99.6%
cancel-sign-sub99.6%
remove-double-neg99.6%
fma-def99.5%
associate-*l*99.6%
Simplified99.6%
sin-asin99.6%
add-sqr-sqrt45.5%
sqrt-unprod93.3%
sqr-neg93.3%
sqrt-unprod47.8%
add-sqr-sqrt89.7%
fma-udef89.7%
associate-*r*89.7%
expm1-log1p-u89.7%
Applied egg-rr99.6%
Taylor expanded in delta around 0 98.0%
unpow298.0%
1-sub-sin98.2%
unpow298.2%
Simplified98.2%
unpow298.2%
cos-mult98.1%
Applied egg-rr98.1%
+-commutative98.1%
+-inverses98.1%
cos-098.1%
Simplified98.1%
Final simplification90.7%
if delta < -1.25e-4 or 2.15e15 < delta Initial program 99.6%
*-commutative99.6%
associate-*l*99.7%
sub-neg99.7%
+-commutative99.7%
*-commutative99.7%
distribute-rgt-neg-in99.7%
fma-def99.7%
Simplified99.6%
Taylor expanded in phi1 around 0 83.2%
Taylor expanded in delta around inf 83.2%
associate-*r*83.2%
*-commutative83.2%
associate-*l*83.2%
Simplified83.2%
if -1.25e-4 < delta < 2.15e15Initial program 99.5%
associate-*l*99.6%
cancel-sign-sub-inv99.6%
cancel-sign-sub99.6%
remove-double-neg99.6%
fma-def99.5%
associate-*l*99.6%
Simplified99.6%
sin-asin99.6%
add-sqr-sqrt45.5%
sqrt-unprod93.3%
sqr-neg93.3%
sqrt-unprod47.8%
add-sqr-sqrt89.7%
fma-udef89.7%
associate-*r*89.7%
expm1-log1p-u89.7%
Applied egg-rr99.6%
Taylor expanded in delta around 0 98.0%
unpow298.0%
1-sub-sin98.2%
unpow298.2%
Simplified98.2%
Taylor expanded in delta around 0 97.9%
Final simplification90.6%
if delta < -1.4800000000000001e-5 or 2.15e15 < delta Initial program 99.6%
*-commutative99.6%
associate-*l*99.7%
sub-neg99.7%
+-commutative99.7%
*-commutative99.7%
distribute-rgt-neg-in99.7%
fma-def99.7%
Simplified99.6%
Taylor expanded in phi1 around 0 83.2%
Taylor expanded in delta around inf 83.2%
associate-*r*83.2%
*-commutative83.2%
associate-*l*83.2%
Simplified83.2%
if -1.4800000000000001e-5 < delta < 2.15e15Initial program 99.5%
associate-*l*99.6%
cancel-sign-sub-inv99.6%
cancel-sign-sub99.6%
remove-double-neg99.6%
fma-def99.5%
associate-*l*99.6%
Simplified99.6%
sin-asin99.6%
add-sqr-sqrt45.5%
sqrt-unprod93.3%
sqr-neg93.3%
sqrt-unprod47.8%
add-sqr-sqrt89.7%
fma-udef89.7%
associate-*r*89.7%
expm1-log1p-u89.7%
Applied egg-rr99.6%
Taylor expanded in delta around 0 98.0%
unpow298.0%
1-sub-sin98.2%
unpow298.2%
Simplified98.2%
Taylor expanded in delta around 0 97.9%
associate-*r*98.0%
Simplified98.0%
Final simplification90.6%
Initial program 99.6%
*-commutative99.6%
associate-*l*99.6%
sub-neg99.6%
+-commutative99.6%
*-commutative99.6%
distribute-rgt-neg-in99.6%
fma-def99.6%
Simplified99.6%
Taylor expanded in phi1 around 0 86.6%
Taylor expanded in delta around inf 86.6%
associate-*r*86.6%
*-commutative86.6%
associate-*l*86.6%
Simplified86.6%
Final simplification86.6%
Initial program 99.6%
*-commutative99.6%
associate-*l*99.6%
sub-neg99.6%
+-commutative99.6%
*-commutative99.6%
distribute-rgt-neg-in99.6%
fma-def99.6%
Simplified99.6%
Taylor expanded in phi1 around 0 86.6%
Taylor expanded in phi1 around 0 83.8%
Final simplification83.8%
if delta < -2.30000000000000014e-11 or 2.15e15 < delta Initial program 99.6%
*-commutative99.6%
associate-*l*99.7%
sub-neg99.7%
+-commutative99.7%
*-commutative99.7%
distribute-rgt-neg-in99.7%
fma-def99.6%
Simplified99.6%
Taylor expanded in phi1 around 0 83.3%
Taylor expanded in phi1 around 0 79.2%
Taylor expanded in theta around 0 68.9%
if -2.30000000000000014e-11 < delta < 2.15e15Initial program 99.6%
*-commutative99.6%
associate-*l*99.5%
sub-neg99.5%
+-commutative99.5%
*-commutative99.5%
distribute-rgt-neg-in99.5%
fma-def99.5%
Simplified99.5%
Taylor expanded in phi1 around 0 89.8%
Taylor expanded in lambda1 around inf 82.7%
Final simplification75.8%
if delta < -1.1199999999999999e60 or 2.7e11 < delta Initial program 99.6%
*-commutative99.6%
associate-*l*99.7%
sub-neg99.7%
+-commutative99.7%
*-commutative99.7%
distribute-rgt-neg-in99.7%
fma-def99.6%
Simplified99.6%
Taylor expanded in phi1 around 0 81.8%
Taylor expanded in phi1 around 0 78.1%
Taylor expanded in theta around 0 69.2%
if -1.1199999999999999e60 < delta < 2.7e11Initial program 99.6%
*-commutative99.6%
associate-*l*99.6%
sub-neg99.6%
+-commutative99.6%
*-commutative99.6%
distribute-rgt-neg-in99.6%
fma-def99.5%
Simplified99.5%
Taylor expanded in phi1 around 0 90.6%
Taylor expanded in phi1 around 0 88.6%
Taylor expanded in delta around 0 87.5%
Final simplification79.1%
Initial program 99.6%
*-commutative99.6%
associate-*l*99.6%
sub-neg99.6%
+-commutative99.6%
*-commutative99.6%
distribute-rgt-neg-in99.6%
fma-def99.6%
Simplified99.6%
Taylor expanded in phi1 around 0 86.6%
Taylor expanded in lambda1 around inf 70.3%
Final simplification70.3%
herbie shell --seed 2023166
(FPCore (lambda1 phi1 phi2 delta theta)
:name "Destination given bearing on a great circle"
:precision binary64
(+ lambda1 (atan2 (* (* (sin theta) (sin delta)) (cos phi1)) (- (cos delta) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))))))