Time bar (total: 7.5s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.9% | 0.1% | 0 |
| 99.9% | 0% | 0.1% | 1 |
Compiled 10 to 7 computations (30% saved)
| 2.4s | 3636× | body | 1024 | valid |
| 1.6s | 1230× | body | 2048 | valid |
| 560.0ms | 1397× | body | 512 | valid |
| 198.0ms | 1390× | body | 128 | valid |
| 162.0ms | 603× | body | 256 | valid |
Compiled 29 to 20 computations (31% saved)
| 1× | egg-herbie |
| 39× | fma-def_binary64 |
| 32× | fma-neg_binary64 |
| 15× | cancel-sign-sub-inv_binary64 |
| 12× | sub-neg_binary64 |
| 10× | distribute-rgt-in_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 11 |
| 1 | 10 | 11 |
| 2 | 15 | 11 |
| 3 | 22 | 11 |
| 4 | 31 | 11 |
| 5 | 48 | 11 |
| 6 | 86 | 11 |
| 7 | 124 | 11 |
| 8 | 172 | 11 |
| 9 | 208 | 11 |
| 10 | 234 | 11 |
| 11 | 236 | 11 |
| 1× | saturated |
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 1 | 1 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 2 | 2 |
| Status | Error | Program |
| ▶ | 37.9b | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
Compiled 27 to 18 computations (33.3% saved)
Found 2 expressions with local error:
| New | Error | Program |
| ✓ | 2.0b | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| ✓ | 2.3b | (sin.f64 (+.f64 x eps)) |
2 calls:
| 6.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 4.0ms | (sin.f64 (+.f64 x eps)) |
| 1× | batch-egg-rewrite |
| 464× | fma-def_binary64 |
| 445× | log-prod_binary64 |
| 214× | fma-neg_binary64 |
| 179× | expm1-udef_binary64 |
| 179× | log1p-udef_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 17 |
| 1 | 173 | 17 |
| 2 | 2692 | 17 |
| 1× | node limit |
2 calls:
| 59.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 59.0ms | (sin.f64 (+.f64 x eps)) |
| 1× | egg-herbie |
| 730× | fma-neg_binary64 |
| 266× | cancel-sign-sub-inv_binary64 |
| 264× | associate-+l-_binary64 |
| 245× | distribute-rgt-neg-in_binary64 |
| 243× | sub-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 53 | 602 |
| 1 | 172 | 587 |
| 2 | 566 | 572 |
| 3 | 2209 | 569 |
| 1× | node limit |
10 alts after pruning (10 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 170 | 10 | 180 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 171 | 10 | 181 |
| Status | Error | Program |
| 41.1b | (fma.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (cos.f64 eps)) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) | |
| 23.0b | (-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x)) | |
| 29.6b | (-.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (exp.f64 (*.f64 (sin.f64 x) (cos.f64 eps))))) (sin.f64 x)) | |
| 32.5b | (-.f64 (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (*.f64 eps (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) | |
| 23.0b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) | |
| 51.4b | (-.f64 (pow.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) 2) (sin.f64 x)) | |
| 23.6b | (-.f64 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))) (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x)) | |
| 23.5b | (-.f64 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps)))) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) | |
| 23.0b | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) | |
| ▶ | 23.0b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
Compiled 3615 to 1156 computations (68% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (sin.f64 eps) |
| ✓ | 0.1b | (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) |
| ✓ | 0.1b | (*.f64 (cos.f64 x) (sin.f64 eps)) |
| ✓ | 2.8b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
4 calls:
| 17.0ms | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
| 15.0ms | (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) |
| 8.0ms | (*.f64 (cos.f64 x) (sin.f64 eps)) |
| 1.0ms | (sin.f64 eps) |
| 1× | batch-egg-rewrite |
| 710× | prod-diff_binary64 |
| 271× | fma-def_binary64 |
| 198× | expm1-udef_binary64 |
| 198× | log1p-udef_binary64 |
| 151× | fma-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 48 |
| 1 | 207 | 48 |
| 2 | 2718 | 48 |
| 1× | node limit |
4 calls:
| 60.0ms | (sin.f64 eps) |
| 60.0ms | (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) |
| 60.0ms | (*.f64 (cos.f64 x) (sin.f64 eps)) |
| 60.0ms | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
| 1× | egg-herbie |
| 441× | cancel-sign-sub-inv_binary64 |
| 426× | fma-def_binary64 |
| 381× | distribute-rgt-neg-in_binary64 |
| 371× | sub-neg_binary64 |
| 364× | distribute-lft-neg-in_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 94 | 1234 |
| 1 | 299 | 1193 |
| 2 | 964 | 1116 |
| 3 | 3745 | 1116 |
| 1× | node limit |
9 alts after pruning (9 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 194 | 6 | 200 |
| Fresh | 6 | 3 | 9 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 201 | 9 | 210 |
| Status | Error | Program |
| 26.2b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (cbrt.f64 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (sin.f64 eps) 3)))) (sin.f64 x)) | |
| 32.5b | (-.f64 (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (*.f64 eps (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) | |
| 43.8b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) 2)) (sin.f64 x)) | |
| 23.8b | (pow.f64 (cbrt.f64 (-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x))) 3) | |
| 26.4b | (*.f64 (-.f64 (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps))) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps))) 2)))) | |
| 29.6b | (-.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (exp.f64 (*.f64 (sin.f64 x) (cos.f64 eps))))) (sin.f64 x)) | |
| 29.3b | (log.f64 (exp.f64 (-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x)))) | |
| 23.1b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))) (sin.f64 x)) | |
| ▶ | 23.0b | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
Compiled 4826 to 1367 computations (71.7% saved)
Found 3 expressions with local error:
| New | Error | Program |
| 0.0b | (sin.f64 eps) | |
| ✓ | 0.1b | (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) |
| ✓ | 2.9b | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
2 calls:
| 17.0ms | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
| 11.0ms | (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) |
| 1× | batch-egg-rewrite |
| 826× | log1p-expm1-u_binary64 |
| 826× | expm1-log1p-u_binary64 |
| 285× | prod-diff_binary64 |
| 179× | egg-rr |
| 104× | add-sqr-sqrt_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 34 |
| 1 | 199 | 30 |
| 2 | 2458 | 30 |
| 1× | node limit |
2 calls:
| 67.0ms | (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) |
| 67.0ms | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
| 1× | egg-herbie |
| 809× | fma-neg_binary64 |
| 257× | sub-neg_binary64 |
| 250× | associate--l+_binary64 |
| 249× | fma-def_binary64 |
| 246× | distribute-rgt-neg-in_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 71 | 866 |
| 1 | 210 | 840 |
| 2 | 613 | 797 |
| 3 | 2396 | 790 |
| 1× | node limit |
10 alts after pruning (9 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 235 | 1 | 236 |
| Fresh | 0 | 8 | 8 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 235 | 10 | 245 |
| Status | Error | Program |
| 26.2b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (cbrt.f64 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (sin.f64 eps) 3)))) (sin.f64 x)) | |
| 32.5b | (-.f64 (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (*.f64 eps (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) | |
| 43.8b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) 2)) (sin.f64 x)) | |
| 23.8b | (pow.f64 (cbrt.f64 (-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x))) 3) | |
| 25.1b | (fma.f64 (sin.f64 x) (cos.f64 eps) (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (pow.f64 (sin.f64 x) 2)) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))) | |
| 26.4b | (*.f64 (-.f64 (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps))) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps))) 2)))) | |
| 29.6b | (-.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (exp.f64 (*.f64 (sin.f64 x) (cos.f64 eps))))) (sin.f64 x)) | |
| 29.3b | (log.f64 (exp.f64 (-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x)))) | |
| ▶ | 23.1b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))) (sin.f64 x)) |
| ✓ | 23.0b | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
Compiled 6772 to 2009 computations (70.3% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 0.1b | (*.f64 (cos.f64 x) (sin.f64 eps)) | |
| ✓ | 0.2b | (expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))) |
| ✓ | 0.2b | (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) |
| ✓ | 2.8b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))) (sin.f64 x)) |
3 calls:
| 385.0ms | (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) |
| 18.0ms | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))) (sin.f64 x)) |
| 10.0ms | (expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))) |
| 1× | batch-egg-rewrite |
| 905× | prod-diff_binary64 |
| 213× | expm1-udef_binary64 |
| 213× | log1p-udef_binary64 |
| 117× | add-sqr-sqrt_binary64 |
| 112× | expm1-log1p-u_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 39 |
| 1 | 228 | 39 |
| 2 | 2926 | 39 |
| 1× | node limit |
3 calls:
| 56.0ms | (expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))) |
| 56.0ms | (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) |
| 56.0ms | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))) (sin.f64 x)) |
| 1× | egg-herbie |
| 675× | fma-def_binary64 |
| 411× | cancel-sign-sub-inv_binary64 |
| 396× | times-frac_binary64 |
| 294× | associate-/l*_binary64 |
| 194× | fma-neg_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 137 | 1419 |
| 1 | 442 | 1383 |
| 2 | 1552 | 1312 |
| 1× | node limit |
10 alts after pruning (8 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 172 | 2 | 174 |
| Fresh | 2 | 6 | 8 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 174 | 10 | 184 |
| Status | Error | Program |
| 26.2b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (cbrt.f64 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (sin.f64 eps) 3)))) (sin.f64 x)) | |
| 32.5b | (-.f64 (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (*.f64 eps (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) | |
| 29.3b | (log.f64 (exp.f64 (-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x)))) | |
| 29.4b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (/.f64 (-.f64 (*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 1) (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 1)) 1) (+.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 1) 1))) (sin.f64 x)) | |
| ✓ | 23.1b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))) (sin.f64 x)) |
| 31.4b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (sin.f64 eps)))) (sin.f64 x)) | |
| 23.8b | (pow.f64 (cbrt.f64 (-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x))) 3) | |
| 25.1b | (fma.f64 (sin.f64 x) (cos.f64 eps) (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (pow.f64 (sin.f64 x) 2)) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))) | |
| 26.4b | (*.f64 (-.f64 (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps))) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps))) 2)))) | |
| ✓ | 23.0b | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
Compiled 4462 to 1621 computations (63.7% saved)
Total 0.2b remaining (64.5%)
Threshold costs 0.2b (64.5%)
Compiled 12742 to 7550 computations (40.7% saved)
| 1× | egg-herbie |
| 1× | +-commutative_binary64 |
| 1× | *-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 19 |
| 1 | 13 | 19 |
| 1× | saturated |
Compiled 285 to 167 computations (41.4% saved)
Loading profile data...