Time bar (total: 11.6s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.7% | 0.3% | 0 |
| 0% | 99.7% | 0.3% | 1 |
| 0% | 99.7% | 0.3% | 2 |
| 0% | 99.7% | 0.3% | 3 |
| 0% | 99.7% | 0.3% | 4 |
| 0% | 99.7% | 0.3% | 5 |
| 0% | 99.7% | 0.3% | 6 |
| 0% | 99.7% | 0.3% | 7 |
| 0% | 99.7% | 0.3% | 8 |
| 0% | 99.7% | 0.3% | 9 |
| 0% | 99.7% | 0.3% | 10 |
| 0% | 99.7% | 0.3% | 11 |
| 0% | 99.7% | 0.3% | 12 |
| 4.3% | 95.4% | 0.3% | 13 |
| 6.6% | 93.1% | 0.3% | 14 |
Compiled 25 to 19 computations (24% saved)
(sort M D)
| 1.6s | 8256× | body | 128 | valid |
| 804.0ms | 4551× | body | 128 | invalid |
Compiled 74 to 56 computations (24.3% saved)
| 1× | egg-herbie |
| 418× | associate-/l*_binary64 |
| 372× | cancel-sign-sub-inv_binary64 |
| 251× | associate-/l/_binary64 |
| 229× | *-commutative_binary64 |
| 227× | times-frac_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 27 |
| 1 | 42 | 27 |
| 2 | 115 | 27 |
| 3 | 846 | 27 |
| 4 | 3817 | 27 |
| 1× | node limit |
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 2 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
| 16.0b | (*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 2 d))) 2) (/.f64 h l))))) | |
| ▶ | 15.3b | (*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l))))) |
Compiled 138 to 101 computations (26.8% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 2.9b | (*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l))))) |
| ✓ | 4.2b | (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l)))) |
| ✓ | 4.3b | (/.f64 (*.f64 M D) (*.f64 2 d)) |
| ✓ | 11.5b | (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l)) |
4 calls:
| 222.0ms | (*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l))))) |
| 187.0ms | (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l)) |
| 131.0ms | (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l)))) |
| 15.0ms | (/.f64 (*.f64 M D) (*.f64 2 d)) |
| 1× | batch-egg-rewrite |
| 190× | add-sqr-sqrt_binary64 |
| 179× | log1p-expm1-u_binary64 |
| 179× | expm1-log1p-u_binary64 |
| 177× | add-cbrt-cube_binary64 |
| 176× | add-log-exp_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 80 |
| 1 | 386 | 80 |
| 1× | node limit |
4 calls:
| 60.0ms | (*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l))))) |
| 60.0ms | (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l)))) |
| 60.0ms | (/.f64 (*.f64 M D) (*.f64 2 d)) |
| 60.0ms | (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l)) |
| 1× | egg-herbie |
| 640× | fma-def_binary64 |
| 262× | times-frac_binary64 |
| 243× | associate-/r*_binary64 |
| 231× | associate-*r*_binary64 |
| 226× | fma-neg_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 310 | 8076 |
| 1 | 1242 | 8010 |
| 2 | 4071 | 7948 |
| 1× | node limit |
15 alts after pruning (14 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 225 | 14 | 239 |
| Fresh | 1 | 0 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 226 | 15 | 241 |
| Status | Error | Program |
| 60.9b | (*.f64 w0 (/.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 D (/.f64 l D)) (*.f64 M (*.f64 M h))) -1/4)) d)) | |
| ✓ | 15.3b | (*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l))))) |
| 46.3b | (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) (/.f64 h l)))) w0) 3)) | |
| 16.0b | (*.f64 w0 (sqrt.f64 (-.f64 1 (-.f64 (+.f64 1 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) (/.f64 h l))) 1)))) | |
| 59.5b | (*.f64 w0 (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 D (/.f64 l D)) (/.f64 h (*.f64 d d))) -1/4)) (neg.f64 M))) | |
| 61.1b | (*.f64 D (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 h (pow.f64 M 2)) (*.f64 (pow.f64 d 2) l))))) w0)) | |
| 59.1b | (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 D (/.f64 l D)) (/.f64 h (*.f64 d d))) -1/4)) (neg.f64 (*.f64 M w0))) | |
| 60.3b | (*.f64 -1 (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) h) (*.f64 (pow.f64 d 2) l))))) (*.f64 w0 M))) | |
| 28.6b | (fma.f64 (*.f64 -1/8 (*.f64 (/.f64 D d) (/.f64 D d))) (/.f64 (*.f64 M (*.f64 M h)) (/.f64 l w0)) w0) | |
| 38.2b | (-.f64 w0 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 w0 (*.f64 (pow.f64 M 2) h))) (*.f64 l (pow.f64 d 2))))) | |
| 15.5b | w0 | |
| 15.8b | (*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 D (*.f64 M (/.f64 1/2 d))) 2) (/.f64 h l))))) | |
| ▶ | 11.8b | (*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 1 (/.f64 l (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h)))))) |
| 60.3b | (*.f64 w0 (*.f64 -1 (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) h) (*.f64 l (pow.f64 d 2)))))) M))) | |
| 61.4b | (*.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 h l) (/.f64 (*.f64 M M) (*.f64 d d))) -1/4)) w0)) |
Compiled 9621 to 5929 computations (38.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 4.2b | (sqrt.f64 (-.f64 1 (/.f64 1 (/.f64 l (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h))))) |
| ✓ | 5.1b | (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) |
| ✓ | 5.4b | (/.f64 l (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h)) |
| ✓ | 6.7b | (*.f64 M (*.f64 D (/.f64 1/2 d))) |
4 calls:
| 247.0ms | (/.f64 l (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h)) |
| 118.0ms | (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) |
| 113.0ms | (sqrt.f64 (-.f64 1 (/.f64 1 (/.f64 l (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h))))) |
| 15.0ms | (*.f64 M (*.f64 D (/.f64 1/2 d))) |
| 1× | batch-egg-rewrite |
| 188× | add-sqr-sqrt_binary64 |
| 180× | log1p-expm1-u_binary64 |
| 180× | expm1-log1p-u_binary64 |
| 178× | add-cbrt-cube_binary64 |
| 175× | add-cube-cbrt_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 72 |
| 1 | 393 | 69 |
| 1× | node limit |
4 calls:
| 37.0ms | (sqrt.f64 (-.f64 1 (/.f64 1 (/.f64 l (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h))))) |
| 37.0ms | (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) |
| 37.0ms | (/.f64 l (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h)) |
| 37.0ms | (*.f64 M (*.f64 D (/.f64 1/2 d))) |
| 1× | egg-herbie |
| 322× | associate-/r/_binary64 |
| 262× | fma-def_binary64 |
| 232× | unswap-sqr_binary64 |
| 216× | distribute-neg-frac_binary64 |
| 188× | cancel-sign-sub-inv_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 189 | 5696 |
| 1 | 715 | 5662 |
| 2 | 2390 | 5644 |
| 1× | node limit |
16 alts after pruning (15 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 164 | 3 | 167 |
| Fresh | 1 | 12 | 13 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 0 | 1 |
| Total | 166 | 16 | 182 |
| Status | Error | Program |
| 46.3b | (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) (/.f64 h l)))) w0) 3)) | |
| 59.5b | (*.f64 w0 (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 D (/.f64 l D)) (/.f64 h (*.f64 d d))) -1/4)) (neg.f64 M))) | |
| 36.8b | (*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 1 (*.f64 (/.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) (sqrt.f64 h))) (/.f64 (cbrt.f64 l) (*.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) (sqrt.f64 h)))))))) | |
| 60.3b | (*.f64 w0 (*.f64 -1 (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) h) (*.f64 l (pow.f64 d 2)))))) M))) | |
| 61.1b | (*.f64 D (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 h (pow.f64 M 2)) (*.f64 (pow.f64 d 2) l))))) w0)) | |
| 59.1b | (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 D (/.f64 l D)) (/.f64 h (*.f64 d d))) -1/4)) (neg.f64 (*.f64 M w0))) | |
| 60.3b | (*.f64 -1 (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) h) (*.f64 (pow.f64 d 2) l))))) (*.f64 w0 M))) | |
| 28.6b | (fma.f64 (*.f64 -1/8 (*.f64 (/.f64 D d) (/.f64 D d))) (/.f64 (*.f64 M (*.f64 M h)) (/.f64 l w0)) w0) | |
| 38.2b | (-.f64 w0 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 w0 (*.f64 (pow.f64 M 2) h))) (*.f64 l (pow.f64 d 2))))) | |
| 15.5b | w0 | |
| 15.8b | (*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 D (*.f64 M (/.f64 1/2 d))) 2) (/.f64 h l))))) | |
| 60.9b | (*.f64 w0 (/.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 D (/.f64 l D)) (*.f64 M (*.f64 M h))) -1/4)) d)) | |
| 15.0b | (*.f64 w0 (pow.f64 (pow.f64 (-.f64 1 (/.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) 2) (/.f64 l h))) 1/4) 2)) | |
| ▶ | 10.6b | (*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 1 (/.f64 l (*.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 D M) d)) 2) h)))))) |
| ✓ | 11.8b | (*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 1 (/.f64 l (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h)))))) |
| 61.4b | (*.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 h l) (/.f64 (*.f64 M M) (*.f64 d d))) -1/4)) w0)) |
Compiled 6514 to 4285 computations (34.2% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 4.2b | (sqrt.f64 (-.f64 1 (/.f64 1 (/.f64 l (*.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 D M) d)) 2) h))))) |
| ✓ | 4.3b | (/.f64 (*.f64 D M) d) |
| ✓ | 5.1b | (*.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 D M) d)) 2) h) |
| ✓ | 5.4b | (/.f64 l (*.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 D M) d)) 2) h)) |
4 calls:
| 233.0ms | (/.f64 l (*.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 D M) d)) 2) h)) |
| 124.0ms | (*.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 D M) d)) 2) h) |
| 117.0ms | (sqrt.f64 (-.f64 1 (/.f64 1 (/.f64 l (*.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 D M) d)) 2) h))))) |
| 13.0ms | (/.f64 (*.f64 D M) d) |
| 1× | batch-egg-rewrite |
| 188× | add-sqr-sqrt_binary64 |
| 179× | log1p-expm1-u_binary64 |
| 179× | expm1-log1p-u_binary64 |
| 177× | add-cbrt-cube_binary64 |
| 175× | add-log-exp_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 69 |
| 1 | 392 | 66 |
| 1× | node limit |
4 calls:
| 42.0ms | (sqrt.f64 (-.f64 1 (/.f64 1 (/.f64 l (*.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 D M) d)) 2) h))))) |
| 42.0ms | (/.f64 (*.f64 D M) d) |
| 42.0ms | (*.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 D M) d)) 2) h) |
| 42.0ms | (/.f64 l (*.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 D M) d)) 2) h)) |
| 1× | egg-herbie |
| 315× | associate-/r/_binary64 |
| 262× | fma-def_binary64 |
| 232× | unswap-sqr_binary64 |
| 216× | distribute-neg-frac_binary64 |
| 188× | cancel-sign-sub-inv_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 186 | 5336 |
| 1 | 705 | 5302 |
| 2 | 2370 | 5284 |
| 1× | node limit |
19 alts after pruning (17 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 179 | 4 | 183 |
| Fresh | 1 | 13 | 14 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 180 | 19 | 199 |
| Status | Error | Program |
| 59.1b | (*.f64 w0 (*.f64 (sqrt.f64 (*.f64 (/.f64 D (/.f64 (*.f64 (*.f64 d d) l) (*.f64 D h))) -1/4)) (neg.f64 M))) | |
| 60.9b | (*.f64 w0 (/.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 D (/.f64 l D)) (*.f64 M (*.f64 M h))) -1/4)) d)) | |
| 62.0b | (*.f64 w0 (*.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 -1/4 h) l) (*.f64 (/.f64 M d) (/.f64 M d)))) (neg.f64 D))) | |
| ▶ | 15.0b | (*.f64 w0 (pow.f64 (pow.f64 (-.f64 1 (/.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) 2) (/.f64 l h))) 1/4) 2)) |
| ✓ | 10.6b | (*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 1 (/.f64 l (*.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 D M) d)) 2) h)))))) |
| 59.0b | (*.f64 w0 (*.f64 D (sqrt.f64 (*.f64 (/.f64 (*.f64 -1/4 h) l) (*.f64 (/.f64 M d) (/.f64 M d)))))) | |
| 23.8b | (*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 1 (/.f64 l (*.f64 1/4 (*.f64 (*.f64 (*.f64 (/.f64 M d) (/.f64 M d)) h) (*.f64 D D)))))))) | |
| ✓ | 11.8b | (*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 1 (/.f64 l (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h)))))) |
| 46.3b | (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) (/.f64 h l)))) w0) 3)) | |
| 59.5b | (*.f64 w0 (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 D (/.f64 l D)) (/.f64 h (*.f64 d d))) -1/4)) (neg.f64 M))) | |
| 61.1b | (*.f64 D (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 h (pow.f64 M 2)) (*.f64 (pow.f64 d 2) l))))) w0)) | |
| 59.1b | (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 D (/.f64 l D)) (/.f64 h (*.f64 d d))) -1/4)) (neg.f64 (*.f64 M w0))) | |
| 60.3b | (*.f64 -1 (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) h) (*.f64 (pow.f64 d 2) l))))) (*.f64 w0 M))) | |
| 28.6b | (fma.f64 (*.f64 -1/8 (*.f64 (/.f64 D d) (/.f64 D d))) (/.f64 (*.f64 M (*.f64 M h)) (/.f64 l w0)) w0) | |
| 38.2b | (-.f64 w0 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 w0 (*.f64 (pow.f64 M 2) h))) (*.f64 l (pow.f64 d 2))))) | |
| 15.5b | w0 | |
| 15.8b | (*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 D (*.f64 M (/.f64 1/2 d))) 2) (/.f64 h l))))) | |
| 36.8b | (*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 1 (*.f64 (/.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) (sqrt.f64 h))) (/.f64 (cbrt.f64 l) (*.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) (sqrt.f64 h)))))))) | |
| 61.4b | (*.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 h l) (/.f64 (*.f64 M M) (*.f64 d d))) -1/4)) w0)) |
Compiled 7108 to 4464 computations (37.2% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 2.9b | (*.f64 w0 (pow.f64 (pow.f64 (-.f64 1 (/.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) 2) (/.f64 l h))) 1/4) 2)) |
| ✓ | 4.1b | (*.f64 D (*.f64 (/.f64 1/2 d) M)) |
| ✓ | 7.2b | (pow.f64 (-.f64 1 (/.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) 2) (/.f64 l h))) 1/4) |
| ✓ | 11.2b | (/.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) 2) (/.f64 l h)) |
4 calls:
| 223.0ms | (*.f64 w0 (pow.f64 (pow.f64 (-.f64 1 (/.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) 2) (/.f64 l h))) 1/4) 2)) |
| 188.0ms | (/.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) 2) (/.f64 l h)) |
| 178.0ms | (pow.f64 (-.f64 1 (/.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) 2) (/.f64 l h))) 1/4) |
| 15.0ms | (*.f64 D (*.f64 (/.f64 1/2 d) M)) |
| 1× | batch-egg-rewrite |
| 212× | add-sqr-sqrt_binary64 |
| 209× | log1p-expm1-u_binary64 |
| 209× | expm1-log1p-u_binary64 |
| 204× | add-cbrt-cube_binary64 |
| 202× | add-cube-cbrt_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 21 | 82 |
| 1 | 457 | 81 |
| 1× | node limit |
4 calls:
| 37.0ms | (*.f64 w0 (pow.f64 (pow.f64 (-.f64 1 (/.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) 2) (/.f64 l h))) 1/4) 2)) |
| 37.0ms | (*.f64 D (*.f64 (/.f64 1/2 d) M)) |
| 37.0ms | (pow.f64 (-.f64 1 (/.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) 2) (/.f64 l h))) 1/4) |
| 37.0ms | (/.f64 (pow.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) 2) (/.f64 l h)) |
| 1× | egg-herbie |
| 623× | associate-/l*_binary64 |
| 569× | associate-/r*_binary64 |
| 193× | *-commutative_binary64 |
| 176× | associate-*l/_binary64 |
| 161× | fma-def_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 492 | 11058 |
| 1 | 1983 | 10946 |
| 1× | node limit |
19 alts after pruning (18 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 220 | 5 | 225 |
| Fresh | 3 | 13 | 16 |
| Picked | 1 | 0 | 1 |
| Done | 1 | 1 | 2 |
| Total | 225 | 19 | 244 |
| Status | Error | Program |
| 39.7b | (pow.f64 (sqrt.f64 (*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 D (*.f64 1/2 (/.f64 M d))) 2) (/.f64 h l)))))) 2) | |
| 15.5b | w0 | |
| 13.4b | (*.f64 w0 (pow.f64 (pow.f64 (-.f64 1 (*.f64 (/.f64 (*.f64 D (*.f64 1/2 (/.f64 M d))) 1) (/.f64 (*.f64 D (*.f64 1/2 (/.f64 M d))) (/.f64 l h)))) 1/4) 2)) | |
| 15.8b | (*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 D (*.f64 M (/.f64 1/2 d))) 2) (/.f64 h l))))) | |
| 59.1b | (*.f64 w0 (*.f64 (sqrt.f64 (*.f64 (/.f64 D (/.f64 (*.f64 (*.f64 d d) l) (*.f64 D h))) -1/4)) (neg.f64 M))) | |
| 60.9b | (*.f64 w0 (/.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 D (/.f64 l D)) (*.f64 M (*.f64 M h))) -1/4)) d)) | |
| ✓ | 10.6b | (*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 1 (/.f64 l (*.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 D M) d)) 2) h)))))) |
| 59.0b | (*.f64 w0 (*.f64 D (sqrt.f64 (*.f64 (/.f64 (*.f64 -1/4 h) l) (*.f64 (/.f64 M d) (/.f64 M d)))))) | |
| 9.6b | (*.f64 w0 (pow.f64 (pow.f64 (-.f64 1 (*.f64 (/.f64 (*.f64 D (*.f64 1/2 (/.f64 M d))) l) (/.f64 (*.f64 D (*.f64 1/2 (/.f64 M d))) (/.f64 1 h)))) 1/4) 2)) | |
| 46.3b | (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) (/.f64 h l)))) w0) 3)) | |
| 59.5b | (*.f64 w0 (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 D (/.f64 l D)) (/.f64 h (*.f64 d d))) -1/4)) (neg.f64 M))) | |
| 61.1b | (*.f64 D (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 h (pow.f64 M 2)) (*.f64 (pow.f64 d 2) l))))) w0)) | |
| 28.6b | (fma.f64 (*.f64 -1/8 (*.f64 (/.f64 D d) (/.f64 D d))) (/.f64 (*.f64 M (*.f64 M h)) (/.f64 l w0)) w0) | |
| 38.2b | (-.f64 w0 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 w0 (*.f64 (pow.f64 M 2) h))) (*.f64 l (pow.f64 d 2))))) | |
| 62.0b | (*.f64 w0 (*.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 -1/4 h) l) (*.f64 (/.f64 M d) (/.f64 M d)))) (neg.f64 D))) | |
| 60.4b | (*.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 D D) (/.f64 (*.f64 d d) (/.f64 h l))) -1/4)) (neg.f64 (*.f64 M w0))) | |
| 61.9b | (*.f64 (/.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 (*.f64 D D) (*.f64 M M)) (/.f64 l h)) -1/4)) d) w0) | |
| 36.8b | (*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 1 (*.f64 (/.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) (sqrt.f64 h))) (/.f64 (cbrt.f64 l) (*.f64 (*.f64 D (*.f64 (/.f64 1/2 d) M)) (sqrt.f64 h)))))))) | |
| 61.4b | (*.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 h l) (/.f64 (*.f64 M M) (*.f64 d d))) -1/4)) w0)) |
Compiled 12663 to 7847 computations (38% saved)
Total 6.3b remaining (63.1%)
Threshold costs 0b (0%)
Compiled 42949 to 32545 computations (24.2% saved)
Compiled 13 to 10 computations (23.1% saved)
| 1× | egg-herbie |
| 22× | *-commutative_binary64 |
| 7× | +-commutative_binary64 |
| 7× | sub-neg_binary64 |
| 7× | neg-sub0_binary64 |
| 7× | neg-mul-1_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 49 | 116 |
| 1 | 72 | 116 |
| 2 | 89 | 116 |
| 3 | 104 | 116 |
| 4 | 112 | 116 |
| 5 | 116 | 116 |
| 6 | 117 | 116 |
| 1× | saturated |
Compiled 829 to 557 computations (32.8% saved)
Loading profile data...