
Results
Herbie found 8 alternatives:
| Alternative | Accuracy | Speedup |
|---|
Initial program 68.5%
Taylor expanded in x around 0 99.4%
Final simplification99.4%
Initial program 68.5%
Taylor expanded in x around 0 99.2%
add-cube-cbrt98.6%
pow398.6%
*-commutative98.6%
cbrt-prod98.1%
rem-cbrt-cube98.3%
Applied egg-rr98.3%
unpow-prod-down98.2%
cube-mult98.2%
rem-cube-cbrt99.2%
associate-*l*99.2%
Applied egg-rr99.2%
*-commutative99.2%
fma-def99.2%
Applied egg-rr99.2%
Final simplification99.2%
Initial program 68.5%
Taylor expanded in x around 0 99.2%
Final simplification99.2%
Initial program 68.5%
Taylor expanded in x around 0 99.2%
add-cube-cbrt98.6%
pow398.6%
*-commutative98.6%
cbrt-prod98.1%
rem-cbrt-cube98.3%
Applied egg-rr98.3%
unpow-prod-down98.2%
cube-mult98.2%
rem-cube-cbrt99.2%
associate-*l*99.2%
Applied egg-rr99.2%
Taylor expanded in x around 0 99.2%
unpow299.2%
*-commutative99.2%
associate-*l*99.1%
*-commutative99.1%
Simplified99.1%
Final simplification99.1%
Initial program 68.5%
Taylor expanded in x around 0 99.2%
add-cube-cbrt98.6%
pow398.6%
*-commutative98.6%
cbrt-prod98.1%
rem-cbrt-cube98.3%
Applied egg-rr98.3%
unpow-prod-down98.2%
cube-mult98.2%
rem-cube-cbrt99.2%
associate-*l*99.2%
Applied egg-rr99.2%
Final simplification99.2%
Initial program 68.5%
Taylor expanded in x around 0 98.8%
add-sqr-sqrt80.3%
sqrt-unprod73.0%
pow273.0%
Applied egg-rr73.0%
unpow273.0%
*-commutative73.0%
*-commutative73.0%
swap-sqr73.1%
pow-sqr73.0%
metadata-eval73.0%
metadata-eval73.0%
Simplified73.0%
metadata-eval73.0%
pow-sqr73.1%
metadata-eval73.1%
swap-sqr73.0%
cube-mult73.0%
associate-*r*73.0%
cube-mult73.0%
associate-*r*73.0%
sqrt-unprod80.3%
add-sqr-sqrt98.8%
associate-*l*98.7%
associate-*l*98.7%
Applied egg-rr98.7%
Final simplification98.7%
Initial program 68.5%
Taylor expanded in x around 0 98.8%
add-sqr-sqrt80.3%
sqrt-unprod73.0%
pow273.0%
Applied egg-rr73.0%
unpow273.0%
*-commutative73.0%
*-commutative73.0%
swap-sqr73.1%
pow-sqr73.0%
metadata-eval73.0%
metadata-eval73.0%
Simplified73.0%
metadata-eval73.0%
pow-sqr73.1%
metadata-eval73.1%
swap-sqr73.0%
cube-mult73.0%
associate-*r*73.0%
cube-mult73.0%
associate-*r*73.0%
sqrt-unprod80.3%
add-sqr-sqrt98.8%
*-commutative98.8%
Applied egg-rr98.8%
Final simplification98.8%
Initial program 68.5%
Taylor expanded in x around inf 6.4%
neg-mul-16.4%
Simplified6.4%
Final simplification6.4%
herbie shell --seed 2023167
(FPCore (x)
:name "bug500 (missed optimization)"
:precision binary64
:pre (and (< -1000.0 x) (< x 1000.0))
:herbie-target
(if (< (fabs x) 0.07) (- (+ (- (/ (pow x 3.0) 6.0) (/ (pow x 5.0) 120.0)) (/ (pow x 7.0) 5040.0))) (- (sin x) x))
(- (sin x) x))