Time bar (total: 8.4s)
| 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 |
| 12.5% | 68.6% | 18.9% | 6 |
| 18.7% | 62.4% | 18.9% | 7 |
| 18.7% | 59.3% | 22% | 8 |
| 28.1% | 39% | 32.9% | 9 |
| 32.8% | 34.3% | 32.9% | 10 |
| 32.8% | 32% | 35.3% | 11 |
| 38.2% | 20.7% | 41.1% | 12 |
| 41% | 17.9% | 41.1% | 13 |
| 41% | 16.6% | 42.5% | 14 |
Compiled 41 to 24 computations (41.5% saved)
| 1× | intervals |
| 97.0ms | 248× | body | 256 | valid |
| 4.0ms | 42× | body | 128 | nan |
| 1.0ms | 8× | body | 128 | valid |
Compiled 84 to 50 computations (40.5% saved)
| 1× | egg-herbie |
| 729× | fma-neg_binary64 |
| 636× | times-frac_binary64 |
| 620× | div-sub_binary64 |
| 565× | unsub-neg_binary64 |
| 481× | sub-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 20 | 52 |
| 1 | 54 | 50 |
| 2 | 144 | 50 |
| 3 | 406 | 48 |
| 4 | 826 | 48 |
| 5 | 1523 | 48 |
| 6 | 1911 | 48 |
| 7 | 2632 | 48 |
| 8 | 2589 | 48 |
| 9 | 2971 | 48 |
| 10 | 3625 | 48 |
| 11 | 4193 | 48 |
| 12 | 4375 | 48 |
| 13 | 4485 | 48 |
| 14 | 4533 | 48 |
| 15 | 4557 | 48 |
| 16 | 4607 | 48 |
| 17 | 4882 | 48 |
| 18 | 4848 | 48 |
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 1 | 1 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 2 | 2 |
| Status | Error | Program |
| ▶ | 35.2b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) |
| 35.2b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) |
Compiled 182 to 100 computations (45.1% saved)
Found 4 expressions with local error:
| 7.4b | (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) |
| 8.8b | (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)) |
| 28.5b | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 28.5b | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 1× | rewrite-expression-head |
| 14× | add-sqr-sqrt_binary64 |
| 11× | cbrt-prod_binary64 |
| 10× | *-un-lft-identity_binary64 |
| 9× | sqrt-prod_binary64 |
| 8× | add-cube-cbrt_binary64 |
4 calls:
| 8.0ms | (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)) |
| 6.0ms | (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) |
| 4.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 3.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
Compiled 2612 to 784 computations (70% saved)
4 calls:
| 85.0ms | (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)) |
| 65.0ms | (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) |
| 16.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 15.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
Compiled 3709 to 2574 computations (30.6% saved)
| 1× | egg-herbie |
| 832× | fma-def_binary64 |
| 306× | fma-neg_binary64 |
| 248× | exp-sum_binary64 |
| 206× | associate-*r*_binary64 |
| 194× | sub-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 225 | 2253 |
| 1 | 466 | 2195 |
| 2 | 1042 | 2157 |
| 3 | 3240 | 2069 |
| 4 | 4904 | 2069 |
| 5 | 4996 | 2069 |
| 6 | 4973 | 2069 |
11 alts after pruning (11 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 46 | 11 | 57 |
| Fresh | 1 | 0 | 1 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 48 | 11 | 59 |
| Status | Error | Program |
| 47.0b | (+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (/.f64 2 a) (/.f64 -1 g)))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 48.8b | (+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (*.f64 (*.f64 h h) (/.f64 -1/2 (*.f64 g a))))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 33.7b | (+.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| ▶ | 32.1b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a))) |
| 49.2b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h)))) a) -1/2))) | |
| 35.2b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)))) | |
| 52.9b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 49.5b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (fma.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 -1 g) (*.f64 -1/2 (/.f64 (*.f64 h h) a)))) (*.f64 1/12 (*.f64 (*.f64 (*.f64 h h) (cbrt.f64 (*.f64 (/.f64 -1 g) (*.f64 -1/2 (/.f64 (*.f64 h h) a))))) (/.f64 (cbrt.f64 -1/2) (*.f64 g g)))))) | |
| 40.3b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (fabs.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 45.5b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 35.2b | (+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) |
Compiled 2526 to 1139 computations (54.9% saved)
Found 4 expressions with local error:
| 3.4b | (-.f64 (*.f64 g g) (*.f64 h h)) |
| 7.4b | (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) |
| 28.5b | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 28.5b | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 1× | rewrite-expression-head |
| 14× | add-sqr-sqrt_binary64 |
| 10× | cbrt-prod_binary64 |
| 10× | *-un-lft-identity_binary64 |
| 9× | sqrt-prod_binary64 |
| 8× | add-cube-cbrt_binary64 |
4 calls:
| 7.0ms | (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) |
| 4.0ms | (-.f64 (*.f64 g g) (*.f64 h h)) |
| 4.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 4.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
Compiled 2851 to 905 computations (68.3% saved)
4 calls:
| 62.0ms | (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) |
| 22.0ms | (-.f64 (*.f64 g g) (*.f64 h h)) |
| 17.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 15.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
Compiled 3225 to 2207 computations (31.6% saved)
| 1× | egg-herbie |
| 404× | fma-neg_binary64 |
| 248× | unswap-sqr_binary64 |
| 219× | exp-sum_binary64 |
| 206× | exp-prod_binary64 |
| 204× | associate-*l*_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 188 | 1992 |
| 1 | 385 | 1902 |
| 2 | 884 | 1876 |
| 3 | 2863 | 1840 |
| 4 | 4584 | 1839 |
| 5 | 4978 | 1839 |
| 6 | 4921 | 1839 |
12 alts after pruning (12 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 54 | 4 | 58 |
| Fresh | 2 | 8 | 10 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 57 | 12 | 69 |
| Status | Error | Program |
| 45.7b | (+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (/.f64 2 a) (/.f64 -1 g)))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a))) | |
| 49.5b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (fma.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 -1 g) (*.f64 -1/2 (/.f64 (*.f64 h h) a)))) (*.f64 1/12 (*.f64 (*.f64 (*.f64 h h) (cbrt.f64 (*.f64 (/.f64 -1 g) (*.f64 -1/2 (/.f64 (*.f64 h h) a))))) (/.f64 (cbrt.f64 -1/2) (*.f64 g g)))))) | |
| 50.9b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a))) | |
| 45.5b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 45.7b | (+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (*.f64 (*.f64 h h) (/.f64 -1/2 (*.f64 g a))))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a))) | |
| 35.2b | (+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| ▶ | 33.7b | (+.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) |
| 49.2b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h)))) a) -1/2))) | |
| 35.2b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)))) | |
| 52.9b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 40.3b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (fabs.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 45.4b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h)))))) (cbrt.f64 a))) |
Compiled 2350 to 1133 computations (51.8% saved)
Found 4 expressions with local error:
| 3.4b | (-.f64 (*.f64 g g) (*.f64 h h)) |
| 8.8b | (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)) |
| 28.5b | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 28.5b | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 1× | rewrite-expression-head |
| 8× | sqrt-prod_binary64 |
| 8× | add-sqr-sqrt_binary64 |
| 6× | *-un-lft-identity_binary64 |
| 6× | add-cube-cbrt_binary64 |
| 6× | add-log-exp_binary64 |
4 calls:
| 7.0ms | (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)) |
| 3.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 3.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 3.0ms | (-.f64 (*.f64 g g) (*.f64 h h)) |
Compiled 2511 to 790 computations (68.5% saved)
4 calls:
| 84.0ms | (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)) |
| 27.0ms | (-.f64 (*.f64 g g) (*.f64 h h)) |
| 17.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 15.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
Compiled 3360 to 2311 computations (31.2% saved)
| 1× | egg-herbie |
| 326× | fma-neg_binary64 |
| 286× | unswap-sqr_binary64 |
| 238× | associate-*r*_binary64 |
| 235× | associate-*l*_binary64 |
| 184× | exp-sum_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 166 | 1663 |
| 1 | 348 | 1573 |
| 2 | 865 | 1549 |
| 3 | 3058 | 1497 |
| 4 | 4692 | 1496 |
| 5 | 4881 | 1496 |
13 alts after pruning (13 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 60 | 2 | 62 |
| Fresh | 0 | 11 | 11 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 61 | 13 | 74 |
| Status | Error | Program |
| 45.7b | (+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (/.f64 2 a) (/.f64 -1 g)))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a))) | |
| 49.5b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (fma.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 -1 g) (*.f64 -1/2 (/.f64 (*.f64 h h) a)))) (*.f64 1/12 (*.f64 (*.f64 (*.f64 h h) (cbrt.f64 (*.f64 (/.f64 -1 g) (*.f64 -1/2 (/.f64 (*.f64 h h) a))))) (/.f64 (cbrt.f64 -1/2) (*.f64 g g)))))) | |
| 50.9b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a))) | |
| 45.5b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 45.7b | (+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (*.f64 (*.f64 h h) (/.f64 -1/2 (*.f64 g a))))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a))) | |
| 35.2b | (+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 47.8b | (+.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (neg.f64 g)) a) -1/2))) | |
| 43.2b | (+.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) g)) (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 49.2b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h)))) a) -1/2))) | |
| ▶ | 35.2b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)))) |
| 52.9b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 40.3b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (fabs.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 45.4b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h)))))) (cbrt.f64 a))) |
Compiled 2704 to 1271 computations (53% saved)
Found 4 expressions with local error:
| 7.4b | (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) |
| 8.8b | (cbrt.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)) |
| 28.5b | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 28.5b | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 1× | rewrite-expression-head |
| 26× | cbrt-prod_binary64 |
| 24× | *-un-lft-identity_binary64 |
| 22× | add-sqr-sqrt_binary64 |
| 18× | times-frac_binary64 |
| 16× | add-cube-cbrt_binary64 |
4 calls:
| 7.0ms | (cbrt.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)) |
| 6.0ms | (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) |
| 4.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 3.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
Compiled 3270 to 943 computations (71.2% saved)
4 calls:
| 61.0ms | (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) |
| 57.0ms | (cbrt.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)) |
| 17.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
| 16.0ms | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
Compiled 3758 to 2609 computations (30.6% saved)
| 1× | egg-herbie |
| 818× | fma-def_binary64 |
| 353× | fma-neg_binary64 |
| 250× | exp-sum_binary64 |
| 191× | sub-neg_binary64 |
| 168× | associate-*r*_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 253 | 2829 |
| 1 | 494 | 2771 |
| 2 | 1062 | 2730 |
| 3 | 3107 | 2622 |
| 4 | 4732 | 2615 |
| 5 | 4999 | 2615 |
| 6 | 4987 | 2615 |
15 alts after pruning (15 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 54 | 5 | 59 |
| Fresh | 2 | 10 | 12 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 57 | 15 | 72 |
| Status | Error | Program |
| 50.9b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a))) | |
| 45.5b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 39.9b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (+.f64 g (*.f64 (fabs.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) a)))) | |
| 45.7b | (+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (*.f64 (*.f64 h h) (/.f64 -1/2 (*.f64 g a))))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a))) | |
| 35.2b | (+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 47.8b | (+.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (neg.f64 g)) a) -1/2))) | |
| 43.2b | (+.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) g)) (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 49.2b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h)))) a) -1/2))) | |
| 48.8b | (+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (*.f64 (*.f64 h h) (/.f64 -1/2 (*.f64 g a))))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)))) | |
| 49.2b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (fma.f64 1/12 (*.f64 (*.f64 (/.f64 h g) (/.f64 h g)) (cbrt.f64 (*.f64 (/.f64 -1 g) (*.f64 -1/2 (/.f64 (*.f64 h h) a))))) (cbrt.f64 (*.f64 (/.f64 -1 g) (*.f64 -1/2 (/.f64 (*.f64 h h) a))))))) | |
| 45.7b | (+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (/.f64 2 a) (/.f64 -1 g)))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a))) | |
| 40.3b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (fabs.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))) | |
| 45.4b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h)))))) (cbrt.f64 a))) | |
| 33.8b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 (sqrt.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (/.f64 (sqrt.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) a))))) | |
| 32.9b | (+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (cbrt.f64 (/.f64 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) a))))) |
Compiled 2259 to 984 computations (56.4% saved)
Total 1.0b remaining (3.3%)
Threshold costs 0b (0%)
Compiled 58916 to 33430 computations (43.3% saved)
| Iters | Range | Point | |
|---|---|---|---|
| 10 | 1.5687274649957e-170 | 6.61978416896773e-159 | 6.295780248826609e-161 |
Compiled 4 to 3 computations (25% saved)
| 1× | egg-herbie |
| 9× | +-commutative_binary64 |
| 8× | *-commutative_binary64 |
| 7× | sub-neg_binary64 |
| 4× | neg-sub0_binary64 |
| 4× | neg-mul-1_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 35 | 86 |
| 1 | 53 | 86 |
| 2 | 63 | 86 |
| 3 | 70 | 86 |
| 4 | 74 | 86 |
| 5 | 75 | 86 |
| 6 | 75 | 86 |
Compiled 58 to 34 computations (41.4% saved)
| 1× | intervals |
| 1.6s | 7586× | body | 256 | valid |
| 129.0ms | 1250× | body | 128 | nan |
| 43.0ms | 414× | body | 128 | valid |
Compiled 693 to 403 computations (41.8% saved)
Loading profile data...