Time bar (total: 2.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 |
| 0% | 99.9% | 0.1% | 3 |
| 0% | 99.9% | 0.1% | 4 |
| 0% | 99.9% | 0.1% | 5 |
| 0% | 99.9% | 0.1% | 6 |
| 12.5% | 87.4% | 0.1% | 7 |
| 18.7% | 81.1% | 0.1% | 8 |
| 31.2% | 68.6% | 0.1% | 9 |
| 35.9% | 55.4% | 8.7% | 10 |
| 42.9% | 47.6% | 9.5% | 11 |
| 51.5% | 38.4% | 10.1% | 12 |
| 55% | 30.3% | 14.7% | 13 |
| 59.5% | 25.4% | 15.1% | 14 |
Compiled 11 to 8 computations (27.3% saved)
(sort x y)
| 1.4s | 8255× | body | 128 | valid |
| 52.0ms | 582× | body | 128 | invalid |
| 0.0ms | 1× | body | 1024 | valid |
Compiled 32 to 23 computations (28.1% saved)
| 1× | egg-herbie |
| 673× | fma-neg_binary64 |
| 461× | fma-def_binary64 |
| 143× | distribute-rgt-in_binary64 |
| 135× | cancel-sign-sub-inv_binary64 |
| 117× | sub-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 10 |
| 1 | 14 | 10 |
| 2 | 32 | 10 |
| 3 | 73 | 10 |
| 4 | 190 | 10 |
| 5 | 423 | 10 |
| 6 | 676 | 10 |
| 7 | 1136 | 10 |
| 8 | 1124 | 10 |
| 9 | 1359 | 10 |
| 10 | 1394 | 10 |
| 11 | 1394 | 10 |
| 12 | 1351 | 10 |
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 |
| ▶ | 0.0b | (*.f64 (+.f64 x y) (-.f64 1 z)) |
Compiled 30 to 21 computations (30% saved)
Found 1 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (*.f64 (+.f64 x y) (-.f64 1 z)) |
1 calls:
| 7.0ms | (*.f64 (+.f64 x y) (-.f64 1 z)) |
| 1× | rewrite-expression-head |
| 22× | *-un-lft-identity_binary64 |
| 22× | add-sqr-sqrt_binary64 |
| 18× | prod-diff_binary64 |
| 17× | add-cube-cbrt_binary64 |
| 13× | distribute-lft-in_binary64 |
1 calls:
| 7.0ms | (*.f64 (+.f64 x y) (-.f64 1 z)) |
| 1× | egg-herbie |
| 725× | distribute-rgt-in_binary64 |
| 670× | distribute-lft-in_binary64 |
| 623× | fma-def_binary64 |
| 470× | fma-neg_binary64 |
| 304× | *-commutative_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 128 | 1510 |
| 1 | 295 | 1288 |
| 2 | 1142 | 1234 |
| 3 | 3920 | 1126 |
| 4 | 4552 | 1126 |
| 5 | 4752 | 1126 |
3 alts after pruning (2 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 88 | 2 | 90 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 88 | 3 | 91 |
| Status | Error | Program |
| ▶ | 0.0b | (+.f64 (+.f64 y x) (neg.f64 (*.f64 z (+.f64 y x)))) |
| ✓ | 0.0b | (*.f64 (+.f64 x y) (-.f64 1 z)) |
| 33.8b | (*.f64 (*.f64 (+.f64 x y) (+.f64 1 (sqrt.f64 z))) (-.f64 1 (sqrt.f64 z))) |
Compiled 1722 to 752 computations (56.3% saved)
Found 2 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (*.f64 z (+.f64 y x)) |
| ✓ | 0.0b | (+.f64 (+.f64 y x) (neg.f64 (*.f64 z (+.f64 y x)))) |
2 calls:
| 8.0ms | (+.f64 (+.f64 y x) (neg.f64 (*.f64 z (+.f64 y x)))) |
| 6.0ms | (*.f64 z (+.f64 y x)) |
| 1× | rewrite-expression-head |
| 17× | *-un-lft-identity_binary64 |
| 12× | add-log-exp_binary64 |
| 7× | add-sqr-sqrt_binary64 |
| 6× | flip-+_binary64 |
| 6× | associate-*r/_binary64 |
2 calls:
| 6.0ms | (+.f64 (+.f64 y x) (neg.f64 (*.f64 z (+.f64 y x)))) |
| 4.0ms | (*.f64 z (+.f64 y x)) |
| 1× | egg-herbie |
| 560× | unsub-neg_binary64 |
| 416× | times-frac_binary64 |
| 382× | associate-+l+_binary64 |
| 349× | *-commutative_binary64 |
| 320× | associate-+r+_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 124 | 1487 |
| 1 | 373 | 1274 |
| 2 | 1548 | 1229 |
| 3 | 3917 | 1229 |
| 4 | 4812 | 1229 |
| 5 | 5204 | 1229 |
3 alts after pruning (1 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 107 | 1 | 108 |
| Fresh | 1 | 0 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 108 | 3 | 111 |
| Status | Error | Program |
| ✓ | 0.0b | (+.f64 (+.f64 y x) (neg.f64 (*.f64 z (+.f64 y x)))) |
| ✓ | 0.0b | (*.f64 (+.f64 x y) (-.f64 1 z)) |
| ▶ | 21.2b | (+.f64 (+.f64 y x) (neg.f64 (expm1.f64 (log1p.f64 (*.f64 z (+.f64 y x)))))) |
Compiled 1754 to 501 computations (71.4% saved)
Found 3 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (+.f64 (+.f64 y x) (neg.f64 (expm1.f64 (log1p.f64 (*.f64 z (+.f64 y x)))))) |
| 0.0b | (*.f64 z (+.f64 y x)) | |
| ✓ | 1.5b | (expm1.f64 (log1p.f64 (*.f64 z (+.f64 y x)))) |
2 calls:
| 10.0ms | (+.f64 (+.f64 y x) (neg.f64 (expm1.f64 (log1p.f64 (*.f64 z (+.f64 y x)))))) |
| 7.0ms | (expm1.f64 (log1p.f64 (*.f64 z (+.f64 y x)))) |
| 1× | rewrite-expression-head |
| 15× | *-un-lft-identity_binary64 |
| 12× | add-log-exp_binary64 |
| 7× | distribute-lft-out_binary64 |
| 6× | sum-log_binary64 |
| 4× | fma-def_binary64 |
2 calls:
| 6.0ms | (+.f64 (+.f64 y x) (neg.f64 (expm1.f64 (log1p.f64 (*.f64 z (+.f64 y x)))))) |
| 0.0ms | (expm1.f64 (log1p.f64 (*.f64 z (+.f64 y x)))) |
| 1× | egg-herbie |
| 680× | distribute-rgt-in_binary64 |
| 609× | distribute-lft-in_binary64 |
| 406× | fma-def_binary64 |
| 401× | associate-*l*_binary64 |
| 334× | unsub-neg_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 70 | 1174 |
| 1 | 181 | 990 |
| 2 | 696 | 976 |
| 3 | 4191 | 976 |
| 4 | 4837 | 976 |
| 5 | 4985 | 976 |
| 6 | 4972 | 976 |
| 7 | 4936 | 976 |
3 alts after pruning (0 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 111 | 0 | 111 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 111 | 3 | 114 |
| Status | Error | Program |
| ✓ | 0.0b | (+.f64 (+.f64 y x) (neg.f64 (*.f64 z (+.f64 y x)))) |
| ✓ | 0.0b | (*.f64 (+.f64 x y) (-.f64 1 z)) |
| ✓ | 21.2b | (+.f64 (+.f64 y x) (neg.f64 (expm1.f64 (log1p.f64 (*.f64 z (+.f64 y x)))))) |
Compiled 1787 to 534 computations (70.1% saved)
Total 0.0b remaining (58.3%)
Threshold costs 0.0b (58.3%)
Compiled 2024 to 1310 computations (35.3% saved)
| 1× | egg-herbie |
| 3× | +-commutative_binary64 |
| 2× | *-commutative_binary64 |
| 2× | sub-neg_binary64 |
| 1× | neg-sub0_binary64 |
| 1× | neg-mul-1_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 10 |
| 1 | 14 | 10 |
| 2 | 18 | 10 |
| 3 | 20 | 10 |
| 4 | 21 | 10 |
| 5 | 20 | 10 |
(sort x y)
Compiled 78 to 51 computations (34.6% saved)
Loading profile data...