Time bar (total: 13.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 |
| 0% | 99.9% | 0.1% | 7 |
| 0% | 74.9% | 25.1% | 8 |
| 0% | 74.9% | 25.1% | 9 |
| 9.4% | 65.5% | 25.1% | 10 |
| 9.4% | 53% | 37.6% | 11 |
| 14% | 48.4% | 37.6% | 12 |
| 16.4% | 46% | 37.6% | 13 |
| 16.4% | 39.8% | 43.8% | 14 |
Compiled 31 to 21 computations (32.3% saved)
| 1× | intervals |
| 11.0ms | 169× | body | 128 | valid |
| 8.0ms | 41× | body | 512 | valid |
| 7.0ms | 28× | body | 1024 | valid |
| 6.0ms | 24× | body | 1024 | nan |
| 4.0ms | 65× | body | 128 | nan |
| 2.0ms | 13× | body | 512 | nan |
| 2.0ms | 15× | body | 256 | valid |
| 1.0ms | 3× | body | 2048 | valid |
| 1.0ms | 5× | body | 256 | nan |
Compiled 64 to 44 computations (31.3% saved)
| 1× | egg-herbie |
| 706× | div-sub_binary64 |
| 508× | distribute-neg-in_binary64 |
| 500× | distribute-rgt-in_binary64 |
| 420× | distribute-lft-in_binary64 |
| 403× | cancel-sign-sub-inv_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 19 | 41 |
| 1 | 46 | 41 |
| 2 | 95 | 41 |
| 3 | 184 | 41 |
| 4 | 355 | 41 |
| 5 | 714 | 41 |
| 6 | 1619 | 41 |
| 7 | 3620 | 41 |
| 8 | 4716 | 41 |
| 9 | 5192 | 41 |
1 alts after pruning (1 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 1 | 1 |
| Status | Error | Program |
| ▶ | 43.2b | (/.f64 (*.f64 (sqrt.f64 2) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l)))) |
Compiled 60 to 40 computations (33.3% saved)
Found 4 expressions with local error:
| 0.0b | (/.f64 (*.f64 (sqrt.f64 2) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l)))) |
| 0.5b | (*.f64 (sqrt.f64 2) t) |
| 14.2b | (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l)) |
| 20.4b | (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l))) |
| 1× | rewrite-expression-head |
| 17× | add-sqr-sqrt_binary64 |
| 13× | sqrt-prod_binary64 |
| 12× | add-cube-cbrt_binary64 *-un-lft-identity_binary64 |
| 11× | add-exp-log_binary64 add-cbrt-cube_binary64 |
| 7× | pow1_binary64 |
4 calls:
| 21.0ms | (/.f64 (*.f64 (sqrt.f64 2) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l)))) |
| 15.0ms | (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l)) |
| 14.0ms | (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l))) |
| 5.0ms | (*.f64 (sqrt.f64 2) t) |
Compiled 3285 to 1868 computations (43.1% saved)
4 calls:
| 375.0ms | (/.f64 (*.f64 (sqrt.f64 2) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l)))) |
| 225.0ms | (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l))) |
| 154.0ms | (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l)) |
| 9.0ms | (*.f64 (sqrt.f64 2) t) |
Compiled 9966 to 8151 computations (18.2% saved)
| 1× | egg-herbie |
| 652× | times-frac_binary64 |
| 461× | associate-/l*_binary64 |
| 456× | associate-/r*_binary64 |
| 228× | associate-*r/_binary64 |
| 210× | associate-*l/_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 502 | 8414 |
| 1 | 1449 | 7939 |
| 2 | 5109 | 7939 |
8 alts after pruning (8 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 97 | 8 | 105 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 98 | 8 | 106 |
| Status | Error | Program |
| 49.2b | (/.f64 (*.f64 (sqrt.f64 2) t) (-.f64 (+.f64 (/.f64 (*.f64 l l) (*.f64 t (*.f64 (sqrt.f64 2) x))) (+.f64 (*.f64 t (sqrt.f64 2)) (+.f64 (*.f64 2 (+.f64 (/.f64 t (*.f64 (sqrt.f64 2) (*.f64 x x))) (/.f64 t (*.f64 (sqrt.f64 2) x)))) (+.f64 (/.f64 (*.f64 l l) (*.f64 t (*.f64 (sqrt.f64 2) (*.f64 x x)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 l 6) (*.f64 (pow.f64 t 5) (*.f64 (pow.f64 (sqrt.f64 2) 5) (pow.f64 x 3))))) (+.f64 (*.f64 6 (/.f64 (*.f64 l l) (*.f64 t (*.f64 (pow.f64 (sqrt.f64 2) 5) (pow.f64 x 3))))) (+.f64 (*.f64 4 (/.f64 t (*.f64 (pow.f64 (sqrt.f64 2) 5) (pow.f64 x 3)))) (+.f64 (*.f64 2 (/.f64 t (*.f64 (sqrt.f64 2) (pow.f64 x 3)))) (+.f64 (/.f64 (*.f64 l l) (*.f64 t (*.f64 (sqrt.f64 2) (pow.f64 x 3)))) (*.f64 3 (/.f64 (pow.f64 l 4) (*.f64 (pow.f64 t 3) (*.f64 (pow.f64 (sqrt.f64 2) 5) (pow.f64 x 3)))))))))))))) (+.f64 (/.f64 (pow.f64 l 4) (*.f64 (pow.f64 t 3) (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 x 3)))) (+.f64 (*.f64 4 (/.f64 (*.f64 l l) (*.f64 t (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 x 3))))) (+.f64 (*.f64 2 (/.f64 (*.f64 l l) (*.f64 t (*.f64 (*.f64 x x) (*.f64 2 (sqrt.f64 2)))))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 l 4) (*.f64 (*.f64 (*.f64 x x) (*.f64 2 (sqrt.f64 2))) (pow.f64 t 3)))) (+.f64 (*.f64 2 (/.f64 t (*.f64 (*.f64 x x) (*.f64 2 (sqrt.f64 2))))) (*.f64 4 (/.f64 t (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 x 3))))))))))) | |
| 37.1b | (/.f64 (*.f64 (sqrt.f64 2) t) (neg.f64 (*.f64 t (sqrt.f64 (+.f64 (/.f64 2 (-.f64 x 1)) (*.f64 2 (/.f64 x (-.f64 x 1)))))))) | |
| 63.8b | (/.f64 (*.f64 (sqrt.f64 2) t) (neg.f64 (*.f64 l (sqrt.f64 (-.f64 (+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 x (-.f64 x 1))) 1))))) | |
| ▶ | 32.4b | (/.f64 (*.f64 (sqrt.f64 2) t) (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))) (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x)))))))))) |
| 38.7b | (/.f64 (*.f64 (sqrt.f64 2) t) (+.f64 (*.f64 t (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 t (*.f64 (sqrt.f64 2) x))) (/.f64 (*.f64 l l) (*.f64 t (*.f64 (sqrt.f64 2) x)))))) | |
| 43.3b | (cbrt.f64 (pow.f64 (/.f64 (*.f64 t (sqrt.f64 2)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l)))) 3)) | |
| 39.8b | (/.f64 (*.f64 (sqrt.f64 2) t) (*.f64 t (sqrt.f64 (+.f64 (/.f64 2 (-.f64 x 1)) (*.f64 2 (/.f64 x (-.f64 x 1))))))) | |
| 37.5b | (neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 (+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 x (-.f64 x 1))))))) |
Compiled 5139 to 3402 computations (33.8% saved)
Found 4 expressions with local error:
| 13.2b | (/.f64 (*.f64 l l) (pow.f64 x 3)) |
| 19.8b | (/.f64 (*.f64 t t) (*.f64 x x)) |
| 20.1b | (/.f64 (*.f64 t t) (pow.f64 x 3)) |
| 26.7b | (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))) (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))))))) |
| 1× | rewrite-expression-head |
| 42× | add-exp-log_binary64 associate-*r/_binary64 |
| 38× | frac-add_binary64 |
| 26× | add-cbrt-cube_binary64 |
| 25× | times-frac_binary64 associate-/r*_binary64 |
| 18× | add-sqr-sqrt_binary64 |
4 calls:
| 32.0ms | (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))) (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))))))) |
| 7.0ms | (/.f64 (*.f64 t t) (pow.f64 x 3)) |
| 6.0ms | (/.f64 (*.f64 t t) (*.f64 x x)) |
| 6.0ms | (/.f64 (*.f64 l l) (pow.f64 x 3)) |
Compiled 11919 to 4675 computations (60.8% saved)
4 calls:
| 663.0ms | (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))) (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))))))) |
| 32.0ms | (/.f64 (*.f64 l l) (pow.f64 x 3)) |
| 31.0ms | (/.f64 (*.f64 t t) (*.f64 x x)) |
| 31.0ms | (/.f64 (*.f64 t t) (pow.f64 x 3)) |
Compiled 14364 to 11417 computations (20.5% saved)
| 1× | egg-herbie |
| 743× | times-frac_binary64 |
| 443× | distribute-rgt-in_binary64 |
| 245× | *-commutative_binary64 |
| 132× | +-commutative_binary64 |
| 111× | associate-*r*_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 685 | 13069 |
| 1 | 2206 | 11764 |
| 2 | 5041 | 11764 |
10 alts after pruning (9 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 125 | 6 | 131 |
| Fresh | 4 | 3 | 7 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 129 | 10 | 139 |
| Status | Error | Program |
| 59.1b | (/.f64 (*.f64 (sqrt.f64 2) t) (/.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 2 (*.f64 l l)) (*.f64 x (+.f64 (*.f64 4 (/.f64 (pow.f64 l 4) (pow.f64 x 6))) (*.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (-.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3)))))))) (*.f64 x (+.f64 (*.f64 (*.f64 4 (*.f64 t t)) (+.f64 (*.f64 4 (/.f64 (pow.f64 l 4) (pow.f64 x 6))) (*.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (-.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))))))) (*.f64 x (+.f64 (pow.f64 (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))) 3) (pow.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) 3))))))) (sqrt.f64 (*.f64 x (*.f64 x (+.f64 (*.f64 4 (/.f64 (pow.f64 l 4) (pow.f64 x 6))) (*.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (-.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))))))))))) | |
| ✓ | 32.4b | (/.f64 (*.f64 (sqrt.f64 2) t) (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))) (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x)))))))))) |
| 38.7b | (/.f64 (*.f64 (sqrt.f64 2) t) (+.f64 (*.f64 t (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 t (*.f64 (sqrt.f64 2) x))) (/.f64 (*.f64 l l) (*.f64 t (*.f64 (sqrt.f64 2) x)))))) | |
| ▶ | 32.5b | (/.f64 (*.f64 (sqrt.f64 2) t) (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 l l) (pow.f64 x 3)) (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x))))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))))))) (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 l l) (pow.f64 x 3)) (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x))))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))))))))) |
| 43.3b | (cbrt.f64 (pow.f64 (/.f64 (*.f64 t (sqrt.f64 2)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l)))) 3)) | |
| 37.4b | (/.f64 (*.f64 (sqrt.f64 2) t) (neg.f64 (*.f64 t (sqrt.f64 (+.f64 (/.f64 4 (*.f64 x x)) (+.f64 (/.f64 4 x) (+.f64 2 (/.f64 4 (pow.f64 x 3))))))))) | |
| 52.7b | (/.f64 (*.f64 (sqrt.f64 2) t) (*.f64 l (sqrt.f64 (+.f64 (/.f64 2 (*.f64 x x)) (+.f64 (/.f64 2 x) (/.f64 2 (pow.f64 x 3))))))) | |
| 39.8b | (/.f64 (*.f64 (sqrt.f64 2) t) (*.f64 t (sqrt.f64 (+.f64 (/.f64 4 (*.f64 x x)) (+.f64 (/.f64 4 x) (+.f64 2 (/.f64 4 (pow.f64 x 3)))))))) | |
| 37.5b | (neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 (+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 x (-.f64 x 1))))))) | |
| 55.8b | (/.f64 (*.f64 (sqrt.f64 2) t) (neg.f64 (*.f64 l (sqrt.f64 (+.f64 (/.f64 2 (*.f64 x x)) (+.f64 (/.f64 2 x) (/.f64 2 (pow.f64 x 3)))))))) |
Compiled 9779 to 4850 computations (50.4% saved)
Found 4 expressions with local error:
| 20.1b | (/.f64 (*.f64 t t) (pow.f64 x 3)) |
| 20.1b | (/.f64 (*.f64 t t) (pow.f64 x 3)) |
| 26.7b | (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 l l) (pow.f64 x 3)) (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x))))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x)))))))) |
| 26.7b | (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 l l) (pow.f64 x 3)) (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x))))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x)))))))) |
| 1× | rewrite-expression-head |
| 108× | associate-*r/_binary64 |
| 104× | frac-add_binary64 |
| 36× | sqrt-div_binary64 |
| 30× | add-exp-log_binary64 |
| 26× | flip3-+_binary64 flip-+_binary64 |
4 calls:
| 36.0ms | (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 l l) (pow.f64 x 3)) (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x))))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x)))))))) |
| 32.0ms | (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 l l) (pow.f64 x 3)) (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x))))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x)))))))) |
| 7.0ms | (/.f64 (*.f64 t t) (pow.f64 x 3)) |
| 7.0ms | (/.f64 (*.f64 t t) (pow.f64 x 3)) |
Compiled 25821 to 9334 computations (63.9% saved)
4 calls:
| 704.0ms | (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 l l) (pow.f64 x 3)) (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x))))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x)))))))) |
| 701.0ms | (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 l l) (pow.f64 x 3)) (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x))))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x)))))))) |
| 40.0ms | (/.f64 (*.f64 t t) (pow.f64 x 3)) |
| 40.0ms | (/.f64 (*.f64 t t) (pow.f64 x 3)) |
Compiled 32323 to 23793 computations (26.4% saved)
| 1× | egg-herbie |
| 558× | distribute-rgt-in_binary64 |
| 539× | distribute-lft-in_binary64 |
| 403× | times-frac_binary64 |
| 251× | *-commutative_binary64 |
| 125× | +-commutative_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 616 | 26106 |
| 1 | 2140 | 23332 |
| 2 | 5857 | 23332 |
10 alts after pruning (8 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 152 | 0 | 152 |
| Fresh | 0 | 8 | 8 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 152 | 10 | 162 |
| Status | Error | Program |
| 59.1b | (/.f64 (*.f64 (sqrt.f64 2) t) (/.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 2 (*.f64 l l)) (*.f64 x (+.f64 (*.f64 4 (/.f64 (pow.f64 l 4) (pow.f64 x 6))) (*.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (-.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3)))))))) (*.f64 x (+.f64 (*.f64 (*.f64 4 (*.f64 t t)) (+.f64 (*.f64 4 (/.f64 (pow.f64 l 4) (pow.f64 x 6))) (*.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (-.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))))))) (*.f64 x (+.f64 (pow.f64 (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))) 3) (pow.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) 3))))))) (sqrt.f64 (*.f64 x (*.f64 x (+.f64 (*.f64 4 (/.f64 (pow.f64 l 4) (pow.f64 x 6))) (*.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (-.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))))))))))) | |
| ✓ | 32.4b | (/.f64 (*.f64 (sqrt.f64 2) t) (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))) (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x)))))))))) |
| 38.7b | (/.f64 (*.f64 (sqrt.f64 2) t) (+.f64 (*.f64 t (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 t (*.f64 (sqrt.f64 2) x))) (/.f64 (*.f64 l l) (*.f64 t (*.f64 (sqrt.f64 2) x)))))) | |
| ✓ | 32.5b | (/.f64 (*.f64 (sqrt.f64 2) t) (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 l l) (pow.f64 x 3)) (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x))))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))))))) (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 l l) (pow.f64 x 3)) (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x))))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))))))))) |
| 43.3b | (cbrt.f64 (pow.f64 (/.f64 (*.f64 t (sqrt.f64 2)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l)))) 3)) | |
| ▶ | 37.4b | (/.f64 (*.f64 (sqrt.f64 2) t) (neg.f64 (*.f64 t (sqrt.f64 (+.f64 (/.f64 4 (*.f64 x x)) (+.f64 (/.f64 4 x) (+.f64 2 (/.f64 4 (pow.f64 x 3))))))))) |
| 52.7b | (/.f64 (*.f64 (sqrt.f64 2) t) (*.f64 l (sqrt.f64 (+.f64 (/.f64 2 (*.f64 x x)) (+.f64 (/.f64 2 x) (/.f64 2 (pow.f64 x 3))))))) | |
| 39.8b | (/.f64 (*.f64 (sqrt.f64 2) t) (*.f64 t (sqrt.f64 (+.f64 (/.f64 4 (*.f64 x x)) (+.f64 (/.f64 4 x) (+.f64 2 (/.f64 4 (pow.f64 x 3)))))))) | |
| 37.5b | (neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 (+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 x (-.f64 x 1))))))) | |
| 55.8b | (/.f64 (*.f64 (sqrt.f64 2) t) (neg.f64 (*.f64 l (sqrt.f64 (+.f64 (/.f64 2 (*.f64 x x)) (+.f64 (/.f64 2 x) (/.f64 2 (pow.f64 x 3)))))))) |
Compiled 22586 to 10347 computations (54.2% saved)
Found 4 expressions with local error:
| 0.4b | (/.f64 4 (*.f64 x x)) |
| 0.4b | (*.f64 t (sqrt.f64 (+.f64 (/.f64 4 (*.f64 x x)) (+.f64 (/.f64 4 x) (+.f64 2 (/.f64 4 (pow.f64 x 3))))))) |
| 0.5b | (*.f64 (sqrt.f64 2) t) |
| 0.5b | (/.f64 4 (pow.f64 x 3)) |
| 1× | rewrite-expression-head |
| 46× | *-un-lft-identity_binary64 |
| 45× | add-sqr-sqrt_binary64 |
| 39× | times-frac_binary64 |
| 37× | add-cube-cbrt_binary64 |
| 18× | add-exp-log_binary64 |
4 calls:
| 30.0ms | (*.f64 t (sqrt.f64 (+.f64 (/.f64 4 (*.f64 x x)) (+.f64 (/.f64 4 x) (+.f64 2 (/.f64 4 (pow.f64 x 3))))))) |
| 5.0ms | (/.f64 4 (pow.f64 x 3)) |
| 5.0ms | (*.f64 (sqrt.f64 2) t) |
| 4.0ms | (/.f64 4 (*.f64 x x)) |
Compiled 4197 to 3128 computations (25.5% saved)
4 calls:
| 70.0ms | (*.f64 t (sqrt.f64 (+.f64 (/.f64 4 (*.f64 x x)) (+.f64 (/.f64 4 x) (+.f64 2 (/.f64 4 (pow.f64 x 3))))))) |
| 11.0ms | (*.f64 (sqrt.f64 2) t) |
| 10.0ms | (/.f64 4 (pow.f64 x 3)) |
| 9.0ms | (/.f64 4 (*.f64 x x)) |
Compiled 1397 to 1142 computations (18.3% saved)
| 1× | egg-herbie |
| 476× | unswap-sqr_binary64 |
| 323× | associate-*l*_binary64 |
| 287× | associate-*r*_binary64 |
| 262× | cancel-sign-sub-inv_binary64 |
| 193× | associate-/r*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 289 | 2927 |
| 1 | 672 | 2810 |
| 2 | 3049 | 2773 |
| 3 | 4812 | 2773 |
| 4 | 4992 | 2773 |
| 5 | 4916 | 2773 |
10 alts after pruning (7 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 115 | 0 | 115 |
| Fresh | 0 | 7 | 7 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 115 | 10 | 125 |
| Status | Error | Program |
| 59.1b | (/.f64 (*.f64 (sqrt.f64 2) t) (/.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 2 (*.f64 l l)) (*.f64 x (+.f64 (*.f64 4 (/.f64 (pow.f64 l 4) (pow.f64 x 6))) (*.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (-.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3)))))))) (*.f64 x (+.f64 (*.f64 (*.f64 4 (*.f64 t t)) (+.f64 (*.f64 4 (/.f64 (pow.f64 l 4) (pow.f64 x 6))) (*.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (-.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))))))) (*.f64 x (+.f64 (pow.f64 (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))) 3) (pow.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) 3))))))) (sqrt.f64 (*.f64 x (*.f64 x (+.f64 (*.f64 4 (/.f64 (pow.f64 l 4) (pow.f64 x 6))) (*.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (-.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))) (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))))))))))) | |
| 32.4b | (/.f64 (*.f64 (sqrt.f64 2) t) (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (/.f64 (*.f64 l l) (pow.f64 x 3))) (+.f64 (*.f64 2 (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x)))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x)))))))))) | |
| 38.7b | (/.f64 (*.f64 (sqrt.f64 2) t) (+.f64 (*.f64 t (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 t (*.f64 (sqrt.f64 2) x))) (/.f64 (*.f64 l l) (*.f64 t (*.f64 (sqrt.f64 2) x)))))) | |
| 32.5b | (/.f64 (*.f64 (sqrt.f64 2) t) (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 l l) (pow.f64 x 3)) (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x))))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))))))) (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 l l) x)) (+.f64 (*.f64 4 (/.f64 (*.f64 t t) x)) (+.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 l l) (pow.f64 x 3)) (+.f64 (*.f64 t t) (/.f64 (*.f64 l l) (*.f64 x x))))) (*.f64 4 (+.f64 (/.f64 (*.f64 t t) (pow.f64 x 3)) (/.f64 (*.f64 t t) (*.f64 x x))))))))))) | |
| 43.3b | (cbrt.f64 (pow.f64 (/.f64 (*.f64 t (sqrt.f64 2)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l)))) 3)) | |
| 37.4b | (/.f64 (*.f64 (sqrt.f64 2) t) (neg.f64 (*.f64 t (sqrt.f64 (+.f64 (/.f64 4 (*.f64 x x)) (+.f64 (/.f64 4 x) (+.f64 2 (/.f64 4 (pow.f64 x 3))))))))) | |
| 52.7b | (/.f64 (*.f64 (sqrt.f64 2) t) (*.f64 l (sqrt.f64 (+.f64 (/.f64 2 (*.f64 x x)) (+.f64 (/.f64 2 x) (/.f64 2 (pow.f64 x 3))))))) | |
| 39.8b | (/.f64 (*.f64 (sqrt.f64 2) t) (*.f64 t (sqrt.f64 (+.f64 (/.f64 4 (*.f64 x x)) (+.f64 (/.f64 4 x) (+.f64 2 (/.f64 4 (pow.f64 x 3)))))))) | |
| 37.5b | (neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 (+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 x (-.f64 x 1))))))) | |
| 55.8b | (/.f64 (*.f64 (sqrt.f64 2) t) (neg.f64 (*.f64 l (sqrt.f64 (+.f64 (/.f64 2 (*.f64 x x)) (+.f64 (/.f64 2 x) (/.f64 2 (pow.f64 x 3)))))))) |
Compiled 3172 to 2222 computations (29.9% saved)
Total 12.1b remaining (96.1%)
Threshold costs 0b (0%)
Compiled 62482 to 37111 computations (40.6% saved)
| Iters | Range | Point | |
|---|---|---|---|
| 8 | 1.6202676681609123e+70 | 1.3020071034597176e+74 | 2.1538944959529218e+71 |
| 7 | -3.590688325586197e-258 | -2.132885538060615e-259 | -3.5574732430533503e-258 |
Compiled 4 to 3 computations (25% saved)
| 1× | egg-herbie |
| 10× | *-commutative_binary64 +-commutative_binary64 |
| 4× | sub-neg_binary64 |
| 3× | neg-mul-1_binary64 neg-sub0_binary64 |
| 2× | distribute-rgt-neg-in_binary64 distribute-lft-neg-in_binary64 |
| 1× | 1-exp_binary64 cancel-sign-sub-inv_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 48 | 125 |
| 1 | 72 | 125 |
| 2 | 81 | 125 |
| 3 | 86 | 125 |
| 4 | 88 | 125 |
| 5 | 86 | 125 |
Compiled 85 to 62 computations (27.1% saved)
| 1× | intervals |
| 363.0ms | 5335× | body | 128 | valid |
| 293.0ms | 1119× | body | 1024 | valid |
| 202.0ms | 790× | body | 1024 | nan |
| 185.0ms | 933× | body | 512 | valid |
| 104.0ms | 1614× | body | 128 | nan |
| 103.0ms | 526× | body | 512 | nan |
| 73.0ms | 545× | body | 256 | valid |
| 31.0ms | 253× | body | 256 | nan |
| 25.0ms | 68× | body | 2048 | valid |
Compiled 833 to 479 computations (42.5% saved)
Loading profile data...