Time bar (total: 11.4s)
| 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 |
| 0% | 99.9% | 0.1% | 7 |
| 0% | 93.6% | 6.4% | 8 |
| 9.4% | 84.3% | 6.4% | 9 |
| 14.8% | 75.7% | 9.5% | 10 |
| 16% | 71.4% | 12.6% | 11 |
| 20.9% | 65.7% | 13.4% | 12 |
| 24.2% | 60.5% | 15.3% | 13 |
| 24.8% | 58.6% | 16.6% | 14 |
Compiled 31 to 24 computations (22.6% saved)
| 2.4s | 2277× | body | 1024 | valid |
| 1.1s | 4349× | body | 128 | valid |
| 741.0ms | 1066× | body | 512 | valid |
| 267.0ms | 559× | body | 256 | valid |
| 250.0ms | 796× | body | 128 | invalid |
| 8.0ms | 5× | body | 2048 | valid |
| 1.0ms | 1× | body | 1024 | invalid |
Compiled 62 to 48 computations (22.6% saved)
| 2× | egg-herbie |
| 523× | fma-def_binary64 |
| 440× | fma-neg_binary64 |
| 358× | distribute-rgt-neg-in_binary64 |
| 324× | associate-/l*_binary64 |
| 264× | distribute-lft-neg-in_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 56 | 140 |
| 1 | 138 | 112 |
| 2 | 339 | 112 |
| 3 | 808 | 112 |
| 4 | 2075 | 112 |
| 5 | 4823 | 112 |
| 0 | 3 | 3 |
| 1× | saturated |
| 1× | node limit |
Compiled 30 to 23 computations (23.3% saved)
| 1× | egg-herbie |
| 378× | fma-def_binary64 |
| 354× | distribute-neg-frac_binary64 |
| 310× | distribute-rgt-neg-in_binary64 |
| 302× | fma-neg_binary64 |
| 283× | associate-/l*_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 23 | 35 |
| 1 | 49 | 28 |
| 2 | 105 | 28 |
| 3 | 215 | 28 |
| 4 | 494 | 28 |
| 5 | 1487 | 28 |
| 6 | 3884 | 28 |
| 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 |
| 13.5b | (+.f64 (neg.f64 (*.f64 x (/.f64 1 (tan.f64 B)))) (*.f64 (/.f64 F (sin.f64 B)) (pow.f64 (+.f64 (+.f64 (*.f64 F F) 2) (*.f64 2 x)) (neg.f64 (/.f64 1 2))))) | |
| ▶ | 10.1b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (/.f64 x (tan.f64 B))) |
Compiled 153 to 109 computations (28.8% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.2b | (/.f64 x (tan.f64 B)) |
| ✓ | 0.2b | (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) |
| ✓ | 0.3b | (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B)) |
| ✓ | 18.6b | (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) |
30 calls:
| 20.0ms | (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B)) | B | -inf |
| 17.0ms | (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B)) | B | inf |
| 17.0ms | (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) | x | -inf |
| 17.0ms | (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B)) | x | -inf |
| 16.0ms | (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) | B | inf |
| 1× | batch-egg-rewrite |
| 270× | expm1-udef_binary64 |
| 270× | log1p-udef_binary64 |
| 151× | add-sqr-sqrt_binary64 |
| 141× | log1p-expm1-u_binary64 |
| 141× | expm1-log1p-u_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 55 |
| 1 | 299 | 55 |
| 2 | 3813 | 55 |
| 1× | node limit |
| 1× | egg-herbie |
| 375× | fma-def_binary64 |
| 287× | fma-neg_binary64 |
| 246× | +-commutative_binary64 |
| 203× | *-commutative_binary64 |
| 190× | associate-+r+_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 410 | 5102 |
| 1 | 1295 | 4787 |
| 2 | 4766 | 4787 |
| 1× | node limit |
15 alts after pruning (15 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 229 | 14 | 243 |
| Fresh | 0 | 1 | 1 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 230 | 15 | 245 |
| Status | Error | Program |
| 30.7b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (*.f64 (/.f64 (sqrt.f64 x) 1) (/.f64 (sqrt.f64 x) (tan.f64 B)))) | |
| 10.2b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (/.f64 (*.f64 x (cos.f64 B)) (sin.f64 B))) | |
| 10.4b | (-.f64 (/.f64 (/.f64 (*.f64 F (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) (pow.f64 (cbrt.f64 (sin.f64 B)) 2)) (cbrt.f64 (sin.f64 B))) (/.f64 x (tan.f64 B))) | |
| 29.0b | (-.f64 (*.f64 F (/.f64 (/.f64 1 F) (sin.f64 B))) (/.f64 x (tan.f64 B))) | |
| 35.9b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (pow.f64 (sqrt.f64 (/.f64 x (tan.f64 B))) 2)) | |
| 10.2b | (-.f64 (*.f64 F (/.f64 (*.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/4) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/4)) (sin.f64 B))) (/.f64 x (tan.f64 B))) | |
| 31.1b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (*.f64 (/.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 (tan.f64 B)) 2)) (/.f64 (sqrt.f64 x) (cbrt.f64 (tan.f64 B))))) | |
| 10.8b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (tan.f64 B)) 2)) (/.f64 x (cbrt.f64 (tan.f64 B))))) | |
| 13.5b | (+.f64 (neg.f64 (*.f64 x (/.f64 1 (tan.f64 B)))) (*.f64 (/.f64 F (sin.f64 B)) (pow.f64 (+.f64 (+.f64 (*.f64 F F) 2) (*.f64 2 x)) (neg.f64 (/.f64 1 2))))) | |
| ▶ | 10.1b | (-.f64 (*.f64 F (pow.f64 (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) -1)) (/.f64 x (tan.f64 B))) |
| 30.1b | (-.f64 (/.f64 -1 (sin.f64 B)) (/.f64 x (tan.f64 B))) | |
| 27.3b | (-.f64 (/.f64 1 (sin.f64 B)) (/.f64 x (tan.f64 B))) | |
| 21.7b | (-.f64 (expm1.f64 (log1p.f64 (/.f64 F (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2))))) (/.f64 x (tan.f64 B))) | |
| 10.2b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (pow.f64 (/.f64 (tan.f64 B) x) -1)) | |
| 10.7b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (pow.f64 (cbrt.f64 (/.f64 x (tan.f64 B))) 3)) |
Compiled 10295 to 6394 computations (37.9% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.2b | (*.f64 F (pow.f64 (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) -1)) |
| ✓ | 0.3b | (pow.f64 (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) -1) |
| ✓ | 0.4b | (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) |
| 18.6b | (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) |
27 calls:
| 23.0ms | (pow.f64 (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) -1) | B | -inf |
| 22.0ms | (pow.f64 (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) -1) | B | inf |
| 19.0ms | (*.f64 F (pow.f64 (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) -1)) | B | inf |
| 18.0ms | (*.f64 F (pow.f64 (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) -1)) | B | -inf |
| 17.0ms | (*.f64 F (pow.f64 (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) -1)) | x | -inf |
| 1× | batch-egg-rewrite |
| 629× | log-prod_binary64 |
| 245× | expm1-udef_binary64 |
| 245× | log1p-udef_binary64 |
| 225× | log-pow_binary64 |
| 141× | add-sqr-sqrt_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 60 |
| 1 | 290 | 52 |
| 2 | 3432 | 52 |
| 1× | node limit |
| 1× | egg-herbie |
| 695× | times-frac_binary64 |
| 306× | fma-neg_binary64 |
| 305× | fma-def_binary64 |
| 190× | *-commutative_binary64 |
| 185× | +-commutative_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 319 | 4328 |
| 1 | 1030 | 4020 |
| 2 | 3789 | 4020 |
| 1× | node limit |
15 alts after pruning (14 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 284 | 2 | 286 |
| Fresh | 2 | 12 | 14 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 286 | 15 | 301 |
| Status | Error | Program |
| 30.7b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (*.f64 (/.f64 (sqrt.f64 x) 1) (/.f64 (sqrt.f64 x) (tan.f64 B)))) | |
| 10.2b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (/.f64 (*.f64 x (cos.f64 B)) (sin.f64 B))) | |
| 10.4b | (-.f64 (/.f64 (/.f64 (*.f64 F (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) (pow.f64 (cbrt.f64 (sin.f64 B)) 2)) (cbrt.f64 (sin.f64 B))) (/.f64 x (tan.f64 B))) | |
| 29.0b | (-.f64 (*.f64 F (/.f64 (/.f64 1 F) (sin.f64 B))) (/.f64 x (tan.f64 B))) | |
| 10.7b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (pow.f64 (cbrt.f64 (/.f64 x (tan.f64 B))) 3)) | |
| 13.3b | (-.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 2 (fma.f64 F F (*.f64 2 x))))) (/.f64 F (sin.f64 B))) (/.f64 x (tan.f64 B))) | |
| 31.1b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (*.f64 (/.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 (tan.f64 B)) 2)) (/.f64 (sqrt.f64 x) (cbrt.f64 (tan.f64 B))))) | |
| 10.8b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (tan.f64 B)) 2)) (/.f64 x (cbrt.f64 (tan.f64 B))))) | |
| ✓ | 10.1b | (-.f64 (*.f64 F (pow.f64 (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) -1)) (/.f64 x (tan.f64 B))) |
| ▶ | 10.1b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (/.f64 x (tan.f64 B))) |
| 30.1b | (-.f64 (/.f64 -1 (sin.f64 B)) (/.f64 x (tan.f64 B))) | |
| 27.3b | (-.f64 (/.f64 1 (sin.f64 B)) (/.f64 x (tan.f64 B))) | |
| 21.7b | (-.f64 (expm1.f64 (log1p.f64 (/.f64 F (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2))))) (/.f64 x (tan.f64 B))) | |
| 10.2b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (pow.f64 (/.f64 (tan.f64 B) x) -1)) | |
| 35.9b | (-.f64 (*.f64 F (/.f64 (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2) (sin.f64 B))) (pow.f64 (sqrt.f64 (/.f64 x (tan.f64 B))) 2)) |
Compiled 12458 to 7714 computations (38.1% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 0.2b | (/.f64 x (tan.f64 B)) | |
| ✓ | 0.2b | (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2)))) |
| ✓ | 0.2b | (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) |
| ✓ | 18.6b | (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))) |
24 calls:
| 17.0ms | (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) | x | -inf |
| 17.0ms | (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) | B | -inf |
| 16.0ms | (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) | B | inf |
| 15.0ms | (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) | x | inf |
| 8.0ms | (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2)))) | x | -inf |
| 1× | batch-egg-rewrite |
| 559× | log-prod_binary64 |
| 203× | expm1-udef_binary64 |
| 203× | log1p-udef_binary64 |
| 186× | log-pow_binary64 |
| 113× | add-sqr-sqrt_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 46 |
| 1 | 226 | 46 |
| 2 | 2872 | 46 |
| 1× | node limit |
| 1× | egg-herbie |
| 628× | cancel-sign-sub-inv_binary64 |
| 579× | times-frac_binary64 |
| 339× | sub-neg_binary64 |
| 269× | fma-neg_binary64 |
| 257× | fma-def_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 287 | 3439 |
| 1 | 925 | 3227 |
| 2 | 3427 | 3227 |
| 1× | node limit |
15 alts after pruning (14 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 236 | 8 | 244 |
| Fresh | 7 | 6 | 13 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 1 | 1 |
| Total | 244 | 15 | 259 |
| Status | Error | Program |
| 10.4b | (-.f64 (/.f64 (/.f64 (*.f64 F (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) (pow.f64 (cbrt.f64 (sin.f64 B)) 2)) (cbrt.f64 (sin.f64 B))) (/.f64 x (tan.f64 B))) | |
| 29.0b | (-.f64 (*.f64 F (/.f64 (/.f64 1 F) (sin.f64 B))) (/.f64 x (tan.f64 B))) | |
| 30.1b | (-.f64 (/.f64 -1 (sin.f64 B)) (/.f64 x (tan.f64 B))) | |
| 31.0b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (*.f64 (/.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 (tan.f64 B)) 2)) (/.f64 (sqrt.f64 x) (cbrt.f64 (tan.f64 B))))) | |
| 21.7b | (-.f64 (expm1.f64 (log1p.f64 (/.f64 F (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2))))) (/.f64 x (tan.f64 B))) | |
| 10.7b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (pow.f64 (cbrt.f64 (/.f64 x (tan.f64 B))) 3)) | |
| 10.1b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (/.f64 (*.f64 x (cos.f64 B)) (sin.f64 B))) | |
| ▶ | 10.1b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (*.f64 (/.f64 x (sin.f64 B)) (cos.f64 B))) |
| 31.8b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (neg.f64 F))) (/.f64 x (tan.f64 B))) | |
| ✓ | 10.1b | (-.f64 (*.f64 F (pow.f64 (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) -1)) (/.f64 x (tan.f64 B))) |
| 10.8b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (tan.f64 B)) 2)) (/.f64 x (cbrt.f64 (tan.f64 B))))) | |
| 27.3b | (-.f64 (/.f64 1 (sin.f64 B)) (/.f64 x (tan.f64 B))) | |
| 35.9b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (pow.f64 (sqrt.f64 (/.f64 x (tan.f64 B))) 2)) | |
| 10.2b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (pow.f64 (/.f64 (tan.f64 B) x) -1)) | |
| 13.3b | (-.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 2 (fma.f64 F F (*.f64 2 x))))) (/.f64 F (sin.f64 B))) (/.f64 x (tan.f64 B))) |
Compiled 8720 to 4898 computations (43.8% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 0.2b | (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2)))) | |
| ✓ | 0.2b | (*.f64 (/.f64 x (sin.f64 B)) (cos.f64 B)) |
| 0.2b | (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) | |
| 18.6b | (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))) |
6 calls:
| 7.0ms | (*.f64 (/.f64 x (sin.f64 B)) (cos.f64 B)) | x | -inf |
| 4.0ms | (*.f64 (/.f64 x (sin.f64 B)) (cos.f64 B)) | x | 0 |
| 3.0ms | (*.f64 (/.f64 x (sin.f64 B)) (cos.f64 B)) | x | inf |
| 3.0ms | (*.f64 (/.f64 x (sin.f64 B)) (cos.f64 B)) | B | -inf |
| 3.0ms | (*.f64 (/.f64 x (sin.f64 B)) (cos.f64 B)) | B | inf |
| 1× | batch-egg-rewrite |
| 716× | log1p-expm1-u_binary64 |
| 716× | expm1-log1p-u_binary64 |
| 137× | expm1-udef_binary64 |
| 137× | log1p-udef_binary64 |
| 75× | add-sqr-sqrt_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 11 |
| 1 | 144 | 11 |
| 2 | 1918 | 11 |
| 1× | node limit |
| 1× | egg-herbie |
| 466× | fma-def_binary64 |
| 465× | distribute-rgt-neg-in_binary64 |
| 385× | distribute-lft-neg-in_binary64 |
| 321× | cancel-sign-sub-inv_binary64 |
| 246× | *-commutative_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 27 | 293 |
| 1 | 74 | 291 |
| 2 | 212 | 284 |
| 3 | 760 | 282 |
| 4 | 2879 | 282 |
| 5 | 4539 | 282 |
| 1× | node limit |
15 alts after pruning (14 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 232 | 3 | 235 |
| Fresh | 2 | 11 | 13 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 1 | 1 |
| Total | 235 | 15 | 250 |
| Status | Error | Program |
| 10.7b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (/.f64 (/.f64 (*.f64 x (cos.f64 B)) (pow.f64 (cbrt.f64 (sin.f64 B)) 2)) (cbrt.f64 (sin.f64 B)))) | |
| ✓ | 10.1b | (-.f64 (*.f64 F (pow.f64 (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) -1)) (/.f64 x (tan.f64 B))) |
| 10.4b | (-.f64 (/.f64 (/.f64 (*.f64 F (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2)) (pow.f64 (cbrt.f64 (sin.f64 B)) 2)) (cbrt.f64 (sin.f64 B))) (/.f64 x (tan.f64 B))) | |
| 29.0b | (-.f64 (*.f64 F (/.f64 (/.f64 1 F) (sin.f64 B))) (/.f64 x (tan.f64 B))) | |
| 21.7b | (-.f64 (expm1.f64 (log1p.f64 (/.f64 F (/.f64 (sin.f64 B) (pow.f64 (fma.f64 x 2 (fma.f64 F F 2)) -1/2))))) (/.f64 x (tan.f64 B))) | |
| 10.7b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (pow.f64 (cbrt.f64 (/.f64 x (tan.f64 B))) 3)) | |
| 10.2b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 F F 2)))) (*.f64 (/.f64 x (sin.f64 B)) (cos.f64 B))) | |
| 31.8b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (neg.f64 F))) (/.f64 x (tan.f64 B))) | |
| 35.3b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (/.f64 (/.f64 (*.f64 x (cos.f64 B)) (sqrt.f64 (sin.f64 B))) (sqrt.f64 (sin.f64 B)))) | |
| 10.8b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (tan.f64 B)) 2)) (/.f64 x (cbrt.f64 (tan.f64 B))))) | |
| 30.1b | (-.f64 (/.f64 -1 (sin.f64 B)) (/.f64 x (tan.f64 B))) | |
| 27.3b | (-.f64 (/.f64 1 (sin.f64 B)) (/.f64 x (tan.f64 B))) | |
| 35.9b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (pow.f64 (sqrt.f64 (/.f64 x (tan.f64 B))) 2)) | |
| 10.2b | (-.f64 (/.f64 F (*.f64 (sin.f64 B) (sqrt.f64 (fma.f64 x 2 (fma.f64 F F 2))))) (pow.f64 (/.f64 (tan.f64 B) x) -1)) | |
| 13.3b | (-.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 2 (fma.f64 F F (*.f64 2 x))))) (/.f64 F (sin.f64 B))) (/.f64 x (tan.f64 B))) |
Compiled 8827 to 4561 computations (48.3% saved)
Total 0.2b remaining (85.1%)
Threshold costs 0.2b (85.1%)
Compiled 18612 to 13056 computations (29.9% saved)
| 2× | binary-search |
2 calls:
| 98.0ms | F |
| 33.0ms | F |
| Iters | Point | Range | ||||
|---|---|---|---|---|---|---|
1.9030236663567175e+42 | ∈ [ | 1.8710692571331446e+42 | , | 2.1265650426550467e+49 | ] | |
-4.651156632349768e+32 | ∈ [ | -1.6005571123208928e+38 | , | -7.2927087194113905e+31 | ] | |
Compiled 4 to 3 computations (25% saved)
| 1× | egg-herbie |
| 9× | +-commutative_binary64 |
| 8× | *-commutative_binary64 |
| 8× | sub-neg_binary64 |
| 5× | neg-sub0_binary64 |
| 5× | neg-mul-1_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 32 | 77 |
| 1 | 46 | 77 |
| 2 | 63 | 77 |
| 3 | 73 | 77 |
| 4 | 80 | 77 |
| 5 | 82 | 77 |
| 1× | saturated |
| 1× | fuel |
Compiled 444 to 292 computations (34.2% saved)
Loading profile data...