Time bar (total: 2.0s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 0 |
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 1 |
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 2 |
| 50% | 50% | 50% | 0% | 0% | 0% | 0% | 3 |
| 66.7% | 50% | 25% | 0% | 25% | 0% | 0% | 4 |
| 80% | 50% | 12.5% | 0% | 37.5% | 0% | 0% | 5 |
| 88.9% | 50% | 6.2% | 0% | 43.7% | 0% | 0% | 6 |
| 94.4% | 53.1% | 3.1% | 0% | 43.7% | 0% | 0% | 7 |
| 97.2% | 54.7% | 1.6% | 0% | 43.7% | 0% | 0% | 8 |
| 98.6% | 54.7% | 0.8% | 0% | 44.5% | 0% | 0% | 9 |
| 99.3% | 54.7% | 0.4% | 0% | 44.9% | 0% | 0% | 10 |
| 99.6% | 54.9% | 0.2% | 0% | 44.9% | 0% | 0% | 11 |
| 99.8% | 54.9% | 0.1% | 0% | 45% | 0% | 0% | 12 |
Compiled 21 to 10 computations (52.4% saved)
| 784.0ms | 8256× | body | 256 | valid |
| 0.0ms | 1× | body | 256 | infinite |
| 2× | egg-herbie |
| 3024× | sqr-pow |
| 1242× | cube-prod |
| 896× | unswap-sqr |
| 826× | *-commutative |
| 822× | associate-*r* |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 43 |
| 1 | 25 | 31 |
| 2 | 56 | 19 |
| 3 | 112 | 7 |
| 4 | 372 | 7 |
| 5 | 1172 | 7 |
| 6 | 2108 | 7 |
| 7 | 2268 | 7 |
| 8 | 2510 | 7 |
| 9 | 2807 | 7 |
| 10 | 3191 | 7 |
| 11 | 3687 | 7 |
| 12 | 4311 | 7 |
| 13 | 5044 | 7 |
| 14 | 5433 | 7 |
| 15 | 5717 | 7 |
| 16 | 5996 | 7 |
| 17 | 6278 | 7 |
| 18 | 6464 | 7 |
| 19 | 7342 | 7 |
| 0 | 1 | 1 |
| 1× | saturated |
| 1× | node limit |
| Inputs |
|---|
0 |
| Outputs |
|---|
0 |
| Inputs |
|---|
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1) |
| Outputs |
|---|
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1) |
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 (*.f64 d1 (pow.f64 d1 3)) (pow.f64 d1 3))))) |
(*.f64 (*.f64 d1 d1) (*.f64 (pow.f64 d1 4) (pow.f64 d1 4))) |
(*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) |
(pow.f64 d1 10) |
Compiled 21 to 10 computations (52.4% saved)
| 1× | egg-herbie |
| 3024× | sqr-pow |
| 1242× | cube-prod |
| 896× | unswap-sqr |
| 826× | *-commutative |
| 822× | associate-*r* |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 43 |
| 1 | 25 | 31 |
| 2 | 56 | 19 |
| 3 | 112 | 7 |
| 4 | 372 | 7 |
| 5 | 1172 | 7 |
| 6 | 2108 | 7 |
| 7 | 2268 | 7 |
| 8 | 2510 | 7 |
| 9 | 2807 | 7 |
| 10 | 3191 | 7 |
| 11 | 3687 | 7 |
| 12 | 4311 | 7 |
| 13 | 5044 | 7 |
| 14 | 5433 | 7 |
| 15 | 5717 | 7 |
| 16 | 5996 | 7 |
| 17 | 6278 | 7 |
| 18 | 6464 | 7 |
| 19 | 7342 | 7 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1) |
| Outputs |
|---|
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1) |
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 (*.f64 d1 (pow.f64 d1 3)) (pow.f64 d1 3))))) |
(*.f64 (*.f64 d1 d1) (*.f64 (pow.f64 d1 4) (pow.f64 d1 4))) |
(*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) |
(pow.f64 d1 10) |
Compiled 56 to 31 computations (44.6% saved)
4 alts after pruning (4 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 2 | 3 | 5 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 2 | 4 | 6 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (pow.f64 d1 10) |
| ▶ | 99.9% | (*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) |
| ▶ | 99.8% | (*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1) |
Compiled 32 to 18 computations (43.8% saved)
Found 4 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 99.9% | (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) |
| ✓ | 99.9% | (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) |
| ✓ | 99.9% | (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) |
| ✓ | 99.8% | (*.f64 d1 (*.f64 d1 d1)) |
Compiled 90 to 9 computations (90% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | d1 | @ | 0 | (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) |
| 0.0ms | d1 | @ | -inf | (*.f64 d1 (*.f64 d1 d1)) |
| 0.0ms | d1 | @ | 0 | (*.f64 d1 (*.f64 d1 d1)) |
| 0.0ms | d1 | @ | 0 | (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) |
| 0.0ms | d1 | @ | inf | (*.f64 d1 (*.f64 d1 d1)) |
| 1× | batch-egg-rewrite |
| 1388× | add-sqr-sqrt |
| 1368× | *-un-lft-identity |
| 1274× | add-cube-cbrt |
| 1248× | add-cbrt-cube |
| 1234× | add-exp-log |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 64 |
| 1 | 165 | 34 |
| 2 | 2073 | 34 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 d1 (*.f64 d1 d1)) |
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) |
(*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) |
(*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) |
| Outputs |
|---|
(((-.f64 (+.f64 1 (pow.f64 d1 3)) 1) (2)) ((pow.f64 d1 3) (2)) ((pow.f64 (pow.f64 d1 3) 1) (2)) ((pow.f64 (pow.f64 d1 3/2) 2) (2)) ((pow.f64 (pow.f64 (pow.f64 d1 3) 3) 1/3) (2)) ((sqrt.f64 (pow.f64 d1 6)) (2)) ((log.f64 (exp.f64 (pow.f64 d1 3))) (2)) ((cbrt.f64 (pow.f64 (pow.f64 d1 3) 3)) (2)) ((expm1.f64 (log1p.f64 (pow.f64 d1 3))) (2)) ((exp.f64 (*.f64 3 (log.f64 d1))) (2)) ((exp.f64 (*.f64 (log.f64 d1) 3)) (2)) ((exp.f64 (*.f64 (*.f64 3 (log.f64 d1)) 1)) (2)) ((log1p.f64 (expm1.f64 (pow.f64 d1 3))) (2))) |
(((-.f64 (+.f64 1 (pow.f64 d1 4)) 1) (2)) ((pow.f64 d1 4) (2)) ((pow.f64 (*.f64 d1 d1) 2) (2)) ((pow.f64 (pow.f64 d1 4) 1) (2)) ((pow.f64 (*.f64 d1 (cbrt.f64 d1)) 3) (2)) ((pow.f64 (pow.f64 (pow.f64 d1 4) 3) 1/3) (2)) ((sqrt.f64 (pow.f64 (pow.f64 d1 4) 2)) (2)) ((log.f64 (exp.f64 (pow.f64 d1 4))) (2)) ((cbrt.f64 (pow.f64 (pow.f64 d1 4) 3)) (2)) ((expm1.f64 (log1p.f64 (pow.f64 d1 4))) (2)) ((exp.f64 (log.f64 (pow.f64 d1 4))) (2)) ((exp.f64 (*.f64 (log.f64 (pow.f64 d1 4)) 1)) (2)) ((log1p.f64 (expm1.f64 (pow.f64 d1 4))) (2))) |
(((-.f64 (+.f64 1 (pow.f64 d1 5)) 1) (2)) ((pow.f64 d1 5) (2)) ((pow.f64 (pow.f64 d1 5) 1) (2)) ((pow.f64 (sqrt.f64 (pow.f64 d1 5)) 2) (2)) ((pow.f64 (cbrt.f64 (pow.f64 d1 5)) 3) (2)) ((pow.f64 (pow.f64 (pow.f64 d1 5) 3) 1/3) (2)) ((sqrt.f64 (pow.f64 (pow.f64 d1 5) 2)) (2)) ((log.f64 (exp.f64 (pow.f64 d1 5))) (2)) ((cbrt.f64 (pow.f64 (pow.f64 d1 5) 3)) (2)) ((expm1.f64 (log1p.f64 (pow.f64 d1 5))) (2)) ((exp.f64 (log.f64 (pow.f64 d1 5))) (2)) ((exp.f64 (*.f64 (log.f64 (pow.f64 d1 5)) 1)) (2)) ((log1p.f64 (expm1.f64 (pow.f64 d1 5))) (2))) |
(((-.f64 (+.f64 1 (*.f64 d1 (pow.f64 d1 6))) 1) (2)) ((pow.f64 (*.f64 d1 (pow.f64 d1 6)) 1) (2)) ((pow.f64 (*.f64 (pow.f64 d1 3) (sqrt.f64 d1)) 2) (2)) ((pow.f64 (*.f64 (*.f64 d1 d1) (cbrt.f64 d1)) 3) (2)) ((pow.f64 (pow.f64 (*.f64 d1 (pow.f64 d1 6)) 3) 1/3) (2)) ((sqrt.f64 (pow.f64 (*.f64 d1 (pow.f64 d1 6)) 2)) (2)) ((log.f64 (pow.f64 (exp.f64 (pow.f64 d1 6)) d1)) (2)) ((cbrt.f64 (pow.f64 (*.f64 d1 (pow.f64 d1 6)) 3)) (2)) ((expm1.f64 (log1p.f64 (*.f64 d1 (pow.f64 d1 6)))) (2)) ((exp.f64 (log.f64 (*.f64 d1 (pow.f64 d1 6)))) (2)) ((exp.f64 (*.f64 (log.f64 (*.f64 d1 (pow.f64 d1 6))) 1)) (2)) ((log1p.f64 (expm1.f64 (*.f64 d1 (pow.f64 d1 6)))) (2))) |
| 1× | egg-herbie |
| 1356× | distribute-rgt-in |
| 1324× | distribute-lft-in |
| 1236× | associate-+r+ |
| 1204× | associate-+l+ |
| 580× | *-commutative |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 110 | 693 |
| 1 | 254 | 693 |
| 2 | 1015 | 693 |
| 3 | 2526 | 693 |
| 1× | node limit |
| Inputs |
|---|
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(-.f64 (+.f64 1 (pow.f64 d1 3)) 1) |
(pow.f64 d1 3) |
(pow.f64 (pow.f64 d1 3) 1) |
(pow.f64 (pow.f64 d1 3/2) 2) |
(pow.f64 (pow.f64 (pow.f64 d1 3) 3) 1/3) |
(sqrt.f64 (pow.f64 d1 6)) |
(log.f64 (exp.f64 (pow.f64 d1 3))) |
(cbrt.f64 (pow.f64 (pow.f64 d1 3) 3)) |
(expm1.f64 (log1p.f64 (pow.f64 d1 3))) |
(exp.f64 (*.f64 3 (log.f64 d1))) |
(exp.f64 (*.f64 (log.f64 d1) 3)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 d1)) 1)) |
(log1p.f64 (expm1.f64 (pow.f64 d1 3))) |
(-.f64 (+.f64 1 (pow.f64 d1 4)) 1) |
(pow.f64 d1 4) |
(pow.f64 (*.f64 d1 d1) 2) |
(pow.f64 (pow.f64 d1 4) 1) |
(pow.f64 (*.f64 d1 (cbrt.f64 d1)) 3) |
(pow.f64 (pow.f64 (pow.f64 d1 4) 3) 1/3) |
(sqrt.f64 (pow.f64 (pow.f64 d1 4) 2)) |
(log.f64 (exp.f64 (pow.f64 d1 4))) |
(cbrt.f64 (pow.f64 (pow.f64 d1 4) 3)) |
(expm1.f64 (log1p.f64 (pow.f64 d1 4))) |
(exp.f64 (log.f64 (pow.f64 d1 4))) |
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 4)) 1)) |
(log1p.f64 (expm1.f64 (pow.f64 d1 4))) |
(-.f64 (+.f64 1 (pow.f64 d1 5)) 1) |
(pow.f64 d1 5) |
(pow.f64 (pow.f64 d1 5) 1) |
(pow.f64 (sqrt.f64 (pow.f64 d1 5)) 2) |
(pow.f64 (cbrt.f64 (pow.f64 d1 5)) 3) |
(pow.f64 (pow.f64 (pow.f64 d1 5) 3) 1/3) |
(sqrt.f64 (pow.f64 (pow.f64 d1 5) 2)) |
(log.f64 (exp.f64 (pow.f64 d1 5))) |
(cbrt.f64 (pow.f64 (pow.f64 d1 5) 3)) |
(expm1.f64 (log1p.f64 (pow.f64 d1 5))) |
(exp.f64 (log.f64 (pow.f64 d1 5))) |
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 5)) 1)) |
(log1p.f64 (expm1.f64 (pow.f64 d1 5))) |
(-.f64 (+.f64 1 (*.f64 d1 (pow.f64 d1 6))) 1) |
(pow.f64 (*.f64 d1 (pow.f64 d1 6)) 1) |
(pow.f64 (*.f64 (pow.f64 d1 3) (sqrt.f64 d1)) 2) |
(pow.f64 (*.f64 (*.f64 d1 d1) (cbrt.f64 d1)) 3) |
(pow.f64 (pow.f64 (*.f64 d1 (pow.f64 d1 6)) 3) 1/3) |
(sqrt.f64 (pow.f64 (*.f64 d1 (pow.f64 d1 6)) 2)) |
(log.f64 (pow.f64 (exp.f64 (pow.f64 d1 6)) d1)) |
(cbrt.f64 (pow.f64 (*.f64 d1 (pow.f64 d1 6)) 3)) |
(expm1.f64 (log1p.f64 (*.f64 d1 (pow.f64 d1 6)))) |
(exp.f64 (log.f64 (*.f64 d1 (pow.f64 d1 6)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 d1 (pow.f64 d1 6))) 1)) |
(log1p.f64 (expm1.f64 (*.f64 d1 (pow.f64 d1 6)))) |
| Outputs |
|---|
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(pow.f64 d1 7) |
(-.f64 (+.f64 1 (pow.f64 d1 3)) 1) |
(pow.f64 d1 3) |
(pow.f64 d1 3) |
(pow.f64 (pow.f64 d1 3) 1) |
(pow.f64 d1 3) |
(pow.f64 (pow.f64 d1 3/2) 2) |
(pow.f64 d1 3) |
(pow.f64 (pow.f64 (pow.f64 d1 3) 3) 1/3) |
(pow.f64 d1 3) |
(sqrt.f64 (pow.f64 d1 6)) |
(pow.f64 d1 3) |
(log.f64 (exp.f64 (pow.f64 d1 3))) |
(pow.f64 d1 3) |
(cbrt.f64 (pow.f64 (pow.f64 d1 3) 3)) |
(pow.f64 d1 3) |
(expm1.f64 (log1p.f64 (pow.f64 d1 3))) |
(pow.f64 d1 3) |
(exp.f64 (*.f64 3 (log.f64 d1))) |
(pow.f64 d1 3) |
(exp.f64 (*.f64 (log.f64 d1) 3)) |
(pow.f64 d1 3) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 d1)) 1)) |
(pow.f64 d1 3) |
(log1p.f64 (expm1.f64 (pow.f64 d1 3))) |
(pow.f64 d1 3) |
(-.f64 (+.f64 1 (pow.f64 d1 4)) 1) |
(pow.f64 d1 4) |
(pow.f64 d1 4) |
(pow.f64 (*.f64 d1 d1) 2) |
(pow.f64 d1 4) |
(pow.f64 (pow.f64 d1 4) 1) |
(pow.f64 d1 4) |
(pow.f64 (*.f64 d1 (cbrt.f64 d1)) 3) |
(pow.f64 d1 4) |
(pow.f64 (pow.f64 (pow.f64 d1 4) 3) 1/3) |
(pow.f64 d1 4) |
(sqrt.f64 (pow.f64 (pow.f64 d1 4) 2)) |
(pow.f64 d1 4) |
(log.f64 (exp.f64 (pow.f64 d1 4))) |
(pow.f64 d1 4) |
(cbrt.f64 (pow.f64 (pow.f64 d1 4) 3)) |
(pow.f64 d1 4) |
(expm1.f64 (log1p.f64 (pow.f64 d1 4))) |
(pow.f64 d1 4) |
(exp.f64 (log.f64 (pow.f64 d1 4))) |
(pow.f64 d1 4) |
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 4)) 1)) |
(pow.f64 d1 4) |
(log1p.f64 (expm1.f64 (pow.f64 d1 4))) |
(pow.f64 d1 4) |
(-.f64 (+.f64 1 (pow.f64 d1 5)) 1) |
(pow.f64 d1 5) |
(pow.f64 d1 5) |
(pow.f64 (pow.f64 d1 5) 1) |
(pow.f64 d1 5) |
(pow.f64 (sqrt.f64 (pow.f64 d1 5)) 2) |
(pow.f64 d1 5) |
(pow.f64 (cbrt.f64 (pow.f64 d1 5)) 3) |
(pow.f64 d1 5) |
(pow.f64 (pow.f64 (pow.f64 d1 5) 3) 1/3) |
(pow.f64 d1 5) |
(sqrt.f64 (pow.f64 (pow.f64 d1 5) 2)) |
(pow.f64 d1 5) |
(log.f64 (exp.f64 (pow.f64 d1 5))) |
(pow.f64 d1 5) |
(cbrt.f64 (pow.f64 (pow.f64 d1 5) 3)) |
(pow.f64 d1 5) |
(expm1.f64 (log1p.f64 (pow.f64 d1 5))) |
(pow.f64 d1 5) |
(exp.f64 (log.f64 (pow.f64 d1 5))) |
(pow.f64 d1 5) |
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 5)) 1)) |
(pow.f64 d1 5) |
(log1p.f64 (expm1.f64 (pow.f64 d1 5))) |
(pow.f64 d1 5) |
(-.f64 (+.f64 1 (*.f64 d1 (pow.f64 d1 6))) 1) |
(pow.f64 d1 7) |
(pow.f64 (*.f64 d1 (pow.f64 d1 6)) 1) |
(pow.f64 d1 7) |
(pow.f64 (*.f64 (pow.f64 d1 3) (sqrt.f64 d1)) 2) |
(pow.f64 d1 7) |
(pow.f64 (*.f64 (*.f64 d1 d1) (cbrt.f64 d1)) 3) |
(pow.f64 d1 7) |
(pow.f64 (pow.f64 (*.f64 d1 (pow.f64 d1 6)) 3) 1/3) |
(pow.f64 d1 7) |
(sqrt.f64 (pow.f64 (*.f64 d1 (pow.f64 d1 6)) 2)) |
(pow.f64 d1 7) |
(log.f64 (pow.f64 (exp.f64 (pow.f64 d1 6)) d1)) |
(pow.f64 d1 7) |
(cbrt.f64 (pow.f64 (*.f64 d1 (pow.f64 d1 6)) 3)) |
(pow.f64 d1 7) |
(expm1.f64 (log1p.f64 (*.f64 d1 (pow.f64 d1 6)))) |
(pow.f64 d1 7) |
(exp.f64 (log.f64 (*.f64 d1 (pow.f64 d1 6)))) |
(pow.f64 d1 7) |
(exp.f64 (*.f64 (log.f64 (*.f64 d1 (pow.f64 d1 6))) 1)) |
(pow.f64 d1 7) |
(log1p.f64 (expm1.f64 (*.f64 d1 (pow.f64 d1 6)))) |
(pow.f64 d1 7) |
Found 1 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 99.9% | (*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) |
Compiled 13 to 9 computations (30.8% saved)
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | d1 | @ | 0 | (*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) |
| 0.0ms | d1 | @ | inf | (*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) |
| 0.0ms | d1 | @ | -inf | (*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) |
| 1× | batch-egg-rewrite |
| 1100× | add-sqr-sqrt |
| 1066× | *-un-lft-identity |
| 1012× | add-cube-cbrt |
| 1006× | pow1 |
| 1004× | add-cbrt-cube |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 7 |
| 1 | 130 | 7 |
| 2 | 1475 | 7 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) |
| Outputs |
|---|
(((-.f64 (+.f64 1 (pow.f64 d1 10)) 1) (2)) ((pow.f64 d1 10) (2)) ((pow.f64 (pow.f64 d1 5) 2) (2)) ((pow.f64 (pow.f64 d1 10) 1) (2)) ((pow.f64 (cbrt.f64 (pow.f64 d1 10)) 3) (2)) ((pow.f64 (pow.f64 (pow.f64 d1 10) 3) 1/3) (2)) ((pow.f64 (*.f64 d1 d1) 5) (2)) ((sqrt.f64 (pow.f64 d1 20)) (2)) ((log.f64 (exp.f64 (pow.f64 d1 10))) (2)) ((cbrt.f64 (pow.f64 (pow.f64 d1 10) 3)) (2)) ((expm1.f64 (log1p.f64 (pow.f64 d1 10))) (2)) ((exp.f64 (*.f64 (log.f64 d1) 10)) (2)) ((log1p.f64 (expm1.f64 (pow.f64 d1 10))) (2))) |
| 1× | egg-herbie |
| 1030× | associate--l+ |
| 948× | fma-def |
| 688× | +-commutative |
| 562× | associate-+r+ |
| 530× | associate-+l+ |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 35 | 181 |
| 1 | 78 | 181 |
| 2 | 309 | 181 |
| 3 | 1448 | 181 |
| 4 | 3237 | 181 |
| 5 | 6541 | 181 |
| 1× | node limit |
| Inputs |
|---|
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(-.f64 (+.f64 1 (pow.f64 d1 10)) 1) |
(pow.f64 d1 10) |
(pow.f64 (pow.f64 d1 5) 2) |
(pow.f64 (pow.f64 d1 10) 1) |
(pow.f64 (cbrt.f64 (pow.f64 d1 10)) 3) |
(pow.f64 (pow.f64 (pow.f64 d1 10) 3) 1/3) |
(pow.f64 (*.f64 d1 d1) 5) |
(sqrt.f64 (pow.f64 d1 20)) |
(log.f64 (exp.f64 (pow.f64 d1 10))) |
(cbrt.f64 (pow.f64 (pow.f64 d1 10) 3)) |
(expm1.f64 (log1p.f64 (pow.f64 d1 10))) |
(exp.f64 (*.f64 (log.f64 d1) 10)) |
(log1p.f64 (expm1.f64 (pow.f64 d1 10))) |
| Outputs |
|---|
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(-.f64 (+.f64 1 (pow.f64 d1 10)) 1) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 (pow.f64 d1 5) 2) |
(pow.f64 d1 10) |
(pow.f64 (pow.f64 d1 10) 1) |
(pow.f64 d1 10) |
(pow.f64 (cbrt.f64 (pow.f64 d1 10)) 3) |
(pow.f64 d1 10) |
(pow.f64 (pow.f64 (pow.f64 d1 10) 3) 1/3) |
(pow.f64 d1 10) |
(pow.f64 (*.f64 d1 d1) 5) |
(sqrt.f64 (pow.f64 d1 20)) |
(pow.f64 d1 10) |
(log.f64 (exp.f64 (pow.f64 d1 10))) |
(pow.f64 d1 10) |
(cbrt.f64 (pow.f64 (pow.f64 d1 10) 3)) |
(pow.f64 d1 10) |
(expm1.f64 (log1p.f64 (pow.f64 d1 10))) |
(pow.f64 d1 10) |
(exp.f64 (*.f64 (log.f64 d1) 10)) |
(pow.f64 d1 10) |
(log1p.f64 (expm1.f64 (pow.f64 d1 10))) |
(pow.f64 d1 10) |
Found 1 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (pow.f64 d1 10) |
Compiled 6 to 4 computations (33.3% saved)
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | d1 | @ | -inf | (pow.f64 d1 10) |
| 1.0ms | d1 | @ | inf | (pow.f64 d1 10) |
| 0.0ms | d1 | @ | 0 | (pow.f64 d1 10) |
| 1× | batch-egg-rewrite |
| 940× | add-sqr-sqrt |
| 912× | *-un-lft-identity |
| 866× | pow1 |
| 864× | add-cube-cbrt |
| 856× | add-cbrt-cube |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 5 | 7 |
| 1 | 106 | 7 |
| 2 | 1197 | 7 |
| 1× | node limit |
| Inputs |
|---|
(pow.f64 d1 10) |
| Outputs |
|---|
(((-.f64 (+.f64 (pow.f64 d1 10) 1) 1) (2)) ((*.f64 (pow.f64 d1 10) 1) (2)) ((*.f64 1 (pow.f64 d1 10)) (2)) ((*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) (2)) ((*.f64 (cbrt.f64 (pow.f64 d1 10)) (cbrt.f64 (pow.f64 d1 20))) (2)) ((*.f64 (cbrt.f64 (pow.f64 d1 20)) (cbrt.f64 (pow.f64 d1 10))) (2)) ((*.f64 (pow.f64 (sqrt.f64 d1) 10) (pow.f64 (sqrt.f64 d1) 10)) (2)) ((*.f64 (pow.f64 (pow.f64 (cbrt.f64 d1) 2) 10) (pow.f64 (cbrt.f64 d1) 10)) (2)) ((*.f64 (pow.f64 (cbrt.f64 d1) 10) (pow.f64 (pow.f64 (cbrt.f64 d1) 2) 10)) (2)) ((sqrt.f64 (pow.f64 d1 20)) (2)) ((log.f64 (exp.f64 (pow.f64 d1 10))) (2)) ((cbrt.f64 (pow.f64 (pow.f64 d1 10) 3)) (2)) ((expm1.f64 (log1p.f64 (pow.f64 d1 10))) (2)) ((exp.f64 (*.f64 10 (log.f64 d1))) (2)) ((log1p.f64 (expm1.f64 (pow.f64 d1 10))) (2))) |
| 1× | egg-herbie |
| 1266× | associate-*r* |
| 1214× | associate-*r/ |
| 968× | associate-*l* |
| 802× | +-commutative |
| 570× | distribute-lft-out |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 43 | 261 |
| 1 | 80 | 201 |
| 2 | 169 | 201 |
| 3 | 588 | 201 |
| 4 | 3487 | 201 |
| 5 | 6971 | 201 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 (+.f64 (pow.f64 d1 10) 1) 1) |
(*.f64 (pow.f64 d1 10) 1) |
(*.f64 1 (pow.f64 d1 10)) |
(*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) |
(*.f64 (cbrt.f64 (pow.f64 d1 10)) (cbrt.f64 (pow.f64 d1 20))) |
(*.f64 (cbrt.f64 (pow.f64 d1 20)) (cbrt.f64 (pow.f64 d1 10))) |
(*.f64 (pow.f64 (sqrt.f64 d1) 10) (pow.f64 (sqrt.f64 d1) 10)) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 d1) 2) 10) (pow.f64 (cbrt.f64 d1) 10)) |
(*.f64 (pow.f64 (cbrt.f64 d1) 10) (pow.f64 (pow.f64 (cbrt.f64 d1) 2) 10)) |
(sqrt.f64 (pow.f64 d1 20)) |
(log.f64 (exp.f64 (pow.f64 d1 10))) |
(cbrt.f64 (pow.f64 (pow.f64 d1 10) 3)) |
(expm1.f64 (log1p.f64 (pow.f64 d1 10))) |
(exp.f64 (*.f64 10 (log.f64 d1))) |
(log1p.f64 (expm1.f64 (pow.f64 d1 10))) |
| Outputs |
|---|
(-.f64 (+.f64 (pow.f64 d1 10) 1) 1) |
(+.f64 (pow.f64 d1 10) 0) |
(pow.f64 d1 10) |
(*.f64 (pow.f64 d1 10) 1) |
(+.f64 (pow.f64 d1 10) 0) |
(pow.f64 d1 10) |
(*.f64 1 (pow.f64 d1 10)) |
(+.f64 (pow.f64 d1 10) 0) |
(pow.f64 d1 10) |
(*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) |
(+.f64 (pow.f64 d1 10) 0) |
(pow.f64 d1 10) |
(*.f64 (cbrt.f64 (pow.f64 d1 10)) (cbrt.f64 (pow.f64 d1 20))) |
(*.f64 (cbrt.f64 (pow.f64 d1 20)) (cbrt.f64 (pow.f64 d1 10))) |
(*.f64 (cbrt.f64 (pow.f64 d1 10)) (cbrt.f64 (pow.f64 d1 20))) |
(*.f64 (pow.f64 (sqrt.f64 d1) 10) (pow.f64 (sqrt.f64 d1) 10)) |
(pow.f64 (sqrt.f64 d1) 20) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 d1) 2) 10) (pow.f64 (cbrt.f64 d1) 10)) |
(*.f64 (pow.f64 (cbrt.f64 d1) 10) (pow.f64 (pow.f64 (cbrt.f64 d1) 2) 10)) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 d1) 2) 10) (pow.f64 (cbrt.f64 d1) 10)) |
(sqrt.f64 (pow.f64 d1 20)) |
(+.f64 (pow.f64 d1 10) 0) |
(pow.f64 d1 10) |
(log.f64 (exp.f64 (pow.f64 d1 10))) |
(+.f64 (pow.f64 d1 10) 0) |
(pow.f64 d1 10) |
(cbrt.f64 (pow.f64 (pow.f64 d1 10) 3)) |
(+.f64 (pow.f64 d1 10) 0) |
(pow.f64 d1 10) |
(expm1.f64 (log1p.f64 (pow.f64 d1 10))) |
(+.f64 (pow.f64 d1 10) 0) |
(pow.f64 d1 10) |
(exp.f64 (*.f64 10 (log.f64 d1))) |
(+.f64 (pow.f64 d1 10) 0) |
(pow.f64 d1 10) |
(log1p.f64 (expm1.f64 (pow.f64 d1 10))) |
(+.f64 (pow.f64 d1 10) 0) |
(pow.f64 d1 10) |
Compiled 1041 to 610 computations (41.4% saved)
3 alts after pruning (1 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 82 | 1 | 83 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 1 | 2 |
| Total | 83 | 3 | 86 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 99.9% | (pow.f64 (pow.f64 d1 5) 2) |
| ✓ | 100.0% | (pow.f64 d1 10) |
| ✓ | 99.8% | (*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1) |
Compiled 30 to 17 computations (43.3% saved)
Found 1 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 99.9% | (pow.f64 (pow.f64 d1 5) 2) |
Compiled 12 to 9 computations (25% saved)
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | d1 | @ | -inf | (pow.f64 (pow.f64 d1 5) 2) |
| 0.0ms | d1 | @ | inf | (pow.f64 (pow.f64 d1 5) 2) |
| 0.0ms | d1 | @ | 0 | (pow.f64 (pow.f64 d1 5) 2) |
| 1× | batch-egg-rewrite |
| 1228× | add-sqr-sqrt |
| 1192× | *-un-lft-identity |
| 1130× | add-cube-cbrt |
| 1122× | add-cbrt-cube |
| 1110× | add-exp-log |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 7 |
| 1 | 152 | 7 |
| 2 | 1640 | 7 |
| 1× | node limit |
| Inputs |
|---|
(pow.f64 (pow.f64 d1 5) 2) |
| Outputs |
|---|
(((-.f64 (+.f64 1 (pow.f64 d1 10)) 1) (2)) ((*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) (2)) ((*.f64 (pow.f64 d1 10) 1) (2)) ((*.f64 1 (pow.f64 d1 10)) (2)) ((*.f64 (pow.f64 d1 5/2) (*.f64 (pow.f64 d1 5/2) (pow.f64 d1 5))) (2)) ((*.f64 (cbrt.f64 (pow.f64 d1 10)) (cbrt.f64 (pow.f64 d1 20))) (2)) ((*.f64 (cbrt.f64 (pow.f64 d1 10)) (*.f64 (cbrt.f64 (pow.f64 d1 5)) (pow.f64 d1 5))) (2)) ((*.f64 (cbrt.f64 (pow.f64 d1 20)) (cbrt.f64 (pow.f64 d1 10))) (2)) ((*.f64 (*.f64 (pow.f64 d1 5) (pow.f64 d1 5/2)) (pow.f64 d1 5/2)) (2)) ((*.f64 (*.f64 (pow.f64 d1 5) (cbrt.f64 (pow.f64 d1 10))) (cbrt.f64 (pow.f64 d1 5))) (2)) ((*.f64 (pow.f64 (sqrt.f64 d1) 10) (pow.f64 (sqrt.f64 d1) 10)) (2)) ((*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 d1)) 10) (pow.f64 (cbrt.f64 d1) 10)) (2)) ((sqrt.f64 (pow.f64 d1 20)) (2)) ((log.f64 (exp.f64 (pow.f64 d1 10))) (2)) ((cbrt.f64 (pow.f64 (pow.f64 d1 10) 3)) (2)) ((expm1.f64 (log1p.f64 (pow.f64 d1 10))) (2)) ((exp.f64 (*.f64 (log.f64 d1) 10)) (2)) ((log1p.f64 (expm1.f64 (pow.f64 d1 10))) (2))) |
| 1× | egg-herbie |
| 1276× | associate--l+ |
| 878× | associate-+r+ |
| 842× | associate-+l+ |
| 558× | associate-+r- |
| 554× | associate-+l- |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 53 | 344 |
| 1 | 101 | 344 |
| 2 | 256 | 344 |
| 3 | 950 | 344 |
| 4 | 2380 | 344 |
| 5 | 5889 | 344 |
| 1× | node limit |
| Inputs |
|---|
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(-.f64 (+.f64 1 (pow.f64 d1 10)) 1) |
(*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) |
(*.f64 (pow.f64 d1 10) 1) |
(*.f64 1 (pow.f64 d1 10)) |
(*.f64 (pow.f64 d1 5/2) (*.f64 (pow.f64 d1 5/2) (pow.f64 d1 5))) |
(*.f64 (cbrt.f64 (pow.f64 d1 10)) (cbrt.f64 (pow.f64 d1 20))) |
(*.f64 (cbrt.f64 (pow.f64 d1 10)) (*.f64 (cbrt.f64 (pow.f64 d1 5)) (pow.f64 d1 5))) |
(*.f64 (cbrt.f64 (pow.f64 d1 20)) (cbrt.f64 (pow.f64 d1 10))) |
(*.f64 (*.f64 (pow.f64 d1 5) (pow.f64 d1 5/2)) (pow.f64 d1 5/2)) |
(*.f64 (*.f64 (pow.f64 d1 5) (cbrt.f64 (pow.f64 d1 10))) (cbrt.f64 (pow.f64 d1 5))) |
(*.f64 (pow.f64 (sqrt.f64 d1) 10) (pow.f64 (sqrt.f64 d1) 10)) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 d1)) 10) (pow.f64 (cbrt.f64 d1) 10)) |
(sqrt.f64 (pow.f64 d1 20)) |
(log.f64 (exp.f64 (pow.f64 d1 10))) |
(cbrt.f64 (pow.f64 (pow.f64 d1 10) 3)) |
(expm1.f64 (log1p.f64 (pow.f64 d1 10))) |
(exp.f64 (*.f64 (log.f64 d1) 10)) |
(log1p.f64 (expm1.f64 (pow.f64 d1 10))) |
| Outputs |
|---|
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(pow.f64 d1 10) |
(-.f64 (+.f64 1 (pow.f64 d1 10)) 1) |
(pow.f64 d1 10) |
(*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) |
(pow.f64 d1 10) |
(*.f64 (pow.f64 d1 10) 1) |
(pow.f64 d1 10) |
(*.f64 1 (pow.f64 d1 10)) |
(pow.f64 d1 10) |
(*.f64 (pow.f64 d1 5/2) (*.f64 (pow.f64 d1 5/2) (pow.f64 d1 5))) |
(pow.f64 d1 10) |
(*.f64 (cbrt.f64 (pow.f64 d1 10)) (cbrt.f64 (pow.f64 d1 20))) |
(*.f64 (cbrt.f64 (pow.f64 d1 10)) (*.f64 (cbrt.f64 (pow.f64 d1 5)) (pow.f64 d1 5))) |
(*.f64 (cbrt.f64 (pow.f64 d1 10)) (*.f64 (pow.f64 d1 5) (cbrt.f64 (pow.f64 d1 5)))) |
(*.f64 (pow.f64 d1 5) (*.f64 (cbrt.f64 (pow.f64 d1 10)) (cbrt.f64 (pow.f64 d1 5)))) |
(*.f64 (cbrt.f64 (pow.f64 d1 5)) (*.f64 (pow.f64 d1 5) (cbrt.f64 (pow.f64 d1 10)))) |
(*.f64 (cbrt.f64 (pow.f64 d1 20)) (cbrt.f64 (pow.f64 d1 10))) |
(*.f64 (cbrt.f64 (pow.f64 d1 10)) (cbrt.f64 (pow.f64 d1 20))) |
(*.f64 (*.f64 (pow.f64 d1 5) (pow.f64 d1 5/2)) (pow.f64 d1 5/2)) |
(pow.f64 d1 10) |
(*.f64 (*.f64 (pow.f64 d1 5) (cbrt.f64 (pow.f64 d1 10))) (cbrt.f64 (pow.f64 d1 5))) |
(*.f64 (cbrt.f64 (pow.f64 d1 10)) (*.f64 (pow.f64 d1 5) (cbrt.f64 (pow.f64 d1 5)))) |
(*.f64 (pow.f64 d1 5) (*.f64 (cbrt.f64 (pow.f64 d1 10)) (cbrt.f64 (pow.f64 d1 5)))) |
(*.f64 (cbrt.f64 (pow.f64 d1 5)) (*.f64 (pow.f64 d1 5) (cbrt.f64 (pow.f64 d1 10)))) |
(*.f64 (pow.f64 (sqrt.f64 d1) 10) (pow.f64 (sqrt.f64 d1) 10)) |
(pow.f64 (sqrt.f64 d1) 20) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 d1)) 10) (pow.f64 (cbrt.f64 d1) 10)) |
(sqrt.f64 (pow.f64 d1 20)) |
(pow.f64 d1 10) |
(log.f64 (exp.f64 (pow.f64 d1 10))) |
(pow.f64 d1 10) |
(cbrt.f64 (pow.f64 (pow.f64 d1 10) 3)) |
(pow.f64 d1 10) |
(expm1.f64 (log1p.f64 (pow.f64 d1 10))) |
(pow.f64 d1 10) |
(exp.f64 (*.f64 (log.f64 d1) 10)) |
(pow.f64 d1 10) |
(log1p.f64 (expm1.f64 (pow.f64 d1 10))) |
(pow.f64 d1 10) |
Compiled 187 to 142 computations (24.1% saved)
3 alts after pruning (0 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 23 | 0 | 23 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 23 | 3 | 26 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 99.9% | (pow.f64 (pow.f64 d1 5) 2) |
| ✓ | 100.0% | (pow.f64 d1 10) |
| ✓ | 99.8% | (*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1) |
Compiled 30 to 17 computations (43.3% saved)
Total -0.1b remaining (-3475.5%)
Threshold costs -0.1b (-3475.5%)
| Inputs |
|---|
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1) |
(pow.f64 d1 10) |
(pow.f64 (pow.f64 d1 5) 2) |
(*.f64 (pow.f64 d1 5) (pow.f64 d1 5)) |
| Outputs |
|---|
(pow.f64 d1 10) |
2 calls:
| 4.0ms | d1 |
| 2.0ms | (*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1) |
| Accuracy | Segments | Branch |
|---|---|---|
| 100.0% | 1 | d1 |
| 100.0% | 1 | (*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1) |
Compiled 57 to 30 computations (47.4% saved)
| 1× | egg-herbie |
| 14× | *-commutative |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 62 |
| 1 | 20 | 62 |
| 1× | done |
| 1× | saturated |
| Inputs |
|---|
(pow.f64 d1 10) |
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1) |
| Outputs |
|---|
(pow.f64 d1 10) |
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1) |
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 (*.f64 d1 d1) (*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 d1 d1)))))))) |
Compiled 24 to 12 computations (50% saved)
| 1× | egg-herbie |
| 3024× | sqr-pow |
| 1242× | cube-prod |
| 896× | unswap-sqr |
| 826× | *-commutative |
| 822× | associate-*r* |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 43 |
| 1 | 25 | 31 |
| 2 | 56 | 19 |
| 3 | 112 | 7 |
| 4 | 372 | 7 |
| 5 | 1172 | 7 |
| 6 | 2108 | 7 |
| 7 | 2268 | 7 |
| 8 | 2510 | 7 |
| 9 | 2807 | 7 |
| 10 | 3191 | 7 |
| 11 | 3687 | 7 |
| 12 | 4311 | 7 |
| 13 | 5044 | 7 |
| 14 | 5433 | 7 |
| 15 | 5717 | 7 |
| 16 | 5996 | 7 |
| 17 | 6278 | 7 |
| 18 | 6464 | 7 |
| 19 | 7342 | 7 |
| 1× | node limit |
Compiled 235 to 95 computations (59.6% saved)
Compiled 23 to 11 computations (52.2% saved)
Loading profile data...