Time bar (total: 12.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% | 87.4% | 12.6% | 5 |
| 0% | 74.9% | 25.1% | 6 |
| 6.2% | 68.6% | 25.1% | 7 |
| 12.5% | 56.2% | 31.4% | 8 |
| 14% | 48.4% | 37.6% | 9 |
| 21.1% | 41.3% | 37.6% | 10 |
| 26.9% | 32.4% | 40.7% | 11 |
| 28.7% | 27.5% | 43.8% | 12 |
| 33.4% | 22.7% | 43.8% | 13 |
| 37.2% | 17.4% | 45.4% | 14 |
Compiled 12 to 8 computations (33.3% saved)
| 1.2s | 8256× | body | 128 | valid |
| 87.0ms | 772× | body | 128 | invalid |
Compiled 35 to 23 computations (34.3% saved)
| 1× | egg-herbie |
| 2528× | fma-neg_binary64 |
| 1701× | fma-def_binary64 |
| 364× | distribute-rgt-in_binary64 |
| 336× | unsub-neg_binary64 |
| 328× | associate--r-_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 12 |
| 1 | 15 | 12 |
| 2 | 23 | 12 |
| 3 | 39 | 12 |
| 4 | 85 | 12 |
| 5 | 184 | 12 |
| 6 | 322 | 12 |
| 7 | 518 | 12 |
| 8 | 681 | 12 |
| 9 | 1097 | 12 |
| 10 | 1783 | 12 |
| 11 | 1812 | 12 |
| 12 | 1882 | 12 |
| 13 | 1916 | 12 |
| 14 | 1930 | 12 |
| 15 | 3312 | 12 |
| 16 | 4220 | 12 |
| 17 | 3919 | 12 |
| 18 | 4053 | 12 |
| 19 | 4118 | 12 |
| 20 | 4154 | 12 |
| 21 | 4164 | 12 |
| 22 | 4224 | 12 |
| 23 | 4182 | 12 |
| 24 | 4182 | 12 |
| 25 | 5994 | 12 |
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 |
| ▶ | 17.7b | (-.f64 (*.f64 x (log.f64 (/.f64 x y))) z) |
Compiled 33 to 21 computations (36.4% saved)
Found 3 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (-.f64 (*.f64 x (log.f64 (/.f64 x y))) z) |
| ✓ | 0.3b | (*.f64 x (log.f64 (/.f64 x y))) |
| ✓ | 17.2b | (log.f64 (/.f64 x y)) |
3 calls:
| 414.0ms | (*.f64 x (log.f64 (/.f64 x y))) |
| 395.0ms | (log.f64 (/.f64 x y)) |
| 286.0ms | (-.f64 (*.f64 x (log.f64 (/.f64 x y))) z) |
| 1× | rewrite-expression-head |
| 65× | log-prod_binary64 |
| 45× | times-frac_binary64 |
| 44× | add-sqr-sqrt_binary64 |
| 42× | *-un-lft-identity_binary64 |
| 42× | add-cube-cbrt_binary64 |
3 calls:
| 6.0ms | (-.f64 (*.f64 x (log.f64 (/.f64 x y))) z) |
| 4.0ms | (*.f64 x (log.f64 (/.f64 x y))) |
| 2.0ms | (log.f64 (/.f64 x y)) |
| 1× | egg-herbie |
| 736× | fma-def_binary64 |
| 603× | fma-neg_binary64 |
| 459× | distribute-rgt-in_binary64 |
| 432× | distribute-lft-in_binary64 |
| 129× | associate-*l*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 235 | 2794 |
| 1 | 420 | 2726 |
| 2 | 1328 | 2685 |
| 3 | 4402 | 2685 |
| 4 | 4978 | 2685 |
| 5 | 4998 | 2685 |
| 6 | 4957 | 2685 |
9 alts after pruning (9 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 169 | 9 | 178 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 170 | 9 | 179 |
| Status | Error | Program |
| ▶ | 0.2b | (-.f64 (+.f64 (*.f64 x (*.f64 2 (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y))))) (*.f64 x (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y))))) z) |
| 17.8b | (-.f64 (*.f64 x (cbrt.f64 (pow.f64 (log.f64 (/.f64 x y)) 3))) z) | |
| 31.4b | (-.f64 (*.f64 x (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 (log.f64 (/.f64 1 x)) x))) | |
| 42.1b | (-.f64 (*.f64 (sqrt.f64 (*.f64 x (log.f64 (/.f64 x y)))) (sqrt.f64 (*.f64 x (log.f64 (/.f64 x y))))) z) | |
| 6.3b | (-.f64 (+.f64 (*.f64 (log.f64 (/.f64 1 (*.f64 (cbrt.f64 y) (cbrt.f64 y)))) x) (*.f64 (log.f64 (/.f64 x (cbrt.f64 y))) x)) z) | |
| 32.9b | (-.f64 (*.f64 x (+.f64 (log.f64 (/.f64 -1 y)) (log.f64 (neg.f64 x)))) z) | |
| 4.5b | (-.f64 (*.f64 x (+.f64 (log.f64 (/.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) 1)) (log.f64 (/.f64 (cbrt.f64 x) y)))) z) | |
| 4.6b | (-.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) 1)) x) (*.f64 (log.f64 (/.f64 (cbrt.f64 x) y)) x)) z) | |
| 32.3b | (-.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (sqrt.f64 y))) x) (*.f64 (log.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 y))) x)) z) |
Compiled 3188 to 1029 computations (67.7% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.3b | (+.f64 (*.f64 x (*.f64 2 (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y))))) (*.f64 x (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y))))) |
| ✓ | 0.4b | (/.f64 (cbrt.f64 x) (cbrt.f64 y)) |
| ✓ | 0.6b | (cbrt.f64 y) |
| ✓ | 0.6b | (cbrt.f64 x) |
4 calls:
| 1.8s | (+.f64 (*.f64 x (*.f64 2 (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y))))) (*.f64 x (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y))))) |
| 399.0ms | (/.f64 (cbrt.f64 x) (cbrt.f64 y)) |
| 30.0ms | (cbrt.f64 x) |
| 29.0ms | (cbrt.f64 y) |
| 1× | rewrite-expression-head |
| 264× | cbrt-prod_binary64 |
| 252× | times-frac_binary64 |
| 240× | log-prod_binary64 |
| 200× | distribute-lft-in_binary64 |
| 200× | distribute-rgt-in_binary64 |
4 calls:
| 28.0ms | (+.f64 (*.f64 x (*.f64 2 (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y))))) (*.f64 x (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y))))) |
| 3.0ms | (/.f64 (cbrt.f64 x) (cbrt.f64 y)) |
| 1.0ms | (cbrt.f64 x) |
| 1.0ms | (cbrt.f64 y) |
| 1× | egg-herbie |
| 573× | fma-def_binary64 |
| 374× | associate-*l*_binary64 |
| 277× | associate-*r*_binary64 |
| 272× | *-commutative_binary64 |
| 220× | fma-neg_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 505 | 9696 |
| 1 | 918 | 8956 |
| 2 | 3159 | 8662 |
| 3 | 4813 | 8662 |
| 4 | 5005 | 8662 |
6 alts after pruning (6 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 740 | 4 | 744 |
| Fresh | 6 | 2 | 8 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 747 | 6 | 753 |
| Status | Error | Program |
| 4.5b | (-.f64 (*.f64 x (+.f64 (log.f64 (/.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) 1)) (log.f64 (/.f64 (cbrt.f64 x) y)))) z) | |
| ▶ | 0.1b | (-.f64 (fma.f64 x (*.f64 2 (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y)))) (*.f64 x (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y))))) z) |
| 31.4b | (-.f64 (*.f64 x (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 (log.f64 (/.f64 1 x)) x))) | |
| 0.2b | (-.f64 (+.f64 (*.f64 x (fma.f64 (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y))) 2 (log.f64 (sqrt.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y)))))) (*.f64 (log.f64 (sqrt.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y)))) x)) z) | |
| 0.2b | (-.f64 (+.f64 (*.f64 x (*.f64 2 (log.f64 (/.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (cbrt.f64 x))) (cbrt.f64 (cbrt.f64 x))) (cbrt.f64 y))))) (*.f64 x (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y))))) z) | |
| 32.9b | (-.f64 (*.f64 3 (*.f64 x (log.f64 (/.f64 (*.f64 (cbrt.f64 x) (pow.f64 (/.f64 -1 y) 1/3)) (cbrt.f64 -1))))) z) |
Compiled 23744 to 7654 computations (67.8% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.3b | (*.f64 x (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y)))) |
| 0.4b | (/.f64 (cbrt.f64 x) (cbrt.f64 y)) | |
| 0.6b | (cbrt.f64 y) | |
| 0.6b | (cbrt.f64 x) |
1 calls:
| 1.8s | (*.f64 x (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y)))) |
| 1× | rewrite-expression-head |
| 80× | log-prod_binary64 |
| 72× | cbrt-prod_binary64 |
| 72× | times-frac_binary64 |
| 55× | add-sqr-sqrt_binary64 |
| 53× | *-un-lft-identity_binary64 |
1 calls:
| 10.0ms | (*.f64 x (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y)))) |
| 1× | egg-herbie |
| 636× | fma-neg_binary64 |
| 561× | fma-def_binary64 |
| 478× | distribute-rgt-in_binary64 |
| 371× | distribute-lft-in_binary64 |
| 232× | associate-*l*_binary64 |
Useful iterations: 6 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 252 | 3362 |
| 1 | 388 | 3270 |
| 2 | 1002 | 3176 |
| 3 | 1744 | 3152 |
| 4 | 4368 | 3040 |
| 5 | 4772 | 2996 |
| 6 | 4845 | 2987 |
| 7 | 4927 | 2987 |
5 alts after pruning (5 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 400 | 1 | 401 |
| Fresh | 1 | 4 | 5 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 402 | 5 | 407 |
| Status | Error | Program |
| 31.4b | (-.f64 (*.f64 x (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 (log.f64 (/.f64 1 x)) x))) | |
| 0.2b | (-.f64 (+.f64 (*.f64 x (fma.f64 (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y))) 2 (log.f64 (sqrt.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y)))))) (*.f64 (log.f64 (sqrt.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y)))) x)) z) | |
| 4.5b | (-.f64 (*.f64 x (+.f64 (log.f64 (/.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) 1)) (log.f64 (/.f64 (cbrt.f64 x) y)))) z) | |
| 32.9b | (-.f64 (*.f64 3 (*.f64 x (log.f64 (/.f64 (*.f64 (cbrt.f64 x) (pow.f64 (/.f64 -1 y) 1/3)) (cbrt.f64 -1))))) z) | |
| ▶ | 0.1b | (-.f64 (fma.f64 x (*.f64 2 (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y)))) (*.f64 x (log.f64 (/.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (cbrt.f64 x))) (cbrt.f64 (cbrt.f64 x))) (cbrt.f64 y))))) z) |
Compiled 11693 to 3663 computations (68.7% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.5b | (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (cbrt.f64 x))) |
| ✓ | 0.5b | (cbrt.f64 (cbrt.f64 x)) |
| 0.6b | (cbrt.f64 y) | |
| 0.6b | (cbrt.f64 x) |
2 calls:
| 324.0ms | (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (cbrt.f64 x))) |
| 283.0ms | (cbrt.f64 (cbrt.f64 x)) |
| 1× | rewrite-expression-head |
| 63× | cbrt-prod_binary64 |
| 34× | add-sqr-sqrt_binary64 |
| 16× | *-un-lft-identity_binary64 |
| 16× | add-cube-cbrt_binary64 |
| 9× | associate-*r*_binary64 |
2 calls:
| 6.0ms | (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (cbrt.f64 x))) |
| 1.0ms | (cbrt.f64 (cbrt.f64 x)) |
| 1× | egg-herbie |
| 510× | fma-def_binary64 |
| 458× | log-div_binary64 |
| 422× | sqr-pow_binary64 |
| 316× | *-commutative_binary64 |
| 241× | associate-/l*_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 76 | 1244 |
| 1 | 124 | 1244 |
| 2 | 283 | 1184 |
| 3 | 606 | 1157 |
| 4 | 1061 | 947 |
| 5 | 1467 | 947 |
| 6 | 2800 | 947 |
| 7 | 4630 | 947 |
| 8 | 5126 | 947 |
5 alts after pruning (4 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 244 | 0 | 244 |
| Fresh | 0 | 4 | 4 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 244 | 5 | 249 |
| Status | Error | Program |
| 31.4b | (-.f64 (*.f64 x (log.f64 (/.f64 1 y))) (+.f64 z (*.f64 (log.f64 (/.f64 1 x)) x))) | |
| 0.2b | (-.f64 (+.f64 (*.f64 x (fma.f64 (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y))) 2 (log.f64 (sqrt.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y)))))) (*.f64 (log.f64 (sqrt.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y)))) x)) z) | |
| 4.5b | (-.f64 (*.f64 x (+.f64 (log.f64 (/.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) 1)) (log.f64 (/.f64 (cbrt.f64 x) y)))) z) | |
| 32.9b | (-.f64 (*.f64 3 (*.f64 x (log.f64 (/.f64 (*.f64 (cbrt.f64 x) (pow.f64 (/.f64 -1 y) 1/3)) (cbrt.f64 -1))))) z) | |
| ✓ | 0.1b | (-.f64 (fma.f64 x (*.f64 2 (log.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 y)))) (*.f64 x (log.f64 (/.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (cbrt.f64 x))) (cbrt.f64 (cbrt.f64 x))) (cbrt.f64 y))))) z) |
Compiled 8323 to 2538 computations (69.5% saved)
Total 0.1b remaining (78.3%)
Threshold costs 0.1b (78.3%)
Compiled 42372 to 27062 computations (36.1% saved)
| 1× | egg-herbie |
| 4× | *-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 | 18 | 44 |
| 1 | 23 | 44 |
| 2 | 28 | 44 |
| 3 | 30 | 44 |
| 4 | 31 | 44 |
| 5 | 31 | 44 |
Compiled 184 to 111 computations (39.7% saved)
Loading profile data...