Time bar (total: 12.1s)
| 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 |
| 9.4% | 90.5% | 0.1% | 7 |
| 14% | 85.8% | 0.1% | 8 |
| 16.4% | 83.5% | 0.1% | 9 |
| 24.6% | 75.3% | 0.1% | 10 |
| 28.7% | 71.2% | 0.1% | 11 |
| 30.7% | 69.1% | 0.1% | 12 |
| 35.8% | 64% | 0.1% | 13 |
| 38.4% | 61.5% | 0.1% | 14 |
Compiled 32 to 18 computations (43.8% saved)
| 2.8s | 2054× | body | 1024 | valid |
| 1.3s | 4615× | body | 128 | valid |
| 899.0ms | 1095× | body | 512 | valid |
| 269.0ms | 484× | body | 256 | valid |
| 28.0ms | 8× | body | 2048 | valid |
Compiled 64 to 36 computations (43.8% saved)
| 2× | egg-herbie |
| 48× | fma-def_binary64 |
| 44× | *-commutative_binary64 |
| 24× | associate-*r*_binary64 |
| 24× | associate-*l*_binary64 |
| 4× | +-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 57 | 176 |
| 1 | 105 | 176 |
| 2 | 193 | 176 |
| 3 | 241 | 176 |
| 0 | 3 | 3 |
| 1× | saturated |
| 1× | saturated |
Compiled 31 to 17 computations (45.2% saved)
| 1× | egg-herbie |
| 12× | fma-def_binary64 |
| 11× | *-commutative_binary64 |
| 6× | associate-*r*_binary64 |
| 6× | associate-*l*_binary64 |
| 1× | +-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 44 |
| 1 | 30 | 44 |
| 2 | 52 | 44 |
| 3 | 64 | 44 |
| 1× | saturated |
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 |
| ▶ | 0.1b | (fabs.f64 (+.f64 (*.f64 (*.f64 ew (sin.f64 t)) (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) |
Compiled 120 to 56 computations (53.3% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.1b | (*.f64 ew (sin.f64 t)) |
| ✓ | 0.1b | (*.f64 (*.f64 ew (sin.f64 t)) (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))) |
| ✓ | 2.0b | (/.f64 (/.f64 eh ew) (tan.f64 t)) |
| ✓ | 37.2b | (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t)))) |
33 calls:
| 10.0ms | (/.f64 (/.f64 eh ew) (tan.f64 t)) | t | -inf |
| 9.0ms | (/.f64 (/.f64 eh ew) (tan.f64 t)) | eh | 0 |
| 9.0ms | (/.f64 (/.f64 eh ew) (tan.f64 t)) | t | inf |
| 9.0ms | (/.f64 (/.f64 eh ew) (tan.f64 t)) | eh | -inf |
| 8.0ms | (/.f64 (/.f64 eh ew) (tan.f64 t)) | eh | inf |
| 1× | batch-egg-rewrite |
| 243× | expm1-udef_binary64 |
| 243× | log1p-udef_binary64 |
| 211× | log-pow_binary64 |
| 133× | *-un-lft-identity_binary64 |
| 133× | add-sqr-sqrt_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 49 |
| 1 | 254 | 48 |
| 2 | 3495 | 48 |
| 1× | node limit |
| 1× | egg-herbie |
| 806× | fma-neg_binary64 |
| 391× | distribute-lft-neg-in_binary64 |
| 387× | distribute-rgt-neg-in_binary64 |
| 260× | associate-*l*_binary64 |
| 232× | associate-*r*_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 67 | 2125 |
| 1 | 200 | 2049 |
| 2 | 681 | 1997 |
| 3 | 2637 | 1995 |
| 1× | node limit |
4 alts after pruning (4 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 172 | 4 | 176 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 173 | 4 | 177 |
| Status | Error | Program |
| ▶ | 0.1b | (fabs.f64 (+.f64 (*.f64 (*.f64 ew (sin.f64 t)) (cbrt.f64 (pow.f64 (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t)))) 3))) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) |
| 21.9b | (fabs.f64 (+.f64 (pow.f64 (sqrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) 2) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) | |
| 0.5b | (fabs.f64 (+.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) 3) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) | |
| 22.1b | (fabs.f64 (+.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 ew 3) (pow.f64 (sin.f64 t) 3))) (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) |
Compiled 6255 to 1648 computations (73.7% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.1b | (*.f64 (*.f64 ew (sin.f64 t)) (cbrt.f64 (pow.f64 (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t)))) 3))) |
| ✓ | 0.7b | (cbrt.f64 (pow.f64 (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t)))) 3)) |
| 2.0b | (/.f64 (/.f64 eh ew) (tan.f64 t)) | |
| 37.2b | (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t)))) |
18 calls:
| 5.0ms | (*.f64 (*.f64 ew (sin.f64 t)) (cbrt.f64 (pow.f64 (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t)))) 3))) | ew | -inf |
| 5.0ms | (*.f64 (*.f64 ew (sin.f64 t)) (cbrt.f64 (pow.f64 (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t)))) 3))) | ew | inf |
| 4.0ms | (*.f64 (*.f64 ew (sin.f64 t)) (cbrt.f64 (pow.f64 (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t)))) 3))) | eh | inf |
| 4.0ms | (*.f64 (*.f64 ew (sin.f64 t)) (cbrt.f64 (pow.f64 (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t)))) 3))) | ew | 0 |
| 4.0ms | (*.f64 (*.f64 ew (sin.f64 t)) (cbrt.f64 (pow.f64 (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t)))) 3))) | eh | 0 |
| 1× | batch-egg-rewrite |
| 273× | expm1-udef_binary64 |
| 273× | log1p-udef_binary64 |
| 154× | add-sqr-sqrt_binary64 |
| 150× | pow1_binary64 |
| 149× | *-un-lft-identity_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 34 |
| 1 | 323 | 33 |
| 2 | 4003 | 33 |
| 1× | node limit |
| 1× | egg-herbie |
| 696× | cancel-sign-sub-inv_binary64 |
| 590× | distribute-rgt-neg-in_binary64 |
| 505× | distribute-lft-neg-in_binary64 |
| 499× | fma-neg_binary64 |
| 288× | *-commutative_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 33 | 1372 |
| 1 | 96 | 1304 |
| 2 | 324 | 1264 |
| 3 | 1426 | 1264 |
| 4 | 3903 | 1264 |
| 1× | node limit |
4 alts after pruning (3 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 180 | 0 | 180 |
| Fresh | 0 | 3 | 3 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 180 | 4 | 184 |
| Status | Error | Program |
| ✓ | 0.1b | (fabs.f64 (+.f64 (*.f64 (*.f64 ew (sin.f64 t)) (cbrt.f64 (pow.f64 (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t)))) 3))) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) |
| 21.9b | (fabs.f64 (+.f64 (pow.f64 (sqrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) 2) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) | |
| ▶ | 0.5b | (fabs.f64 (+.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) 3) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) |
| 22.1b | (fabs.f64 (+.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 ew 3) (pow.f64 (sin.f64 t) 3))) (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) |
Compiled 6731 to 2045 computations (69.6% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 0.1b | (*.f64 ew (sin.f64 t)) | |
| ✓ | 0.4b | (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) 3) |
| 2.0b | (/.f64 (/.f64 eh ew) (tan.f64 t)) | |
| ✓ | 21.2b | (cbrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) |
18 calls:
| 192.0ms | (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) 3) | t | -inf |
| 181.0ms | (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) 3) | t | inf |
| 169.0ms | (cbrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) | t | -inf |
| 162.0ms | (cbrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) | t | inf |
| 74.0ms | (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) 3) | ew | -inf |
| 1× | batch-egg-rewrite |
| 264× | expm1-udef_binary64 |
| 264× | log1p-udef_binary64 |
| 151× | add-sqr-sqrt_binary64 |
| 146× | pow1_binary64 |
| 144× | *-un-lft-identity_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 42 |
| 1 | 322 | 42 |
| 2 | 4083 | 42 |
| 1× | node limit |
| 1× | egg-herbie |
| 617× | associate-*r*_binary64 |
| 539× | associate-*l*_binary64 |
| 485× | associate-/l*_binary64 |
| 393× | associate-/r*_binary64 |
| 163× | fma-def_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 82 | 1124 |
| 1 | 265 | 1088 |
| 2 | 1009 | 1082 |
| 1× | node limit |
7 alts after pruning (5 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 234 | 4 | 238 |
| Fresh | 1 | 1 | 2 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 235 | 7 | 242 |
| Status | Error | Program |
| 0.2b | (fabs.f64 (+.f64 (/.f64 ew (/.f64 (hypot.f64 1 (/.f64 eh (*.f64 ew (tan.f64 t)))) (sin.f64 t))) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) | |
| ✓ | 0.1b | (fabs.f64 (+.f64 (*.f64 (*.f64 ew (sin.f64 t)) (cbrt.f64 (pow.f64 (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t)))) 3))) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) |
| 21.9b | (fabs.f64 (+.f64 (pow.f64 (sqrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) 2) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) | |
| ✓ | 0.5b | (fabs.f64 (+.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) 3) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) |
| 0.6b | (fabs.f64 (+.f64 (/.f64 (pow.f64 (cbrt.f64 ew) 2) (/.f64 (/.f64 (hypot.f64 1 (/.f64 eh (*.f64 ew (tan.f64 t)))) (sin.f64 t)) (cbrt.f64 ew))) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) | |
| ▶ | 0.1b | (fabs.f64 (+.f64 (/.f64 1 (/.f64 (hypot.f64 1 (/.f64 eh (*.f64 ew (tan.f64 t)))) (*.f64 ew (sin.f64 t)))) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) |
| 0.1b | (fabs.f64 (+.f64 (/.f64 (sin.f64 t) (/.f64 (hypot.f64 1 (/.f64 eh (*.f64 ew (tan.f64 t)))) ew)) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) |
Compiled 9502 to 3465 computations (63.5% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.2b | (/.f64 (hypot.f64 1 (/.f64 eh (*.f64 ew (tan.f64 t)))) (*.f64 ew (sin.f64 t))) |
| ✓ | 0.4b | (/.f64 1 (/.f64 (hypot.f64 1 (/.f64 eh (*.f64 ew (tan.f64 t)))) (*.f64 ew (sin.f64 t)))) |
| 2.0b | (/.f64 (/.f64 eh ew) (tan.f64 t)) | |
| ✓ | 3.3b | (/.f64 eh (*.f64 ew (tan.f64 t))) |
27 calls:
| 49.0ms | (/.f64 1 (/.f64 (hypot.f64 1 (/.f64 eh (*.f64 ew (tan.f64 t)))) (*.f64 ew (sin.f64 t)))) | t | inf |
| 48.0ms | (/.f64 1 (/.f64 (hypot.f64 1 (/.f64 eh (*.f64 ew (tan.f64 t)))) (*.f64 ew (sin.f64 t)))) | t | -inf |
| 22.0ms | (/.f64 (hypot.f64 1 (/.f64 eh (*.f64 ew (tan.f64 t)))) (*.f64 ew (sin.f64 t))) | t | inf |
| 22.0ms | (/.f64 (hypot.f64 1 (/.f64 eh (*.f64 ew (tan.f64 t)))) (*.f64 ew (sin.f64 t))) | t | -inf |
| 13.0ms | (/.f64 eh (*.f64 ew (tan.f64 t))) | t | -inf |
| 1× | batch-egg-rewrite |
| 247× | expm1-udef_binary64 |
| 247× | log1p-udef_binary64 |
| 140× | add-sqr-sqrt_binary64 |
| 138× | pow1_binary64 |
| 137× | *-un-lft-identity_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 52 |
| 1 | 275 | 49 |
| 2 | 3791 | 49 |
| 1× | node limit |
| 1× | egg-herbie |
| 726× | fma-def_binary64 |
| 270× | unswap-sqr_binary64 |
| 265× | times-frac_binary64 |
| 229× | associate-/l*_binary64 |
| 211× | associate-/r*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 241 | 4461 |
| 1 | 829 | 4341 |
| 2 | 3699 | 4305 |
| 1× | node limit |
5 alts after pruning (3 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 256 | 1 | 257 |
| Fresh | 2 | 2 | 4 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 2 | 2 |
| Total | 259 | 5 | 264 |
| Status | Error | Program |
| 0.2b | (fabs.f64 (+.f64 (/.f64 ew (/.f64 (hypot.f64 1 (/.f64 eh (*.f64 ew (tan.f64 t)))) (sin.f64 t))) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) | |
| ✓ | 0.1b | (fabs.f64 (+.f64 (*.f64 (*.f64 ew (sin.f64 t)) (cbrt.f64 (pow.f64 (cos.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t)))) 3))) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) |
| ✓ | 0.5b | (fabs.f64 (+.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 ew (sin.f64 t)) (hypot.f64 1 (/.f64 (/.f64 eh ew) (tan.f64 t))))) 3) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) |
| 1.4b | (fabs.f64 (+.f64 (/.f64 1 (/.f64 (/.f64 1 (sin.f64 t)) ew)) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) | |
| 0.1b | (fabs.f64 (+.f64 (/.f64 (sin.f64 t) (/.f64 (hypot.f64 1 (/.f64 eh (*.f64 ew (tan.f64 t)))) ew)) (*.f64 (*.f64 eh (cos.f64 t)) (sin.f64 (atan.f64 (/.f64 (/.f64 eh ew) (tan.f64 t))))))) |
Compiled 10846 to 4148 computations (61.8% saved)
Total 0.0b remaining (34.6%)
Threshold costs 0.0b (34.6%)
Compiled 19356 to 12354 computations (36.2% saved)
| 1× | egg-herbie |
| 4× | *-commutative_binary64 |
| 1× | +-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 21 | 51 |
| 1 | 26 | 51 |
| 1× | saturated |
| 1× | fuel |
Compiled 224 to 140 computations (37.5% saved)
Loading profile data...