Time bar (total: 3.8s)
| 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 |
| 14% | 85.8% | 0.1% | 7 |
| 22.6% | 77.2% | 0.1% | 8 |
| 23.8% | 74.5% | 1.7% | 9 |
| 40% | 56.4% | 3.7% | 10 |
| 46.9% | 48.7% | 4.4% | 11 |
| 48% | 45.8% | 6.2% | 12 |
| 58.1% | 32.2% | 9.7% | 13 |
| 62.1% | 27.2% | 10.6% | 14 |
Compiled 13 to 9 computations (30.8% saved)
(sort x y z)
| 861.0ms | 8256× | body | 128 | valid |
| 119.0ms | 1132× | body | 128 | invalid |
Compiled 38 to 26 computations (31.6% saved)
| 1× | egg-herbie |
| 438× | fma-neg_binary64 |
| 221× | fma-def_binary64 |
| 190× | rules-40_binary64 |
| 190× | rules-41_binary64 |
| 190× | rules-42_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 13 |
| 1 | 55 | 11 |
| 2 | 175 | 11 |
| 3 | 702 | 11 |
| 4 | 18 | 11 |
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 |
| ▶ | 54.5b | (/.f64 (*.f64 x (+.f64 (-.f64 y z) 1)) z) |
Compiled 44 to 26 computations (40.9% saved)
Found 2 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (*.f64 x (+.f64 (-.f64 y z) 1)) |
| ✓ | 11.0b | (/.f64 (*.f64 x (+.f64 (-.f64 y z) 1)) z) |
2 calls:
| 15.0ms | (/.f64 (*.f64 x (+.f64 (-.f64 y z) 1)) z) |
| 7.0ms | (*.f64 x (+.f64 (-.f64 y z) 1)) |
| 2× | batch-egg-rewrite |
| 884× | fma-neg_binary64 |
| 612× | prod-diff_binary64 |
| 192× | egg-rr |
| 168× | expm1-udef_binary64 |
| 168× | log1p-udef_binary64 |
2 calls:
| 73.0ms | (*.f64 x (+.f64 (-.f64 y z) 1)) |
| 73.0ms | (/.f64 (*.f64 x (+.f64 (-.f64 y z) 1)) z) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 23 |
| 1 | 215 | 19 |
| 2 | 2812 | 19 |
| 3 | 5204 | 19 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 1154× | rules-40_binary64 |
| 1154× | rules-42_binary64 |
| 782× | rules-41_binary64 |
| 782× | rules-43_binary64 |
| 394× | rules-20_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 27 | 936 |
| 1 | 155 | 936 |
| 2 | 567 | 792 |
| 3 | 2100 | 792 |
| 4 | 4046 | 792 |
| 5 | 16 | 792 |
22 alts after pruning (22 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 183 | 22 | 205 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 184 | 22 | 206 |
| Status | Error | Program |
| 59.1b | (/.f64 (exp.f64 (log.f64 (fma.f64 x (-.f64 y z) x))) z) | |
| 53.2b | (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z)) | |
| 58.8b | (exp.f64 (log.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z))) | |
| 59.4b | (/.f64 (*.f64 (+.f64 1 y) x) z) | |
| 55.7b | (/.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (-.f64 0 (*.f64 x (-.f64 y z))))) z) | |
| 58.8b | (/.f64 (*.f64 y x) z) | |
| 62.9b | (/.f64 (log.f64 (exp.f64 (fma.f64 x (-.f64 y z) x))) z) | |
| 60.1b | (cbrt.f64 (pow.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z) 3)) | |
| 54.4b | (/.f64 (*.f64 (-.f64 1 z) x) z) | |
| 54.7b | (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) x)) 3) z) | |
| 57.7b | (fabs.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z)) | |
| 60.1b | (/.f64 (/.f64 (*.f64 x (+.f64 1 (pow.f64 (-.f64 y z) 3))) (+.f64 (pow.f64 (-.f64 y z) 2) (-.f64 1 (-.f64 y z)))) z) | |
| 54.7b | (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z)) 3) | |
| 54.5b | (/.f64 (/.f64 x (/.f64 1 (+.f64 (-.f64 y z) 1))) z) | |
| 61.2b | (pow.f64 (pow.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z) 3) 1/3) | |
| 54.7b | (*.f64 (cbrt.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z)) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z)) 2)) | |
| 54.7b | (/.f64 (fma.f64 (pow.f64 (cbrt.f64 (+.f64 (-.f64 y z) 1)) 2) (*.f64 (cbrt.f64 (+.f64 (-.f64 y z) 1)) x) 0) z) | |
| 60.1b | (-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z))) 1) | |
| 55.3b | (/.f64 (*.f64 -1 (*.f64 z x)) z) | |
| ▶ | 52.0b | (*.f64 -1 x) |
| 62.2b | (/.f64 (pow.f64 (pow.f64 (fma.f64 x (-.f64 y z) x) 3) 1/3) z) | |
| 59.3b | (/.f64 (-.f64 (exp.f64 (log1p.f64 (fma.f64 x (-.f64 y z) x))) 1) z) |
Compiled 4414 to 1986 computations (55% saved)
22 alts after pruning (21 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 21 | 21 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 0 | 22 | 22 |
| Status | Error | Program |
| 59.1b | (/.f64 (exp.f64 (log.f64 (fma.f64 x (-.f64 y z) x))) z) | |
| ▶ | 53.2b | (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z)) |
| 58.8b | (exp.f64 (log.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z))) | |
| 59.4b | (/.f64 (*.f64 (+.f64 1 y) x) z) | |
| 55.7b | (/.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (-.f64 0 (*.f64 x (-.f64 y z))))) z) | |
| 58.8b | (/.f64 (*.f64 y x) z) | |
| 62.9b | (/.f64 (log.f64 (exp.f64 (fma.f64 x (-.f64 y z) x))) z) | |
| 60.1b | (cbrt.f64 (pow.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z) 3)) | |
| 54.4b | (/.f64 (*.f64 (-.f64 1 z) x) z) | |
| 54.7b | (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) x)) 3) z) | |
| 57.7b | (fabs.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z)) | |
| 60.1b | (/.f64 (/.f64 (*.f64 x (+.f64 1 (pow.f64 (-.f64 y z) 3))) (+.f64 (pow.f64 (-.f64 y z) 2) (-.f64 1 (-.f64 y z)))) z) | |
| 54.7b | (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z)) 3) | |
| 54.5b | (/.f64 (/.f64 x (/.f64 1 (+.f64 (-.f64 y z) 1))) z) | |
| 61.2b | (pow.f64 (pow.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z) 3) 1/3) | |
| 54.7b | (*.f64 (cbrt.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z)) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z)) 2)) | |
| 54.7b | (/.f64 (fma.f64 (pow.f64 (cbrt.f64 (+.f64 (-.f64 y z) 1)) 2) (*.f64 (cbrt.f64 (+.f64 (-.f64 y z) 1)) x) 0) z) | |
| 60.1b | (-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z))) 1) | |
| 55.3b | (/.f64 (*.f64 -1 (*.f64 z x)) z) | |
| ✓ | 52.0b | (*.f64 -1 x) |
| 62.2b | (/.f64 (pow.f64 (pow.f64 (fma.f64 x (-.f64 y z) x) 3) 1/3) z) | |
| 59.3b | (/.f64 (-.f64 (exp.f64 (log1p.f64 (fma.f64 x (-.f64 y z) x))) 1) z) |
Compiled 626 to 399 computations (36.3% saved)
Found 1 expressions with local error:
| New | Error | Program |
| ✓ | 7.0b | (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z)) |
1 calls:
| 13.0ms | (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z)) |
| 2× | batch-egg-rewrite |
| 853× | fma-neg_binary64 |
| 592× | prod-diff_binary64 |
| 168× | expm1-udef_binary64 |
| 168× | log1p-udef_binary64 |
| 131× | egg-rr |
1 calls:
| 71.0ms | (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z)) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 13 |
| 1 | 215 | 13 |
| 2 | 2802 | 13 |
| 3 | 5129 | 13 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 1275× | rules-42_binary64 |
| 1005× | rules-41_binary64 |
| 1005× | rules-43_binary64 |
| 581× | rules-40_binary64 |
| 377× | rules-14-rev_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 21 | 360 |
| 1 | 125 | 360 |
| 2 | 432 | 252 |
| 3 | 2019 | 252 |
| 4 | 3556 | 252 |
| 5 | 16 | 252 |
27 alts after pruning (26 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 126 | 12 | 138 |
| Fresh | 6 | 14 | 20 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 1 | 1 |
| Total | 133 | 27 | 160 |
| Status | Error | Program |
| 54.7b | (/.f64 (fma.f64 (pow.f64 (cbrt.f64 (+.f64 (-.f64 y z) 1)) 2) (*.f64 (cbrt.f64 (+.f64 (-.f64 y z) 1)) x) 0) z) | |
| 53.4b | (fma.f64 (pow.f64 (cbrt.f64 (/.f64 x z)) 2) (*.f64 (cbrt.f64 (/.f64 x z)) (+.f64 (-.f64 y z) 1)) 0) | |
| ▶ | 51.0b | (-.f64 (/.f64 x z) x) |
| 53.4b | (fma.f64 (cbrt.f64 (+.f64 (-.f64 y z) 1)) (*.f64 (/.f64 x z) (pow.f64 (cbrt.f64 (+.f64 (-.f64 y z) 1)) 2)) 0) | |
| 55.3b | (/.f64 (*.f64 -1 (*.f64 z x)) z) | |
| 60.1b | (cbrt.f64 (pow.f64 (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z)) 3)) | |
| ✓ | 52.0b | (*.f64 -1 x) |
| 55.9b | (fabs.f64 (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z))) | |
| 59.4b | (/.f64 (*.f64 (+.f64 1 y) x) z) | |
| 58.8b | (exp.f64 (log.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z))) | |
| 55.7b | (/.f64 (fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (-.f64 0 (*.f64 x (-.f64 y z))))) z) | |
| 58.8b | (/.f64 (*.f64 y x) z) | |
| 62.9b | (/.f64 (log.f64 (exp.f64 (fma.f64 x (-.f64 y z) x))) z) | |
| 61.2b | (pow.f64 (pow.f64 (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z)) 3) 1/3) | |
| 54.7b | (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) x)) 3) z) | |
| 57.7b | (fabs.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z)) | |
| 62.2b | (/.f64 (pow.f64 (pow.f64 (fma.f64 x (-.f64 y z) x) 3) 1/3) z) | |
| 58.7b | (/.f64 (/.f64 (*.f64 (+.f64 (-.f64 y z) 1) x) (cbrt.f64 (*.f64 z z))) (cbrt.f64 z)) | |
| 56.0b | (expm1.f64 (log1p.f64 (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z)))) | |
| 61.2b | (pow.f64 (pow.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z) 3) 1/3) | |
| 53.2b | (/.f64 (+.f64 (-.f64 y z) 1) (/.f64 1 (/.f64 x z))) | |
| 59.3b | (/.f64 (-.f64 (exp.f64 (log1p.f64 (fma.f64 x (-.f64 y z) x))) 1) z) | |
| 62.3b | (fma.f64 (sqrt.f64 x) (/.f64 (sqrt.f64 x) (/.f64 z (+.f64 (-.f64 y z) 1))) 0) | |
| 57.5b | (-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z)))) 1) | |
| 53.4b | (fma.f64 (cbrt.f64 (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z))) 2) 0) | |
| 59.1b | (/.f64 (exp.f64 (log.f64 (fma.f64 x (-.f64 y z) x))) z) | |
| 54.7b | (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x (-.f64 y z) x) z)) 3) |
Compiled 3842 to 1992 computations (48.2% saved)
Found 1 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (-.f64 (/.f64 x z) x) |
1 calls:
| 6.0ms | (-.f64 (/.f64 x z) x) |
| 2× | batch-egg-rewrite |
| 599× | log1p-expm1-u_binary64 |
| 599× | expm1-log1p-u_binary64 |
| 447× | prod-diff_binary64 |
| 105× | expm1-udef_binary64 |
| 105× | log1p-udef_binary64 |
1 calls:
| 53.0ms | (-.f64 (/.f64 x z) x) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 5 | 7 |
| 1 | 123 | 7 |
| 2 | 1696 | 7 |
| 3 | 4990 | 7 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 485× | fma-neg_binary64 |
| 271× | rules-40_binary64 |
| 271× | rules-41_binary64 |
| 271× | rules-42_binary64 |
| 271× | rules-43_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 132 |
| 1 | 83 | 96 |
| 2 | 229 | 96 |
| 3 | 926 | 96 |
| 4 | 958 | 96 |
25 alts after pruning (24 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 64 | 9 | 73 |
| Fresh | 10 | 15 | 25 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 1 | 1 |
| Total | 75 | 25 | 100 |
| Status | Error | Program |
| 60.8b | (pow.f64 (pow.f64 (-.f64 (/.f64 x z) x) 3) 1/3) | |
| 53.4b | (fma.f64 (cbrt.f64 (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z))) 2) 0) | |
| 59.9b | (/.f64 x z) | |
| 53.4b | (fma.f64 (cbrt.f64 (+.f64 (-.f64 y z) 1)) (*.f64 (/.f64 x z) (pow.f64 (cbrt.f64 (+.f64 (-.f64 y z) 1)) 2)) 0) | |
| 55.3b | (/.f64 (*.f64 -1 (*.f64 z x)) z) | |
| 54.2b | (fabs.f64 (-.f64 (/.f64 x z) x)) | |
| ✓ | 52.0b | (*.f64 -1 x) |
| 58.6b | (/.f64 (/.f64 (-.f64 x (*.f64 x z)) (cbrt.f64 (*.f64 z z))) (cbrt.f64 z)) | |
| 55.9b | (fabs.f64 (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z))) | |
| 59.4b | (/.f64 (*.f64 (+.f64 1 y) x) z) | |
| 62.9b | (/.f64 (log.f64 (exp.f64 (fma.f64 x (-.f64 y z) x))) z) | |
| 54.8b | (+.f64 (fma.f64 (cbrt.f64 (*.f64 x x)) (/.f64 (cbrt.f64 x) z) (neg.f64 x)) (fma.f64 -1 x x)) | |
| 55.5b | (exp.f64 (log.f64 (-.f64 (/.f64 x z) x))) | |
| 53.2b | (/.f64 (+.f64 (-.f64 y z) 1) (/.f64 1 (/.f64 x z))) | |
| 51.2b | (pow.f64 (cbrt.f64 (-.f64 (/.f64 x z) x)) 3) | |
| 62.3b | (fma.f64 (sqrt.f64 x) (/.f64 (sqrt.f64 x) (/.f64 z (+.f64 (-.f64 y z) 1))) 0) | |
| 59.3b | (/.f64 (-.f64 (exp.f64 (log1p.f64 (fma.f64 x (-.f64 y z) x))) 1) z) | |
| 57.5b | (-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 (-.f64 y z) 1) (/.f64 x z)))) 1) | |
| 56.3b | (+.f64 (fma.f64 x (/.f64 1 z) (neg.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x)) | |
| 54.7b | (/.f64 (fma.f64 (pow.f64 (cbrt.f64 (+.f64 (-.f64 y z) 1)) 2) (*.f64 (cbrt.f64 (+.f64 (-.f64 y z) 1)) x) 0) z) | |
| 59.1b | (/.f64 (exp.f64 (log.f64 (fma.f64 x (-.f64 y z) x))) z) | |
| 59.6b | (cbrt.f64 (pow.f64 (-.f64 (/.f64 x z) x) 3)) | |
| 58.8b | (/.f64 (*.f64 y x) z) | |
| 54.7b | (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 y z) x)) 3) z) | |
| 62.2b | (/.f64 (pow.f64 (pow.f64 (fma.f64 x (-.f64 y z) x) 3) 1/3) z) |
Compiled 1314 to 501 computations (61.9% saved)
Total 9.3b remaining (99.6%)
Threshold costs 0b (0%)
Compiled 8500 to 5354 computations (37% saved)
| Iters | Range | Point | |
|---|---|---|---|
| 8 | -2.0563373464143146 | -0.0015979814906276466 | -2.01574423849711 |
| 6 | -4.166338600322385e+154 | -8.231825795729234e+153 | -4.11761413583795e+154 |
| 7 | -5.753744155196295e+209 | -2.570467836780386e+208 | -2.606579495399084e+208 |
Compiled 4 to 3 computations (25% saved)
| 1× | egg-herbie |
| 1× | 1-exp_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 23 | 46 |
| 1 | 25 | 46 |
| 2 | 24 | 46 |
(sort x y z)
Compiled 491 to 329 computations (33% saved)
Loading profile data...