Time bar (total: 4.9s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 50% | 50% | 0 |
| 0% | 50% | 50% | 1 |
| 25% | 25% | 50% | 2 |
| 25% | 25% | 50% | 3 |
| 31.2% | 18.7% | 50% | 4 |
| 31.2% | 18.7% | 50% | 5 |
| 34.3% | 15.6% | 50% | 6 |
| 34.3% | 15.6% | 50% | 7 |
| 35.9% | 14% | 50% | 8 |
| 35.9% | 14% | 50% | 9 |
| 36.7% | 13.3% | 50% | 10 |
| 36.7% | 13.3% | 50% | 11 |
| 37.1% | 12.9% | 50% | 12 |
| 37.1% | 12.9% | 50% | 13 |
| 37.3% | 12.7% | 50% | 14 |
Compiled 20 to 14 computations (30% saved)
| 1× | intervals |
| 13.0ms | 194× | body | 128 | valid |
| 6.0ms | 22× | body | 2048 | valid |
| 6.0ms | 17× | body | 4096 | valid |
| 4.0ms | 256× | pre | 128 | true |
| 3.0ms | 12× | body | 1024 | valid |
| 1.0ms | 8× | body | 512 | valid |
| 0.0ms | 3× | body | 256 | valid |
Compiled 39 to 28 computations (28.2% saved)
| 1× | egg-herbie |
| 203× | fma-def_binary64 |
| 142× | fma-neg_binary64 |
| 51× | distribute-rgt-in_binary64 |
| 42× | cancel-sign-sub-inv_binary64 |
| 28× | sub-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 15 |
| 1 | 20 | 15 |
| 2 | 33 | 15 |
| 3 | 50 | 15 |
| 4 | 69 | 15 |
| 5 | 98 | 15 |
| 6 | 151 | 15 |
| 7 | 211 | 15 |
| 8 | 263 | 15 |
| 9 | 305 | 15 |
| 10 | 343 | 15 |
| 11 | 379 | 15 |
| 12 | 396 | 15 |
| 13 | 415 | 15 |
| 14 | 428 | 15 |
| 15 | 465 | 15 |
| 16 | 477 | 15 |
| 17 | 486 | 15 |
| 18 | 449 | 15 |
1 alts after pruning (1 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1 | 1 | 2 |
| Fresh | 1 | 0 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 2 | 1 | 3 |
| Status | Error | Program |
| ▶ | 13.8b | (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) |
Compiled 51 to 37 computations (27.5% saved)
Found 2 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) |
| ✓ | 1.1b | (-.f64 (hypot.f64 re im) re) |
2 calls:
| 45.0ms | (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) |
| 13.0ms | (-.f64 (hypot.f64 re im) re) |
| 1× | rewrite-expression-head |
| 12× | *-un-lft-identity_binary64 |
| 12× | add-sqr-sqrt_binary64 |
| 10× | add-cube-cbrt_binary64 |
| 9× | prod-diff_binary64 |
| 5× | pow1_binary64 |
2 calls:
| 7.0ms | (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) |
| 3.0ms | (-.f64 (hypot.f64 re im) re) |
| 1× | egg-herbie |
| 849× | fma-def_binary64 |
| 693× | times-frac_binary64 |
| 644× | fma-neg_binary64 |
| 347× | cancel-sign-sub-inv_binary64 |
| 198× | neg-mul-1_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 215 | 1773 |
| 1 | 537 | 1528 |
| 2 | 1853 | 1480 |
| 3 | 4361 | 1478 |
| 4 | 4966 | 1478 |
| 5 | 4901 | 1478 |
7 alts after pruning (6 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 91 | 6 | 97 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 91 | 7 | 98 |
| Status | Error | Program |
| 14.1b | (*.f64 1/2 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) | |
| 56.0b | (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))) | |
| 54.0b | (*.f64 1/2 (-.f64 (fma.f64 (sqrt.f64 1/2) (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))) (fma.f64 1/32 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 9)))) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 13))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 7)) (sqrt.f64 1/2))) 1/256))) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 13))) (fma.f64 1/8192 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 7)) (pow.f64 (sqrt.f64 1/2) 5)) (*.f64 5/256 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 7)) (sqrt.f64 1/2)))) (fma.f64 1/16 (*.f64 (/.f64 (*.f64 (pow.f64 im 3) (sqrt.f64 2)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 9)))) 1/256))))) | |
| 46.8b | (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) im)) (sqrt.f64 (/.f64 1 re)))) | |
| ▶ | 14.1b | (*.f64 1/2 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))) |
| ✓ | 13.8b | (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) |
| 17.3b | (*.f64 1/2 (exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))) |
Compiled 2761 to 1843 computations (33.2% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 0.0b | (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) | |
| ✓ | 0.1b | (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) |
| ✓ | 0.3b | (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) |
| 1.1b | (-.f64 (hypot.f64 re im) re) |
2 calls:
| 52.0ms | (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) |
| 49.0ms | (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) |
| 1× | rewrite-expression-head |
| 80× | sqrt-pow1_binary64 |
| 63× | pow1_binary64 |
| 31× | sqrt-prod_binary64 |
| 28× | sqrt-div_binary64 |
| 28× | add-sqr-sqrt_binary64 |
2 calls:
| 15.0ms | (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) |
| 4.0ms | (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) |
| 1× | egg-herbie |
| 787× | times-frac_binary64 |
| 385× | cancel-sign-sub-inv_binary64 |
| 284× | fma-neg_binary64 |
| 236× | associate-*r*_binary64 |
| 232× | associate-*l*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 315 | 4120 |
| 1 | 819 | 3789 |
| 2 | 2559 | 3619 |
| 3 | 4975 | 3619 |
| 4 | 4964 | 3619 |
7 alts after pruning (6 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 409 | 3 | 412 |
| Fresh | 2 | 3 | 5 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 1 | 1 |
| Total | 412 | 7 | 419 |
| Status | Error | Program |
| ▶ | 14.1b | (*.f64 1/2 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) |
| 56.0b | (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))) | |
| 15.5b | (*.f64 1/2 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (fma.f64 1 (hypot.f64 re im) (neg.f64 (*.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 re) (cbrt.f64 re))))) (fma.f64 (neg.f64 (cbrt.f64 re)) (*.f64 (cbrt.f64 re) (cbrt.f64 re)) (*.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 re) (cbrt.f64 re)))))))))) | |
| 15.2b | (*.f64 1/2 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))))) | |
| ✓ | 13.8b | (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) |
| 52.5b | (*.f64 1/2 (fma.f64 (sqrt.f64 1/2) (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))) (*.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) -1/16))) | |
| 46.8b | (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) im)) (sqrt.f64 (/.f64 1 re)))) |
Compiled 15581 to 9927 computations (36.3% saved)
Found 3 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (sqrt.f64 (-.f64 (hypot.f64 re im) re)) |
| ✓ | 0.4b | (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) |
| 1.1b | (-.f64 (hypot.f64 re im) re) |
2 calls:
| 45.0ms | (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) |
| 29.0ms | (sqrt.f64 (-.f64 (hypot.f64 re im) re)) |
| 1× | rewrite-expression-head |
| 22× | add-sqr-sqrt_binary64 |
| 17× | sqrt-prod_binary64 |
| 11× | *-un-lft-identity_binary64 |
| 8× | associate-*r*_binary64 |
| 7× | add-cube-cbrt_binary64 |
2 calls:
| 8.0ms | (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) |
| 3.0ms | (sqrt.f64 (-.f64 (hypot.f64 re im) re)) |
| 1× | egg-herbie |
| 778× | fma-def_binary64 |
| 344× | associate-/l*_binary64 |
| 291× | times-frac_binary64 |
| 285× | fma-neg_binary64 |
| 275× | associate-*l/_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 202 | 1877 |
| 1 | 534 | 1832 |
| 2 | 1757 | 1756 |
| 3 | 4935 | 1754 |
| 4 | 5005 | 1754 |
9 alts after pruning (7 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 147 | 3 | 150 |
| Fresh | 1 | 4 | 5 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 148 | 9 | 157 |
| Status | Error | Program |
| 46.8b | (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) im)) (sqrt.f64 (/.f64 1 re)))) | |
| 46.8b | (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))) | |
| ✓ | 14.1b | (*.f64 1/2 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) |
| 56.0b | (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))) | |
| 15.5b | (*.f64 1/2 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (fma.f64 1 (hypot.f64 re im) (neg.f64 (*.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 re) (cbrt.f64 re))))) (fma.f64 (neg.f64 (cbrt.f64 re)) (*.f64 (cbrt.f64 re) (cbrt.f64 re)) (*.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 re) (cbrt.f64 re)))))))))) | |
| ▶ | 15.2b | (*.f64 1/2 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))))) |
| ✓ | 13.8b | (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) |
| 54.0b | (*.f64 1/2 (*.f64 (sqrt.f64 2) (-.f64 (fma.f64 1/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 9))) (/.f64 (pow.f64 im 5) (sqrt.f64 1/2))) (fma.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 13))) (/.f64 (pow.f64 im 7) (sqrt.f64 1/2))) 1/256))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (sqrt.f64 1/2))) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 9))) (*.f64 1/256 (/.f64 (pow.f64 im 5) (sqrt.f64 1/2))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 13))) (+.f64 (*.f64 1/8192 (/.f64 (pow.f64 im 7) (pow.f64 (sqrt.f64 1/2) 5))) (*.f64 5/256 (/.f64 (pow.f64 im 7) (sqrt.f64 1/2)))))))))) | |
| 56.0b | (*.f64 1/2 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))) |
Compiled 4224 to 2738 computations (35.2% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.1b | (sqrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))) |
| ✓ | 0.3b | (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))))) |
| 1.1b | (-.f64 (hypot.f64 re im) re) | |
| ✓ | 15.8b | (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)) |
3 calls:
| 355.0ms | (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))))) |
| 132.0ms | (sqrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))) |
| 39.0ms | (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)) |
| 1× | rewrite-expression-head |
| 26× | sqrt-pow1_binary64 |
| 23× | pow1_binary64 |
| 19× | sqrt-prod_binary64 |
| 19× | add-sqr-sqrt_binary64 |
| 13× | pow-prod-down_binary64 |
3 calls:
| 11.0ms | (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))))) |
| 2.0ms | (sqrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))) |
| 0.0ms | (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)) |
| 1× | egg-herbie |
| 521× | fma-def_binary64 |
| 506× | associate-/l*_binary64 |
| 446× | associate-/r*_binary64 |
| 282× | cancel-sign-sub-inv_binary64 |
| 163× | associate-*r*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 269 | 2686 |
| 1 | 632 | 2483 |
| 2 | 1921 | 2255 |
| 3 | 5132 | 2255 |
10 alts after pruning (8 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 221 | 3 | 224 |
| Fresh | 1 | 5 | 6 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 2 | 2 |
| Total | 223 | 10 | 233 |
| Status | Error | Program |
| 46.8b | (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) im)) (sqrt.f64 (/.f64 1 re)))) | |
| 46.8b | (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))) | |
| ✓ | 14.1b | (*.f64 1/2 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) |
| 56.0b | (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))) | |
| 15.9b | (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (*.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))))))) | |
| 14.9b | (*.f64 1/2 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))))) | |
| 54.0b | (*.f64 1/2 (*.f64 (sqrt.f64 2) (-.f64 (fma.f64 1/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 9))) (/.f64 (pow.f64 im 5) (sqrt.f64 1/2))) (fma.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 13))) (/.f64 (pow.f64 im 7) (sqrt.f64 1/2))) 1/256))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (sqrt.f64 1/2))) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 9))) (*.f64 1/256 (/.f64 (pow.f64 im 5) (sqrt.f64 1/2))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 13))) (+.f64 (*.f64 1/8192 (/.f64 (pow.f64 im 7) (pow.f64 (sqrt.f64 1/2) 5))) (*.f64 5/256 (/.f64 (pow.f64 im 7) (sqrt.f64 1/2)))))))))) | |
| 56.0b | (*.f64 1/2 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))) | |
| 53.6b | (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 im (pow.f64 (/.f64 1/4 (*.f64 re re)) 1/4)))) | |
| ✓ | 13.8b | (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) |
Compiled 8189 to 4379 computations (46.5% saved)
Total 6.3b remaining (97.7%)
Threshold costs 0b (0%)
Compiled 15888 to 11218 computations (29.4% saved)
Compiled 15 to 10 computations (33.3% saved)
| 1× | egg-herbie |
| 11× | *-commutative_binary64 |
| 4× | +-commutative_binary64 |
| 3× | sub-neg_binary64 |
| 1× | neg-sub0_binary64 |
| 1× | neg-mul-1_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 39 | 108 |
| 1 | 54 | 108 |
| 2 | 59 | 108 |
| 3 | 61 | 108 |
| 4 | 62 | 108 |
| 5 | 61 | 108 |
Compiled 72 to 48 computations (33.3% saved)
| 1× | intervals |
| 365.0ms | 6034× | body | 128 | valid |
| 201.0ms | 663× | body | 2048 | valid |
| 190.0ms | 525× | body | 4096 | valid |
| 129.0ms | 8000× | pre | 128 | true |
| 101.0ms | 444× | body | 1024 | valid |
| 38.0ms | 214× | body | 512 | valid |
| 14.0ms | 120× | body | 256 | valid |
Compiled 379 to 286 computations (24.5% saved)
Loading profile data...