Time bar (total: 5.8s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.8% | 0.2% | 0 |
| 0% | 99.8% | 0.2% | 1 |
| 0% | 99.8% | 0.2% | 2 |
| 0% | 99.8% | 0.2% | 3 |
| 0% | 99.8% | 0.2% | 4 |
| 0% | 99.8% | 0.2% | 5 |
| 0% | 99.8% | 0.2% | 6 |
| 0% | 99.8% | 0.2% | 7 |
| 7.8% | 92% | 0.2% | 8 |
| 7.8% | 92% | 0.2% | 9 |
| 10.9% | 88.9% | 0.2% | 10 |
| 34.7% | 65.1% | 0.2% | 11 |
| 43.1% | 56.7% | 0.2% | 12 |
| 44.2% | 55.7% | 0.2% | 13 |
| 49.5% | 50.3% | 0.2% | 14 |
Compiled 20 to 13 computations (35% saved)
| 1× | intervals |
| 17.0ms | 250× | body | 128 | valid |
| 1.0ms | 16× | body | 128 | invalid |
| 1.0ms | 2× | body | 1024 | valid |
| 0.0ms | 2× | body | 512 | valid |
| 0.0ms | 2× | body | 256 | valid |
Compiled 43 to 29 computations (32.6% saved)
| 1× | egg-herbie |
| 441× | div-sub_binary64 |
| 396× | distribute-rgt-in_binary64 |
| 366× | distribute-lft-in_binary64 |
| 260× | associate-*l*_binary64 |
| 256× | associate-*r*_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 23 |
| 1 | 55 | 23 |
| 2 | 148 | 23 |
| 3 | 349 | 23 |
| 4 | 1247 | 23 |
| 5 | 4605 | 23 |
| 6 | 4879 | 23 |
| 7 | 5155 | 23 |
1 alts after pruning (1 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 1 | 1 |
| Status | Error | Program |
| ▶ | 4.9b | (+.f64 x (*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))) |
Compiled 38 to 24 computations (36.8% saved)
Found 4 expressions with local error:
| 0.0b | (tanh.f64 (/.f64 t y)) |
| 0.0b | (+.f64 x (*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))) |
| 0.2b | (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) |
| 4.8b | (*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))) |
| 1× | rewrite-expression-head |
| 18× | frac-sub_binary64 |
| 15× | cancel-sign-sub-inv_binary64 |
| 14× | *-un-lft-identity_binary64 |
| 14× | add-sqr-sqrt_binary64 |
| 13× | tanh-def-a_binary64 |
4 calls:
| 9.0ms | (*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))) |
| 6.0ms | (+.f64 x (*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))) |
| 5.0ms | (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) |
| 1.0ms | (tanh.f64 (/.f64 t y)) |
Compiled 3049 to 811 computations (73.4% saved)
4 calls:
| 248.0ms | (+.f64 x (*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))) |
| 208.0ms | (*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))) |
| 71.0ms | (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) |
| 31.0ms | (tanh.f64 (/.f64 t y)) |
Compiled 5735 to 3739 computations (34.8% saved)
| 1× | egg-herbie |
| 308× | times-frac_binary64 |
| 238× | associate-*l*_binary64 |
| 229× | distribute-rgt-in_binary64 |
| 223× | distribute-lft-in_binary64 |
| 211× | associate-*r*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 279 | 6113 |
| 1 | 887 | 5617 |
| 2 | 3171 | 5611 |
| 3 | 4814 | 5611 |
| 4 | 4981 | 5611 |
3 alts after pruning (2 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 97 | 2 | 99 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 97 | 3 | 100 |
| Status | Error | Program |
| 39.6b | (+.f64 x (/.f64 (*.f64 (*.f64 y z) (-.f64 (*.f64 (-.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 1 (exp.f64 (*.f64 (/.f64 x y) 2)))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 -1 (exp.f64 (*.f64 (/.f64 x y) 2)))))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 (exp.f64 (*.f64 2 (/.f64 x y))) 1)))) | |
| ▶ | 29.0b | (+.f64 x (*.f64 z (-.f64 t x))) |
| ✓ | 4.9b | (+.f64 x (*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))) |
Compiled 2521 to 1121 computations (55.5% saved)
Found 2 expressions with local error:
| 0.0b | (*.f64 z (-.f64 t x)) |
| 0.0b | (+.f64 x (*.f64 z (-.f64 t x))) |
| 1× | rewrite-expression-head |
| 12× | cancel-sign-sub-inv_binary64 |
| 12× | add-sqr-sqrt_binary64 |
| 10× | *-un-lft-identity_binary64 |
| 8× | distribute-lft-in_binary64 |
| 8× | associate-+r+_binary64 |
2 calls:
| 5.0ms | (*.f64 z (-.f64 t x)) |
| 3.0ms | (+.f64 x (*.f64 z (-.f64 t x))) |
Compiled 659 to 183 computations (72.2% saved)
2 calls:
| 24.0ms | (+.f64 x (*.f64 z (-.f64 t x))) |
| 18.0ms | (*.f64 z (-.f64 t x)) |
Compiled 665 to 409 computations (38.5% saved)
| 1× | egg-herbie |
| 538× | neg-mul-1_binary64 |
| 485× | associate-*r*_binary64 |
| 361× | exp-prod_binary64 |
| 340× | distribute-rgt-neg-out_binary64 |
| 336× | cancel-sign-sub-inv_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 100 | 812 |
| 1 | 248 | 764 |
| 2 | 675 | 764 |
| 3 | 2186 | 764 |
| 4 | 4224 | 764 |
| 5 | 5115 | 764 |
3 alts after pruning (1 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 54 | 0 | 54 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 54 | 3 | 57 |
| Status | Error | Program |
| ▶ | 39.6b | (+.f64 x (/.f64 (*.f64 (*.f64 y z) (-.f64 (*.f64 (-.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 1 (exp.f64 (*.f64 (/.f64 x y) 2)))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 -1 (exp.f64 (*.f64 (/.f64 x y) 2)))))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 (exp.f64 (*.f64 2 (/.f64 x y))) 1)))) |
| ✓ | 29.0b | (+.f64 x (*.f64 z (-.f64 t x))) |
| ✓ | 4.9b | (+.f64 x (*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))) |
Compiled 434 to 199 computations (54.1% saved)
Found 4 expressions with local error:
| 0.3b | (/.f64 (*.f64 (*.f64 y z) (-.f64 (*.f64 (-.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 1 (exp.f64 (*.f64 (/.f64 x y) 2)))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 -1 (exp.f64 (*.f64 (/.f64 x y) 2)))))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 (exp.f64 (*.f64 2 (/.f64 x y))) 1))) |
| 2.5b | (+.f64 -1 (exp.f64 (*.f64 (/.f64 x y) 2))) |
| 4.9b | (-.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) |
| 5.4b | (*.f64 (*.f64 y z) (-.f64 (*.f64 (-.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 1 (exp.f64 (*.f64 (/.f64 x y) 2)))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 -1 (exp.f64 (*.f64 (/.f64 x y) 2)))))) |
| 1× | rewrite-expression-head |
| 198× | associate-*r/_binary64 |
| 151× | flip-+_binary64 |
| 151× | flip3-+_binary64 |
| 132× | frac-times_binary64 |
| 128× | frac-sub_binary64 |
4 calls:
| 31.0ms | (/.f64 (*.f64 (*.f64 y z) (-.f64 (*.f64 (-.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 1 (exp.f64 (*.f64 (/.f64 x y) 2)))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 -1 (exp.f64 (*.f64 (/.f64 x y) 2)))))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 (exp.f64 (*.f64 2 (/.f64 x y))) 1))) |
| 20.0ms | (*.f64 (*.f64 y z) (-.f64 (*.f64 (-.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 1 (exp.f64 (*.f64 (/.f64 x y) 2)))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 -1 (exp.f64 (*.f64 (/.f64 x y) 2)))))) |
| 4.0ms | (+.f64 -1 (exp.f64 (*.f64 (/.f64 x y) 2))) |
| 3.0ms | (-.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) |
Compiled 31617 to 20826 computations (34.1% saved)
4 calls:
| 304.0ms | (/.f64 (*.f64 (*.f64 y z) (-.f64 (*.f64 (-.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 1 (exp.f64 (*.f64 (/.f64 x y) 2)))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 -1 (exp.f64 (*.f64 (/.f64 x y) 2)))))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 (exp.f64 (*.f64 2 (/.f64 x y))) 1))) |
| 85.0ms | (*.f64 (*.f64 y z) (-.f64 (*.f64 (-.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 1 (exp.f64 (*.f64 (/.f64 x y) 2)))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 -1 (exp.f64 (*.f64 (/.f64 x y) 2)))))) |
| 23.0ms | (-.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) |
| 17.0ms | (+.f64 -1 (exp.f64 (*.f64 (/.f64 x y) 2))) |
Compiled 7890 to 5359 computations (32.1% saved)
| 1× | egg-herbie |
| 582× | times-frac_binary64 |
| 456× | *-commutative_binary64 |
| 312× | cancel-sign-sub-inv_binary64 |
| 296× | associate-*l*_binary64 |
| 244× | associate-*r*_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 798 | 23677 |
| 1 | 3160 | 21735 |
| 2 | 4979 | 21735 |
3 alts after pruning (0 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 236 | 0 | 236 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 236 | 3 | 239 |
| Status | Error | Program |
| 39.6b | (+.f64 x (/.f64 (*.f64 (*.f64 y z) (-.f64 (*.f64 (-.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 1 (exp.f64 (*.f64 (/.f64 x y) 2)))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 -1 (exp.f64 (*.f64 (/.f64 x y) 2)))))) (*.f64 (+.f64 1 (exp.f64 (*.f64 -2 (/.f64 t y)))) (+.f64 (exp.f64 (*.f64 2 (/.f64 x y))) 1)))) | |
| 29.0b | (+.f64 x (*.f64 z (-.f64 t x))) | |
| 4.9b | (+.f64 x (*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))) |
Compiled 26856 to 17424 computations (35.1% saved)
Total 1.2b remaining (90.5%)
Threshold costs 0b (0%)
Compiled 12096 to 7442 computations (38.5% saved)
Compiled 19 to 12 computations (36.8% saved)
| 1× | egg-herbie |
| 7× | *-commutative_binary64 |
| 6× | +-commutative_binary64 |
| 4× | sub-neg_binary64 |
| 2× | neg-sub0_binary64 |
| 2× | neg-mul-1_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 22 | 58 |
| 1 | 33 | 58 |
| 2 | 41 | 58 |
| 3 | 45 | 58 |
| 4 | 47 | 58 |
| 5 | 47 | 58 |
Compiled 42 to 20 computations (52.4% saved)
| 1× | intervals |
| 490.0ms | 7784× | body | 128 | valid |
| 40.0ms | 597× | body | 128 | invalid |
| 19.0ms | 80× | body | 1024 | valid |
| 13.0ms | 60× | body | 256 | valid |
| 13.0ms | 75× | body | 512 | valid |
| 1.0ms | 1× | body | 2048 | valid |
Compiled 159 to 100 computations (37.1% saved)
Loading profile data...