
Time bar (total: 11.6s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 0% | 0% | 199.8% | -99.8% | 0% | 0% | 0% | 1 |
| 0% | 0% | 399.6% | -299.6% | 0% | 0% | 0% | 2 |
| 100% | 399.6% | 0% | -299.6% | 0% | 0% | 0% | 3 |
Compiled 14 to 11 computations (21.4% saved)
| 654.0ms | 2057× | body | 512 | infinite |
| 579.0ms | 2548× | body | 256 | valid |
| 388.0ms | 2053× | body | 256 | infinite |
| 298.0ms | 526× | body | 2048 | valid |
| 206.0ms | 629× | body | 1024 | valid |
| 111.0ms | 443× | body | 512 | valid |
| 1× | egg-herbie |
| 1664× | fma-def |
| 928× | associate-/r/ |
| 792× | sqr-pow |
| 750× | associate-/l/ |
| 676× | fabs-mul |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 27 | 140 |
| 1 | 81 | 140 |
| 2 | 182 | 140 |
| 3 | 343 | 132 |
| 4 | 674 | 132 |
| 5 | 1905 | 132 |
| 6 | 3540 | 132 |
| 7 | 3945 | 132 |
| 8 | 4964 | 132 |
| 9 | 5834 | 132 |
| 10 | 7272 | 132 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
(*.f64 (*.f64 1/2 (cos.f64 (neg.f64 re))) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 (neg.f64 im))) (exp.f64 (neg.f64 im)))) |
(*.f64 (*.f64 1/2 (cos.f64 im)) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re))) |
| Outputs |
|---|
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cos.f64 re))) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) |
(*.f64 (*.f64 1/2 (cos.f64 (neg.f64 re))) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cos.f64 re))) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 (neg.f64 im))) (exp.f64 (neg.f64 im)))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cos.f64 re))) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) |
(*.f64 (*.f64 1/2 (cos.f64 im)) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re))) |
(*.f64 (cos.f64 im) (fma.f64 1/2 (exp.f64 re) (/.f64 1/2 (exp.f64 re)))) |
(abs re)
(abs im)
Compiled 15 to 12 computations (20% saved)
| 1× | egg-herbie |
| 1464× | fma-def |
| 1028× | associate-/l* |
| 860× | unswap-sqr |
| 748× | times-frac |
| 636× | associate-/r/ |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 35 |
| 1 | 30 | 35 |
| 2 | 73 | 35 |
| 3 | 132 | 33 |
| 4 | 194 | 33 |
| 5 | 348 | 33 |
| 6 | 790 | 33 |
| 7 | 1337 | 33 |
| 8 | 3879 | 33 |
| 9 | 4401 | 33 |
| 10 | 5368 | 33 |
| 11 | 5952 | 33 |
| 12 | 6984 | 33 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| Outputs |
|---|
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) |
Compiled 35 to 18 computations (48.6% saved)
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 2 | 1 | 3 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 2 | 2 | 4 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| ▶ | 100.0% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
Compiled 26 to 20 computations (23.1% saved)
Found 2 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| ✓ | 100.0% | (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) |
Compiled 36 to 14 computations (61.1% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | im | @ | inf | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| 1.0ms | re | @ | inf | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| 1.0ms | im | @ | -inf | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| 1.0ms | re | @ | -inf | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| 1.0ms | re | @ | 0 | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| 1× | batch-egg-rewrite |
| 282× | add-sqr-sqrt |
| 272× | pow1 |
| 272× | *-un-lft-identity |
| 264× | add-exp-log |
| 262× | add-log-exp |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 54 |
| 1 | 273 | 54 |
| 2 | 4277 | 54 |
| 1× | unsound |
| Inputs |
|---|
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| Outputs |
|---|
-2 |
0 |
1/512 |
1/64 |
1/16 |
1/8 |
1/4 |
1/2 |
2 |
im |
(+.f64 (cos.f64 re) (cos.f64 re)) |
(+.f64 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 -2 (cos.f64 re)))) 1) |
(/.f64 (*.f64 -2 (cos.f64 re)) -2) |
(/.f64 (*.f64 -2 (cos.f64 re)) 1) |
(/.f64 (*.f64 -2 (cos.f64 re)) (+.f64 (*.f64 -2 (cos.f64 re)) (-.f64 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re))))) |
(/.f64 (-.f64 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re))) (-.f64 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re)))) |
(pow.f64 (*.f64 -2 (cos.f64 re)) -2) |
(pow.f64 (*.f64 -2 (cos.f64 re)) 1) |
(pow.f64 (*.f64 -2 (cos.f64 re)) 3) |
(pow.f64 (*.f64 -2 (cos.f64 re)) 1/3) |
(sqrt.f64 (*.f64 -2 (cos.f64 re))) |
(fabs.f64 (*.f64 -2 (cos.f64 re))) |
(log.f64 (pow.f64 1 (cos.f64 re))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -2 (cos.f64 re))))) |
(cbrt.f64 (*.f64 -2 (cos.f64 re))) |
(expm1.f64 (log1p.f64 (*.f64 -2 (cos.f64 re)))) |
(exp.f64 (log.f64 (*.f64 -2 (cos.f64 re)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 -2 (cos.f64 re))) 1)) |
(exp.f64 (+.f64 (log.f64 (*.f64 -2 (cos.f64 re))) -2)) |
(log1p.f64 (expm1.f64 (*.f64 -2 (cos.f64 re)))) |
(fma.f64 1 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re))) |
(fma.f64 (*.f64 -2 (cos.f64 re)) 1 (*.f64 -2 (cos.f64 re))) |
| 1× | egg-herbie |
| 940× | fma-neg |
| 896× | distribute-lft-out |
| 844× | div-sub |
| 798× | fma-def |
| 726× | associate-*r* |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 111 | 1618 |
| 1 | 311 | 1476 |
| 2 | 973 | 1364 |
| 3 | 4535 | 1354 |
| 1× | node limit |
| Inputs |
|---|
2 |
(+.f64 2 (pow.f64 im 2)) |
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) |
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6))))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(+.f64 (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))) |
(+.f64 (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/48 (*.f64 (pow.f64 re 4) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))) |
(+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 re 6) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/48 (*.f64 (pow.f64 re 4) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(cos.f64 re) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))) (*.f64 1/720 (*.f64 (cos.f64 re) (pow.f64 im 6)))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))) |
-2 |
0 |
1/512 |
1/64 |
1/16 |
1/8 |
1/4 |
1/2 |
2 |
(+.f64 (cos.f64 re) (cos.f64 re)) |
(+.f64 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 -2 (cos.f64 re)))) 1) |
(/.f64 (*.f64 -2 (cos.f64 re)) -2) |
(/.f64 (*.f64 -2 (cos.f64 re)) 1) |
(/.f64 (*.f64 -2 (cos.f64 re)) (+.f64 (*.f64 -2 (cos.f64 re)) (-.f64 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re))))) |
(/.f64 (-.f64 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re))) (-.f64 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re)))) |
(pow.f64 (*.f64 -2 (cos.f64 re)) -2) |
(pow.f64 (*.f64 -2 (cos.f64 re)) 1) |
(pow.f64 (*.f64 -2 (cos.f64 re)) 3) |
(pow.f64 (*.f64 -2 (cos.f64 re)) 1/3) |
(sqrt.f64 (*.f64 -2 (cos.f64 re))) |
(fabs.f64 (*.f64 -2 (cos.f64 re))) |
(log.f64 (pow.f64 1 (cos.f64 re))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -2 (cos.f64 re))))) |
(cbrt.f64 (*.f64 -2 (cos.f64 re))) |
(expm1.f64 (log1p.f64 (*.f64 -2 (cos.f64 re)))) |
(exp.f64 (log.f64 (*.f64 -2 (cos.f64 re)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 -2 (cos.f64 re))) 1)) |
(exp.f64 (+.f64 (log.f64 (*.f64 -2 (cos.f64 re))) -2)) |
(log1p.f64 (expm1.f64 (*.f64 -2 (cos.f64 re)))) |
(fma.f64 1 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re))) |
(fma.f64 (*.f64 -2 (cos.f64 re)) 1 (*.f64 -2 (cos.f64 re))) |
| Outputs |
|---|
2 |
(+.f64 2 (pow.f64 im 2)) |
(+.f64 2 (*.f64 im im)) |
(fma.f64 im im 2) |
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) |
(+.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/12 (pow.f64 im 4))) |
(+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) |
(fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) |
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6))))) |
(+.f64 (+.f64 2 (*.f64 im im)) (fma.f64 1/12 (pow.f64 im 4) (*.f64 1/360 (pow.f64 im 6)))) |
(+.f64 2 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) (*.f64 1/360 (pow.f64 im 6))))) |
(+.f64 (fma.f64 1/360 (pow.f64 im 6) (*.f64 im im)) (fma.f64 1/12 (pow.f64 im 4) 2)) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) |
(fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) |
(+.f64 (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))) |
(fma.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 -1/4 (*.f64 re re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 -1/4 re) re 1/2)) |
(+.f64 (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/48 (*.f64 (pow.f64 re 4) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))) |
(fma.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 -1/4 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re re)) (*.f64 (*.f64 1/48 (pow.f64 re 4)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))) |
(fma.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 1/48 (pow.f64 re 4))))) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (fma.f64 -1/4 (*.f64 re re) (*.f64 1/48 (pow.f64 re 4))))) |
(+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 re 6) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/48 (*.f64 (pow.f64 re 4) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))) |
(fma.f64 -1/1440 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 6)) (fma.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 -1/4 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re re)) (*.f64 (*.f64 1/48 (pow.f64 re 4)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))) |
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 1/48 (pow.f64 re 4)))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/1440 (pow.f64 re 6)) 1/2))) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (fma.f64 -1/1440 (pow.f64 re 6) 1/2) (fma.f64 -1/4 (*.f64 re re) (*.f64 1/48 (pow.f64 re 4))))) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (fma.f64 -1/4 (*.f64 re re) (*.f64 1/48 (pow.f64 re 4))) (fma.f64 -1/1440 (pow.f64 re 6) 1/2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(cos.f64 re) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(fma.f64 (*.f64 im im) (*.f64 1/2 (cos.f64 re)) (cos.f64 re)) |
(*.f64 (cos.f64 re) (+.f64 (*.f64 im (*.f64 im 1/2)) 1)) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(+.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) (*.f64 (*.f64 1/24 (cos.f64 re)) (pow.f64 im 4))) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (fma.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)) (cos.f64 re))) |
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 (pow.f64 im 4) 1/24)))) |
(*.f64 (cos.f64 re) (+.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 (pow.f64 im 4) 1/24)))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))) (*.f64 1/720 (*.f64 (cos.f64 re) (pow.f64 im 6)))))) |
(+.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) (fma.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)) (*.f64 1/720 (*.f64 (pow.f64 im 6) (cos.f64 re))))) |
(+.f64 (fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) (fma.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 6) 1/720)))) |
(+.f64 (fma.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24) (cos.f64 re)) (*.f64 (cos.f64 re) (+.f64 (*.f64 (pow.f64 im 6) 1/720) (*.f64 im (*.f64 im 1/2))))) |
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/24) (+.f64 (*.f64 (pow.f64 im 6) 1/720) (*.f64 im (*.f64 im 1/2)))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) |
(*.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (cos.f64 re)) |
-2 |
0 |
1/512 |
1/64 |
1/16 |
1/8 |
1/4 |
1/2 |
2 |
(+.f64 (cos.f64 re) (cos.f64 re)) |
(*.f64 2 (cos.f64 re)) |
(+.f64 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re))) |
(*.f64 (cos.f64 re) -4) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 -2 (cos.f64 re)))) 1) |
(*.f64 (cos.f64 re) -2) |
(/.f64 (*.f64 -2 (cos.f64 re)) -2) |
(cos.f64 re) |
(/.f64 (*.f64 -2 (cos.f64 re)) 1) |
(*.f64 (cos.f64 re) -2) |
(/.f64 (*.f64 -2 (cos.f64 re)) (+.f64 (*.f64 -2 (cos.f64 re)) (-.f64 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re))))) |
(/.f64 (*.f64 (cos.f64 re) -2) (fma.f64 -2 (cos.f64 re) 0)) |
(/.f64 (cos.f64 re) (*.f64 1 (cos.f64 re))) |
1 |
(/.f64 (-.f64 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re))) (-.f64 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re)))) |
(/.f64 (*.f64 (cos.f64 re) -2) (fma.f64 -2 (cos.f64 re) 0)) |
(/.f64 (cos.f64 re) (*.f64 1 (cos.f64 re))) |
1 |
(pow.f64 (*.f64 -2 (cos.f64 re)) -2) |
(pow.f64 (*.f64 (cos.f64 re) -2) -2) |
(pow.f64 (*.f64 -2 (cos.f64 re)) 1) |
(*.f64 (cos.f64 re) -2) |
(pow.f64 (*.f64 -2 (cos.f64 re)) 3) |
(*.f64 -8 (pow.f64 (cos.f64 re) 3)) |
(pow.f64 (*.f64 -2 (cos.f64 re)) 1/3) |
(cbrt.f64 (*.f64 (cos.f64 re) -2)) |
(sqrt.f64 (*.f64 -2 (cos.f64 re))) |
(sqrt.f64 (*.f64 (cos.f64 re) -2)) |
(fabs.f64 (*.f64 -2 (cos.f64 re))) |
(*.f64 (cos.f64 re) -2) |
(log.f64 (pow.f64 1 (cos.f64 re))) |
0 |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -2 (cos.f64 re))))) |
(*.f64 (cos.f64 re) -2) |
(cbrt.f64 (*.f64 -2 (cos.f64 re))) |
(cbrt.f64 (*.f64 (cos.f64 re) -2)) |
(expm1.f64 (log1p.f64 (*.f64 -2 (cos.f64 re)))) |
(*.f64 (cos.f64 re) -2) |
(exp.f64 (log.f64 (*.f64 -2 (cos.f64 re)))) |
(*.f64 (cos.f64 re) -2) |
(exp.f64 (*.f64 (log.f64 (*.f64 -2 (cos.f64 re))) 1)) |
(*.f64 (cos.f64 re) -2) |
(exp.f64 (+.f64 (log.f64 (*.f64 -2 (cos.f64 re))) -2)) |
(*.f64 (*.f64 (cos.f64 re) -2) (exp.f64 -2)) |
(*.f64 (cos.f64 re) (*.f64 -2 (exp.f64 -2))) |
(log1p.f64 (expm1.f64 (*.f64 -2 (cos.f64 re)))) |
(*.f64 (cos.f64 re) -2) |
(fma.f64 1 (*.f64 -2 (cos.f64 re)) (*.f64 -2 (cos.f64 re))) |
(*.f64 (cos.f64 re) -4) |
(fma.f64 (*.f64 -2 (cos.f64 re)) 1 (*.f64 -2 (cos.f64 re))) |
(*.f64 (cos.f64 re) -4) |
Compiled 1190 to 635 computations (46.6% saved)
8 alts after pruning (7 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 86 | 7 | 93 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 86 | 8 | 94 |
| Status | Accuracy | Program |
|---|---|---|
| 62.6% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| ▶ | 62.7% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) |
| ▶ | 88.4% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/12 (pow.f64 im 4)))) |
| ✓ | 100.0% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| ▶ | 80.5% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
| ▶ | 11.9% | (*.f64 2 (cos.f64 re)) |
| ▶ | 56.5% | (cos.f64 re) |
| 31.4% | 1 | |
| 62.6% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| ▶ | 62.7% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) |
| ▶ | 88.4% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/12 (pow.f64 im 4)))) |
| ✓ | 100.0% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| ▶ | 80.5% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
| ▶ | 11.9% | (*.f64 2 (cos.f64 re)) |
| ▶ | 56.5% | (cos.f64 re) |
| 31.4% | 1 |
Compiled 296 to 230 computations (22.3% saved)
Found 4 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
| ✓ | 100.0% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
| ✓ | 100.0% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/12 (pow.f64 im 4)))) |
| ✓ | 99.8% | (*.f64 1/12 (pow.f64 im 4)) |
Compiled 120 to 57 computations (52.5% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 5.0ms | re | @ | -inf | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/12 (pow.f64 im 4)))) |
| 2.0ms | re | @ | inf | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/12 (pow.f64 im 4)))) |
| 1.0ms | re | @ | 0 | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/12 (pow.f64 im 4)))) |
| 1.0ms | im | @ | inf | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/12 (pow.f64 im 4)))) |
| 1.0ms | re | @ | 0 | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
| 1× | batch-egg-rewrite |
| 486× | add-sqr-sqrt |
| 470× | pow1 |
| 468× | *-un-lft-identity |
| 460× | add-exp-log |
| 458× | add-log-exp |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 22 | 100 |
| 1 | 489 | 100 |
| 2 | 7938 | 100 |
| 1× | unsound |
| Inputs |
|---|
(*.f64 1/12 (pow.f64 im 4)) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/12 (pow.f64 im 4)))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
| Outputs |
|---|
1/5159780352 |
1/2985984 |
1/20736 |
1/1728 |
1/144 |
1/12 |
13/12 |
(+.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) |
(+.f64 (*.f64 1/5159780352 (cos.f64 re)) (cos.f64 re)) |
(+.f64 (*.f64 1/5159780352 (cos.f64 re)) (*.f64 1/5159780352 (cos.f64 re))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/5159780352 (cos.f64 re)))) -2) |
(/.f64 (*.f64 1/5159780352 (cos.f64 re)) 1/5159780352) |
(/.f64 (*.f64 1/5159780352 (cos.f64 re)) (+.f64 (cos.f64 re) (-.f64 (*.f64 1/5159780352 (cos.f64 re)) (*.f64 1/5159780352 (cos.f64 re))))) |
(/.f64 (-.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) (-.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re)))) |
(pow.f64 (*.f64 1/5159780352 (cos.f64 re)) -2) |
(pow.f64 (*.f64 1/5159780352 (cos.f64 re)) 1/3) |
(sqrt.f64 (*.f64 1/5159780352 (cos.f64 re))) |
(fabs.f64 (*.f64 1/5159780352 (cos.f64 re))) |
(log.f64 (pow.f64 (exp.f64 1/5159780352) (cos.f64 re))) |
(log.f64 (+.f64 -2 (expm1.f64 (*.f64 1/5159780352 (cos.f64 re))))) |
(cbrt.f64 (*.f64 1/5159780352 (cos.f64 re))) |
(expm1.f64 (log1p.f64 (*.f64 1/5159780352 (cos.f64 re)))) |
(exp.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2)) |
(log1p.f64 (expm1.f64 (*.f64 1/5159780352 (cos.f64 re)))) |
(fma.f64 (cos.f64 re) (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) |
(fma.f64 (cos.f64 re) -2 (*.f64 1/5159780352 (cos.f64 re))) |
(fma.f64 -2 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) |
(+.f64 (cos.f64 re) (cos.f64 re)) |
(+.f64 -2 (cos.f64 re)) |
(-.f64 (cos.f64 re) -2) |
(/.f64 (cos.f64 re) -2) |
(/.f64 (cos.f64 re) (+.f64 (cos.f64 re) (-.f64 (cos.f64 re) (cos.f64 re)))) |
(/.f64 (+.f64 (cos.f64 (+.f64 re re)) (cos.f64 (-.f64 re re))) -2) |
(/.f64 (-.f64 (cos.f64 re) (cos.f64 re)) (-.f64 (cos.f64 re) (cos.f64 re))) |
(pow.f64 (cos.f64 re) -2) |
(pow.f64 (cos.f64 re) 1/3) |
(sqrt.f64 (cos.f64 re)) |
(fabs.f64 (cos.f64 re)) |
(log.f64 (exp.f64 (cos.f64 re))) |
(log.f64 (+.f64 -2 (expm1.f64 (cos.f64 re)))) |
(cbrt.f64 (cos.f64 re)) |
(cos.f64 re) |
(expm1.f64 (log.f64 (cos.f64 re))) |
(exp.f64 (log.f64 (cos.f64 re))) |
(exp.f64 (*.f64 (log.f64 (cos.f64 re)) -2)) |
(log1p.f64 (expm1.f64 (cos.f64 re))) |
(fma.f64 (cos.f64 re) -2 (cos.f64 re)) |
(fma.f64 -2 (cos.f64 re) (cos.f64 re)) |
-2 |
-1 |
0 |
1/512 |
1/64 |
1/16 |
1/8 |
1/4 |
1/2 |
1 |
3/2 |
2 |
3 |
4 |
5 |
6 |
8 |
9 |
16 |
27 |
64 |
256 |
512 |
4096 |
262144 |
im |
| 1× | egg-herbie |
| 1150× | fma-def |
| 772× | associate-+r- |
| 732× | distribute-lft-out |
| 712× | distribute-lft-in |
| 682× | fma-neg |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 166 | 2840 |
| 1 | 381 | 2610 |
| 2 | 985 | 2290 |
| 3 | 4682 | 2214 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 1/2 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))) |
(+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 2))) (*.f64 1/2 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 2))) (+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 4))) (*.f64 1/2 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))) |
(+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 2))) (+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 4))) (+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))) (*.f64 -1/1440 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 6)))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(cos.f64 re) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(*.f64 1/2 (+.f64 2 (pow.f64 im 2))) |
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))) |
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 4))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))) |
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 4))) (+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))) (*.f64 -1/1440 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 6)))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(cos.f64 re) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
2 |
(+.f64 2 (pow.f64 im 2)) |
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) |
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6))))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
1/5159780352 |
1/2985984 |
1/20736 |
1/1728 |
1/144 |
1/12 |
13/12 |
(+.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) |
(+.f64 (*.f64 1/5159780352 (cos.f64 re)) (cos.f64 re)) |
(+.f64 (*.f64 1/5159780352 (cos.f64 re)) (*.f64 1/5159780352 (cos.f64 re))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/5159780352 (cos.f64 re)))) -2) |
(/.f64 (*.f64 1/5159780352 (cos.f64 re)) 1/5159780352) |
(/.f64 (*.f64 1/5159780352 (cos.f64 re)) (+.f64 (cos.f64 re) (-.f64 (*.f64 1/5159780352 (cos.f64 re)) (*.f64 1/5159780352 (cos.f64 re))))) |
(/.f64 (-.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) (-.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re)))) |
(pow.f64 (*.f64 1/5159780352 (cos.f64 re)) -2) |
(pow.f64 (*.f64 1/5159780352 (cos.f64 re)) 1/3) |
(sqrt.f64 (*.f64 1/5159780352 (cos.f64 re))) |
(fabs.f64 (*.f64 1/5159780352 (cos.f64 re))) |
(log.f64 (pow.f64 (exp.f64 1/5159780352) (cos.f64 re))) |
(log.f64 (+.f64 -2 (expm1.f64 (*.f64 1/5159780352 (cos.f64 re))))) |
(cbrt.f64 (*.f64 1/5159780352 (cos.f64 re))) |
(expm1.f64 (log1p.f64 (*.f64 1/5159780352 (cos.f64 re)))) |
(exp.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2)) |
(log1p.f64 (expm1.f64 (*.f64 1/5159780352 (cos.f64 re)))) |
(fma.f64 (cos.f64 re) (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) |
(fma.f64 (cos.f64 re) -2 (*.f64 1/5159780352 (cos.f64 re))) |
(fma.f64 -2 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) |
(+.f64 (cos.f64 re) (cos.f64 re)) |
(+.f64 -2 (cos.f64 re)) |
(-.f64 (cos.f64 re) -2) |
(/.f64 (cos.f64 re) -2) |
(/.f64 (cos.f64 re) (+.f64 (cos.f64 re) (-.f64 (cos.f64 re) (cos.f64 re)))) |
(/.f64 (+.f64 (cos.f64 (+.f64 re re)) (cos.f64 (-.f64 re re))) -2) |
(/.f64 (-.f64 (cos.f64 re) (cos.f64 re)) (-.f64 (cos.f64 re) (cos.f64 re))) |
(pow.f64 (cos.f64 re) -2) |
(pow.f64 (cos.f64 re) 1/3) |
(sqrt.f64 (cos.f64 re)) |
(fabs.f64 (cos.f64 re)) |
(log.f64 (exp.f64 (cos.f64 re))) |
(log.f64 (+.f64 -2 (expm1.f64 (cos.f64 re)))) |
(cbrt.f64 (cos.f64 re)) |
(cos.f64 re) |
(expm1.f64 (log.f64 (cos.f64 re))) |
(exp.f64 (log.f64 (cos.f64 re))) |
(exp.f64 (*.f64 (log.f64 (cos.f64 re)) -2)) |
(log1p.f64 (expm1.f64 (cos.f64 re))) |
(fma.f64 (cos.f64 re) -2 (cos.f64 re)) |
(fma.f64 -2 (cos.f64 re) (cos.f64 re)) |
-2 |
-1 |
0 |
1/512 |
1/64 |
1/16 |
1/8 |
1/4 |
1/2 |
1 |
3/2 |
2 |
3 |
4 |
5 |
6 |
8 |
9 |
16 |
27 |
64 |
256 |
512 |
4096 |
262144 |
| Outputs |
|---|
(*.f64 1/2 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))) |
(+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))) |
(fma.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) 1) |
(+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 2))) (*.f64 1/2 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(fma.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (*.f64 re re)) (+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))))) |
(fma.f64 1/2 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 (*.f64 re re) -1/4))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 2))) (+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 4))) (*.f64 1/2 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))) |
(fma.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (*.f64 re re)) (fma.f64 1/48 (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 4)) (+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))))) |
(fma.f64 -1/4 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 re re)) (fma.f64 1/2 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 (pow.f64 re 4) 1/48)))) |
(fma.f64 1/2 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (+.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 1/48 (pow.f64 re 4))))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (+.f64 1/2 (*.f64 re (+.f64 (*.f64 (pow.f64 re 3) 1/48) (*.f64 re -1/4))))) |
(+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 2))) (+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 4))) (+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))) (*.f64 -1/1440 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 6)))))) |
(fma.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (*.f64 re re)) (fma.f64 1/48 (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 4)) (fma.f64 1/2 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (*.f64 -1/1440 (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 6)))))) |
(fma.f64 -1/4 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 re re)) (fma.f64 (+.f64 1/24 (*.f64 1/48 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))) (pow.f64 re 4) (fma.f64 1/2 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 (pow.f64 re 6) -1/1440))))) |
(+.f64 (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (+.f64 (*.f64 1/48 (pow.f64 re 4)) (*.f64 -1/1440 (pow.f64 re 6))))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (+.f64 (*.f64 re (+.f64 (*.f64 (pow.f64 re 3) 1/48) (*.f64 re -1/4))) (+.f64 (*.f64 -1/1440 (pow.f64 re 6)) 1/2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(cos.f64 re) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))) |
(*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) |
(*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)) |
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24)) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) |
(fma.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))) |
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) (*.f64 1/2 (cos.f64 re))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))) |
(*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) |
(*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)) |
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24)) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) |
(fma.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))) |
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) (*.f64 1/2 (cos.f64 re))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re))) |
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (cos.f64 re))) |
(*.f64 1/2 (+.f64 2 (pow.f64 im 2))) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 1/2 (fma.f64 im im 2)) |
(fma.f64 1/2 (*.f64 im im) 1) |
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))) |
(fma.f64 1/2 (+.f64 2 (*.f64 im im)) (*.f64 -1/4 (*.f64 (*.f64 re re) (+.f64 2 (*.f64 im im))))) |
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re (*.f64 re (fma.f64 im im 2))))) |
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) |
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 4))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))) |
(fma.f64 1/2 (+.f64 2 (*.f64 im im)) (fma.f64 1/48 (*.f64 (pow.f64 re 4) (+.f64 2 (*.f64 im im))) (*.f64 -1/4 (*.f64 (*.f64 re re) (+.f64 2 (*.f64 im im)))))) |
(fma.f64 1/2 (fma.f64 im im 2) (fma.f64 -1/4 (*.f64 re (*.f64 re (fma.f64 im im 2))) (*.f64 1/48 (*.f64 (pow.f64 re 4) (fma.f64 im im 2))))) |
(fma.f64 (pow.f64 re 4) (fma.f64 (*.f64 im im) 1/48 1/24) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2))) |
(*.f64 (fma.f64 im im 2) (+.f64 (+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2) (*.f64 1/48 (pow.f64 re 4)))) |
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 4))) (+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))) (*.f64 -1/1440 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 6)))))) |
(fma.f64 1/2 (+.f64 2 (*.f64 im im)) (fma.f64 1/48 (*.f64 (pow.f64 re 4) (+.f64 2 (*.f64 im im))) (fma.f64 -1/4 (*.f64 (*.f64 re re) (+.f64 2 (*.f64 im im))) (*.f64 -1/1440 (*.f64 (pow.f64 re 6) (+.f64 2 (*.f64 im im))))))) |
(fma.f64 1/2 (fma.f64 im im 2) (fma.f64 1/48 (*.f64 (pow.f64 re 4) (fma.f64 im im 2)) (fma.f64 -1/4 (*.f64 re (*.f64 re (fma.f64 im im 2))) (*.f64 -1/1440 (*.f64 (pow.f64 re 6) (fma.f64 im im 2)))))) |
(+.f64 (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/48 (pow.f64 re 4)) (*.f64 -1/1440 (pow.f64 re 6))))) |
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 re (+.f64 (*.f64 (pow.f64 re 3) 1/48) (*.f64 re -1/4))) (+.f64 (*.f64 -1/1440 (pow.f64 re 6)) 1/2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2)))) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(cos.f64 re) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re)) |
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re)) |
(*.f64 (cos.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) |
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2))) |
2 |
(+.f64 2 (pow.f64 im 2)) |
(+.f64 2 (*.f64 im im)) |
(fma.f64 im im 2) |
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) |
(+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) |
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) |
(fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) |
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6))))) |
(+.f64 (+.f64 2 (*.f64 im im)) (fma.f64 1/12 (pow.f64 im 4) (*.f64 1/360 (pow.f64 im 6)))) |
(+.f64 2 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) (*.f64 1/360 (pow.f64 im 6))))) |
(+.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) (fma.f64 1/360 (pow.f64 im 6) 2)) |
(+.f64 2 (fma.f64 1/360 (pow.f64 im 6) (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) |
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
1/5159780352 |
1/2985984 |
1/20736 |
1/1728 |
1/144 |
1/12 |
13/12 |
(+.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) |
(*.f64 5159780353/5159780352 (cos.f64 re)) |
(*.f64 (cos.f64 re) 5159780353/5159780352) |
(+.f64 (*.f64 1/5159780352 (cos.f64 re)) (cos.f64 re)) |
(*.f64 5159780353/5159780352 (cos.f64 re)) |
(*.f64 (cos.f64 re) 5159780353/5159780352) |
(+.f64 (*.f64 1/5159780352 (cos.f64 re)) (*.f64 1/5159780352 (cos.f64 re))) |
(*.f64 (cos.f64 re) 1/2579890176) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/5159780352 (cos.f64 re)))) -2) |
(+.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) 1/5159780352))) 2) |
(+.f64 2 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) 1/5159780352)))) |
(/.f64 (*.f64 1/5159780352 (cos.f64 re)) 1/5159780352) |
(cos.f64 re) |
(/.f64 (*.f64 1/5159780352 (cos.f64 re)) (+.f64 (cos.f64 re) (-.f64 (*.f64 1/5159780352 (cos.f64 re)) (*.f64 1/5159780352 (cos.f64 re))))) |
1/5159780352 |
(/.f64 (-.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) (-.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re)))) |
1 |
(pow.f64 (*.f64 1/5159780352 (cos.f64 re)) -2) |
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2) |
(*.f64 (pow.f64 (cos.f64 re) -2) 26623333280885243904) |
(pow.f64 (*.f64 1/5159780352 (cos.f64 re)) 1/3) |
(cbrt.f64 (*.f64 (cos.f64 re) 1/5159780352)) |
(sqrt.f64 (*.f64 1/5159780352 (cos.f64 re))) |
(sqrt.f64 (*.f64 (cos.f64 re) 1/5159780352)) |
(fabs.f64 (*.f64 1/5159780352 (cos.f64 re))) |
(*.f64 1/5159780352 (fabs.f64 (cos.f64 re))) |
(fabs.f64 (*.f64 (cos.f64 re) 1/5159780352)) |
(log.f64 (pow.f64 (exp.f64 1/5159780352) (cos.f64 re))) |
(*.f64 (cos.f64 re) (log.f64 (exp.f64 1/5159780352))) |
(*.f64 (cos.f64 re) 1/5159780352) |
(log.f64 (+.f64 -2 (expm1.f64 (*.f64 1/5159780352 (cos.f64 re))))) |
(log.f64 (+.f64 -2 (expm1.f64 (*.f64 (cos.f64 re) 1/5159780352)))) |
(cbrt.f64 (*.f64 1/5159780352 (cos.f64 re))) |
(cbrt.f64 (*.f64 (cos.f64 re) 1/5159780352)) |
(expm1.f64 (log1p.f64 (*.f64 1/5159780352 (cos.f64 re)))) |
(*.f64 (cos.f64 re) (log.f64 (exp.f64 1/5159780352))) |
(*.f64 (cos.f64 re) 1/5159780352) |
(exp.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re)))) |
(*.f64 (cos.f64 re) (log.f64 (exp.f64 1/5159780352))) |
(*.f64 (cos.f64 re) 1/5159780352) |
(exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2)) |
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2) |
(*.f64 (pow.f64 (cos.f64 re) -2) 26623333280885243904) |
(log1p.f64 (expm1.f64 (*.f64 1/5159780352 (cos.f64 re)))) |
(*.f64 (cos.f64 re) (log.f64 (exp.f64 1/5159780352))) |
(*.f64 (cos.f64 re) 1/5159780352) |
(fma.f64 (cos.f64 re) (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) |
(fma.f64 (cos.f64 re) (cos.f64 re) (*.f64 (cos.f64 re) 1/5159780352)) |
(*.f64 (cos.f64 re) (+.f64 (cos.f64 re) 1/5159780352)) |
(fma.f64 (cos.f64 re) -2 (*.f64 1/5159780352 (cos.f64 re))) |
(fma.f64 (cos.f64 re) -2 (*.f64 (cos.f64 re) 1/5159780352)) |
(*.f64 (cos.f64 re) -10319560703/5159780352) |
(fma.f64 -2 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) |
(fma.f64 (cos.f64 re) -2 (*.f64 (cos.f64 re) 1/5159780352)) |
(*.f64 (cos.f64 re) -10319560703/5159780352) |
(+.f64 (cos.f64 re) (cos.f64 re)) |
(*.f64 2 (cos.f64 re)) |
(+.f64 -2 (cos.f64 re)) |
(+.f64 (cos.f64 re) -2) |
(-.f64 (cos.f64 re) -2) |
(+.f64 (cos.f64 re) 2) |
(+.f64 2 (cos.f64 re)) |
(/.f64 (cos.f64 re) -2) |
(/.f64 (cos.f64 re) (+.f64 (cos.f64 re) (-.f64 (cos.f64 re) (cos.f64 re)))) |
1 |
(/.f64 (+.f64 (cos.f64 (+.f64 re re)) (cos.f64 (-.f64 re re))) -2) |
(/.f64 (+.f64 (cos.f64 (+.f64 re re)) (cos.f64 0)) -2) |
(/.f64 (+.f64 (cos.f64 (+.f64 re re)) 1) -2) |
(/.f64 (-.f64 (cos.f64 re) (cos.f64 re)) (-.f64 (cos.f64 re) (cos.f64 re))) |
1 |
(pow.f64 (cos.f64 re) -2) |
(pow.f64 (cos.f64 re) 1/3) |
(cbrt.f64 (cos.f64 re)) |
(sqrt.f64 (cos.f64 re)) |
(fabs.f64 (cos.f64 re)) |
(log.f64 (exp.f64 (cos.f64 re))) |
(cos.f64 re) |
(log.f64 (+.f64 -2 (expm1.f64 (cos.f64 re)))) |
(cbrt.f64 (cos.f64 re)) |
(cos.f64 re) |
(expm1.f64 (log.f64 (cos.f64 re))) |
(exp.f64 (log.f64 (cos.f64 re))) |
(cos.f64 re) |
(exp.f64 (*.f64 (log.f64 (cos.f64 re)) -2)) |
(pow.f64 (cos.f64 re) -2) |
(log1p.f64 (expm1.f64 (cos.f64 re))) |
(cos.f64 re) |
(fma.f64 (cos.f64 re) -2 (cos.f64 re)) |
(neg.f64 (cos.f64 re)) |
(fma.f64 -2 (cos.f64 re) (cos.f64 re)) |
(fma.f64 (cos.f64 re) -2 (cos.f64 re)) |
(neg.f64 (cos.f64 re)) |
-2 |
-1 |
0 |
1/512 |
1/64 |
1/16 |
1/8 |
1/4 |
1/2 |
1 |
3/2 |
2 |
3 |
4 |
5 |
6 |
8 |
9 |
16 |
27 |
64 |
256 |
512 |
4096 |
262144 |
Compiled 2017 to 1317 computations (34.7% saved)
24 alts after pruning (20 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 155 | 18 | 173 |
| Fresh | 0 | 2 | 2 |
| Picked | 2 | 3 | 5 |
| Done | 0 | 1 | 1 |
| Total | 157 | 24 | 181 |
| Status | Accuracy | Program |
|---|---|---|
| 5.2% | (pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2) | |
| 3.7% | (+.f64 (cos.f64 re) -2) | |
| 54.0% | (+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) | |
| ▶ | 47.6% | (+.f64 1 (*.f64 1/2 (*.f64 im im))) |
| 50.8% | (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) | |
| ▶ | 62.6% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
| ✓ | 62.7% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) |
| ✓ | 100.0% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| ✓ | 80.5% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
| 35.3% | (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)) | |
| ▶ | 27.8% | (*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
| 39.3% | (*.f64 (cos.f64 re) 5159780353/5159780352) | |
| 27.8% | (*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) | |
| 6.4% | (*.f64 262144 1/2) | |
| 7.8% | (*.f64 27 1/2) | |
| 9.7% | (*.f64 3/2 1/2) | |
| ▶ | 8.5% | (*.f64 1/2 1/2) |
| 8.1% | (*.f64 1/4 1/2) | |
| 7.6% | (*.f64 1/16 1/2) | |
| 4.2% | (*.f64 -1 1/2) | |
| ▶ | 4.4% | (*.f64 -2 1/2) |
| 4.9% | (exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2)) | |
| ✓ | 56.5% | (cos.f64 re) |
| 31.4% | 1 | |
| 5.2% | (pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2) | |
| 3.7% | (+.f64 (cos.f64 re) -2) | |
| 54.0% | (+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) | |
| ▶ | 47.6% | (+.f64 1 (*.f64 1/2 (*.f64 im im))) |
| 50.8% | (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) | |
| ▶ | 62.6% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
| ✓ | 62.7% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) |
| ✓ | 100.0% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| ✓ | 80.5% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
| 35.3% | (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)) | |
| ▶ | 27.8% | (*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
| 39.3% | (*.f64 (cos.f64 re) 5159780353/5159780352) | |
| 27.8% | (*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) | |
| 6.4% | (*.f64 262144 1/2) | |
| 7.8% | (*.f64 27 1/2) | |
| 9.7% | (*.f64 3/2 1/2) | |
| ▶ | 8.5% | (*.f64 1/2 1/2) |
| 8.1% | (*.f64 1/4 1/2) | |
| 7.6% | (*.f64 1/16 1/2) | |
| 4.2% | (*.f64 -1 1/2) | |
| ▶ | 4.4% | (*.f64 -2 1/2) |
| 4.9% | (exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2)) | |
| ✓ | 56.5% | (cos.f64 re) |
| 31.4% | 1 |
Compiled 700 to 582 computations (16.9% saved)
Found 4 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 99.8% | (*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
| ✓ | 100.0% | (*.f64 -1/4 (*.f64 re re)) |
| ✓ | 100.0% | (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) |
| 100.0% | (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) |
Compiled 97 to 46 computations (52.6% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | re | @ | inf | (*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
| 1.0ms | re | @ | -inf | (*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
| 1.0ms | im | @ | inf | (*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
| 1.0ms | re | @ | 0 | (*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
| 1.0ms | im | @ | 0 | (*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
| 1× | batch-egg-rewrite |
| 1392× | log-prod |
| 836× | pow-prod-down |
| 672× | pow-prod-up |
| 610× | pow-exp |
| 510× | expm1-udef |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 55 |
| 1 | 293 | 51 |
| 2 | 3574 | 51 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) |
(*.f64 -1/4 (*.f64 re re)) |
(*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
| Outputs |
|---|
(-.f64 (exp.f64 (log1p.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 1) |
(-.f64 (/.f64 1/4 (+.f64 1/2 (*.f64 1/4 (*.f64 re re)))) (/.f64 (*.f64 (pow.f64 re 4) 1/16) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))) |
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 1) |
(*.f64 1 (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(*.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 2) (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(*.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(*.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (/.f64 1 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))) |
(*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 1 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))) |
(/.f64 1 (/.f64 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4) (fma.f64 (pow.f64 re 6) -1/64 1/8))) |
(/.f64 1 (/.f64 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)))) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4)) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 (pow.f64 re 4) 1/16 (-.f64 1/4 (*.f64 -1/8 (*.f64 re re))))) |
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (+.f64 1/2 (*.f64 1/4 (*.f64 re re)))) |
(/.f64 (neg.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8)) (neg.f64 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))) |
(/.f64 (neg.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (neg.f64 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))) |
(/.f64 (fma.f64 (pow.f64 re 4) 1/16 -1/4) (fma.f64 -1/4 (*.f64 re re) -1/2)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 1) |
(pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 3) |
(pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1/2) |
(pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) 1/3) |
(pow.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 2) |
(pow.f64 (/.f64 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4) (fma.f64 (pow.f64 re 6) -1/64 1/8)) -1) |
(pow.f64 (/.f64 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) -1) |
(sqrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) |
(log.f64 (exp.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)))) |
(cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(exp.f64 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 3)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 2)) |
(log1p.f64 (expm1.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 re (*.f64 -1/4 re) 1/2) |
(fma.f64 (*.f64 re re) -1/4 1/2) |
(fma.f64 (*.f64 -1/4 (*.f64 re re)) 1 1/2) |
(fma.f64 1 (*.f64 -1/4 (*.f64 re re)) 1/2) |
(fma.f64 (*.f64 (cbrt.f64 re) re) (*.f64 (pow.f64 (cbrt.f64 re) 2) -1/4) 1/2) |
(fma.f64 (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) 1/2) |
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) 1/2) |
(fma.f64 (*.f64 re (sqrt.f64 -1/4)) (*.f64 re (sqrt.f64 -1/4)) 1/2) |
(fma.f64 (*.f64 -1/4 re) re 1/2) |
(fma.f64 (*.f64 -1/4 (*.f64 (cbrt.f64 re) re)) (pow.f64 (cbrt.f64 re) 2) 1/2) |
(fma.f64 (*.f64 (*.f64 -1/4 re) 1) re 1/2) |
(fma.f64 (*.f64 (*.f64 -1/4 re) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) 1/2) |
(fma.f64 (*.f64 (*.f64 -1/4 re) (sqrt.f64 re)) (sqrt.f64 re) 1/2) |
(+.f64 0 (*.f64 -1/4 (*.f64 re re))) |
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))) (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/4 (*.f64 re re)))) 1) |
(pow.f64 (*.f64 -1/4 (*.f64 re re)) 1) |
(pow.f64 (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) 3) |
(pow.f64 (*.f64 (pow.f64 re 4) 1/16) 1/2) |
(pow.f64 (*.f64 (pow.f64 re 6) -1/64) 1/3) |
(pow.f64 (*.f64 re (sqrt.f64 -1/4)) 2) |
(sqrt.f64 (*.f64 (pow.f64 re 4) 1/16)) |
(log.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/4 (*.f64 re re))))) |
(cbrt.f64 (*.f64 (pow.f64 re 6) -1/64)) |
(expm1.f64 (log1p.f64 (*.f64 -1/4 (*.f64 re re)))) |
(exp.f64 (log.f64 (*.f64 -1/4 (*.f64 re re)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 -1/4 (*.f64 re re))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 -1/4 (*.f64 re re))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -1/4 (*.f64 re re)))) 3)) |
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re 6) -1/64)) 1/3)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 -1/4 (*.f64 re re))) 3) 1/3)) |
(exp.f64 (*.f64 (log.f64 (*.f64 re (sqrt.f64 -1/4))) 2)) |
(log1p.f64 (expm1.f64 (*.f64 -1/4 (*.f64 re re)))) |
(+.f64 0 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))) |
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) 1) |
(pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))) 1) |
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))) 3) |
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 4) 1/2) |
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 6) 1/3) |
(pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 2) |
(sqrt.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 4)) |
(log.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))))) |
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 6)) |
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) |
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) |
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) 3)) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 6)) 1/3)) |
(exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im)) 2)) |
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) |
| 1× | egg-herbie |
| 876× | log-prod |
| 828× | fma-def |
| 616× | distribute-rgt-in |
| 610× | distribute-lft-in |
| 550× | times-frac |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 248 | 3185 |
| 1 | 550 | 3045 |
| 2 | 1519 | 2909 |
| 3 | 5561 | 2909 |
| 1× | node limit |
| Inputs |
|---|
1/2 |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(*.f64 -1/4 (pow.f64 re 2)) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(*.f64 -1/4 (pow.f64 re 2)) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 1/2 (pow.f64 im 2)) |
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))) |
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))) |
(+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 re 6) (pow.f64 im 2))) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 1) |
(-.f64 (/.f64 1/4 (+.f64 1/2 (*.f64 1/4 (*.f64 re re)))) (/.f64 (*.f64 (pow.f64 re 4) 1/16) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))) |
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 1) |
(*.f64 1 (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(*.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 2) (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(*.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(*.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (/.f64 1 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))) |
(*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 1 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))) |
(/.f64 1 (/.f64 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4) (fma.f64 (pow.f64 re 6) -1/64 1/8))) |
(/.f64 1 (/.f64 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)))) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4)) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 (pow.f64 re 4) 1/16 (-.f64 1/4 (*.f64 -1/8 (*.f64 re re))))) |
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (+.f64 1/2 (*.f64 1/4 (*.f64 re re)))) |
(/.f64 (neg.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8)) (neg.f64 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))) |
(/.f64 (neg.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (neg.f64 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))) |
(/.f64 (fma.f64 (pow.f64 re 4) 1/16 -1/4) (fma.f64 -1/4 (*.f64 re re) -1/2)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 1) |
(pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 3) |
(pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1/2) |
(pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) 1/3) |
(pow.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 2) |
(pow.f64 (/.f64 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4) (fma.f64 (pow.f64 re 6) -1/64 1/8)) -1) |
(pow.f64 (/.f64 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) -1) |
(sqrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) |
(log.f64 (exp.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)))) |
(cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(exp.f64 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 3)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 2)) |
(log1p.f64 (expm1.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 re (*.f64 -1/4 re) 1/2) |
(fma.f64 (*.f64 re re) -1/4 1/2) |
(fma.f64 (*.f64 -1/4 (*.f64 re re)) 1 1/2) |
(fma.f64 1 (*.f64 -1/4 (*.f64 re re)) 1/2) |
(fma.f64 (*.f64 (cbrt.f64 re) re) (*.f64 (pow.f64 (cbrt.f64 re) 2) -1/4) 1/2) |
(fma.f64 (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) 1/2) |
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) 1/2) |
(fma.f64 (*.f64 re (sqrt.f64 -1/4)) (*.f64 re (sqrt.f64 -1/4)) 1/2) |
(fma.f64 (*.f64 -1/4 re) re 1/2) |
(fma.f64 (*.f64 -1/4 (*.f64 (cbrt.f64 re) re)) (pow.f64 (cbrt.f64 re) 2) 1/2) |
(fma.f64 (*.f64 (*.f64 -1/4 re) 1) re 1/2) |
(fma.f64 (*.f64 (*.f64 -1/4 re) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) 1/2) |
(fma.f64 (*.f64 (*.f64 -1/4 re) (sqrt.f64 re)) (sqrt.f64 re) 1/2) |
(+.f64 0 (*.f64 -1/4 (*.f64 re re))) |
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))) (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/4 (*.f64 re re)))) 1) |
(pow.f64 (*.f64 -1/4 (*.f64 re re)) 1) |
(pow.f64 (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) 3) |
(pow.f64 (*.f64 (pow.f64 re 4) 1/16) 1/2) |
(pow.f64 (*.f64 (pow.f64 re 6) -1/64) 1/3) |
(pow.f64 (*.f64 re (sqrt.f64 -1/4)) 2) |
(sqrt.f64 (*.f64 (pow.f64 re 4) 1/16)) |
(log.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/4 (*.f64 re re))))) |
(cbrt.f64 (*.f64 (pow.f64 re 6) -1/64)) |
(expm1.f64 (log1p.f64 (*.f64 -1/4 (*.f64 re re)))) |
(exp.f64 (log.f64 (*.f64 -1/4 (*.f64 re re)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 -1/4 (*.f64 re re))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 -1/4 (*.f64 re re))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -1/4 (*.f64 re re)))) 3)) |
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re 6) -1/64)) 1/3)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 -1/4 (*.f64 re re))) 3) 1/3)) |
(exp.f64 (*.f64 (log.f64 (*.f64 re (sqrt.f64 -1/4))) 2)) |
(log1p.f64 (expm1.f64 (*.f64 -1/4 (*.f64 re re)))) |
(+.f64 0 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))) |
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) 1) |
(pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))) 1) |
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))) 3) |
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 4) 1/2) |
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 6) 1/3) |
(pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 2) |
(sqrt.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 4)) |
(log.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))))) |
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 6)) |
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) |
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) |
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) 3)) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 6)) 1/3)) |
(exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im)) 2)) |
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) |
| Outputs |
|---|
1/2 |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(*.f64 1/2 (pow.f64 im 2)) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))) |
(fma.f64 1/2 (*.f64 im im) (*.f64 -1/4 (*.f64 (*.f64 im im) (*.f64 re re)))) |
(*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))) |
(fma.f64 1/2 (*.f64 im im) (fma.f64 1/48 (*.f64 (*.f64 im im) (pow.f64 re 4)) (*.f64 -1/4 (*.f64 (*.f64 im im) (*.f64 re re))))) |
(+.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)) (*.f64 (*.f64 im im) (*.f64 1/48 (pow.f64 re 4)))) |
(*.f64 (*.f64 im im) (+.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (*.f64 1/48 (pow.f64 re 4)))) |
(+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 re 6) (pow.f64 im 2))) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))))) |
(fma.f64 -1/1440 (*.f64 (*.f64 im im) (pow.f64 re 6)) (fma.f64 1/2 (*.f64 im im) (fma.f64 1/48 (*.f64 (*.f64 im im) (pow.f64 re 4)) (*.f64 -1/4 (*.f64 (*.f64 im im) (*.f64 re re)))))) |
(+.f64 (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 1/48 (pow.f64 re 4)))) (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/1440 (pow.f64 re 6)) 1/2))) |
(*.f64 (*.f64 im im) (+.f64 (fma.f64 -1/4 (*.f64 re re) (*.f64 1/48 (pow.f64 re 4))) (fma.f64 -1/1440 (pow.f64 re 6) 1/2))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 1) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(-.f64 (/.f64 1/4 (+.f64 1/2 (*.f64 1/4 (*.f64 re re)))) (/.f64 (*.f64 (pow.f64 re 4) 1/16) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))) |
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))) |
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)) (fma.f64 (*.f64 re re) 1/4 1/2)) |
(/.f64 (fma.f64 (pow.f64 re 4) -1/16 1/4) (fma.f64 re (*.f64 re 1/4) 1/2)) |
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 1) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 1 (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 2)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 2) (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (/.f64 1 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4)) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 -1/4 (*.f64 re re) -1/2)) 1/4)) |
(*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 1 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))) |
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))) |
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)) (fma.f64 (*.f64 re re) 1/4 1/2)) |
(/.f64 (fma.f64 (pow.f64 re 4) -1/16 1/4) (fma.f64 re (*.f64 re 1/4) 1/2)) |
(/.f64 1 (/.f64 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4) (fma.f64 (pow.f64 re 6) -1/64 1/8))) |
(*.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (/.f64 1 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4)) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 -1/4 (*.f64 re re) -1/2)) 1/4)) |
(/.f64 1 (/.f64 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)))) |
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))) |
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)) (fma.f64 (*.f64 re re) 1/4 1/2)) |
(/.f64 (fma.f64 (pow.f64 re 4) -1/16 1/4) (fma.f64 re (*.f64 re 1/4) 1/2)) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4)) |
(*.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (/.f64 1 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 -1/4 (*.f64 re re) -1/2)) 1/4)) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 (pow.f64 re 4) 1/16 (-.f64 1/4 (*.f64 -1/8 (*.f64 re re))))) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 (pow.f64 re 4) 1/16 (+.f64 1/4 (*.f64 1/8 (*.f64 re re))))) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 (pow.f64 re 4) 1/16 (+.f64 1/4 (*.f64 (*.f64 re re) 1/8)))) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 (pow.f64 re 4) 1/16 (fma.f64 (*.f64 re re) 1/8 1/4))) |
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (+.f64 1/2 (*.f64 1/4 (*.f64 re re)))) |
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))) |
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)) (fma.f64 (*.f64 re re) 1/4 1/2)) |
(/.f64 (fma.f64 (pow.f64 re 4) -1/16 1/4) (fma.f64 re (*.f64 re 1/4) 1/2)) |
(/.f64 (neg.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8)) (neg.f64 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))) |
(*.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (/.f64 1 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4)) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 -1/4 (*.f64 re re) -1/2)) 1/4)) |
(/.f64 (neg.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (neg.f64 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))) |
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))) |
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)) (fma.f64 (*.f64 re re) 1/4 1/2)) |
(/.f64 (fma.f64 (pow.f64 re 4) -1/16 1/4) (fma.f64 re (*.f64 re 1/4) 1/2)) |
(/.f64 (fma.f64 (pow.f64 re 4) 1/16 -1/4) (fma.f64 -1/4 (*.f64 re re) -1/2)) |
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))) |
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)) (fma.f64 (*.f64 re re) 1/4 1/2)) |
(/.f64 (fma.f64 (pow.f64 re 4) -1/16 1/4) (fma.f64 re (*.f64 re 1/4) 1/2)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 1) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 3) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) 1/3) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(pow.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(pow.f64 (/.f64 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4) (fma.f64 (pow.f64 re 6) -1/64 1/8)) -1) |
(*.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (/.f64 1 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4)) |
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (fma.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 -1/4 (*.f64 re re) -1/2)) 1/4)) |
(pow.f64 (/.f64 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) -1) |
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))) |
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)) (fma.f64 (*.f64 re re) 1/4 1/2)) |
(/.f64 (fma.f64 (pow.f64 re 4) -1/16 1/4) (fma.f64 re (*.f64 re 1/4) 1/2)) |
(sqrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(log.f64 (exp.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(expm1.f64 (log1p.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(exp.f64 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(exp.f64 (*.f64 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 1)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 1) 1)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 3)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 1/3)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 2)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(log1p.f64 (expm1.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 re (*.f64 -1/4 re) 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 (*.f64 re re) -1/4 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 (*.f64 -1/4 (*.f64 re re)) 1 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 1 (*.f64 -1/4 (*.f64 re re)) 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 (*.f64 (cbrt.f64 re) re) (*.f64 (pow.f64 (cbrt.f64 re) 2) -1/4) 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) 1/2) |
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) 1/2) |
(fma.f64 (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) 1/2) |
(fma.f64 (*.f64 re (sqrt.f64 -1/4)) (*.f64 re (sqrt.f64 -1/4)) 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 (*.f64 -1/4 re) re 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 (*.f64 -1/4 (*.f64 (cbrt.f64 re) re)) (pow.f64 (cbrt.f64 re) 2) 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 (*.f64 (*.f64 -1/4 re) 1) re 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 (*.f64 (*.f64 -1/4 re) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 (*.f64 (*.f64 -1/4 re) (sqrt.f64 re)) (sqrt.f64 re) 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 0 (*.f64 -1/4 (*.f64 re re))) |
(*.f64 -1/4 (*.f64 re re)) |
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))) (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))))) |
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))))) |
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))))) |
(*.f64 -1/4 (*.f64 re re)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/4 (*.f64 re re)))) 1) |
(*.f64 -1/4 (*.f64 re re)) |
(pow.f64 (*.f64 -1/4 (*.f64 re re)) 1) |
(*.f64 -1/4 (*.f64 re re)) |
(pow.f64 (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) 3) |
(*.f64 -1/4 (*.f64 re re)) |
(pow.f64 (*.f64 (pow.f64 re 4) 1/16) 1/2) |
(sqrt.f64 (*.f64 (pow.f64 re 4) 1/16)) |
(fabs.f64 (*.f64 re (*.f64 re 1/4))) |
(pow.f64 (*.f64 (pow.f64 re 6) -1/64) 1/3) |
(*.f64 -1/4 (*.f64 re re)) |
(pow.f64 (*.f64 re (sqrt.f64 -1/4)) 2) |
(*.f64 -1/4 (*.f64 re re)) |
(sqrt.f64 (*.f64 (pow.f64 re 4) 1/16)) |
(fabs.f64 (*.f64 re (*.f64 re 1/4))) |
(log.f64 (pow.f64 (exp.f64 re) (*.f64 -1/4 re))) |
(*.f64 -1/4 (*.f64 re re)) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/4 (*.f64 re re))))) |
(*.f64 -1/4 (*.f64 re re)) |
(cbrt.f64 (*.f64 (pow.f64 re 6) -1/64)) |
(*.f64 -1/4 (*.f64 re re)) |
(expm1.f64 (log1p.f64 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 -1/4 (*.f64 re re)) |
(exp.f64 (log.f64 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 -1/4 (*.f64 re re)) |
(exp.f64 (*.f64 (log.f64 (*.f64 -1/4 (*.f64 re re))) 1)) |
(*.f64 -1/4 (*.f64 re re)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 -1/4 (*.f64 re re))) 1) 1)) |
(*.f64 -1/4 (*.f64 re re)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -1/4 (*.f64 re re)))) 3)) |
(*.f64 -1/4 (*.f64 re re)) |
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re 6) -1/64)) 1/3)) |
(*.f64 -1/4 (*.f64 re re)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 -1/4 (*.f64 re re))) 3) 1/3)) |
(*.f64 -1/4 (*.f64 re re)) |
(exp.f64 (*.f64 (log.f64 (*.f64 re (sqrt.f64 -1/4))) 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(log1p.f64 (expm1.f64 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 -1/4 (*.f64 re re)) |
(+.f64 0 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))))) |
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 1/2) im) im) (cos.f64 re))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 1/2) im) im) (cos.f64 re))))) |
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im) (cos.f64 re))))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) 1) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))) 1) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))) 3) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 4) 1/2) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 6) 1/3) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 2) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(sqrt.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 4)) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(log.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 1/2 im)) im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 6)) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))) 1)) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im)))) 1) 1)) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) 3)) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im) 6)) 1/3)) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 re))) im)) 2)) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 1/2 im))))) |
(*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))) |
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))) |
Compiled 2689 to 1495 computations (44.4% saved)
24 alts after pruning (18 fresh and 6 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 156 | 7 | 163 |
| Fresh | 4 | 11 | 15 |
| Picked | 3 | 2 | 5 |
| Done | 0 | 4 | 4 |
| Total | 163 | 24 | 187 |
| Status | Accuracy | Program |
|---|---|---|
| 5.2% | (pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2) | |
| ▶ | 54.0% | (+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
| ▶ | 62.1% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3))) |
| ✓ | 62.7% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) |
| 56.4% | (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| 50.8% | (*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| ✓ | 100.0% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| ✓ | 80.5% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
| 39.3% | (*.f64 (cos.f64 re) 5159780353/5159780352) | |
| 11.5% | (*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| 6.4% | (*.f64 262144 1/2) | |
| ▶ | 7.8% | (*.f64 27 1/2) |
| ▶ | 35.5% | (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
| 9.7% | (*.f64 3/2 1/2) | |
| 19.6% | (*.f64 1/2 (*.f64 im im)) | |
| ✓ | 8.5% | (*.f64 1/2 1/2) |
| 8.1% | (*.f64 1/4 1/2) | |
| 7.6% | (*.f64 1/16 1/2) | |
| ▶ | 4.2% | (*.f64 -1 1/2) |
| 6.2% | (*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| ✓ | 4.4% | (*.f64 -2 1/2) |
| 4.9% | (exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2)) | |
| ✓ | 56.5% | (cos.f64 re) |
| 31.4% | 1 | |
| 5.2% | (pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2) | |
| ▶ | 54.0% | (+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
| ▶ | 62.1% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3))) |
| ✓ | 62.7% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) |
| 56.4% | (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| 50.8% | (*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| ✓ | 100.0% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| ✓ | 80.5% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
| 39.3% | (*.f64 (cos.f64 re) 5159780353/5159780352) | |
| 11.5% | (*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| 6.4% | (*.f64 262144 1/2) | |
| ▶ | 7.8% | (*.f64 27 1/2) |
| ▶ | 35.5% | (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
| 9.7% | (*.f64 3/2 1/2) | |
| 19.6% | (*.f64 1/2 (*.f64 im im)) | |
| ✓ | 8.5% | (*.f64 1/2 1/2) |
| 8.1% | (*.f64 1/4 1/2) | |
| 7.6% | (*.f64 1/16 1/2) | |
| ▶ | 4.2% | (*.f64 -1 1/2) |
| 6.2% | (*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| ✓ | 4.4% | (*.f64 -2 1/2) |
| 4.9% | (exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2)) | |
| ✓ | 56.5% | (cos.f64 re) |
| 31.4% | 1 |
Compiled 756 to 630 computations (16.7% saved)
Found 5 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| 99.9% | (*.f64 1/12 (pow.f64 im 4)) | |
| 100.0% | (*.f64 -1/4 (*.f64 re re)) | |
| 100.0% | (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) | |
| ✓ | 100.0% | (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
| ✓ | 99.2% | (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)) |
Compiled 150 to 89 computations (40.7% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | re | @ | 0 | (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
| 0.0ms | re | @ | inf | (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
| 0.0ms | re | @ | inf | (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)) |
| 0.0ms | re | @ | 0 | (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)) |
| 0.0ms | re | @ | -inf | (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
| 1× | batch-egg-rewrite |
| 1854× | pow1 |
| 1724× | add-exp-log |
| 1722× | log1p-expm1-u |
| 1722× | expm1-log1p-u |
| 1688× | add-log-exp |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 36 |
| 1 | 245 | 36 |
| 2 | 2446 | 36 |
| 1× | node limit |
| Inputs |
|---|
(cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
| Outputs |
|---|
(+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) |
(+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2) |
(+.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) 1) 1/2) |
(-.f64 (+.f64 1 (fma.f64 -1/4 (*.f64 re re) 1/2)) 1) |
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 1) |
(*.f64 1 (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(*.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) |
(*.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1/3)) |
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(*.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(*.f64 (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1/3) (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(*.f64 (pow.f64 1 1/3) (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(*.f64 (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3/2) 1/3) (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3/2) 1/3)) |
(/.f64 (+.f64 (pow.f64 (*.f64 -1/4 (*.f64 re re)) 3) 1/8) (+.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 -1/4 (*.f64 re re))) (-.f64 1/4 (*.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)))) |
(/.f64 (-.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 -1/4 (*.f64 re re))) 1/4) (-.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 1) |
(pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) 1/3) |
(pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 3) |
(pow.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 2) |
(sqrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) |
(log.f64 (exp.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(expm1.f64 (log1p.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(exp.f64 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(log1p.f64 (expm1.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1/2)) |
(+.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) (*.f64 1/2 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) |
(-.f64 (+.f64 1 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)) 1) |
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) |
(*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) 1) |
(*.f64 1 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)) |
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) (*.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) |
(*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(*.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (*.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) |
(*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3/2) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3/2)) |
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) 3) (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(*.f64 (pow.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 3) (pow.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 3)) |
(*.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1) (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(*.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(*.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(sqrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 6)) |
(log.f64 (exp.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3))) |
(cbrt.f64 (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) 3)) |
(expm1.f64 (log1p.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3))) |
(exp.f64 (*.f64 3 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)))) |
(log1p.f64 (expm1.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3))) |
| 1× | egg-herbie |
| 1118× | fma-def |
| 780× | unswap-sqr |
| 752× | exp-prod |
| 560× | fma-neg |
| 534× | cube-prod |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 122 | 1416 |
| 1 | 280 | 1388 |
| 2 | 1055 | 1372 |
| 3 | 5047 | 1372 |
| 1× | node limit |
| Inputs |
|---|
1/2 |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(*.f64 -1/4 (pow.f64 re 2)) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(*.f64 -1/4 (pow.f64 re 2)) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
1/8 |
(+.f64 1/8 (*.f64 -3/16 (pow.f64 re 2))) |
(+.f64 1/8 (+.f64 (*.f64 3/32 (pow.f64 re 4)) (*.f64 -3/16 (pow.f64 re 2)))) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (+.f64 1/8 (+.f64 (*.f64 3/32 (pow.f64 re 4)) (*.f64 -3/16 (pow.f64 re 2))))) |
(*.f64 -1/64 (pow.f64 re 6)) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (*.f64 3/32 (pow.f64 re 4))) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (+.f64 (*.f64 3/32 (pow.f64 re 4)) (*.f64 -3/16 (pow.f64 re 2)))) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (+.f64 1/8 (+.f64 (*.f64 3/32 (pow.f64 re 4)) (*.f64 -3/16 (pow.f64 re 2))))) |
(*.f64 -1/64 (pow.f64 re 6)) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (*.f64 3/32 (pow.f64 re 4))) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (+.f64 (*.f64 3/32 (pow.f64 re 4)) (*.f64 -3/16 (pow.f64 re 2)))) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (+.f64 1/8 (+.f64 (*.f64 3/32 (pow.f64 re 4)) (*.f64 -3/16 (pow.f64 re 2))))) |
(+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) |
(+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2) |
(+.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) 1) 1/2) |
(-.f64 (+.f64 1 (fma.f64 -1/4 (*.f64 re re) 1/2)) 1) |
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 1) |
(*.f64 1 (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(*.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) |
(*.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1/3)) |
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(*.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(*.f64 (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1/3) (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(*.f64 (pow.f64 1 1/3) (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(*.f64 (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3/2) 1/3) (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3/2) 1/3)) |
(/.f64 (+.f64 (pow.f64 (*.f64 -1/4 (*.f64 re re)) 3) 1/8) (+.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 -1/4 (*.f64 re re))) (-.f64 1/4 (*.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)))) |
(/.f64 (-.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 -1/4 (*.f64 re re))) 1/4) (-.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 1) |
(pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) 1/3) |
(pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 3) |
(pow.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 2) |
(sqrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) |
(log.f64 (exp.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(expm1.f64 (log1p.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(exp.f64 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(log1p.f64 (expm1.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1/2)) |
(+.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) (*.f64 1/2 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) |
(-.f64 (+.f64 1 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)) 1) |
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) |
(*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) 1) |
(*.f64 1 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)) |
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) (*.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) |
(*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(*.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (*.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) |
(*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3/2) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3/2)) |
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) 3) (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(*.f64 (pow.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 3) (pow.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 3)) |
(*.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1) (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(*.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(*.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(sqrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 6)) |
(log.f64 (exp.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3))) |
(cbrt.f64 (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) 3)) |
(expm1.f64 (log1p.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3))) |
(exp.f64 (*.f64 3 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)))) |
(log1p.f64 (expm1.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3))) |
| Outputs |
|---|
1/2 |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 -1/4 (pow.f64 re 2)) |
(*.f64 -1/4 (*.f64 re re)) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
1/8 |
(+.f64 1/8 (*.f64 -3/16 (pow.f64 re 2))) |
(+.f64 1/8 (*.f64 -3/16 (*.f64 re re))) |
(fma.f64 -3/16 (*.f64 re re) 1/8) |
(fma.f64 re (*.f64 re -3/16) 1/8) |
(+.f64 1/8 (+.f64 (*.f64 3/32 (pow.f64 re 4)) (*.f64 -3/16 (pow.f64 re 2)))) |
(+.f64 1/8 (fma.f64 3/32 (pow.f64 re 4) (*.f64 -3/16 (*.f64 re re)))) |
(+.f64 1/8 (fma.f64 -3/16 (*.f64 re re) (*.f64 3/32 (pow.f64 re 4)))) |
(fma.f64 re (*.f64 re -3/16) (fma.f64 3/32 (pow.f64 re 4) 1/8)) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (+.f64 1/8 (+.f64 (*.f64 3/32 (pow.f64 re 4)) (*.f64 -3/16 (pow.f64 re 2))))) |
(fma.f64 -1/64 (pow.f64 re 6) (+.f64 1/8 (fma.f64 3/32 (pow.f64 re 4) (*.f64 -3/16 (*.f64 re re))))) |
(+.f64 1/8 (fma.f64 -1/64 (pow.f64 re 6) (fma.f64 -3/16 (*.f64 re re) (*.f64 3/32 (pow.f64 re 4))))) |
(fma.f64 -1/64 (pow.f64 re 6) (fma.f64 re (*.f64 re -3/16) (fma.f64 3/32 (pow.f64 re 4) 1/8))) |
(*.f64 -1/64 (pow.f64 re 6)) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (*.f64 3/32 (pow.f64 re 4))) |
(fma.f64 -1/64 (pow.f64 re 6) (*.f64 3/32 (pow.f64 re 4))) |
(fma.f64 3/32 (pow.f64 re 4) (*.f64 -1/64 (pow.f64 re 6))) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (+.f64 (*.f64 3/32 (pow.f64 re 4)) (*.f64 -3/16 (pow.f64 re 2)))) |
(fma.f64 -1/64 (pow.f64 re 6) (fma.f64 3/32 (pow.f64 re 4) (*.f64 -3/16 (*.f64 re re)))) |
(fma.f64 -1/64 (pow.f64 re 6) (fma.f64 -3/16 (*.f64 re re) (*.f64 3/32 (pow.f64 re 4)))) |
(fma.f64 re (*.f64 re -3/16) (fma.f64 3/32 (pow.f64 re 4) (*.f64 -1/64 (pow.f64 re 6)))) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (+.f64 1/8 (+.f64 (*.f64 3/32 (pow.f64 re 4)) (*.f64 -3/16 (pow.f64 re 2))))) |
(fma.f64 -1/64 (pow.f64 re 6) (+.f64 1/8 (fma.f64 3/32 (pow.f64 re 4) (*.f64 -3/16 (*.f64 re re))))) |
(+.f64 1/8 (fma.f64 -1/64 (pow.f64 re 6) (fma.f64 -3/16 (*.f64 re re) (*.f64 3/32 (pow.f64 re 4))))) |
(fma.f64 -1/64 (pow.f64 re 6) (fma.f64 re (*.f64 re -3/16) (fma.f64 3/32 (pow.f64 re 4) 1/8))) |
(*.f64 -1/64 (pow.f64 re 6)) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (*.f64 3/32 (pow.f64 re 4))) |
(fma.f64 -1/64 (pow.f64 re 6) (*.f64 3/32 (pow.f64 re 4))) |
(fma.f64 3/32 (pow.f64 re 4) (*.f64 -1/64 (pow.f64 re 6))) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (+.f64 (*.f64 3/32 (pow.f64 re 4)) (*.f64 -3/16 (pow.f64 re 2)))) |
(fma.f64 -1/64 (pow.f64 re 6) (fma.f64 3/32 (pow.f64 re 4) (*.f64 -3/16 (*.f64 re re)))) |
(fma.f64 -1/64 (pow.f64 re 6) (fma.f64 -3/16 (*.f64 re re) (*.f64 3/32 (pow.f64 re 4)))) |
(fma.f64 re (*.f64 re -3/16) (fma.f64 3/32 (pow.f64 re 4) (*.f64 -1/64 (pow.f64 re 6)))) |
(+.f64 (*.f64 -1/64 (pow.f64 re 6)) (+.f64 1/8 (+.f64 (*.f64 3/32 (pow.f64 re 4)) (*.f64 -3/16 (pow.f64 re 2))))) |
(fma.f64 -1/64 (pow.f64 re 6) (+.f64 1/8 (fma.f64 3/32 (pow.f64 re 4) (*.f64 -3/16 (*.f64 re re))))) |
(+.f64 1/8 (fma.f64 -1/64 (pow.f64 re 6) (fma.f64 -3/16 (*.f64 re re) (*.f64 3/32 (pow.f64 re 4))))) |
(fma.f64 -1/64 (pow.f64 re 6) (fma.f64 re (*.f64 re -3/16) (fma.f64 3/32 (pow.f64 re 4) 1/8))) |
(+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) 1) 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(-.f64 (+.f64 1 (fma.f64 -1/4 (*.f64 re re) 1/2)) 1) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 1) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 1 (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1/3)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1/3) (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 (pow.f64 1 1/3) (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(*.f64 (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3/2) 1/3) (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3/2) 1/3)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(/.f64 (+.f64 (pow.f64 (*.f64 -1/4 (*.f64 re re)) 3) 1/8) (+.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 -1/4 (*.f64 re re))) (-.f64 1/4 (*.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)))) |
(/.f64 (+.f64 1/8 (*.f64 -1/64 (pow.f64 (*.f64 re re) 3))) (-.f64 (+.f64 (*.f64 1/16 (pow.f64 re 4)) 1/4) (*.f64 1/2 (*.f64 -1/4 (*.f64 re re))))) |
(/.f64 (fma.f64 -1/64 (pow.f64 re 6) 1/8) (-.f64 (fma.f64 1/16 (pow.f64 re 4) 1/4) (*.f64 (*.f64 re re) -1/8))) |
(/.f64 (fma.f64 -1/64 (pow.f64 re 6) 1/8) (+.f64 (*.f64 1/8 (*.f64 re re)) (fma.f64 (pow.f64 re 4) 1/16 1/4))) |
(/.f64 (fma.f64 -1/64 (pow.f64 re 6) 1/8) (+.f64 1/4 (fma.f64 (pow.f64 re 4) 1/16 (*.f64 1/8 (*.f64 re re))))) |
(/.f64 (-.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 -1/4 (*.f64 re re))) 1/4) (-.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) |
(/.f64 (+.f64 (*.f64 1/16 (pow.f64 re 4)) -1/4) (fma.f64 -1/4 (*.f64 re re) -1/2)) |
(/.f64 (fma.f64 1/16 (pow.f64 re 4) -1/4) (fma.f64 (*.f64 -1/4 re) re -1/2)) |
(/.f64 (fma.f64 (pow.f64 re 4) 1/16 -1/4) (fma.f64 -1/4 (*.f64 re re) -1/2)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 1) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) 1/3) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 3) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(pow.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(sqrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(log.f64 (exp.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(expm1.f64 (log1p.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(exp.f64 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(log1p.f64 (expm1.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(fma.f64 -1/4 (*.f64 re re) 1/2) |
(+.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1/2)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(+.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) (*.f64 1/2 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(-.f64 (+.f64 1 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)) 1) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) 1) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(*.f64 1 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) (*.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(*.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (*.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3/2) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3/2)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)) 3) (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(*.f64 (pow.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 3) (pow.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)) 3)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(*.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) 1) (fma.f64 -1/4 (*.f64 re re) 1/2)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(*.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2))) (cbrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(*.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(sqrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 6)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(log.f64 (exp.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3))) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(cbrt.f64 (pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) 3)) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(expm1.f64 (log1p.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3))) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(exp.f64 (*.f64 3 (log.f64 (fma.f64 -1/4 (*.f64 re re) 1/2)))) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
(log1p.f64 (expm1.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3))) |
(pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) |
Compiled 2579 to 1526 computations (40.8% saved)
24 alts after pruning (14 fresh and 10 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 148 | 1 | 149 |
| Fresh | 0 | 13 | 13 |
| Picked | 1 | 4 | 5 |
| Done | 0 | 6 | 6 |
| Total | 149 | 24 | 173 |
| Status | Accuracy | Program |
|---|---|---|
| 5.2% | (pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2) | |
| ✓ | 54.0% | (+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
| 62.3% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cbrt.f64 1/8)) | |
| ✓ | 62.7% | (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) |
| 56.4% | (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| 50.8% | (*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| ✓ | 100.0% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| ✓ | 80.5% | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
| 39.3% | (*.f64 (cos.f64 re) 5159780353/5159780352) | |
| 11.5% | (*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| 6.4% | (*.f64 262144 1/2) | |
| ✓ | 7.8% | (*.f64 27 1/2) |
| ✓ | 35.5% | (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
| 9.7% | (*.f64 3/2 1/2) | |
| 19.6% | (*.f64 1/2 (*.f64 im im)) | |
| ✓ | 8.5% | (*.f64 1/2 1/2) |
| 8.1% | (*.f64 1/4 1/2) | |
| 7.6% | (*.f64 1/16 1/2) | |
| ✓ | 4.2% | (*.f64 -1 1/2) |
| 6.2% | (*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) | |
| ✓ | 4.4% | (*.f64 -2 1/2) |
| 4.9% | (exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2)) | |
| ✓ | 56.5% | (cos.f64 re) |
| 31.4% | 1 |
Compiled 467 to 331 computations (29.1% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(cos.f64 re) |
(*.f64 2 (cos.f64 re)) |
(*.f64 (cos.f64 re) 5159780353/5159780352) |
(+.f64 (cos.f64 re) -2) |
(*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) |
(*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) |
(+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2) |
(*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/12 (pow.f64 im 4)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2)) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cbrt.f64 1/8)) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cbrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3))) |
| Outputs |
|---|
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
6 calls:
| 38.0ms | re |
| 36.0ms | im |
| 32.0ms | (*.f64 1/2 (cos.f64 re)) |
| 29.0ms | (cos.f64 re) |
| 21.0ms | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 100.0% | 1 | re |
| 100.0% | 1 | im |
| 100.0% | 1 | (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
| 100.0% | 1 | (*.f64 1/2 (cos.f64 re)) |
| 100.0% | 1 | (cos.f64 re) |
| 100.0% | 1 | (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) |
Compiled 296 to 185 computations (37.5% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(cos.f64 re) |
(*.f64 2 (cos.f64 re)) |
(*.f64 (cos.f64 re) 5159780353/5159780352) |
(+.f64 (cos.f64 re) -2) |
(*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) |
(*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) |
(+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2) |
(*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/12 (pow.f64 im 4)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2)) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cbrt.f64 1/8)) |
| Outputs |
|---|
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cbrt.f64 1/8)) |
(*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)) |
4 calls:
| 97.0ms | im |
| 78.0ms | re |
| 53.0ms | (cos.f64 re) |
| 52.0ms | (*.f64 1/2 (cos.f64 re)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 94.6% | 2 | re |
| 97.0% | 3 | im |
| 94.6% | 2 | (*.f64 1/2 (cos.f64 re)) |
| 94.6% | 2 | (cos.f64 re) |
Compiled 248 to 158 computations (36.3% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(cos.f64 re) |
(*.f64 2 (cos.f64 re)) |
(*.f64 (cos.f64 re) 5159780353/5159780352) |
(+.f64 (cos.f64 re) -2) |
(*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) |
(*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) |
(+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2) |
(*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/12 (pow.f64 im 4)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2)) |
| Outputs |
|---|
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) |
(*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)) |
1 calls:
| 124.0ms | im |
| Accuracy | Segments | Branch |
|---|---|---|
| 97.0% | 3 | im |
Compiled 226 to 145 computations (35.8% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(cos.f64 re) |
(*.f64 2 (cos.f64 re)) |
(*.f64 (cos.f64 re) 5159780353/5159780352) |
(+.f64 (cos.f64 re) -2) |
(*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) |
(*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) |
(+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2) |
(*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)) |
| Outputs |
|---|
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)) |
4 calls:
| 116.0ms | im |
| 76.0ms | re |
| 60.0ms | (cos.f64 re) |
| 29.0ms | (*.f64 1/2 (cos.f64 re)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 85.4% | 2 | (*.f64 1/2 (cos.f64 re)) |
| 85.4% | 2 | (cos.f64 re) |
| 85.0% | 2 | re |
| 90.5% | 3 | im |
Compiled 193 to 128 computations (33.7% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(cos.f64 re) |
(*.f64 2 (cos.f64 re)) |
(*.f64 (cos.f64 re) 5159780353/5159780352) |
(+.f64 (cos.f64 re) -2) |
(*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) |
(*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) |
(+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
(*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2) |
| Outputs |
|---|
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) |
1 calls:
| 69.0ms | im |
| Accuracy | Segments | Branch |
|---|---|---|
| 88.4% | 3 | im |
Compiled 172 to 113 computations (34.3% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(cos.f64 re) |
(*.f64 2 (cos.f64 re)) |
(*.f64 (cos.f64 re) 5159780353/5159780352) |
(+.f64 (cos.f64 re) -2) |
(*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) |
(*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) |
(+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
| Outputs |
|---|
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4))))) |
3 calls:
| 65.0ms | im |
| 26.0ms | (cos.f64 re) |
| 22.0ms | (*.f64 1/2 (cos.f64 re)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 85.4% | 2 | (*.f64 1/2 (cos.f64 re)) |
| 85.4% | 2 | (cos.f64 re) |
| 88.4% | 4 | im |
Compiled 157 to 105 computations (33.1% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(cos.f64 re) |
(*.f64 2 (cos.f64 re)) |
(*.f64 (cos.f64 re) 5159780353/5159780352) |
(+.f64 (cos.f64 re) -2) |
(*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) |
(*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/4 (*.f64 re re)) 1/2)) |
| Outputs |
|---|
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
4 calls:
| 77.0ms | im |
| 42.0ms | (*.f64 1/2 (cos.f64 re)) |
| 14.0ms | re |
| 14.0ms | (cos.f64 re) |
| Accuracy | Segments | Branch |
|---|---|---|
| 80.5% | 1 | re |
| 83.0% | 3 | im |
| 80.5% | 1 | (*.f64 1/2 (cos.f64 re)) |
| 80.5% | 1 | (cos.f64 re) |
Compiled 147 to 98 computations (33.3% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(cos.f64 re) |
(*.f64 2 (cos.f64 re)) |
(*.f64 (cos.f64 re) 5159780353/5159780352) |
(+.f64 (cos.f64 re) -2) |
(*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) |
(*.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) |
| Outputs |
|---|
(cos.f64 re) |
(*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))) |
3 calls:
| 36.0ms | (cos.f64 re) |
| 35.0ms | im |
| 30.0ms | re |
| Accuracy | Segments | Branch |
|---|---|---|
| 82.9% | 3 | im |
| 69.8% | 4 | (cos.f64 re) |
| 67.9% | 2 | re |
Compiled 119 to 81 computations (31.9% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(cos.f64 re) |
(*.f64 2 (cos.f64 re)) |
(*.f64 (cos.f64 re) 5159780353/5159780352) |
(+.f64 (cos.f64 re) -2) |
| Outputs |
|---|
(cos.f64 re) |
(*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
1 calls:
| 55.0ms | im |
| Accuracy | Segments | Branch |
|---|---|---|
| 77.7% | 2 | im |
Compiled 96 to 69 computations (28.1% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
| Outputs |
|---|
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
2 calls:
| 109.0ms | im |
| 71.0ms | re |
| Accuracy | Segments | Branch |
|---|---|---|
| 52.6% | 3 | re |
| 52.9% | 2 | im |
Compiled 85 to 64 computations (24.7% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
| Outputs |
|---|
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
2 calls:
| 26.0ms | im |
| 17.0ms | re |
| Accuracy | Segments | Branch |
|---|---|---|
| 49.7% | 2 | re |
| 49.4% | 3 | im |
Compiled 72 to 57 computations (20.8% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
| Outputs |
|---|
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
1 calls:
| 16.0ms | re |
| Accuracy | Segments | Branch |
|---|---|---|
| 49.7% | 2 | re |
Compiled 60 to 49 computations (18.3% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(*.f64 -2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) |
| Outputs |
|---|
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
1 calls:
| 9.0ms | re |
| Accuracy | Segments | Branch |
|---|---|---|
| 47.6% | 1 | re |
Compiled 51 to 43 computations (15.7% saved)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
(*.f64 1/2 (*.f64 im im)) |
| Outputs |
|---|
1 |
(*.f64 1/2 (*.f64 im im)) |
2 calls:
| 26.0ms | re |
| 13.0ms | im |
| Accuracy | Segments | Branch |
|---|---|---|
| 47.6% | 2 | im |
| 36.8% | 4 | re |
Compiled 38 to 34 computations (10.5% saved)
Total -19.3b remaining (-44.1%)
Threshold costs -19.3b (-44.1%)
| Inputs |
|---|
1 |
(*.f64 -2 1/2) |
(*.f64 -1 1/2) |
(*.f64 1/16 1/2) |
(*.f64 1/4 1/2) |
(*.f64 1/2 1/2) |
(*.f64 3/2 1/2) |
(*.f64 27 1/2) |
(*.f64 262144 1/2) |
| Outputs |
|---|
1 |
2 calls:
| 7.0ms | re |
| 6.0ms | im |
| Accuracy | Segments | Branch |
|---|---|---|
| 31.4% | 1 | re |
| 31.4% | 1 | im |
Compiled 33 to 31 computations (6.1% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 15.0ms | 4.140988952729672e+75 | 5.679059465951462e+77 |
| 23.0ms | 2.385659775801548e-5 | 3.656788404971335 |
| 21.0ms | 144× | body | 256 | valid |
| 13.0ms | 112× | body | 256 | infinite |
Compiled 404 to 327 computations (19.1% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 15.0ms | 4.140988952729672e+75 | 5.679059465951462e+77 |
| 22.0ms | 2.385659775801548e-5 | 3.656788404971335 |
| 20.0ms | 144× | body | 256 | valid |
| 14.0ms | 112× | body | 256 | infinite |
Compiled 388 to 311 computations (19.8% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 11.0ms | 1.0549285905124026e+64 | 2.1959213859797128e+64 |
| 23.0ms | 52.29941933615847 | 760814.4846980599 |
| 18.0ms | 144× | body | 256 | infinite |
| 7.0ms | 64× | body | 256 | valid |
Compiled 463 to 360 computations (22.2% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 62.0ms | 1.6923017950399687e+151 | 2.5932511943112324e+158 |
| 27.0ms | 52.29941933615847 | 760814.4846980599 |
| 54.0ms | 112× | body | 512 | infinite |
| 14.0ms | 112× | body | 256 | valid |
| 6.0ms | 48× | body | 256 | infinite |
Compiled 595 to 455 computations (23.5% saved)
| 1× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 0.9801095916404775 | 0.9835694947580095 |
Compiled 18 to 14 computations (22.2% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 29.0ms | 2.4576259369821824e+127 | 5.7780029504339166e+138 |
| 47.0ms | 52.29941933615847 | 760814.4846980599 |
| 38.0ms | 112× | body | 256 | valid |
| 24.0ms | 176× | body | 256 | infinite |
Compiled 456 to 342 computations (25% saved)
| 1× | binary-search |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 17.0ms | 52.29941933615847 | 760814.4846980599 |
| 13.0ms | 112× | body | 256 | valid |
| 2.0ms | 16× | body | 256 | infinite |
Compiled 186 to 142 computations (23.7% saved)
| 1× | binary-search |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 56.0ms | 52.29941933615847 | 760814.4846980599 |
| 44.0ms | 112× | body | 256 | valid |
| 5.0ms | 16× | body | 256 | infinite |
Compiled 226 to 174 computations (23% saved)
| 1× | binary-search |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 41.0ms | 5.514689931599374e+134 | 3.1096246275758444e+135 |
| 17.0ms | 54× | body | 256 | valid |
| 14.0ms | 22× | body | 512 | infinite |
| 6.0ms | 20× | body | 256 | infinite |
Compiled 150 to 122 computations (18.7% saved)
| 1× | binary-search |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 32.0ms | 5.514689931599374e+134 | 3.1096246275758444e+135 |
| 20.0ms | 64× | body | 256 | valid |
| 5.0ms | 17× | body | 512 | infinite |
| 4.0ms | 15× | body | 256 | infinite |
Compiled 150 to 122 computations (18.7% saved)
| 1× | binary-search |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 26.0ms | 2.385659775801548e-5 | 3.656788404971335 |
| 24.0ms | 144× | body | 256 | valid |
Compiled 126 to 104 computations (17.5% saved)
| 1× | egg-herbie |
| 38× | *-commutative |
| 16× | +-commutative |
| 2× | sub-neg |
| 2× | 1-exp |
| 2× | neg-mul-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 95 | 935 |
| 1 | 125 | 935 |
| 2 | 127 | 935 |
| 3 | 128 | 935 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
(if (<=.f64 im 1261007895663739/36028797018963968) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 114999999999999997377225245734177625043124954484653241178190190737365693104128) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cbrt.f64 1/8)) (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)))) |
(if (<=.f64 im 3314649325744685/72057594037927936) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 114999999999999997377225245734177625043124954484653241178190190737365693104128) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)))) |
(if (<=.f64 im 560) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 21600000000000001395882098495992840092065462957809175430122438656) (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)))) |
(if (<=.f64 im 520) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 24500000000000000830786583989556404661781732655382922389397932118387462592576091617082994015966303053641990203444330921498043445724798219825119964728131584) (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))))) |
(if (<=.f64 (cos.f64 re) 4422534834077827/4503599627370496) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(if (<=.f64 im 420) (cos.f64 re) (if (<=.f64 im 5699999999999999856668921793343779174268317611864266750217845047534248296998693937397911880922373339703906957412995459002690384103326351360) (*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))))) |
(if (<=.f64 im 480) (cos.f64 re) (*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))) |
(if (<=.f64 im 170) (+.f64 1 (*.f64 1/2 (*.f64 im im))) (*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))) |
(if (<=.f64 re 899999999999999949507660019590267191754816977630282421740202505926943408458469143229524901542877637896548602621617417507785310415618048) (+.f64 1 (*.f64 1/2 (*.f64 im im))) (*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))) |
(if (<=.f64 re 899999999999999949507660019590267191754816977630282421740202505926943408458469143229524901542877637896548602621617417507785310415618048) (+.f64 1 (*.f64 1/2 (*.f64 im im))) (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(if (<=.f64 im 799388933858263/562949953421312) 1 (*.f64 1/2 (*.f64 im im))) |
1 |
| Outputs |
|---|
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) |
(if (<=.f64 im 1261007895663739/36028797018963968) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 114999999999999997377225245734177625043124954484653241178190190737365693104128) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cbrt.f64 1/8)) (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)))) |
(if (<=.f64 im 1261007895663739/36028797018963968) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 114999999999999997377225245734177625043124954484653241178190190737365693104128) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cbrt.f64 1/8)) (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)))) |
(if (<=.f64 im 3314649325744685/72057594037927936) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 114999999999999997377225245734177625043124954484653241178190190737365693104128) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2) (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)))) |
(if (<=.f64 im 3314649325744685/72057594037927936) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 114999999999999997377225245734177625043124954484653241178190190737365693104128) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)))) |
(if (<=.f64 im 560) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 21600000000000001395882098495992840092065462957809175430122438656) (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)))) |
(if (<=.f64 im 560) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 21600000000000001395882098495992840092065462957809175430122438656) (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 4) 1/24)))) |
(if (<=.f64 im 520) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 24500000000000000830786583989556404661781732655382922389397932118387462592576091617082994015966303053641990203444330921498043445724798219825119964728131584) (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))))) |
(if (<=.f64 im 520) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 24500000000000000830786583989556404661781732655382922389397932118387462592576091617082994015966303053641990203444330921498043445724798219825119964728131584) (*.f64 (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (*.f64 im (*.f64 1/2 (*.f64 (cos.f64 re) im))))) |
(if (<=.f64 (cos.f64 re) 4422534834077827/4503599627370496) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 1/12 (pow.f64 im 4)))))) |
(if (<=.f64 (cos.f64 re) 4422534834077827/4503599627370496) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (+.f64 1 (*.f64 1/2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))) |
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) |
(if (<=.f64 im 420) (cos.f64 re) (if (<=.f64 im 5699999999999999856668921793343779174268317611864266750217845047534248296998693937397911880922373339703906957412995459002690384103326351360) (*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (*.f64 im (*.f64 1/2 (*.f64 im (cos.f64 re)))))) |
(if (<=.f64 im 420) (cos.f64 re) (if (<=.f64 im 5699999999999999856668921793343779174268317611864266750217845047534248296998693937397911880922373339703906957412995459002690384103326351360) (*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (*.f64 im (*.f64 1/2 (*.f64 (cos.f64 re) im))))) |
(if (<=.f64 im 480) (cos.f64 re) (*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))) |
(if (<=.f64 im 170) (+.f64 1 (*.f64 1/2 (*.f64 im im))) (*.f64 (+.f64 2 (*.f64 im im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))) |
(if (<=.f64 re 899999999999999949507660019590267191754816977630282421740202505926943408458469143229524901542877637896548602621617417507785310415618048) (+.f64 1 (*.f64 1/2 (*.f64 im im))) (*.f64 262144 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))) |
(if (<=.f64 re 899999999999999949507660019590267191754816977630282421740202505926943408458469143229524901542877637896548602621617417507785310415618048) (+.f64 1 (*.f64 1/2 (*.f64 im im))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) 262144)) |
(if (<=.f64 re 899999999999999949507660019590267191754816977630282421740202505926943408458469143229524901542877637896548602621617417507785310415618048) (+.f64 1 (*.f64 1/2 (*.f64 im im))) (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))) |
(+.f64 1 (*.f64 1/2 (*.f64 im im))) |
(if (<=.f64 im 799388933858263/562949953421312) 1 (*.f64 1/2 (*.f64 im im))) |
1 |
Compiled 370 to 266 computations (28.1% saved)
| 1392× | log-prod |
| 1150× | fma-def |
| 1150× | fma-def |
| 1150× | fma-def |
| 1150× | fma-def |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 54 |
| 1 | 273 | 54 |
| 2 | 4277 | 54 |
| 0 | 111 | 1618 |
| 1 | 311 | 1476 |
| 2 | 973 | 1364 |
| 3 | 4535 | 1354 |
| 0 | 111 | 1618 |
| 1 | 311 | 1476 |
| 2 | 973 | 1364 |
| 3 | 4535 | 1354 |
| 0 | 166 | 2840 |
| 1 | 381 | 2610 |
| 2 | 985 | 2290 |
| 3 | 4682 | 2214 |
| 0 | 248 | 3185 |
| 1 | 550 | 3045 |
| 2 | 1519 | 2909 |
| 3 | 5561 | 2909 |
| 0 | 166 | 2840 |
| 1 | 381 | 2610 |
| 2 | 985 | 2290 |
| 3 | 4682 | 2214 |
| 0 | 111 | 1618 |
| 1 | 311 | 1476 |
| 2 | 973 | 1364 |
| 3 | 4535 | 1354 |
| 0 | 22 | 100 |
| 1 | 489 | 100 |
| 2 | 7938 | 100 |
| 0 | 166 | 2840 |
| 1 | 381 | 2610 |
| 2 | 985 | 2290 |
| 3 | 4682 | 2214 |
| 0 | 166 | 2840 |
| 1 | 381 | 2610 |
| 2 | 985 | 2290 |
| 3 | 4682 | 2214 |
| 0 | 111 | 1618 |
| 1 | 311 | 1476 |
| 2 | 973 | 1364 |
| 3 | 4535 | 1354 |
| 0 | 166 | 2840 |
| 1 | 381 | 2610 |
| 2 | 985 | 2290 |
| 3 | 4682 | 2214 |
| 0 | 166 | 2840 |
| 1 | 381 | 2610 |
| 2 | 985 | 2290 |
| 3 | 4682 | 2214 |
| 0 | 166 | 2840 |
| 1 | 381 | 2610 |
| 2 | 985 | 2290 |
| 3 | 4682 | 2214 |
| 0 | 111 | 1618 |
| 1 | 311 | 1476 |
| 2 | 973 | 1364 |
| 3 | 4535 | 1354 |
| 0 | 14 | 55 |
| 1 | 293 | 51 |
| 2 | 3574 | 51 |
| 1× | node limit |
| 1× | node limit |
| 1× | node limit |
| 1× | node limit |
| 1× | node limit |
| 1× | node limit |
| 1× | node limit |
| 1× | node limit |
| 1× | unsound |
| 1× | node limit |
| 1× | node limit |
| 1× | node limit |
| 1× | node limit |
| 1× | node limit |
| 1× | node limit |
| 1× | unsound |
Compiled 595 to 388 computations (34.8% saved)
(abs im)
(abs re)
Compiled 762 to 466 computations (38.8% saved)
Loading profile data...