Time bar (total: 11.3s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.9% | 0.1% | 0 |
| 0% | 99.9% | 0.1% | 1 |
| 0% | 99.9% | 0.1% | 2 |
| 0% | 99.9% | 0.1% | 3 |
| 0% | 99.9% | 0.1% | 4 |
| 0% | 99.9% | 0.1% | 5 |
| 0% | 99.9% | 0.1% | 6 |
| 12.5% | 87.4% | 0.1% | 7 |
| 12.5% | 87.4% | 0.1% | 8 |
| 31.2% | 68.6% | 0.1% | 9 |
| 31.2% | 68.6% | 0.1% | 10 |
| 31.2% | 68.6% | 0.1% | 11 |
| 40.6% | 59.3% | 0.1% | 12 |
| 40.6% | 59.3% | 0.1% | 13 |
| 40.6% | 59.3% | 0.1% | 14 |
Compiled 34 to 19 computations (44.1% saved)
| 3.0s | 2083× | body | 1024 | valid |
| 1.2s | 4575× | body | 128 | valid |
| 915.0ms | 1056× | body | 512 | valid |
| 303.0ms | 530× | body | 256 | valid |
| 39.0ms | 12× | body | 2048 | valid |
Compiled 68 to 38 computations (44.1% saved)
| 2× | egg-herbie |
| 946× | fma-def_binary64 |
| 468× | fma-neg_binary64 |
| 352× | times-frac_binary64 |
| 303× | cancel-sign-sub-inv_binary64 |
| 212× | distribute-rgt-in_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 60 | 200 |
| 1 | 152 | 200 |
| 2 | 439 | 200 |
| 3 | 1107 | 200 |
| 4 | 1793 | 200 |
| 5 | 3387 | 200 |
| 6 | 4384 | 200 |
| 0 | 3 | 3 |
| 1× | saturated |
| 1× | node limit |
Compiled 33 to 18 computations (45.5% saved)
| 1× | egg-herbie |
| 1286× | fma-def_binary64 |
| 698× | fma-neg_binary64 |
| 423× | times-frac_binary64 |
| 245× | div-sub_binary64 |
| 182× | associate-/l*_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 19 | 50 |
| 1 | 44 | 50 |
| 2 | 118 | 50 |
| 3 | 290 | 50 |
| 4 | 456 | 50 |
| 5 | 801 | 50 |
| 6 | 1325 | 50 |
| 7 | 2149 | 50 |
| 8 | 3160 | 50 |
| 9 | 4423 | 50 |
| 10 | 4992 | 50 |
| 1× | node limit |
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1 | 1 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 1 | 2 | 3 |
| Status | Error | Program |
| ▶ | 0.1b | (fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) |
Compiled 129 to 64 computations (50.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.1b | (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) |
| ✓ | 0.2b | (*.f64 (neg.f64 eh) (tan.f64 t)) |
| ✓ | 2.6b | (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew) |
| ✓ | 24.6b | (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))) |
33 calls:
| 6.0ms | (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew) | ew | 0 |
| 6.0ms | (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew) | eh | inf |
| 5.0ms | (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew) | eh | 0 |
| 5.0ms | (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew) | t | -inf |
| 5.0ms | (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew) | t | inf |
| 1× | batch-egg-rewrite |
| 237× | expm1-udef_binary64 |
| 237× | log1p-udef_binary64 |
| 142× | add-sqr-sqrt_binary64 |
| 140× | *-un-lft-identity_binary64 |
| 140× | pow1_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 57 |
| 1 | 273 | 48 |
| 2 | 3730 | 48 |
| 1× | node limit |
| 1× | egg-herbie |
| 474× | distribute-lft-neg-in_binary64 |
| 472× | distribute-rgt-neg-in_binary64 |
| 351× | fma-def_binary64 |
| 300× | associate-*l*_binary64 |
| 272× | associate-*r*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 82 | 2488 |
| 1 | 255 | 2428 |
| 2 | 887 | 2378 |
| 3 | 3738 | 2378 |
| 1× | node limit |
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 220 | 3 | 223 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 221 | 3 | 224 |
| Status | Error | Program |
| ▶ | 0.1b | (fabs.f64 (-.f64 (*.f64 (cos.f64 t) (*.f64 (cos.f64 (atan.f64 (*.f64 -1 (/.f64 (*.f64 (tan.f64 t) eh) ew)))) ew)) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) |
| 24.5b | (fabs.f64 (-.f64 (pow.f64 (sqrt.f64 (/.f64 (*.f64 ew (cos.f64 t)) (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))))) 2) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) | |
| 0.8b | (fabs.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (cos.f64 t)) (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))))) 3) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) |
Compiled 8004 to 2199 computations (72.5% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 0.2b | (*.f64 (neg.f64 eh) (tan.f64 t)) | |
| 2.6b | (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew) | |
| ✓ | 2.6b | (/.f64 (*.f64 (tan.f64 t) eh) ew) |
| ✓ | 24.6b | (cos.f64 (atan.f64 (*.f64 -1 (/.f64 (*.f64 (tan.f64 t) eh) ew)))) |
18 calls:
| 6.0ms | (/.f64 (*.f64 (tan.f64 t) eh) ew) | eh | 0 |
| 6.0ms | (/.f64 (*.f64 (tan.f64 t) eh) ew) | ew | -inf |
| 5.0ms | (/.f64 (*.f64 (tan.f64 t) eh) ew) | eh | -inf |
| 5.0ms | (/.f64 (*.f64 (tan.f64 t) eh) ew) | t | -inf |
| 5.0ms | (/.f64 (*.f64 (tan.f64 t) eh) ew) | t | inf |
| 1× | batch-egg-rewrite |
| 553× | log-prod_binary64 |
| 192× | expm1-udef_binary64 |
| 192× | log1p-udef_binary64 |
| 162× | log-pow_binary64 |
| 116× | log-div_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 24 |
| 1 | 226 | 22 |
| 2 | 2975 | 22 |
| 1× | node limit |
| 1× | egg-herbie |
| 786× | fma-def_binary64 |
| 549× | associate-/l*_binary64 |
| 420× | associate-/r*_binary64 |
| 414× | associate-/r/_binary64 |
| 338× | *-commutative_binary64 |
Useful iterations: 5 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 34 | 556 |
| 1 | 90 | 554 |
| 2 | 235 | 554 |
| 3 | 607 | 551 |
| 4 | 1809 | 539 |
| 5 | 4607 | 530 |
| 1× | node limit |
3 alts after pruning (2 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 185 | 0 | 185 |
| Fresh | 0 | 2 | 2 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 185 | 3 | 188 |
| Status | Error | Program |
| ✓ | 0.1b | (fabs.f64 (-.f64 (*.f64 (cos.f64 t) (*.f64 (cos.f64 (atan.f64 (*.f64 -1 (/.f64 (*.f64 (tan.f64 t) eh) ew)))) ew)) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) |
| 24.5b | (fabs.f64 (-.f64 (pow.f64 (sqrt.f64 (/.f64 (*.f64 ew (cos.f64 t)) (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))))) 2) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) | |
| ▶ | 0.8b | (fabs.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (cos.f64 t)) (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))))) 3) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) |
Compiled 6893 to 2569 computations (62.7% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.6b | (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (cos.f64 t)) (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))))) 3) |
| ✓ | 2.3b | (*.f64 (/.f64 eh ew) (tan.f64 t)) |
| 2.6b | (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew) | |
| ✓ | 10.5b | (cbrt.f64 (/.f64 (*.f64 ew (cos.f64 t)) (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))))) |
27 calls:
| 189.0ms | (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (cos.f64 t)) (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))))) 3) | t | inf |
| 168.0ms | (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (cos.f64 t)) (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))))) 3) | t | -inf |
| 151.0ms | (cbrt.f64 (/.f64 (*.f64 ew (cos.f64 t)) (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))))) | t | inf |
| 150.0ms | (cbrt.f64 (/.f64 (*.f64 ew (cos.f64 t)) (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))))) | t | -inf |
| 56.0ms | (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (cos.f64 t)) (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))))) 3) | ew | -inf |
| 1× | batch-egg-rewrite |
| 256× | expm1-udef_binary64 |
| 256× | log1p-udef_binary64 |
| 147× | add-sqr-sqrt_binary64 |
| 142× | pow1_binary64 |
| 140× | *-un-lft-identity_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 51 |
| 1 | 316 | 51 |
| 2 | 3851 | 51 |
| 1× | node limit |
| 1× | egg-herbie |
| 367× | cancel-sign-sub-inv_binary64 |
| 315× | unswap-sqr_binary64 |
| 193× | associate-*r*_binary64 |
| 174× | associate-/r/_binary64 |
| 167× | fma-def_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 197 | 2253 |
| 1 | 649 | 2184 |
| 2 | 2595 | 2155 |
| 1× | node limit |
5 alts after pruning (4 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 223 | 4 | 227 |
| Fresh | 1 | 0 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 0 | 1 |
| Total | 225 | 5 | 230 |
| Status | Error | Program |
| ▶ | 0.1b | (fabs.f64 (-.f64 (/.f64 ew (/.f64 (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))) (cos.f64 t))) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) |
| 0.9b | (fabs.f64 (-.f64 (pow.f64 (/.f64 (cbrt.f64 ew) (cbrt.f64 (/.f64 (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))) (cos.f64 t)))) 3) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) | |
| 0.2b | (fabs.f64 (-.f64 (/.f64 (cos.f64 t) (/.f64 (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))) ew)) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) | |
| 1.0b | (fabs.f64 (-.f64 (pow.f64 (/.f64 1 (cbrt.f64 (/.f64 (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))) (*.f64 ew (cos.f64 t))))) 3) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) | |
| ✓ | 0.8b | (fabs.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (cos.f64 t)) (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))))) 3) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) |
Compiled 9582 to 3696 computations (61.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.1b | (/.f64 (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))) (cos.f64 t)) |
| 0.2b | (*.f64 (neg.f64 eh) (tan.f64 t)) | |
| 2.3b | (*.f64 (/.f64 eh ew) (tan.f64 t)) | |
| 2.6b | (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew) |
9 calls:
| 16.0ms | (/.f64 (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))) (cos.f64 t)) | t | -inf |
| 16.0ms | (/.f64 (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))) (cos.f64 t)) | t | inf |
| 7.0ms | (/.f64 (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))) (cos.f64 t)) | ew | -inf |
| 6.0ms | (/.f64 (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))) (cos.f64 t)) | eh | -inf |
| 6.0ms | (/.f64 (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))) (cos.f64 t)) | t | 0 |
| 1× | batch-egg-rewrite |
| 584× | log-prod_binary64 |
| 206× | expm1-udef_binary64 |
| 206× | log1p-udef_binary64 |
| 177× | log-pow_binary64 |
| 136× | log-div_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 17 |
| 1 | 225 | 17 |
| 2 | 2945 | 17 |
| 1× | node limit |
| 1× | egg-herbie |
| 768× | associate-*l*_binary64 |
| 404× | fma-def_binary64 |
| 401× | associate-*r/_binary64 |
| 361× | associate-*l/_binary64 |
| 213× | associate-/r/_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 125 | 1771 |
| 1 | 416 | 1707 |
| 2 | 1838 | 1669 |
| 1× | node limit |
6 alts after pruning (4 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 195 | 2 | 197 |
| Fresh | 1 | 2 | 3 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 196 | 6 | 202 |
| Status | Error | Program |
| 0.2b | (fabs.f64 (-.f64 (/.f64 (cos.f64 t) (/.f64 (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))) ew)) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) | |
| 0.2b | (fabs.f64 (-.f64 (/.f64 ew (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 1 (/.f64 eh (/.f64 ew (tan.f64 t)))) (cos.f64 t)) 3))) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) | |
| 0.4b | (fabs.f64 (-.f64 (/.f64 ew (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 1 (/.f64 eh (/.f64 ew (tan.f64 t)))) (cos.f64 t))) 3)) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) | |
| ✓ | 0.1b | (fabs.f64 (-.f64 (/.f64 ew (/.f64 (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))) (cos.f64 t))) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) |
| 1.0b | (fabs.f64 (-.f64 (pow.f64 (/.f64 1 (cbrt.f64 (/.f64 (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))) (*.f64 ew (cos.f64 t))))) 3) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) | |
| ✓ | 0.8b | (fabs.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (cos.f64 t)) (hypot.f64 1 (*.f64 (/.f64 eh ew) (tan.f64 t))))) 3) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) |
Compiled 7649 to 2922 computations (61.8% saved)
Total 0.0b remaining (28.3%)
Threshold costs 0.0b (28.3%)
Compiled 10544 to 7093 computations (32.7% saved)
| 1× | egg-herbie |
| 19× | *-commutative_binary64 |
| 15× | +-commutative_binary64 |
| 15× | sub-neg_binary64 |
| 13× | neg-sub0_binary64 |
| 12× | neg-mul-1_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 24 | 50 |
| 1 | 44 | 50 |
| 2 | 76 | 50 |
| 3 | 105 | 50 |
| 4 | 125 | 50 |
| 5 | 135 | 50 |
| 6 | 137 | 50 |
| 1× | saturated |
| 1× | fuel |
Compiled 272 to 176 computations (35.3% saved)
Loading profile data...