
Herbie found 14 alternatives:
| Alternative | Accuracy | Speedup |
|---|
Initial program 81.7%
associate-*r/81.6%
+-commutative81.6%
Simplified81.6%
cos-sum99.5%
cancel-sign-sub-inv99.5%
fma-def99.6%
Applied egg-rr99.6%
log1p-expm1-u99.6%
distribute-lft-neg-out99.6%
Applied egg-rr99.6%
Final simplification99.6%
Initial program 81.7%
associate-*r/81.6%
+-commutative81.6%
Simplified81.6%
cos-sum99.5%
cancel-sign-sub-inv99.5%
fma-def99.6%
Applied egg-rr99.6%
Final simplification99.6%
Initial program 81.7%
+-commutative81.7%
Simplified81.7%
cos-sum99.6%
Applied egg-rr99.6%
Final simplification99.6%
Initial program 81.7%
associate-*r/81.6%
+-commutative81.6%
Simplified81.6%
cos-sum99.5%
cancel-sign-sub-inv99.5%
fma-def99.6%
Applied egg-rr99.6%
log1p-expm1-u99.6%
distribute-lft-neg-out99.6%
Applied egg-rr99.6%
Taylor expanded in r around 0 99.5%
associate-/l*99.4%
associate-/r/99.6%
*-commutative99.6%
Simplified99.6%
sin-mult82.6%
div-sub82.6%
cos-diff82.5%
add-sqr-sqrt46.8%
sqrt-unprod82.1%
sqr-neg82.1%
sqrt-unprod49.8%
add-sqr-sqrt81.4%
sub-neg81.4%
cos-sum82.5%
Applied egg-rr82.5%
+-inverses82.5%
Simplified82.5%
Final simplification82.5%
if a < -6.5 or 5.7e14 < a Initial program 62.3%
+-commutative62.3%
Simplified62.3%
Taylor expanded in b around 0 62.8%
if -6.5 < a < 5.7e14Initial program 97.5%
+-commutative97.5%
Simplified97.5%
Taylor expanded in a around 0 97.5%
Final simplification81.9%
if a < -6.5 or 5.7e14 < a Initial program 62.3%
*-commutative62.3%
associate-/r/62.3%
+-commutative62.3%
Simplified62.3%
associate-/l*62.3%
*-commutative62.3%
clear-num62.3%
associate-/r/62.2%
*-commutative62.2%
Applied egg-rr62.2%
Taylor expanded in b around 0 62.7%
associate-*l/62.8%
*-un-lft-identity62.8%
*-commutative62.8%
associate-/l*62.8%
Applied egg-rr62.8%
if -6.5 < a < 5.7e14Initial program 97.5%
+-commutative97.5%
Simplified97.5%
Taylor expanded in a around 0 97.5%
Final simplification81.9%
if a < -6.5Initial program 67.2%
*-commutative67.2%
associate-/r/67.3%
+-commutative67.3%
Simplified67.3%
Taylor expanded in b around 0 67.4%
if -6.5 < a < 5.7e14Initial program 97.5%
+-commutative97.5%
Simplified97.5%
Taylor expanded in a around 0 97.5%
if 5.7e14 < a Initial program 55.6%
*-commutative55.6%
associate-/r/55.5%
+-commutative55.5%
Simplified55.5%
associate-/l*55.6%
*-commutative55.6%
clear-num55.7%
associate-/r/55.5%
*-commutative55.5%
Applied egg-rr55.5%
Taylor expanded in b around 0 56.5%
associate-*l/56.6%
*-un-lft-identity56.6%
*-commutative56.6%
associate-/l*56.6%
Applied egg-rr56.6%
Final simplification81.9%
Initial program 81.7%
Final simplification81.7%
Initial program 81.7%
+-commutative81.7%
Simplified81.7%
Taylor expanded in b around 0 59.8%
Final simplification59.8%
if b < -3.2e23Initial program 67.9%
*-commutative67.9%
associate-/r/67.9%
+-commutative67.9%
Simplified67.9%
Taylor expanded in b around 0 9.2%
mul-1-neg9.2%
unsub-neg9.2%
associate-/l*8.7%
Simplified8.7%
Taylor expanded in a around 0 12.2%
if -3.2e23 < b Initial program 85.9%
associate-*r/85.9%
+-commutative85.9%
Simplified85.9%
Taylor expanded in b around 0 72.6%
Final simplification58.4%
if b < -1.65999999999999992Initial program 67.6%
*-commutative67.6%
associate-/r/67.5%
+-commutative67.5%
Simplified67.5%
Taylor expanded in b around 0 9.0%
mul-1-neg9.0%
unsub-neg9.0%
associate-/l*8.5%
Simplified8.5%
Taylor expanded in a around 0 12.1%
if -1.65999999999999992 < b Initial program 86.2%
+-commutative86.2%
Simplified86.2%
Taylor expanded in b around 0 72.9%
Final simplification58.2%
if b < -4.70000000000000018Initial program 67.6%
*-commutative67.6%
associate-/r/67.5%
+-commutative67.5%
Simplified67.5%
Taylor expanded in b around 0 9.0%
mul-1-neg9.0%
unsub-neg9.0%
associate-/l*8.5%
Simplified8.5%
Taylor expanded in a around 0 12.1%
if -4.70000000000000018 < b Initial program 86.2%
+-commutative86.2%
Simplified86.2%
Taylor expanded in b around 0 72.9%
Final simplification58.2%
Initial program 81.7%
*-commutative81.7%
associate-/r/81.5%
+-commutative81.5%
Simplified81.5%
Taylor expanded in b around 0 58.1%
mul-1-neg58.1%
unsub-neg58.1%
associate-/l*58.0%
Simplified58.0%
Taylor expanded in a around 0 41.0%
Final simplification41.0%
Initial program 81.7%
+-commutative81.7%
Simplified81.7%
Taylor expanded in b around 0 56.2%
Taylor expanded in a around 0 37.7%
Final simplification37.7%
herbie shell --seed 2023167
(FPCore (r a b)
:name "rsin B (should all be same)"
:precision binary64
(* r (/ (sin b) (cos (+ a b)))))