Time bar (total: 5.6s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 50% | 50% | 0 |
| 0% | 50% | 50% | 1 |
| 0% | 50% | 50% | 2 |
| 0% | 50% | 50% | 3 |
| 37.5% | 12.5% | 50% | 4 |
| 43.7% | 6.2% | 50% | 5 |
| 46.9% | 3.1% | 50% | 6 |
| 48.4% | 1.6% | 50% | 7 |
| 49.2% | 0.8% | 50% | 8 |
| 49.6% | 0.4% | 50% | 9 |
| 49.8% | 0.2% | 50% | 10 |
| 49.9% | 0.1% | 50% | 11 |
| 49.9% | 0% | 50% | 12 |
| 50% | 0% | 50% | 13 |
| 50% | 0% | 50% | 14 |
Compiled 29 to 19 computations (34.5% saved)
| 1.3s | 8256× | body | 128 | valid |
Compiled 84 to 55 computations (34.5% saved)
| 1× | egg-herbie |
| 581× | associate-/r*_binary64 |
| 510× | distribute-rgt-in_binary64 |
| 489× | distribute-lft-in_binary64 |
| 463× | fma-neg_binary64 |
| 415× | associate-/r/_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 31 |
| 1 | 40 | 26 |
| 2 | 185 | 17 |
| 3 | 915 | 13 |
| 4 | 2340 | 13 |
| 5 | 4455 | 13 |
| 6 | 4958 | 13 |
| 7 | 5077 | 13 |
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 2 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
| ▶ | 0.3b | (/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i)))) |
| 47.6b | (/.f64 (/.f64 (*.f64 (*.f64 i i) (*.f64 i i)) (*.f64 (*.f64 2 i) (*.f64 2 i))) (-.f64 (*.f64 (*.f64 2 i) (*.f64 2 i)) 1)) |
Compiled 107 to 73 computations (31.8% saved)
Found 3 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (-.f64 4 (/.f64 1 (*.f64 i i))) |
| ✓ | 0.3b | (/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i)))) |
| ✓ | 0.7b | (/.f64 1 (*.f64 i i)) |
3 calls:
| 6.0ms | (/.f64 1 (*.f64 i i)) |
| 3.0ms | (/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i)))) |
| 2.0ms | (-.f64 4 (/.f64 1 (*.f64 i i))) |
| 1× | rewrite-expression-head |
| 59× | add-sqr-sqrt_binary64 |
| 54× | *-un-lft-identity_binary64 |
| 49× | times-frac_binary64 |
| 34× | add-cube-cbrt_binary64 |
| 21× | prod-diff_binary64 |
3 calls:
| 7.0ms | (/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i)))) |
| 5.0ms | (-.f64 4 (/.f64 1 (*.f64 i i))) |
| 3.0ms | (/.f64 1 (*.f64 i i)) |
| 1× | egg-herbie |
| 817× | fma-neg_binary64 |
| 446× | unswap-sqr_binary64 |
| 408× | associate-*l*_binary64 |
| 361× | fma-def_binary64 |
| 294× | associate-*r*_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 203 | 2573 |
| 1 | 382 | 2324 |
| 2 | 977 | 2089 |
| 3 | 3418 | 2089 |
| 4 | 4641 | 2081 |
| 5 | 4949 | 2081 |
| 6 | 4780 | 2081 |
4 alts after pruning (4 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 192 | 4 | 196 |
| Fresh | 1 | 0 | 1 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 194 | 4 | 198 |
| Status | Error | Program |
| 19.1b | (/.f64 1/4 (+.f64 (fma.f64 (*.f64 (cbrt.f64 4) (cbrt.f64 4)) (cbrt.f64 4) (neg.f64 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 i i))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 i i))) (cbrt.f64 (/.f64 1 (*.f64 i i))))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 1 (*.f64 i i)))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 i i))) (cbrt.f64 (/.f64 1 (*.f64 i i)))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 i i))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 i i))) (cbrt.f64 (/.f64 1 (*.f64 i i)))))))) | |
| 30.7b | (neg.f64 (fma.f64 (*.f64 i i) (fma.f64 i i 1/4) (fma.f64 4 (pow.f64 i 6) (*.f64 16 (pow.f64 i 8))))) | |
| 25.6b | (/.f64 1/4 (/.f64 (-.f64 16 (/.f64 1 (pow.f64 i 4))) (+.f64 (/.f64 1 (*.f64 i i)) 4))) | |
| ▶ | 0.2b | (*.f64 (/.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (+.f64 2 (/.f64 1 i))) (/.f64 (cbrt.f64 1/4) (-.f64 2 (/.f64 1 i)))) |
Compiled 3894 to 2878 computations (26.1% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (-.f64 2 (/.f64 1 i)) |
| ✓ | 0.1b | (*.f64 (/.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (+.f64 2 (/.f64 1 i))) (/.f64 (cbrt.f64 1/4) (-.f64 2 (/.f64 1 i)))) |
| ✓ | 0.2b | (/.f64 (cbrt.f64 1/4) (-.f64 2 (/.f64 1 i))) |
| ✓ | 0.2b | (/.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (+.f64 2 (/.f64 1 i))) |
4 calls:
| 14.0ms | (/.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (+.f64 2 (/.f64 1 i))) |
| 6.0ms | (*.f64 (/.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (+.f64 2 (/.f64 1 i))) (/.f64 (cbrt.f64 1/4) (-.f64 2 (/.f64 1 i)))) |
| 6.0ms | (/.f64 (cbrt.f64 1/4) (-.f64 2 (/.f64 1 i))) |
| 1.0ms | (-.f64 2 (/.f64 1 i)) |
| 1× | rewrite-expression-head |
| 212× | add-sqr-sqrt_binary64 |
| 177× | times-frac_binary64 |
| 163× | *-un-lft-identity_binary64 |
| 98× | add-cube-cbrt_binary64 |
| 54× | associate-*r*_binary64 |
4 calls:
| 29.0ms | (*.f64 (/.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (+.f64 2 (/.f64 1 i))) (/.f64 (cbrt.f64 1/4) (-.f64 2 (/.f64 1 i)))) |
| 9.0ms | (/.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (+.f64 2 (/.f64 1 i))) |
| 7.0ms | (/.f64 (cbrt.f64 1/4) (-.f64 2 (/.f64 1 i))) |
| 6.0ms | (-.f64 2 (/.f64 1 i)) |
| 1× | egg-herbie |
| 854× | fma-def_binary64 |
| 815× | times-frac_binary64 |
| 267× | associate-*r/_binary64 |
| 261× | associate-*l/_binary64 |
| 231× | associate-*l*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 372 | 8462 |
| 1 | 965 | 7103 |
| 2 | 3290 | 7073 |
| 3 | 5470 | 7073 |
4 alts after pruning (3 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 417 | 2 | 419 |
| Fresh | 2 | 1 | 3 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 419 | 4 | 423 |
| Status | Error | Program |
| ▶ | 23.4b | (*.f64 (/.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (+.f64 2 (/.f64 1 i))) (*.f64 (/.f64 (cbrt.f64 1/4) (-.f64 8 (/.f64 1 (pow.f64 i 3)))) (+.f64 (*.f64 2 2) (+.f64 (*.f64 (/.f64 1 i) (/.f64 1 i)) (*.f64 2 (/.f64 1 i)))))) |
| 30.7b | (neg.f64 (fma.f64 4 (pow.f64 i 6) (fma.f64 1/4 (*.f64 i i) (pow.f64 i 4)))) | |
| 25.6b | (/.f64 1/4 (/.f64 (-.f64 16 (/.f64 1 (pow.f64 i 4))) (+.f64 (/.f64 1 (*.f64 i i)) 4))) | |
| ✓ | 0.2b | (*.f64 (/.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (+.f64 2 (/.f64 1 i))) (/.f64 (cbrt.f64 1/4) (-.f64 2 (/.f64 1 i)))) |
Compiled 13636 to 11918 computations (12.6% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.3b | (*.f64 (/.f64 1 i) (/.f64 1 i)) |
| ✓ | 0.4b | (/.f64 1 (pow.f64 i 3)) |
| ✓ | 0.5b | (/.f64 (cbrt.f64 1/4) (-.f64 8 (/.f64 1 (pow.f64 i 3)))) |
| ✓ | 22.7b | (*.f64 (/.f64 (cbrt.f64 1/4) (-.f64 8 (/.f64 1 (pow.f64 i 3)))) (+.f64 (*.f64 2 2) (+.f64 (*.f64 (/.f64 1 i) (/.f64 1 i)) (*.f64 2 (/.f64 1 i))))) |
4 calls:
| 8.0ms | (/.f64 (cbrt.f64 1/4) (-.f64 8 (/.f64 1 (pow.f64 i 3)))) |
| 7.0ms | (/.f64 1 (pow.f64 i 3)) |
| 6.0ms | (*.f64 (/.f64 (cbrt.f64 1/4) (-.f64 8 (/.f64 1 (pow.f64 i 3)))) (+.f64 (*.f64 2 2) (+.f64 (*.f64 (/.f64 1 i) (/.f64 1 i)) (*.f64 2 (/.f64 1 i))))) |
| 3.0ms | (*.f64 (/.f64 1 i) (/.f64 1 i)) |
| 1× | rewrite-expression-head |
| 422× | add-sqr-sqrt_binary64 |
| 358× | times-frac_binary64 |
| 229× | *-un-lft-identity_binary64 |
| 130× | add-cube-cbrt_binary64 |
| 117× | difference-of-squares_binary64 |
4 calls:
| 34.0ms | (*.f64 (/.f64 (cbrt.f64 1/4) (-.f64 8 (/.f64 1 (pow.f64 i 3)))) (+.f64 (*.f64 2 2) (+.f64 (*.f64 (/.f64 1 i) (/.f64 1 i)) (*.f64 2 (/.f64 1 i))))) |
| 15.0ms | (/.f64 (cbrt.f64 1/4) (-.f64 8 (/.f64 1 (pow.f64 i 3)))) |
| 11.0ms | (*.f64 (/.f64 1 i) (/.f64 1 i)) |
| 7.0ms | (/.f64 1 (pow.f64 i 3)) |
| 1× | egg-herbie |
| 298× | distribute-rgt-in_binary64 |
| 281× | distribute-lft-in_binary64 |
| 223× | *-commutative_binary64 |
| 205× | associate-*r*_binary64 |
| 204× | associate-*l*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 395 | 11136 |
| 1 | 1122 | 10321 |
| 2 | 3935 | 9781 |
| 3 | 4651 | 9781 |
| 4 | 4936 | 9781 |
4 alts after pruning (2 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 530 | 0 | 530 |
| Fresh | 0 | 2 | 2 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 530 | 4 | 534 |
| Status | Error | Program |
| ✓ | 23.4b | (*.f64 (/.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (+.f64 2 (/.f64 1 i))) (*.f64 (/.f64 (cbrt.f64 1/4) (-.f64 8 (/.f64 1 (pow.f64 i 3)))) (+.f64 (*.f64 2 2) (+.f64 (*.f64 (/.f64 1 i) (/.f64 1 i)) (*.f64 2 (/.f64 1 i)))))) |
| 30.7b | (neg.f64 (fma.f64 4 (pow.f64 i 6) (fma.f64 1/4 (*.f64 i i) (pow.f64 i 4)))) | |
| ▶ | 25.6b | (/.f64 1/4 (/.f64 (-.f64 16 (/.f64 1 (pow.f64 i 4))) (+.f64 (/.f64 1 (*.f64 i i)) 4))) |
| ✓ | 0.2b | (*.f64 (/.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (+.f64 2 (/.f64 1 i))) (/.f64 (cbrt.f64 1/4) (-.f64 2 (/.f64 1 i)))) |
Compiled 26823 to 23315 computations (13.1% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.2b | (/.f64 1 (pow.f64 i 4)) |
| ✓ | 0.3b | (/.f64 1/4 (/.f64 (-.f64 16 (/.f64 1 (pow.f64 i 4))) (+.f64 (/.f64 1 (*.f64 i i)) 4))) |
| 0.7b | (/.f64 1 (*.f64 i i)) | |
| ✓ | 25.5b | (/.f64 (-.f64 16 (/.f64 1 (pow.f64 i 4))) (+.f64 (/.f64 1 (*.f64 i i)) 4)) |
3 calls:
| 3.0ms | (/.f64 1/4 (/.f64 (-.f64 16 (/.f64 1 (pow.f64 i 4))) (+.f64 (/.f64 1 (*.f64 i i)) 4))) |
| 3.0ms | (/.f64 (-.f64 16 (/.f64 1 (pow.f64 i 4))) (+.f64 (/.f64 1 (*.f64 i i)) 4)) |
| 2.0ms | (/.f64 1 (pow.f64 i 4)) |
| 1× | rewrite-expression-head |
| 675× | times-frac_binary64 |
| 567× | add-sqr-sqrt_binary64 |
| 516× | *-un-lft-identity_binary64 |
| 182× | difference-of-squares_binary64 |
| 177× | add-cube-cbrt_binary64 |
3 calls:
| 24.0ms | (/.f64 (-.f64 16 (/.f64 1 (pow.f64 i 4))) (+.f64 (/.f64 1 (*.f64 i i)) 4)) |
| 24.0ms | (/.f64 1/4 (/.f64 (-.f64 16 (/.f64 1 (pow.f64 i 4))) (+.f64 (/.f64 1 (*.f64 i i)) 4))) |
| 3.0ms | (/.f64 1 (pow.f64 i 4)) |
| 1× | egg-herbie |
| 447× | times-frac_binary64 |
| 420× | fma-def_binary64 |
| 328× | distribute-rgt-in_binary64 |
| 306× | distribute-lft-in_binary64 |
| 299× | fma-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 405 | 16687 |
| 1 | 906 | 16267 |
| 2 | 2780 | 16053 |
| 3 | 4373 | 15405 |
| 4 | 4709 | 15405 |
| 5 | 4972 | 15405 |
| 6 | 4885 | 15405 |
4 alts after pruning (1 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 483 | 0 | 483 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 483 | 4 | 487 |
| Status | Error | Program |
| ✓ | 23.4b | (*.f64 (/.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (+.f64 2 (/.f64 1 i))) (*.f64 (/.f64 (cbrt.f64 1/4) (-.f64 8 (/.f64 1 (pow.f64 i 3)))) (+.f64 (*.f64 2 2) (+.f64 (*.f64 (/.f64 1 i) (/.f64 1 i)) (*.f64 2 (/.f64 1 i)))))) |
| 30.7b | (neg.f64 (fma.f64 4 (pow.f64 i 6) (fma.f64 1/4 (*.f64 i i) (pow.f64 i 4)))) | |
| ✓ | 25.6b | (/.f64 1/4 (/.f64 (-.f64 16 (/.f64 1 (pow.f64 i 4))) (+.f64 (/.f64 1 (*.f64 i i)) 4))) |
| ✓ | 0.2b | (*.f64 (/.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (+.f64 2 (/.f64 1 i))) (/.f64 (cbrt.f64 1/4) (-.f64 2 (/.f64 1 i)))) |
Compiled 15955 to 12509 computations (21.6% saved)
Total 0.1b remaining (97.5%)
Threshold costs 0.1b (97.5%)
Compiled 7160 to 6039 computations (15.7% saved)
| 1× | egg-herbie |
| 3× | +-commutative_binary64 |
| 2× | *-commutative_binary64 |
| 2× | sub-neg_binary64 |
| 1× | distribute-neg-frac_binary64 |
| 1× | neg-sub0_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 26 |
| 1 | 18 | 26 |
| 2 | 24 | 26 |
| 3 | 26 | 26 |
| 4 | 27 | 26 |
| 5 | 25 | 26 |
Compiled 131 to 111 computations (15.3% saved)
Loading profile data...