
Results
Herbie found 14 alternatives:
| Alternative | Accuracy | Speedup |
|---|
if k < -2.1999999999999998e187Initial program 35.0%
+-rgt-identity35.0%
associate-*l*35.0%
mul0-rgt10.3%
distribute-lft-in35.0%
+-rgt-identity35.0%
sub-neg35.0%
+-commutative35.0%
associate-+l+41.9%
metadata-eval41.9%
metadata-eval41.9%
+-rgt-identity41.9%
Simplified41.9%
add-sqr-sqrt21.2%
*-un-lft-identity21.2%
times-frac21.2%
sqrt-pow121.2%
metadata-eval21.2%
sqrt-pow127.6%
metadata-eval27.6%
Applied egg-rr27.6%
Taylor expanded in t around -inf 0.0%
mul-1-neg0.0%
times-frac0.0%
unpow20.0%
distribute-rgt-neg-in0.0%
associate-/l*0.0%
*-commutative0.0%
*-commutative0.0%
unpow20.0%
rem-square-sqrt62.6%
unpow262.6%
times-frac63.6%
Simplified63.6%
associate-*l/82.5%
distribute-rgt-neg-in82.5%
div-inv82.5%
clear-num82.5%
Applied egg-rr82.5%
if -2.1999999999999998e187 < k Initial program 35.5%
associate-*l*35.5%
associate-*l*35.5%
associate-/r*35.5%
associate-/r/35.5%
*-commutative35.5%
times-frac36.0%
+-commutative36.0%
associate--l+42.8%
metadata-eval42.8%
+-rgt-identity42.8%
times-frac46.9%
Simplified46.9%
Taylor expanded in t around 0 79.9%
unpow279.9%
Simplified79.9%
associate-*l/79.9%
associate-*l*86.0%
Applied egg-rr86.0%
associate-*l/86.0%
*-commutative86.0%
associate-*l*90.2%
Simplified90.2%
associate-*r/90.2%
Applied egg-rr90.2%
associate-*l/89.4%
times-frac94.9%
Applied egg-rr94.9%
Final simplification93.5%
if (*.f64 l l) < 0.0Initial program 21.6%
associate-*l*21.6%
associate-*l*21.6%
associate-/r*21.6%
associate-/r/21.6%
*-commutative21.6%
times-frac21.6%
+-commutative21.6%
associate--l+29.3%
metadata-eval29.3%
+-rgt-identity29.3%
times-frac43.5%
Simplified43.5%
Taylor expanded in t around 0 77.5%
unpow277.5%
Simplified77.5%
associate-*l/77.5%
associate-*l*84.3%
Applied egg-rr84.3%
associate-*l/84.2%
*-commutative84.2%
associate-*l*89.7%
Simplified89.7%
associate-*r/89.8%
Applied egg-rr89.8%
Taylor expanded in k around 0 87.0%
if 0.0 < (*.f64 l l) Initial program 40.1%
associate-*l*40.1%
associate-*l*40.1%
associate-/r*40.2%
associate-/r/40.2%
*-commutative40.2%
times-frac40.7%
+-commutative40.7%
associate--l+47.3%
metadata-eval47.3%
+-rgt-identity47.3%
times-frac47.3%
Simplified47.3%
Taylor expanded in t around 0 78.1%
unpow278.1%
Simplified78.1%
Final simplification80.4%
if (*.f64 l l) < 1.00000000000000007e-68Initial program 32.3%
associate-*l*32.3%
associate-*l*32.3%
associate-/r*32.3%
associate-/r/32.3%
*-commutative32.3%
times-frac34.9%
+-commutative34.9%
associate--l+44.6%
metadata-eval44.6%
+-rgt-identity44.6%
times-frac52.9%
Simplified52.9%
Taylor expanded in t around 0 85.5%
unpow285.5%
Simplified85.5%
associate-*l/85.5%
associate-*l*90.8%
Applied egg-rr90.8%
associate-*l/90.8%
*-commutative90.8%
associate-*l*94.0%
Simplified94.0%
associate-*r/94.0%
Applied egg-rr94.0%
Taylor expanded in k around 0 87.6%
if 1.00000000000000007e-68 < (*.f64 l l) Initial program 37.9%
+-rgt-identity21.2%
associate-*l*21.2%
mul0-rgt22.5%
distribute-lft-in30.9%
+-rgt-identity37.9%
sub-neg37.9%
+-commutative37.9%
associate-+l+42.6%
metadata-eval42.6%
metadata-eval42.6%
+-rgt-identity42.6%
Simplified42.6%
Taylor expanded in k around 0 36.7%
associate-/l*36.7%
unpow236.7%
Simplified36.7%
Taylor expanded in k around inf 63.3%
times-frac63.8%
associate-/l*63.7%
unpow263.7%
associate-/l*64.0%
Simplified64.0%
Taylor expanded in k around 0 66.9%
*-commutative66.9%
unpow266.9%
times-frac67.4%
Simplified67.4%
Final simplification76.3%
Initial program 35.4%
associate-*l*35.4%
associate-*l*35.4%
associate-/r*35.5%
associate-/r/35.5%
*-commutative35.5%
times-frac35.8%
+-commutative35.8%
associate--l+42.7%
metadata-eval42.7%
+-rgt-identity42.7%
times-frac46.4%
Simplified46.4%
Taylor expanded in t around 0 78.0%
unpow278.0%
Simplified78.0%
associate-*l/78.0%
associate-*l*83.4%
Applied egg-rr83.4%
associate-*l/83.4%
*-commutative83.4%
associate-*l*87.6%
Simplified87.6%
Final simplification87.6%
Initial program 35.4%
associate-*l*35.4%
associate-*l*35.4%
associate-/r*35.5%
associate-/r/35.5%
*-commutative35.5%
times-frac35.8%
+-commutative35.8%
associate--l+42.7%
metadata-eval42.7%
+-rgt-identity42.7%
times-frac46.4%
Simplified46.4%
Taylor expanded in t around 0 78.0%
unpow278.0%
Simplified78.0%
associate-*l/78.0%
associate-*l*83.4%
Applied egg-rr83.4%
associate-*l/83.4%
*-commutative83.4%
associate-*l*87.6%
Simplified87.6%
associate-*l/87.6%
Applied egg-rr87.6%
Final simplification87.6%
Initial program 35.4%
associate-*l*35.4%
associate-*l*35.4%
associate-/r*35.5%
associate-/r/35.5%
*-commutative35.5%
times-frac35.8%
+-commutative35.8%
associate--l+42.7%
metadata-eval42.7%
+-rgt-identity42.7%
times-frac46.4%
Simplified46.4%
Taylor expanded in t around 0 78.0%
unpow278.0%
Simplified78.0%
associate-*l/78.0%
associate-*l*83.4%
Applied egg-rr83.4%
associate-*l/83.4%
*-commutative83.4%
associate-*l*87.6%
Simplified87.6%
associate-*r/87.6%
Applied egg-rr87.6%
Final simplification87.6%
Initial program 35.4%
associate-*l*35.4%
associate-*l*35.4%
associate-/r*35.5%
associate-/r/35.5%
*-commutative35.5%
times-frac35.8%
+-commutative35.8%
associate--l+42.7%
metadata-eval42.7%
+-rgt-identity42.7%
times-frac46.4%
Simplified46.4%
Taylor expanded in t around 0 78.0%
unpow278.0%
Simplified78.0%
associate-*l/78.0%
associate-*l*83.4%
Applied egg-rr83.4%
associate-*l/83.4%
*-commutative83.4%
associate-*l*87.6%
Simplified87.6%
associate-*r/87.6%
Applied egg-rr87.6%
frac-times80.2%
Applied egg-rr80.2%
*-commutative80.2%
*-commutative80.2%
times-frac87.6%
times-frac92.5%
associate-*l/92.4%
associate-*l/91.4%
Simplified91.4%
Final simplification91.4%
Initial program 35.4%
associate-*l*35.4%
associate-*l*35.4%
associate-/r*35.5%
associate-/r/35.5%
*-commutative35.5%
times-frac35.8%
+-commutative35.8%
associate--l+42.7%
metadata-eval42.7%
+-rgt-identity42.7%
times-frac46.4%
Simplified46.4%
Taylor expanded in t around 0 78.0%
unpow278.0%
Simplified78.0%
associate-*l/78.0%
associate-*l*83.4%
Applied egg-rr83.4%
associate-*l/83.4%
*-commutative83.4%
associate-*l*87.6%
Simplified87.6%
associate-*r/87.6%
Applied egg-rr87.6%
associate-*l/87.0%
times-frac91.8%
Applied egg-rr91.8%
Final simplification91.8%
if (*.f64 l l) < 1.00000000000000007e-68Initial program 32.3%
associate-*l*32.3%
associate-*l*32.3%
associate-/r*32.3%
associate-/r/32.3%
*-commutative32.3%
times-frac34.9%
+-commutative34.9%
associate--l+44.6%
metadata-eval44.6%
+-rgt-identity44.6%
times-frac52.9%
Simplified52.9%
Taylor expanded in t around 0 85.5%
unpow285.5%
Simplified85.5%
associate-*l/85.5%
associate-*l*90.8%
Applied egg-rr90.8%
associate-*l/90.8%
*-commutative90.8%
associate-*l*94.0%
Simplified94.0%
associate-*r/94.0%
Applied egg-rr94.0%
Taylor expanded in k around 0 87.6%
if 1.00000000000000007e-68 < (*.f64 l l) Initial program 37.9%
+-rgt-identity21.2%
associate-*l*21.2%
mul0-rgt22.5%
distribute-lft-in30.9%
+-rgt-identity37.9%
sub-neg37.9%
+-commutative37.9%
associate-+l+42.6%
metadata-eval42.6%
metadata-eval42.6%
+-rgt-identity42.6%
Simplified42.6%
add-sqr-sqrt17.5%
*-un-lft-identity17.5%
times-frac17.5%
sqrt-pow117.5%
metadata-eval17.5%
sqrt-pow119.5%
metadata-eval19.5%
Applied egg-rr19.5%
Taylor expanded in t around -inf 0.0%
mul-1-neg0.0%
times-frac0.0%
unpow20.0%
distribute-rgt-neg-in0.0%
associate-/l*0.0%
*-commutative0.0%
*-commutative0.0%
unpow20.0%
rem-square-sqrt73.4%
unpow273.4%
times-frac76.3%
Simplified76.3%
Taylor expanded in k around 0 66.9%
unpow266.9%
associate-*r*66.8%
Simplified66.8%
Final simplification75.9%
if (*.f64 l l) < 1.00000000000000007e-68Initial program 32.3%
associate-*l*32.3%
associate-*l*32.3%
associate-/r*32.3%
associate-/r/32.3%
*-commutative32.3%
times-frac34.9%
+-commutative34.9%
associate--l+44.6%
metadata-eval44.6%
+-rgt-identity44.6%
times-frac52.9%
Simplified52.9%
Taylor expanded in t around 0 85.5%
unpow285.5%
Simplified85.5%
associate-*l/85.5%
associate-*l*90.8%
Applied egg-rr90.8%
associate-*l/90.8%
*-commutative90.8%
associate-*l*94.0%
Simplified94.0%
associate-*r/94.0%
Applied egg-rr94.0%
Taylor expanded in k around 0 87.6%
if 1.00000000000000007e-68 < (*.f64 l l) Initial program 37.9%
+-rgt-identity21.2%
associate-*l*21.2%
mul0-rgt22.5%
distribute-lft-in30.9%
+-rgt-identity37.9%
sub-neg37.9%
+-commutative37.9%
associate-+l+42.6%
metadata-eval42.6%
metadata-eval42.6%
+-rgt-identity42.6%
Simplified42.6%
add-sqr-sqrt17.5%
*-un-lft-identity17.5%
times-frac17.5%
sqrt-pow117.5%
metadata-eval17.5%
sqrt-pow119.5%
metadata-eval19.5%
Applied egg-rr19.5%
Taylor expanded in t around -inf 0.0%
mul-1-neg0.0%
times-frac0.0%
unpow20.0%
distribute-rgt-neg-in0.0%
associate-/l*0.0%
*-commutative0.0%
*-commutative0.0%
unpow20.0%
rem-square-sqrt73.4%
unpow273.4%
times-frac76.3%
Simplified76.3%
Taylor expanded in k around 0 66.2%
mul-1-neg66.2%
associate-/l*66.8%
unpow266.8%
unpow266.8%
Simplified66.8%
Final simplification75.9%
if k < -2.69999999999999993e97 or -7.4e21 < k Initial program 37.2%
associate-*l*37.2%
associate-*l*37.2%
associate-/r*37.2%
associate-/r/37.2%
*-commutative37.2%
times-frac37.7%
+-commutative37.7%
associate--l+44.1%
metadata-eval44.1%
+-rgt-identity44.1%
times-frac48.0%
Simplified48.0%
Taylor expanded in t around 0 77.4%
unpow277.4%
Simplified77.4%
associate-*l/77.4%
associate-*l*83.2%
Applied egg-rr83.2%
associate-*l/83.2%
*-commutative83.2%
associate-*l*87.3%
Simplified87.3%
Taylor expanded in k around 0 75.1%
if -2.69999999999999993e97 < k < -7.4e21Initial program 6.7%
associate-*l*6.6%
associate-*l*6.7%
associate-/r*6.7%
associate-/r/6.7%
*-commutative6.7%
times-frac6.6%
+-commutative6.6%
associate--l+19.9%
metadata-eval19.9%
+-rgt-identity19.9%
times-frac20.0%
Simplified20.0%
Taylor expanded in t around 0 87.1%
unpow287.1%
Simplified87.1%
associate-*l/87.1%
associate-*l*87.1%
Applied egg-rr87.1%
associate-*l/87.1%
*-commutative87.1%
associate-*l*93.3%
Simplified93.3%
Taylor expanded in k around 0 74.9%
Taylor expanded in k around inf 81.6%
Final simplification75.5%
if k < -3.20000000000000016e97Initial program 41.8%
associate-*l*41.8%
associate-*l*41.8%
associate-/r*41.8%
associate-/r/41.8%
*-commutative41.8%
times-frac38.2%
+-commutative38.2%
associate--l+45.8%
metadata-eval45.8%
+-rgt-identity45.8%
times-frac45.8%
Simplified45.8%
Taylor expanded in t around 0 61.8%
unpow261.8%
Simplified61.8%
associate-*l/61.8%
associate-*l*68.7%
Applied egg-rr68.7%
associate-*l/68.7%
*-commutative68.7%
associate-*l*74.9%
Simplified74.9%
Taylor expanded in k around 0 59.3%
if -3.20000000000000016e97 < k < -7.4e21Initial program 6.7%
associate-*l*6.6%
associate-*l*6.7%
associate-/r*6.7%
associate-/r/6.7%
*-commutative6.7%
times-frac6.6%
+-commutative6.6%
associate--l+19.9%
metadata-eval19.9%
+-rgt-identity19.9%
times-frac20.0%
Simplified20.0%
Taylor expanded in t around 0 87.1%
unpow287.1%
Simplified87.1%
associate-*l/87.1%
associate-*l*87.1%
Applied egg-rr87.1%
associate-*l/87.1%
*-commutative87.1%
associate-*l*93.3%
Simplified93.3%
Taylor expanded in k around 0 74.9%
Taylor expanded in k around inf 81.6%
if -7.4e21 < k Initial program 35.9%
associate-*l*35.9%
associate-*l*35.9%
associate-/r*36.0%
associate-/r/36.0%
*-commutative36.0%
times-frac37.5%
+-commutative37.5%
associate--l+43.7%
metadata-eval43.7%
+-rgt-identity43.7%
times-frac48.6%
Simplified48.6%
Taylor expanded in t around 0 81.8%
unpow281.8%
Simplified81.8%
associate-*l/81.8%
associate-*l*87.3%
Applied egg-rr87.3%
associate-*l/87.2%
*-commutative87.2%
associate-*l*90.7%
Simplified90.7%
associate-*r/90.8%
Applied egg-rr90.8%
Taylor expanded in k around 0 79.6%
Final simplification75.5%
Initial program 35.4%
associate-*l*35.4%
associate-*l*35.4%
associate-/r*35.5%
associate-/r/35.5%
*-commutative35.5%
times-frac35.8%
+-commutative35.8%
associate--l+42.7%
metadata-eval42.7%
+-rgt-identity42.7%
times-frac46.4%
Simplified46.4%
Taylor expanded in t around 0 78.0%
unpow278.0%
Simplified78.0%
Taylor expanded in k around 0 69.5%
Final simplification69.5%
Initial program 35.4%
associate-*l*35.4%
associate-*l*35.4%
associate-/r*35.5%
associate-/r/35.5%
*-commutative35.5%
times-frac35.8%
+-commutative35.8%
associate--l+42.7%
metadata-eval42.7%
+-rgt-identity42.7%
times-frac46.4%
Simplified46.4%
Taylor expanded in t around 0 78.0%
unpow278.0%
Simplified78.0%
Taylor expanded in k around 0 68.3%
Taylor expanded in k around 0 69.5%
Final simplification69.5%
herbie shell --seed 2023166
(FPCore (t l k)
:name "Toniolo and Linder, Equation (10-)"
:precision binary64
(/ 2.0 (* (* (* (/ (pow t 3.0) (* l l)) (sin k)) (tan k)) (- (+ 1.0 (pow (/ k t) 2.0)) 1.0))))