Time bar (total: 22.7s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 100% | 0% | 0 |
| 0% | 100% | 0% | 1 |
| 100% | 0% | 0% | 2 |
Compiled 175 to 47 computations (73.1% saved)
| 2.8s | 8256× | body | 128 | valid |
Compiled 524 to 140 computations (73.3% saved)
| 1× | egg-herbie |
| 755× | unswap-sqr_binary64 |
| 705× | fma-def_binary64 |
| 691× | distribute-rgt-out_binary64 |
| 576× | +-commutative_binary64 |
| 488× | *-commutative_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 46 | 256 |
| 1 | 133 | 150 |
| 2 | 549 | 101 |
| 3 | 2427 | 90 |
| 4 | 3705 | 84 |
| 5 | 4529 | 84 |
| 6 | 4874 | 84 |
| 7 | 5887 | 84 |
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 |
| ▶ | 31.0b | (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x) |
| 31.0b | (*.f64 x (/.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 2532017/5000000000 (pow.f64 x 8) (fma.f64 36322091/5000000000 (pow.f64 x 6) (fma.f64 106015151/2500000000 (pow.f64 x 4) (fma.f64 1049934947/10000000000 (*.f64 x x) 1))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1)))))))) |
Compiled 704 to 274 computations (61.1% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.2b | (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))) |
| ✓ | 0.3b | (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x))) |
| ✓ | 14.1b | (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x) |
| ✓ | 30.2b | (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) |
4 calls:
| 47.0ms | (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) |
| 20.0ms | (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x) |
| 8.0ms | (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))) |
| 7.0ms | (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x))) |
| 1× | rewrite-expression-head |
| 1857× | add-cbrt-cube_binary64 |
| 1857× | add-exp-log_binary64 |
| 1852× | pow1_binary64 |
| 1647× | cbrt-unprod_binary64 |
| 1647× | prod-exp_binary64 |
4 calls:
| 4.2s | (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))) |
| 185.0ms | (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) |
| 145.0ms | (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x) |
| 103.0ms | (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x))) |
| 1× | egg-herbie |
| 676× | associate-*l*_binary64 |
| 597× | associate-*r*_binary64 |
| 389× | fma-neg_binary64 |
| 388× | associate-+l+_binary64 |
| 254× | unswap-sqr_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 914 | 17574 |
| 1 | 850 | 14064 |
| 2 | 3528 | 13542 |
| 3 | 4944 | 13542 |
| 4 | 5033 | 13542 |
4 alts after pruning (4 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 583 | 4 | 587 |
| Fresh | 1 | 0 | 1 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 585 | 4 | 589 |
| Status | Error | Program |
| ▶ | 29.8b | (+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3))) |
| 31.0b | (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1))))))) (/.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1)))))))) x) | |
| 31.7b | (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)) (cbrt.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x))) (cbrt.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x))) | |
| 31.0b | (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x) |
Compiled 118422 to 29554 computations (75% saved)
Found 2 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3))) |
| ✓ | 0.3b | (/.f64 600041/2386628 (pow.f64 x 3)) |
2 calls:
| 5.0ms | (/.f64 600041/2386628 (pow.f64 x 3)) |
| 4.0ms | (+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3))) |
| 1× | rewrite-expression-head |
| 47× | times-frac_binary64 |
| 40× | *-un-lft-identity_binary64 |
| 34× | add-sqr-sqrt_binary64 |
| 34× | add-cube-cbrt_binary64 |
| 13× | fma-def_binary64 |
2 calls:
| 41.0ms | (+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3))) |
| 5.0ms | (/.f64 600041/2386628 (pow.f64 x 3)) |
| 1× | egg-herbie |
| 683× | associate-*l*_binary64 |
| 353× | associate-/l*_binary64 |
| 342× | associate-*r/_binary64 |
| 342× | associate-*l/_binary64 |
| 272× | associate-/l/_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 129 | 1319 |
| 1 | 242 | 1280 |
| 2 | 965 | 1242 |
| 3 | 4706 | 1242 |
| 4 | 4947 | 1242 |
4 alts after pruning (3 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 112 | 0 | 112 |
| Fresh | 0 | 3 | 3 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 112 | 4 | 116 |
| Status | Error | Program |
| ✓ | 29.8b | (+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3))) |
| 31.0b | (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1))))))) (/.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1)))))))) x) | |
| 31.7b | (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)) (cbrt.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x))) (cbrt.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 36322091/5000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x))) | |
| ▶ | 31.0b | (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x) |
Compiled 3453 to 1956 computations (43.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.7b | (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000))) |
| ✓ | 14.1b | (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x) |
| ✓ | 24.9b | (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)) |
| ✓ | 30.2b | (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) |
4 calls:
| 71.0ms | (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)) |
| 12.0ms | (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x) |
| 12.0ms | (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) |
| 4.0ms | (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000))) |
| 1× | rewrite-expression-head |
| 25× | add-sqr-sqrt_binary64 |
| 20× | *-un-lft-identity_binary64 |
| 20× | add-cube-cbrt_binary64 |
| 19× | times-frac_binary64 |
| 15× | associate-*l*_binary64 |
4 calls:
| 159.0ms | (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) |
| 139.0ms | (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x) |
| 1.0ms | (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)) |
| 1.0ms | (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000))) |
| 1× | egg-herbie |
| 504× | cancel-sign-sub-inv_binary64 |
| 427× | fma-neg_binary64 |
| 232× | associate-*r*_binary64 |
| 216× | associate-*l*_binary64 |
| 191× | fma-def_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 280 | 12560 |
| 1 | 794 | 8476 |
| 2 | 3011 | 7966 |
| 3 | 4906 | 7966 |
| 4 | 4963 | 7966 |
4 alts after pruning (2 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 204 | 1 | 205 |
| Fresh | 1 | 1 | 2 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 205 | 4 | 209 |
| Status | Error | Program |
| ✓ | 29.8b | (+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3))) |
| ▶ | 31.0b | (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1))))))) (/.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1)))))))) x) |
| ✓ | 31.0b | (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x) |
| 31.7b | (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)) (cbrt.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x))) (cbrt.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x))) |
Compiled 39146 to 13081 computations (66.6% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 6.7b | (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) |
| ✓ | 14.1b | (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1))))))) (/.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1)))))))) x) |
| ✓ | 24.9b | (/.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1))))))) |
| ✓ | 27.8b | (*.f64 (*.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1))))))) (/.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1)))))))) |
4 calls:
| 24.0ms | (/.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1))))))) |
| 20.0ms | (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1))))))) (/.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1)))))))) x) |
| 18.0ms | (*.f64 (*.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1))))))) (/.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1)))))))) |
| 16.0ms | (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) |
| 1× | rewrite-expression-head |
| 39× | add-sqr-sqrt_binary64 |
| 38× | times-frac_binary64 |
| 36× | add-exp-log_binary64 |
| 34× | *-un-lft-identity_binary64 |
| 34× | add-cube-cbrt_binary64 |
4 calls:
| 22.0ms | (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1))))))) (/.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1)))))))) x) |
| 19.0ms | (*.f64 (*.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1))))))) (/.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1)))))))) |
| 6.0ms | (/.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1))))))) |
| 1.0ms | (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) |
| 1× | egg-herbie |
| 567× | fma-def_binary64 |
| 493× | times-frac_binary64 |
| 272× | associate-*l*_binary64 |
| 246× | fma-neg_binary64 |
| 192× | cancel-sign-sub-inv_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 331 | 17951 |
| 1 | 824 | 15734 |
| 2 | 2557 | 15542 |
| 3 | 4925 | 15542 |
| 4 | 5007 | 15542 |
4 alts after pruning (1 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 346 | 0 | 346 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 346 | 4 | 350 |
| Status | Error | Program |
| ✓ | 29.8b | (+.f64 (/.f64 1/2 x) (/.f64 600041/2386628 (pow.f64 x 3))) |
| ✓ | 31.0b | (*.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1))))))) (/.f64 (cbrt.f64 (fma.f64 1789971/10000000000 (pow.f64 x 10) (fma.f64 (pow.f64 x 8) 2532017/5000000000 (fma.f64 (pow.f64 x 6) 36322091/5000000000 (fma.f64 (pow.f64 x 4) 106015151/2500000000 (fma.f64 (*.f64 x x) 1049934947/10000000000 1)))))) (fma.f64 1789971/5000000000 (pow.f64 x 12) (fma.f64 (pow.f64 x 10) 1665589/2000000000 (fma.f64 (pow.f64 x 8) 70002721/5000000000 (fma.f64 (pow.f64 x 6) 694555761/10000000000 (fma.f64 (pow.f64 x 4) 2909738639/10000000000 (fma.f64 (*.f64 x x) 7715471019/10000000000 1)))))))) x) |
| ✓ | 31.0b | (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x) |
| 31.7b | (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x)) (cbrt.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x))) (cbrt.f64 (*.f64 (/.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 1049934947/10000000000 (*.f64 x x))) (*.f64 106015151/2500000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 6) 36322091/5000000000)))) (*.f64 2532017/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1789971/10000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 1 (*.f64 7715471019/10000000000 (*.f64 x x))) (*.f64 2909738639/10000000000 (*.f64 (*.f64 x x) (*.f64 x x)))) (*.f64 694555761/10000000000 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)))) (*.f64 70002721/5000000000 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 1665589/2000000000 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)))) (*.f64 (*.f64 2 1789971/10000000000) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x)) (*.f64 x x))))) x))) |
Compiled 46739 to 34862 computations (25.4% saved)
Total 0.0b remaining (68.7%)
Threshold costs 0.0b (68.7%)
Compiled 36651 to 18521 computations (49.5% saved)
| Iters | Range | Point | |
|---|---|---|---|
| 5 | 15.221899651635702 | 1555645373.9577658 | 8420.958921993413 |
| 9 | -16876.703127526474 | -0.03114901220656712 | -6700.215152535676 |
Compiled 2 to 1 computations (50% saved)
| 1× | egg-herbie |
| 2× | *-commutative_binary64 |
| 1× | +-commutative_binary64 |
| 1× | 1-exp_binary64 |
| 1× | if-if-or-not_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 55 | 193 |
| 1 | 63 | 193 |
| 2 | 62 | 193 |
Compiled 1075 to 494 computations (54% saved)
Loading profile data...