Time bar (total: 3.9s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.9% | 0.1% | 0 |
| 0% | 99.9% | 0.1% | 1 |
| 0% | 99.9% | 0.1% | 2 |
| 74.9% | 25% | 0.1% | 3 |
| 87.4% | 12.5% | 0.1% | 4 |
| 93.7% | 6.2% | 0.1% | 5 |
| 96.8% | 3.1% | 0.1% | 6 |
| 98.3% | 1.6% | 0.1% | 7 |
| 99.1% | 0.8% | 0.1% | 8 |
| 99.5% | 0.4% | 0.1% | 9 |
| 99.7% | 0.2% | 0.1% | 10 |
| 99.8% | 0.1% | 0.1% | 11 |
| 99.9% | 0% | 0.1% | 12 |
| 99.9% | 0% | 0.1% | 13 |
| 99.9% | 0% | 0.1% | 14 |
Compiled 22 to 13 computations (40.9% saved)
| 681.0ms | 8256× | body | 128 | valid |
Compiled 65 to 38 computations (41.5% saved)
| 1× | egg-herbie |
| 620× | fma-def_binary64 |
| 549× | sub-neg_binary64 |
| 460× | distribute-neg-frac_binary64 |
| 455× | cancel-sign-sub-inv_binary64 |
| 430× | times-frac_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 26 |
| 1 | 23 | 24 |
| 2 | 52 | 24 |
| 3 | 105 | 24 |
| 4 | 199 | 24 |
| 5 | 330 | 24 |
| 6 | 442 | 24 |
| 7 | 603 | 24 |
| 8 | 901 | 24 |
| 9 | 2304 | 24 |
| 10 | 3386 | 24 |
| 11 | 3956 | 24 |
| 12 | 4454 | 24 |
| 13 | 4735 | 24 |
| 14 | 5238 | 24 |
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1 | 1 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 1 | 2 | 3 |
| Status | Error | Program |
| ▶ | 30.5b | (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) |
Compiled 80 to 44 computations (45% saved)
Found 3 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) |
| ✓ | 4.1b | (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) |
| ✓ | 29.9b | (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) |
3 calls:
| 40.0ms | (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) |
| 8.0ms | (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) |
| 8.0ms | (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) |
| 1× | rewrite-expression-head |
| 11× | *-un-lft-identity_binary64 |
| 11× | add-sqr-sqrt_binary64 |
| 11× | add-cube-cbrt_binary64 |
| 9× | times-frac_binary64 |
| 7× | add-log-exp_binary64 |
3 calls:
| 6.0ms | (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) |
| 5.0ms | (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) |
| 3.0ms | (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) |
| 1× | egg-herbie |
| 485× | fma-def_binary64 |
| 328× | times-frac_binary64 |
| 299× | associate-/l*_binary64 |
| 294× | fma-neg_binary64 |
| 248× | associate-/r*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 136 | 2837 |
| 1 | 356 | 2636 |
| 2 | 1254 | 2600 |
| 3 | 4560 | 2600 |
| 4 | 5037 | 2600 |
4 alts after pruning (4 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 132 | 4 | 136 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 133 | 4 | 137 |
| Status | Error | Program |
| 30.5b | (cbrt.f64 (*.f64 (*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))) (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))))) | |
| 33.0b | -1 | |
| 31.2b | 1 | |
| ▶ | 30.5b | (-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))) |
Compiled 4083 to 2133 computations (47.8% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 0.0b | (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) | |
| ✓ | 0.0b | (-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))) |
| ✓ | 20.9b | (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) |
| ✓ | 23.3b | (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) |
3 calls:
| 65.0ms | (-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))) |
| 58.0ms | (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) |
| 24.0ms | (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) |
| 1× | rewrite-expression-head |
| 81× | prod-diff_binary64 |
| 67× | times-frac_binary64 |
| 51× | add-sqr-sqrt_binary64 |
| 49× | *-un-lft-identity_binary64 |
| 48× | associate-/r/_binary64 |
3 calls:
| 16.0ms | (-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))) |
| 10.0ms | (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) |
| 5.0ms | (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) |
| 1× | egg-herbie |
| 499× | fma-neg_binary64 |
| 337× | distribute-rgt-neg-in_binary64 |
| 284× | distribute-neg-frac_binary64 |
| 195× | sub-neg_binary64 |
| 182× | associate-/l*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 345 | 15319 |
| 1 | 887 | 11002 |
| 2 | 3252 | 8719 |
| 3 | 4878 | 8719 |
| 4 | 4894 | 8719 |
4 alts after pruning (3 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 360 | 1 | 361 |
| Fresh | 1 | 2 | 3 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 361 | 4 | 365 |
| Status | Error | Program |
| ✓ | 30.5b | (-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))) |
| ▶ | 30.5b | (-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4))))))) |
| 31.2b | 1 | |
| 33.0b | -1 |
Compiled 21466 to 11704 computations (45.5% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4))))))) |
| ✓ | 0.0b | (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4)))))) |
| ✓ | 20.9b | (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4)))) |
| 23.3b | (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) |
3 calls:
| 31.0ms | (-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4))))))) |
| 24.0ms | (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4)))) |
| 24.0ms | (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4)))))) |
| 1× | rewrite-expression-head |
| 27× | prod-diff_binary64 |
| 27× | add-sqr-sqrt_binary64 |
| 25× | *-un-lft-identity_binary64 |
| 23× | add-cube-cbrt_binary64 |
| 16× | times-frac_binary64 |
3 calls:
| 10.0ms | (-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4))))))) |
| 5.0ms | (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4)))) |
| 0.0ms | (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4)))))) |
| 1× | egg-herbie |
| 613× | fma-def_binary64 |
| 410× | fma-neg_binary64 |
| 392× | associate-/r/_binary64 |
| 320× | associate-/l/_binary64 |
| 306× | cancel-sign-sub-inv_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 235 | 7349 |
| 1 | 555 | 5759 |
| 2 | 2037 | 5095 |
| 3 | 4841 | 5095 |
| 4 | 4979 | 5095 |
4 alts after pruning (2 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 224 | 0 | 224 |
| Fresh | 0 | 2 | 2 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 224 | 4 | 228 |
| Status | Error | Program |
| ✓ | 30.5b | (-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))) |
| ✓ | 30.5b | (-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4))))))) |
| ▶ | 31.2b | 1 |
| 33.0b | -1 |
Compiled 11706 to 6732 computations (42.5% saved)
4 alts after pruning (1 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 0 | 4 | 4 |
| Status | Error | Program |
| ✓ | 30.5b | (-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))) |
| ✓ | 30.5b | (-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4))))))) |
| ✓ | 31.2b | 1 |
| 33.0b | -1 |
Compiled 69 to 42 computations (39.1% saved)
Total 11.8b remaining (97.2%)
Threshold costs 0b (0%)
Compiled 14316 to 8672 computations (39.4% saved)
| Iters | Range | Point | |
|---|---|---|---|
| 9 | 1.0139683234247327e+138 | 1.5631059904905651e+147 | 1.53922962851806e+147 |
| 5 | 1.411795836989264e-153 | 3.649414678791937e-153 | 1.9388453121044746e-153 |
| 8 | -4.132173779288115e-121 | -1.2422370898486311e-123 | -2.5067818285457853e-122 |
| 10 | -1.0938974287607881e+169 | -1.4976561051222266e+159 | -1.511705281598505e+159 |
Compiled 3 to 2 computations (33.3% saved)
| 1× | egg-herbie |
| 7× | *-commutative_binary64 |
| 5× | +-commutative_binary64 |
| 4× | sub-neg_binary64 |
| 3× | neg-sub0_binary64 |
| 3× | neg-mul-1_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 39 | 109 |
| 1 | 47 | 109 |
| 2 | 52 | 109 |
| 3 | 62 | 109 |
| 4 | 67 | 109 |
| 5 | 70 | 109 |
| 6 | 71 | 109 |
| 7 | 69 | 109 |
Compiled 223 to 132 computations (40.8% saved)
Loading profile data...