
Results
Herbie found 13 alternatives:
| Alternative | Accuracy | Speedup |
|---|
if (exp.f64 a) < 0.0Initial program 9.6%
Taylor expanded in b around 0 100.0%
log1p-def100.0%
Simplified100.0%
Taylor expanded in a around 0 6.5%
Taylor expanded in b around inf 100.0%
if 0.0 < (exp.f64 a) Initial program 65.7%
Final simplification74.3%
if (exp.f64 a) < 0.0Initial program 9.6%
Taylor expanded in b around 0 100.0%
log1p-def100.0%
Simplified100.0%
Taylor expanded in a around 0 6.5%
Taylor expanded in b around inf 100.0%
if 0.0 < (exp.f64 a) Initial program 65.7%
Taylor expanded in b around 0 61.6%
log1p-def62.6%
Simplified62.6%
Taylor expanded in a around 0 62.6%
Final simplification72.0%
Initial program 51.7%
Taylor expanded in b around 0 71.2%
log1p-def72.0%
Simplified72.0%
Final simplification72.0%
if (exp.f64 a) < 0.0Initial program 9.6%
Taylor expanded in b around 0 100.0%
log1p-def100.0%
Simplified100.0%
Taylor expanded in a around 0 6.5%
Taylor expanded in b around inf 100.0%
if 0.0 < (exp.f64 a) Initial program 65.7%
Taylor expanded in b around 0 60.6%
associate-+r+60.6%
+-commutative60.6%
associate-+l+60.6%
Simplified60.6%
Taylor expanded in a around inf 60.6%
log1p-def61.6%
Simplified61.6%
Final simplification71.2%
if (exp.f64 a) < 0.0Initial program 9.6%
Taylor expanded in b around 0 100.0%
log1p-def100.0%
Simplified100.0%
Taylor expanded in a around 0 6.5%
Taylor expanded in b around inf 100.0%
if 0.0 < (exp.f64 a) Initial program 65.7%
Taylor expanded in b around 0 61.0%
log1p-def62.0%
Simplified62.0%
Final simplification71.5%
if (exp.f64 a) < 0.0Initial program 9.6%
Taylor expanded in b around 0 100.0%
log1p-def100.0%
Simplified100.0%
Taylor expanded in a around 0 6.5%
Taylor expanded in b around inf 100.0%
if 0.0 < (exp.f64 a) Initial program 65.7%
Taylor expanded in a around 0 63.9%
log1p-def63.9%
Simplified63.9%
Final simplification72.9%
Initial program 51.7%
add-sqr-sqrt50.6%
log-prod51.0%
Applied egg-rr51.0%
log-prod50.6%
rem-square-sqrt51.7%
log1p-expm151.7%
expm1-def51.7%
rem-exp-log51.7%
associate--l+52.4%
expm1-def73.9%
Simplified73.9%
Final simplification73.9%
if (exp.f64 a) < 0.0Initial program 9.6%
Taylor expanded in b around 0 100.0%
log1p-def100.0%
Simplified100.0%
Taylor expanded in a around 0 6.5%
Taylor expanded in b around inf 100.0%
if 0.0 < (exp.f64 a) Initial program 65.7%
Taylor expanded in a around 0 63.9%
Taylor expanded in b around 0 61.3%
Final simplification71.0%
if a < -125Initial program 9.6%
Taylor expanded in a around 0 5.5%
Taylor expanded in b around 0 5.1%
Taylor expanded in b around inf 18.8%
if -125 < a Initial program 65.7%
Taylor expanded in a around 0 63.9%
Taylor expanded in b around 0 61.3%
Final simplification50.6%
if a < -155Initial program 9.6%
Taylor expanded in a around 0 5.5%
Taylor expanded in b around 0 5.1%
Taylor expanded in b around inf 18.8%
if -155 < a Initial program 65.7%
Taylor expanded in a around 0 63.9%
Taylor expanded in b around 0 60.3%
Final simplification49.9%
if a < -96Initial program 9.6%
Taylor expanded in a around 0 5.5%
Taylor expanded in b around 0 5.1%
Taylor expanded in b around inf 18.8%
if -96 < a Initial program 65.7%
Taylor expanded in b around 0 60.6%
associate-+r+60.6%
+-commutative60.6%
associate-+l+60.6%
Simplified60.6%
Taylor expanded in a around inf 60.6%
log1p-def61.6%
Simplified61.6%
Taylor expanded in a around 0 60.3%
Final simplification49.9%
if a < -105Initial program 9.6%
Taylor expanded in a around 0 5.5%
Taylor expanded in b around 0 5.1%
Taylor expanded in b around inf 18.8%
if -105 < a Initial program 65.7%
Taylor expanded in b around 0 61.0%
log1p-def62.0%
Simplified62.0%
Taylor expanded in a around 0 60.7%
Final simplification50.2%
Initial program 51.7%
Taylor expanded in a around 0 49.3%
Taylor expanded in b around 0 47.2%
Taylor expanded in b around inf 7.4%
Final simplification7.4%
herbie shell --seed 2023166
(FPCore (a b)
:name "symmetry log of sum of exp"
:precision binary64
(log (+ (exp a) (exp b))))