Time bar (total: 7.1s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 100% | 0% | 0 |
| 0% | 100% | 0% | 1 |
| 0% | 100% | 0% | 2 |
| 25% | 75% | 0% | 3 |
| 25% | 62.5% | 12.5% | 4 |
| 25% | 56.2% | 18.8% | 5 |
| 28.1% | 50% | 21.9% | 6 |
| 29.7% | 46.9% | 23.5% | 7 |
| 30.5% | 45.3% | 24.3% | 8 |
| 30.8% | 44.9% | 24.3% | 9 |
| 31.2% | 44.5% | 24.3% | 10 |
| 31.3% | 44.4% | 24.3% | 11 |
| 31.4% | 44.3% | 24.3% | 12 |
| 31.4% | 44.1% | 24.5% | 13 |
| 31.5% | 43.8% | 24.8% | 14 |
Compiled 14 to 12 computations (14.3% saved)
| 2.1s | 2771× | body | 1024 | valid |
| 420.0ms | 1375× | body | 512 | valid |
| 342.0ms | 3132× | body | 128 | valid |
| 165.0ms | 291× | body | 2048 | valid |
| 151.0ms | 687× | body | 256 | valid |
| 0.0ms | 2× | body | 128 | invalid |
Compiled 41 to 35 computations (14.6% saved)
| 1× | egg-herbie |
| 667× | div-sub_binary64 |
| 601× | associate-/l*_binary64 |
| 488× | associate-/r*_binary64 |
| 380× | fma-def_binary64 |
| 279× | distribute-rgt-in_binary64 |
Useful iterations: 5 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 13 |
| 1 | 25 | 13 |
| 2 | 34 | 13 |
| 3 | 59 | 13 |
| 4 | 123 | 11 |
| 5 | 318 | 8 |
| 6 | 1056 | 8 |
| 7 | 4350 | 8 |
| 8 | 4987 | 8 |
1 alts after pruning (1 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1 | 1 | 2 |
| Fresh | 1 | 0 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 2 | 1 | 3 |
| Status | Error | Program |
| ▶ | 0.3b | (sqrt.f64 (+.f64 1 (exp.f64 x))) |
Compiled 30 to 24 computations (20% saved)
Found 2 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (+.f64 1 (exp.f64 x)) |
| ✓ | 0.2b | (sqrt.f64 (+.f64 1 (exp.f64 x))) |
2 calls:
| 5.0ms | (sqrt.f64 (+.f64 1 (exp.f64 x))) |
| 1.0ms | (+.f64 1 (exp.f64 x)) |
| 2× | batch-egg-rewrite |
| 512× | log1p-expm1-u_binary64 |
| 512× | expm1-log1p-u_binary64 |
| 357× | unpow-prod-down_binary64 |
| 232× | log-prod_binary64 |
| 140× | pow2_binary64 |
2 calls:
| 55.0ms | (+.f64 1 (exp.f64 x)) |
| 55.0ms | (sqrt.f64 (+.f64 1 (exp.f64 x))) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 14 |
| 1 | 117 | 14 |
| 2 | 1314 | 14 |
| 3 | 5001 | 14 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 733× | times-frac_binary64 |
| 661× | associate-/l*_binary64 |
| 268× | fma-neg_binary64 |
| 177× | associate-/r/_binary64 |
| 159× | fma-def_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 44 | 180 |
| 1 | 131 | 166 |
| 2 | 430 | 142 |
| 3 | 1778 | 130 |
| 4 | 4971 | 130 |
| 5 | 4989 | 130 |
3 alts after pruning (2 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 113 | 2 | 115 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 113 | 3 | 116 |
| Status | Error | Program |
| ✓ | 0.3b | (sqrt.f64 (+.f64 1 (exp.f64 x))) |
| 19.9b | (-.f64 (+.f64 (fma.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 2) 5)) (fma.f64 1/2 (/.f64 x (sqrt.f64 2)) (sqrt.f64 2))) (*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) x) 3/16)) (*.f64 (/.f64 (pow.f64 x 3) (sqrt.f64 2)) -1/48)) | |
| ▶ | 0.3b | (pow.f64 (pow.f64 (+.f64 1 (exp.f64 x)) 3/2) 1/3) |
Compiled 1609 to 1185 computations (26.4% saved)
Found 3 expressions with local error:
| New | Error | Program |
| 0.0b | (+.f64 1 (exp.f64 x)) | |
| ✓ | 0.0b | (pow.f64 (+.f64 1 (exp.f64 x)) 3/2) |
| ✓ | 0.3b | (pow.f64 (pow.f64 (+.f64 1 (exp.f64 x)) 3/2) 1/3) |
2 calls:
| 548.0ms | (pow.f64 (pow.f64 (+.f64 1 (exp.f64 x)) 3/2) 1/3) |
| 177.0ms | (pow.f64 (+.f64 1 (exp.f64 x)) 3/2) |
| 2× | batch-egg-rewrite |
| 743× | log1p-expm1-u_binary64 |
| 743× | expm1-log1p-u_binary64 |
| 139× | expm1-udef_binary64 |
| 139× | log1p-udef_binary64 |
| 84× | add-sqr-sqrt_binary64 |
2 calls:
| 48.0ms | (pow.f64 (+.f64 1 (exp.f64 x)) 3/2) |
| 48.0ms | (pow.f64 (pow.f64 (+.f64 1 (exp.f64 x)) 3/2) 1/3) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 18 |
| 1 | 191 | 17 |
| 2 | 1905 | 17 |
| 3 | 4896 | 17 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 797× | fma-neg_binary64 |
| 785× | fma-def_binary64 |
| 475× | *-commutative_binary64 |
| 370× | associate-+l+_binary64 |
| 263× | associate-+r+_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 97 | 598 |
| 1 | 286 | 518 |
| 2 | 1120 | 471 |
| 3 | 3597 | 471 |
| 4 | 4967 | 471 |
| 5 | 5025 | 471 |
3 alts after pruning (1 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 122 | 1 | 123 |
| Fresh | 1 | 0 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 123 | 3 | 126 |
| Status | Error | Program |
| ✓ | 0.3b | (pow.f64 (pow.f64 (+.f64 1 (exp.f64 x)) 3/2) 1/3) |
| ✓ | 0.3b | (sqrt.f64 (+.f64 1 (exp.f64 x))) |
| ▶ | 19.9b | (+.f64 (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) (*.f64 1/8 (sqrt.f64 1/8)))) (*.f64 (sqrt.f64 8) 1/48) (fma.f64 5/128 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 1/512)) (*.f64 (sqrt.f64 8) 3/8)) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 9/128)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 8)) (+.f64 (*.f64 1/4 (*.f64 x (sqrt.f64 1/8))) (*.f64 5/32 (*.f64 x (*.f64 x (sqrt.f64 1/8)))))))))) (-.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/4 (*.f64 1/8 (*.f64 x x)) (*.f64 (pow.f64 x 3) -15/128))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 x x) 3/32) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 3/128)))))) |
Compiled 2275 to 1811 computations (20.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 1.0b | (*.f64 (sqrt.f64 8) 9/128) |
| ✓ | 9.3b | (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 1/512)) (*.f64 (sqrt.f64 8) 3/8)) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 9/128)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 8)) (+.f64 (*.f64 1/4 (*.f64 x (sqrt.f64 1/8))) (*.f64 5/32 (*.f64 x (*.f64 x (sqrt.f64 1/8))))))) |
| ✓ | 9.3b | (+.f64 (*.f64 (*.f64 x x) 3/32) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 3/128))) |
| ✓ | 12.9b | (+.f64 (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) (*.f64 1/8 (sqrt.f64 1/8)))) (*.f64 (sqrt.f64 8) 1/48) (fma.f64 5/128 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 1/512)) (*.f64 (sqrt.f64 8) 3/8)) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 9/128)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 8)) (+.f64 (*.f64 1/4 (*.f64 x (sqrt.f64 1/8))) (*.f64 5/32 (*.f64 x (*.f64 x (sqrt.f64 1/8)))))))))) (-.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/4 (*.f64 1/8 (*.f64 x x)) (*.f64 (pow.f64 x 3) -15/128))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 x x) 3/32) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 3/128)))))) |
4 calls:
| 44.0ms | (+.f64 (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) (*.f64 1/8 (sqrt.f64 1/8)))) (*.f64 (sqrt.f64 8) 1/48) (fma.f64 5/128 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 1/512)) (*.f64 (sqrt.f64 8) 3/8)) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 9/128)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 8)) (+.f64 (*.f64 1/4 (*.f64 x (sqrt.f64 1/8))) (*.f64 5/32 (*.f64 x (*.f64 x (sqrt.f64 1/8)))))))))) (-.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/4 (*.f64 1/8 (*.f64 x x)) (*.f64 (pow.f64 x 3) -15/128))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 x x) 3/32) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 3/128)))))) |
| 28.0ms | (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 1/512)) (*.f64 (sqrt.f64 8) 3/8)) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 9/128)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 8)) (+.f64 (*.f64 1/4 (*.f64 x (sqrt.f64 1/8))) (*.f64 5/32 (*.f64 x (*.f64 x (sqrt.f64 1/8))))))) |
| 9.0ms | (+.f64 (*.f64 (*.f64 x x) 3/32) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 3/128))) |
| 0.0ms | (*.f64 (sqrt.f64 8) 9/128) |
| 2× | batch-egg-rewrite |
| 582× | log1p-expm1-u_binary64 |
| 582× | expm1-log1p-u_binary64 |
| 225× | prod-diff_binary64 |
| 199× | fma-udef_binary64 |
| 191× | log-prod_binary64 |
4 calls:
| 128.0ms | (*.f64 (sqrt.f64 8) 9/128) |
| 128.0ms | (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 1/512)) (*.f64 (sqrt.f64 8) 3/8)) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 9/128)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 8)) (+.f64 (*.f64 1/4 (*.f64 x (sqrt.f64 1/8))) (*.f64 5/32 (*.f64 x (*.f64 x (sqrt.f64 1/8))))))) |
| 128.0ms | (+.f64 (*.f64 (*.f64 x x) 3/32) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 3/128))) |
| 128.0ms | (+.f64 (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) (*.f64 1/8 (sqrt.f64 1/8)))) (*.f64 (sqrt.f64 8) 1/48) (fma.f64 5/128 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 1/512)) (*.f64 (sqrt.f64 8) 3/8)) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 9/128)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 8)) (+.f64 (*.f64 1/4 (*.f64 x (sqrt.f64 1/8))) (*.f64 5/32 (*.f64 x (*.f64 x (sqrt.f64 1/8)))))))))) (-.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/4 (*.f64 1/8 (*.f64 x x)) (*.f64 (pow.f64 x 3) -15/128))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 x x) 3/32) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 3/128)))))) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 57 | 248 |
| 1 | 1272 | 246 |
| 2 | 4874 | 246 |
| 3 | 4937 | 246 |
| 4 | 4785 | 246 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 882× | fma-def_binary64 |
| 618× | associate-*l*_binary64 |
| 576× | associate-*r*_binary64 |
| 287× | cancel-sign-sub-inv_binary64 |
| 266× | distribute-rgt-neg-in_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 100 | 1966 |
| 1 | 258 | 1940 |
| 2 | 941 | 1598 |
| 3 | 4096 | 1591 |
| 4 | 4918 | 1591 |
| 5 | 5028 | 1591 |
3 alts after pruning (1 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 124 | 1 | 125 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 2 | 2 |
| Total | 125 | 3 | 128 |
| Status | Error | Program |
| ✓ | 0.3b | (pow.f64 (pow.f64 (+.f64 1 (exp.f64 x)) 3/2) 1/3) |
| ✓ | 0.3b | (sqrt.f64 (+.f64 1 (exp.f64 x))) |
| ▶ | 20.1b | (+.f64 (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) (*.f64 1/8 (sqrt.f64 1/8)))) (*.f64 (sqrt.f64 8) 1/48) (fma.f64 5/128 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 1/512)) (*.f64 (sqrt.f64 8) 3/8)) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 9/128)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 8)) (+.f64 (*.f64 1/4 (*.f64 x (sqrt.f64 1/8))) (*.f64 5/32 (*.f64 x (*.f64 x (sqrt.f64 1/8)))))))))) (-.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/4 (*.f64 1/8 (*.f64 x x)) (*.f64 (pow.f64 x 3) -15/128))) (*.f64 (sqrt.f64 2) (*.f64 3/32 (pow.f64 x 2))))) |
Compiled 14382 to 12441 computations (13.5% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 1.0b | (*.f64 (sqrt.f64 8) 9/128) | |
| ✓ | 7.6b | (-.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/4 (*.f64 1/8 (*.f64 x x)) (*.f64 (pow.f64 x 3) -15/128))) (*.f64 (sqrt.f64 2) (*.f64 3/32 (pow.f64 x 2)))) |
| 9.3b | (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 1/512)) (*.f64 (sqrt.f64 8) 3/8)) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 9/128)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 8)) (+.f64 (*.f64 1/4 (*.f64 x (sqrt.f64 1/8))) (*.f64 5/32 (*.f64 x (*.f64 x (sqrt.f64 1/8))))))) | |
| ✓ | 12.8b | (+.f64 (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) (*.f64 1/8 (sqrt.f64 1/8)))) (*.f64 (sqrt.f64 8) 1/48) (fma.f64 5/128 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 1/512)) (*.f64 (sqrt.f64 8) 3/8)) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 9/128)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 8)) (+.f64 (*.f64 1/4 (*.f64 x (sqrt.f64 1/8))) (*.f64 5/32 (*.f64 x (*.f64 x (sqrt.f64 1/8)))))))))) (-.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/4 (*.f64 1/8 (*.f64 x x)) (*.f64 (pow.f64 x 3) -15/128))) (*.f64 (sqrt.f64 2) (*.f64 3/32 (pow.f64 x 2))))) |
2 calls:
| 27.0ms | (+.f64 (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) (*.f64 1/8 (sqrt.f64 1/8)))) (*.f64 (sqrt.f64 8) 1/48) (fma.f64 5/128 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 1/512)) (*.f64 (sqrt.f64 8) 3/8)) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 9/128)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 8)) (+.f64 (*.f64 1/4 (*.f64 x (sqrt.f64 1/8))) (*.f64 5/32 (*.f64 x (*.f64 x (sqrt.f64 1/8)))))))))) (-.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/4 (*.f64 1/8 (*.f64 x x)) (*.f64 (pow.f64 x 3) -15/128))) (*.f64 (sqrt.f64 2) (*.f64 3/32 (pow.f64 x 2))))) |
| 10.0ms | (-.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/4 (*.f64 1/8 (*.f64 x x)) (*.f64 (pow.f64 x 3) -15/128))) (*.f64 (sqrt.f64 2) (*.f64 3/32 (pow.f64 x 2)))) |
| 2× | batch-egg-rewrite |
| 535× | log1p-expm1-u_binary64 |
| 535× | expm1-log1p-u_binary64 |
| 450× | prod-diff_binary64 |
| 176× | log-prod_binary64 |
| 155× | unpow-prod-down_binary64 |
2 calls:
| 104.0ms | (-.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/4 (*.f64 1/8 (*.f64 x x)) (*.f64 (pow.f64 x 3) -15/128))) (*.f64 (sqrt.f64 2) (*.f64 3/32 (pow.f64 x 2)))) |
| 104.0ms | (+.f64 (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) (*.f64 1/8 (sqrt.f64 1/8)))) (*.f64 (sqrt.f64 8) 1/48) (fma.f64 5/128 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 1/512)) (*.f64 (sqrt.f64 8) 3/8)) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 9/128)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 8)) (+.f64 (*.f64 1/4 (*.f64 x (sqrt.f64 1/8))) (*.f64 5/32 (*.f64 x (*.f64 x (sqrt.f64 1/8)))))))))) (-.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/4 (*.f64 1/8 (*.f64 x x)) (*.f64 (pow.f64 x 3) -15/128))) (*.f64 (sqrt.f64 2) (*.f64 3/32 (pow.f64 x 2))))) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 54 | 169 |
| 1 | 1174 | 167 |
| 2 | 4944 | 167 |
| 3 | 5245 | 167 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 661× | fma-def_binary64 |
| 538× | associate-*l*_binary64 |
| 484× | associate-*r*_binary64 |
| 484× | distribute-rgt-out_binary64 |
| 303× | distribute-rgt-neg-in_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 76 | 1201 |
| 1 | 229 | 1195 |
| 2 | 835 | 960 |
| 3 | 3652 | 893 |
| 4 | 5276 | 893 |
3 alts after pruning (1 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 178 | 1 | 179 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 2 | 2 |
| Total | 179 | 3 | 182 |
| Status | Error | Program |
| ✓ | 0.3b | (pow.f64 (pow.f64 (+.f64 1 (exp.f64 x)) 3/2) 1/3) |
| 20.1b | (+.f64 (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) (*.f64 1/8 (sqrt.f64 1/8)))) (*.f64 (sqrt.f64 8) 1/48) (fma.f64 5/128 (*.f64 (sqrt.f64 2) (pow.f64 x 3)) (+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 1/512)) (*.f64 (sqrt.f64 8) 3/8)) (*.f64 (*.f64 (sqrt.f64 1/8) (pow.f64 x 3)) (*.f64 (sqrt.f64 8) 9/128)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 8)) (+.f64 (*.f64 1/4 (*.f64 x (sqrt.f64 1/8))) (*.f64 5/32 (*.f64 x (*.f64 x (sqrt.f64 1/8)))))))))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) | |
| ✓ | 0.3b | (sqrt.f64 (+.f64 1 (exp.f64 x))) |
Compiled 20491 to 17428 computations (14.9% saved)
Total 0.0b remaining (20.4%)
Threshold costs 0.0b (20.4%)
Compiled 2819 to 2488 computations (11.7% saved)
| 1× | egg-herbie |
| 1× | +-commutative_binary64 |
| 1× | 1-exp_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 8 |
| 1 | 9 | 8 |
| 2 | 8 | 8 |
Compiled 112 to 100 computations (10.7% saved)
Loading profile data...