
Results
Herbie found 8 alternatives:
| Alternative | Accuracy | Speedup |
|---|
Initial program 53.7%
hypot-def99.1%
Simplified99.1%
*-un-lft-identity99.1%
add-sqr-sqrt99.1%
times-frac99.2%
Applied egg-rr99.2%
clear-num99.1%
un-div-inv99.1%
pow1/299.1%
pow-flip99.1%
metadata-eval99.1%
Applied egg-rr99.1%
associate-/r/99.5%
Simplified99.5%
Final simplification99.5%
Initial program 53.7%
hypot-def99.1%
Simplified99.1%
expm1-log1p-u67.9%
expm1-udef67.8%
log1p-udef67.9%
add-exp-log99.1%
Applied egg-rr99.1%
Final simplification99.1%
Initial program 53.7%
hypot-def99.1%
Simplified99.1%
Final simplification99.1%
if re < -1.07999999999999994e-44Initial program 39.0%
hypot-def99.1%
Simplified99.1%
expm1-log1p-u90.2%
Applied egg-rr90.2%
Taylor expanded in re around -inf 72.0%
log1p-def71.9%
mul-1-neg71.9%
distribute-neg-frac71.9%
Simplified71.9%
expm1-udef71.9%
log1p-udef72.0%
add-exp-log80.5%
neg-log80.5%
frac-2neg80.5%
metadata-eval80.5%
remove-double-div80.5%
log1p-expm1-u80.5%
expm1-udef80.5%
add-exp-log80.5%
metadata-eval80.5%
Applied egg-rr80.5%
if -1.07999999999999994e-44 < re Initial program 57.3%
hypot-def99.1%
Simplified99.1%
Taylor expanded in re around 0 34.4%
clear-num34.4%
inv-pow34.4%
Applied egg-rr34.4%
unpow-134.4%
Simplified34.4%
Final simplification43.5%
if re < -1.35e-44Initial program 39.0%
hypot-def99.1%
Simplified99.1%
expm1-log1p-u90.2%
Applied egg-rr90.2%
Taylor expanded in re around -inf 72.0%
log1p-def71.9%
mul-1-neg71.9%
distribute-neg-frac71.9%
Simplified71.9%
expm1-log1p-u80.5%
*-un-lft-identity80.5%
neg-log80.5%
frac-2neg80.5%
metadata-eval80.5%
remove-double-div80.5%
log1p-expm1-u80.5%
expm1-udef80.5%
add-exp-log80.5%
metadata-eval80.5%
Applied egg-rr80.5%
*-lft-identity80.5%
Simplified80.5%
if -1.35e-44 < re Initial program 57.3%
hypot-def99.1%
Simplified99.1%
Taylor expanded in re around 0 34.4%
clear-num34.4%
inv-pow34.4%
Applied egg-rr34.4%
unpow-134.4%
Simplified34.4%
Final simplification43.5%
if re < -1.2999999999999999e-44Initial program 39.0%
hypot-def99.1%
Simplified99.1%
expm1-log1p-u90.2%
Applied egg-rr90.2%
Taylor expanded in re around -inf 72.0%
log1p-def71.9%
mul-1-neg71.9%
distribute-neg-frac71.9%
Simplified71.9%
expm1-log1p-u80.5%
*-un-lft-identity80.5%
neg-log80.5%
frac-2neg80.5%
metadata-eval80.5%
remove-double-div80.5%
log1p-expm1-u80.5%
expm1-udef80.5%
add-exp-log80.5%
metadata-eval80.5%
Applied egg-rr80.5%
*-lft-identity80.5%
Simplified80.5%
if -1.2999999999999999e-44 < re Initial program 57.3%
hypot-def99.1%
Simplified99.1%
Taylor expanded in re around 0 34.4%
Final simplification43.6%
Initial program 53.7%
hypot-def99.1%
Simplified99.1%
Taylor expanded in re around 0 29.4%
frac-2neg29.4%
div-inv29.2%
neg-log29.3%
metadata-eval29.3%
Applied egg-rr29.3%
log-rec29.3%
associate-*r/29.3%
*-rgt-identity29.3%
log-rec29.3%
Simplified29.3%
*-un-lft-identity29.3%
add-cube-cbrt29.0%
times-frac29.0%
pow229.0%
add-sqr-sqrt9.2%
sqrt-unprod9.6%
sqr-neg9.6%
sqrt-unprod0.4%
add-sqr-sqrt2.3%
Applied egg-rr2.3%
associate-*l/2.3%
*-lft-identity2.3%
associate-/r*2.3%
unpow22.3%
rem-3cbrt-rft2.3%
Simplified2.3%
Final simplification2.3%
Initial program 53.7%
hypot-def99.1%
Simplified99.1%
Taylor expanded in re around 0 29.4%
Final simplification29.4%
herbie shell --seed 2023167
(FPCore (re im)
:name "math.log10 on complex, real part"
:precision binary64
(/ (log (sqrt (+ (* re re) (* im im)))) (log 10.0)))