Time bar (total: 3.0s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 0 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 1 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 2 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 3 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 4 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 5 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 6 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 7 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 8 |
| 6.3% | 6.2% | 93.6% | 0.2% | 0% | 0% | 0% | 9 |
| 9.4% | 9.4% | 90.4% | 0.2% | 0% | 0% | 0% | 10 |
| 14.1% | 14% | 85.8% | 0.2% | 0% | 0% | 0% | 11 |
| 19.6% | 18.7% | 76.8% | 0.2% | 4.3% | 0% | 0% | 12 |
Compiled 12 to 8 computations (33.3% saved)
| 830.0ms | 8256× | body | 256 | valid |
| 220.0ms | 2114× | body | 256 | infinite |
| 2× | egglog |
| Inputs |
|---|
0 |
1 |
2 |
3 |
| Outputs |
|---|
0 |
1 |
2 |
3 |
| Inputs |
|---|
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.re y.im) (*.f64 x.im x.re)) |
(+.f64 (*.f64 y.im x.re) (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re x.im) (*.f64 y.im y.re)) |
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) |
| Outputs |
|---|
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
(fma.f64 y.im x.re (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) |
(fma.f64 x.re y.re (*.f64 x.im y.im)) |
(+.f64 (*.f64 y.re y.im) (*.f64 x.im x.re)) |
(fma.f64 x.re x.im (*.f64 y.re y.im)) |
(+.f64 (*.f64 y.im x.re) (*.f64 x.im y.re)) |
(fma.f64 y.im x.re (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.im x.re (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re x.im) (*.f64 y.im y.re)) |
(fma.f64 x.re x.im (*.f64 y.re y.im)) |
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) |
(fma.f64 x.re y.re (*.f64 x.im y.im)) |
Compiled 15 to 11 computations (26.7% saved)
| 1× | egglog |
| Inputs |
|---|
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
| Outputs |
|---|
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
Compiled 17 to 8 computations (52.9% saved)
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 2 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
|---|---|---|
| ▶ | 0.0b | (fma.f64 x.re y.im (*.f64 x.im y.re)) |
| ▶ | 0.0b | (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
Compiled 21 to 13 computations (38.1% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
Compiled 21 to 7 computations (66.7% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | y.im | @ | -inf | (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
| 1.0ms | x.im | @ | 0 | (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
| 1.0ms | x.re | @ | 0 | (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
| 1.0ms | y.re | @ | inf | (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
| 1.0ms | x.im | @ | -inf | (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
Compiled 1465 to 45 computations (96.9% saved)
| 1× | batch-egg-rewrite |
| 40× | egg-rr |
| Inputs |
|---|
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re y.im (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.im y.re (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.re x.im (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.im x.re (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 y.re) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x.im) (*.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 y.im) (*.f64 (cbrt.f64 (*.f64 y.im y.im)) x.re) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (cbrt.f64 x.re)) (cbrt.f64 (*.f64 x.re x.re)) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x.re) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.im y.re)) (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (*.f64 x.im x.im)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (cbrt.f64 (*.f64 x.im y.re)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.im (cbrt.f64 y.re)) (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (*.f64 y.im y.im)) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 x.re y.im)) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x.im y.re) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.im y.re) 1 (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re y.im) 1 (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 y.im x.re (neg.f64 (*.f64 x.im y.re))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2)) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 x.im y.re) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 x.re y.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (cbrt.f64 (*.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (+.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (*.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (+.f64 (cbrt.f64 (*.f64 x.im y.re)) (cbrt.f64 (*.f64 x.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2)) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)))))) |
| 1× | egglog |
| Inputs |
|---|
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 x.im y.re (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 y.im x.re (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 y.re) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 x.im) (*.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 y.im) (*.f64 (cbrt.f64 (*.f64 y.im y.im)) x.re) (*.f64 x.im y.re)) |
(fma.f64 (*.f64 y.im (cbrt.f64 x.re)) (cbrt.f64 (*.f64 x.re x.re)) (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 x.re) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 (*.f64 x.im y.re)) (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (*.f64 x.im y.re)) |
(fma.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (*.f64 x.im x.im)) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (cbrt.f64 (*.f64 x.im y.re)) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 x.im (cbrt.f64 y.re)) (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (*.f64 y.im y.im)) (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 x.re y.im)) (*.f64 x.im y.re)) |
(fma.f64 1 (*.f64 x.im y.re) (*.f64 x.re y.im)) |
(fma.f64 1 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
(fma.f64 (*.f64 x.im y.re) 1 (*.f64 x.re y.im)) |
(fma.f64 (*.f64 x.re y.im) 1 (*.f64 x.im y.re)) |
(if (!=.f64 (fma.f64 y.im x.re (neg.f64 (*.f64 x.im y.re))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2)) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (*.f64 x.im y.re) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (*.f64 x.re y.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) |
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)))) |
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) |
(*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2))) |
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (cbrt.f64 (*.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (+.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (*.f64 x.im y.re)))) |
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (+.f64 (cbrt.f64 (*.f64 x.im y.re)) (cbrt.f64 (*.f64 x.re y.im)))) |
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) |
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2)) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 2)) |
(*.f64 1 (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1) |
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3) 1/3) |
(pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 3) |
(pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1) |
(cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) |
| Outputs |
|---|
(*.f64 y.re x.im) |
(*.f64 x.im y.re) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 y.re x.im) |
(*.f64 x.im y.re) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 y.re x.im) |
(*.f64 x.im y.re) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 y.re x.im) |
(*.f64 x.im y.re) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 y.re x.im) |
(*.f64 x.im y.re) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 y.re x.im) |
(*.f64 x.im y.re) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 x.im y.re (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 y.im x.re (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 y.re) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 x.im) (*.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 y.im) (*.f64 (cbrt.f64 (*.f64 y.im y.im)) x.re) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (*.f64 y.im (cbrt.f64 x.re)) (cbrt.f64 (*.f64 x.re x.re)) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 x.re) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 (*.f64 x.im y.re)) (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (*.f64 x.im x.im)) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (cbrt.f64 (*.f64 x.im y.re)) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (*.f64 x.im (cbrt.f64 y.re)) (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (*.f64 y.im y.im)) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 x.re y.im)) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 1 (*.f64 x.im y.re) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 1 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (*.f64 x.im y.re) 1 (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 (*.f64 x.re y.im) 1 (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(if (!=.f64 (fma.f64 y.im x.re (neg.f64 (*.f64 x.im y.re))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2)) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (*.f64 x.im y.re) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (*.f64 x.re y.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)))) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2))) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (cbrt.f64 (*.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (+.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (*.f64 x.im y.re)))) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (+.f64 (cbrt.f64 (*.f64 x.im y.re)) (cbrt.f64 (*.f64 x.re y.im)))) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2)) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 2)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 1 (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3) 1/3) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 3) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (fma.f64 x.re y.im (*.f64 x.im y.re)) |
Compiled 17 to 6 computations (64.7% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y.im | @ | -inf | (fma.f64 x.re y.im (*.f64 x.im y.re)) |
| 0.0ms | x.re | @ | inf | (fma.f64 x.re y.im (*.f64 x.im y.re)) |
| 0.0ms | x.re | @ | -inf | (fma.f64 x.re y.im (*.f64 x.im y.re)) |
| 0.0ms | y.im | @ | inf | (fma.f64 x.re y.im (*.f64 x.im y.re)) |
| 0.0ms | x.re | @ | 0 | (fma.f64 x.re y.im (*.f64 x.im y.re)) |
Compiled 1465 to 45 computations (96.9% saved)
| 1× | batch-egg-rewrite |
| 64× | egg-rr |
| Inputs |
|---|
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re y.im (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.im y.re (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.re x.im (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.im x.re (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x.re) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (cbrt.f64 (*.f64 x.im y.re)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.im y.re)) (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (*.f64 x.im x.im)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (*.f64 y.im y.im)) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cbrt.f64 y.re)) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.re y.re))) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.im x.im)) (*.f64 y.re (cbrt.f64 x.im)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 y.im)) (cbrt.f64 y.im) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y.im y.im)) (*.f64 x.re (cbrt.f64 y.im)) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re (cbrt.f64 (*.f64 y.im y.im))) (cbrt.f64 y.im) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.re x.re)) (*.f64 y.im (cbrt.f64 x.re)) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 y.im) (*.f64 x.re (cbrt.f64 (*.f64 y.im y.im))) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cbrt.f64 x.re)) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 x.re x.re))) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im)) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (cbrt.f64 x.re) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (cbrt.f64 x.re)) (cbrt.f64 (*.f64 x.re x.re)) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.im y.re) 1 (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x.im y.re) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re y.im) 1 (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 y.re) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x.im) (*.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.im (cbrt.f64 y.re)) (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (cbrt.f64 x.im) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x.im (cbrt.f64 y.re)) (cbrt.f64 (cbrt.f64 (*.f64 y.re y.re)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.re y.re))) 2) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.im y.re) 2) (cbrt.f64 (*.f64 x.im y.re)))) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cbrt.f64 x.im)) (*.f64 (*.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (cbrt.f64 (cbrt.f64 (*.f64 x.im x.im)))) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.im (cbrt.f64 y.re)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (cbrt.f64 y.re) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.im y.re) 2) (cbrt.f64 (*.f64 x.im y.re)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2))) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (cbrt.f64 (*.f64 x.im x.im)))) (cbrt.f64 (*.f64 x.im (cbrt.f64 x.im))) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cbrt.f64 (*.f64 x.im y.re))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.im y.re) 2) (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)))) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 x.re y.im)) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im))) 2) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (*.f64 x.im y.re) (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (*.f64 x.im y.re) 2) 2))) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (*.f64 x.im y.re) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2)) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 x.im y.re) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 x.re y.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 y.im x.re (neg.f64 (*.f64 x.im y.re))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (cbrt.f64 (*.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (+.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (*.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (+.f64 (cbrt.f64 (*.f64 x.im y.re)) (cbrt.f64 (*.f64 x.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2)) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)))) (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)))))) |
| 1× | egglog |
| Inputs |
|---|
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 x.im y.re (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 y.im x.re (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 x.re) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (cbrt.f64 (*.f64 x.im y.re)) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.im y.re)) (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (*.f64 x.im x.im)) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (*.f64 y.im y.im)) (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 (cbrt.f64 y.re)) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.re y.re))) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im)) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.im x.im)) (*.f64 y.re (cbrt.f64 x.im)) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 y.im)) (cbrt.f64 y.im) (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 (*.f64 y.im y.im)) (*.f64 x.re (cbrt.f64 y.im)) (*.f64 x.im y.re)) |
(fma.f64 (*.f64 x.re (cbrt.f64 (*.f64 y.im y.im))) (cbrt.f64 y.im) (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 (*.f64 x.re x.re)) (*.f64 y.im (cbrt.f64 x.re)) (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 y.im) (*.f64 x.re (cbrt.f64 (*.f64 y.im y.im))) (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 (cbrt.f64 x.re)) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 x.re x.re))) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im)) (*.f64 x.im y.re)) |
(fma.f64 (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (cbrt.f64 x.re) (*.f64 x.im y.re)) |
(fma.f64 (*.f64 y.im (cbrt.f64 x.re)) (cbrt.f64 (*.f64 x.re x.re)) (*.f64 x.im y.re)) |
(fma.f64 (*.f64 x.im y.re) 1 (*.f64 x.re y.im)) |
(fma.f64 1 (*.f64 x.im y.re) (*.f64 x.re y.im)) |
(fma.f64 1 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
(fma.f64 (*.f64 x.re y.im) 1 (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 y.re) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 x.im) (*.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 x.im (cbrt.f64 y.re)) (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (*.f64 x.im y.re)) |
(fma.f64 (*.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (cbrt.f64 x.im) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (*.f64 x.im (cbrt.f64 y.re)) (cbrt.f64 (cbrt.f64 (*.f64 y.re y.re)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.re y.re))) 2) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.im y.re) 2) (cbrt.f64 (*.f64 x.im y.re)))) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 x.im)) (*.f64 (*.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (cbrt.f64 (cbrt.f64 (*.f64 x.im x.im)))) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.im (cbrt.f64 y.re)) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (cbrt.f64 y.re) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.im y.re) 2) (cbrt.f64 (*.f64 x.im y.re)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2))) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (cbrt.f64 (*.f64 x.im x.im)))) (cbrt.f64 (*.f64 x.im (cbrt.f64 x.im))) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 (*.f64 x.im y.re))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.im y.re) 2) (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)))) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 x.re y.im)) (*.f64 x.im y.re)) |
(fma.f64 (*.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im))) 2) (*.f64 x.im y.re)) |
(fma.f64 (cbrt.f64 (*.f64 (*.f64 x.im y.re) (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (*.f64 x.im y.re) 2) 2))) (*.f64 x.re y.im)) |
(if (!=.f64 (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (fma.f64 (*.f64 x.im y.re) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2)) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (*.f64 x.im y.re) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (*.f64 x.re y.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (fma.f64 y.im x.re (neg.f64 (*.f64 x.im y.re))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) |
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) |
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2))))) |
(*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2))) |
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) |
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (cbrt.f64 (*.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (+.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (*.f64 x.im y.re)))) |
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (+.f64 (cbrt.f64 (*.f64 x.im y.re)) (cbrt.f64 (*.f64 x.re y.im)))) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2)) |
(*.f64 1 (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1) |
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2)) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 2)) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)))) (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) |
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))) |
(/.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1) |
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3) 1/3) |
(pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 3) |
(pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1) |
(cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) |
| Outputs |
|---|
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 x.im y.re (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 y.im x.re (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 x.re) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (cbrt.f64 (*.f64 x.im y.re)) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.im y.re)) (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (*.f64 x.im x.im)) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (*.f64 y.im y.im)) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 y.re)) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.re y.re))) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im)) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 y.re)) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.re y.re))) (cbrt.f64 (*.f64 y.re y.re))) x.im) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.im x.im)) (*.f64 y.re (cbrt.f64 x.im)) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 y.im)) (cbrt.f64 y.im) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (*.f64 y.im y.im)) (*.f64 x.re (cbrt.f64 y.im)) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 x.re (cbrt.f64 (*.f64 y.im y.im))) (cbrt.f64 y.im) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.re x.re)) (*.f64 y.im (cbrt.f64 x.re)) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 y.im) (*.f64 x.re (cbrt.f64 (*.f64 y.im y.im))) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 x.re)) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 x.re x.re))) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im)) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (cbrt.f64 x.re) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 y.im (cbrt.f64 x.re)) (cbrt.f64 (*.f64 x.re x.re)) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 x.im y.re) 1 (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 1 (*.f64 x.im y.re) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 1 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 x.re y.im) 1 (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 y.re) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 x.im) (*.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 x.im (cbrt.f64 y.re)) (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (cbrt.f64 x.im) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 (*.f64 x.im (cbrt.f64 y.re)) (cbrt.f64 (cbrt.f64 (*.f64 y.re y.re)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.re y.re))) 2) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.im y.re) 2) (cbrt.f64 (*.f64 x.im y.re)))) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 x.im)) (*.f64 (*.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (cbrt.f64 (cbrt.f64 (*.f64 x.im x.im)))) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.im (cbrt.f64 y.re)) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (cbrt.f64 y.re) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.im y.re) 2) (cbrt.f64 (*.f64 x.im y.re)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2))) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (cbrt.f64 (*.f64 x.im x.im)))) (cbrt.f64 (*.f64 x.im (cbrt.f64 x.im))) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 (*.f64 x.im y.re))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.im y.re) 2) (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)))) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 x.re y.im)) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (*.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im))) 2) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (*.f64 (*.f64 x.im y.re) (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (*.f64 x.im y.re) 2) 2))) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.im (*.f64 y.re (cbrt.f64 (pow.f64 (*.f64 y.re x.im) 2))))) (cbrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (*.f64 y.re x.im) 2) 2))) (*.f64 x.re y.im)) |
(if (!=.f64 (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 y.re x.im) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 y.re x.im))) |
(if (!=.f64 (fma.f64 (*.f64 x.im y.re) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2)) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (fma.f64 (*.f64 y.re x.im) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2)) 0) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 y.re x.im) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 y.re x.im))) |
(if (!=.f64 (*.f64 x.im y.re) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (*.f64 y.re x.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 y.re x.im) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 y.re x.im))) |
(if (!=.f64 (*.f64 x.re y.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 x.im y.re) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (*.f64 x.re y.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 y.re x.im) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im))) (pow.f64 (*.f64 x.re y.im) 2))) (fma.f64 x.re y.im (*.f64 y.re x.im))) |
(if (!=.f64 (fma.f64 y.im x.re (neg.f64 (*.f64 x.im y.re))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(if (!=.f64 (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 y.re x.im) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 y.re x.im (neg.f64 (*.f64 x.re y.im)))) (fma.f64 x.re y.im (*.f64 y.re x.im))) |
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2))))) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2))) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (cbrt.f64 (*.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (+.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (*.f64 x.im y.re)))) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))) (+.f64 (cbrt.f64 (*.f64 x.im y.re)) (cbrt.f64 (*.f64 x.re y.im)))) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 1 (fma.f64 x.re y.im (*.f64 x.im y.re))) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2)) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 2)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2)))) (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(/.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3) 1/3) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 3) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
Compiled 2068 to 530 computations (74.4% saved)
5 alts after pruning (3 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 118 | 3 | 121 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 118 | 5 | 123 |
| Status | Error | Program |
|---|---|---|
| ▶ | 0.0b | (fma.f64 y.re x.im (*.f64 x.re y.im)) |
| ✓ | 0.0b | (fma.f64 x.re y.im (*.f64 x.im y.re)) |
| ✓ | 0.0b | (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
| ▶ | 29.7b | (*.f64 y.re x.im) |
| ▶ | 32.8b | (*.f64 x.re y.im) |
Compiled 45 to 29 computations (35.6% saved)
Compiled 9 to 5 computations (44.4% saved)
Compiled 9 to 5 computations (44.4% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (fma.f64 y.re x.im (*.f64 x.re y.im)) |
Compiled 17 to 6 computations (64.7% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y.im | @ | 0 | (fma.f64 y.re x.im (*.f64 x.re y.im)) |
| 0.0ms | y.re | @ | -inf | (fma.f64 y.re x.im (*.f64 x.re y.im)) |
| 0.0ms | x.im | @ | inf | (fma.f64 y.re x.im (*.f64 x.re y.im)) |
| 0.0ms | x.im | @ | -inf | (fma.f64 y.re x.im (*.f64 x.re y.im)) |
| 0.0ms | y.re | @ | inf | (fma.f64 y.re x.im (*.f64 x.re y.im)) |
Compiled 1465 to 45 computations (96.9% saved)
| 1× | batch-egg-rewrite |
| 64× | egg-rr |
| Inputs |
|---|
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.re x.im (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re y.im (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.im x.re (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.im y.re (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 y.re) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 x.re y.im)) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (cbrt.f64 x.re)) (cbrt.f64 (*.f64 x.re x.re)) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (*.f64 x.im x.im)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cbrt.f64 y.im)) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im))) (*.f64 (cbrt.f64 (*.f64 y.im y.im)) x.re)) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.re x.re)) (*.f64 y.im (cbrt.f64 x.re)) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 x.im)) (cbrt.f64 x.im) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.im x.im)) (*.f64 y.re (cbrt.f64 x.im)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.re (cbrt.f64 (*.f64 x.im x.im))) (cbrt.f64 x.im) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.im (cbrt.f64 y.re)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x.im) (*.f64 y.re (cbrt.f64 (*.f64 x.im x.im))) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cbrt.f64 y.re)) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.re y.re))) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (cbrt.f64 y.re) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.im (cbrt.f64 y.re)) (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re y.im) 1 (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x.re y.im) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y.re x.im) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.re x.im) 1 (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 y.im) (*.f64 (cbrt.f64 (*.f64 y.im y.im)) x.re) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x.re) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (*.f64 y.im y.im)) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y.re x.im)) (cbrt.f64 (pow.f64 (*.f64 y.re x.im) 2)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (cbrt.f64 x.re) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im))) 2) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.re y.im) 2) (cbrt.f64 (*.f64 x.re y.im)))) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cbrt.f64 x.re)) (*.f64 (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (cbrt.f64 (cbrt.f64 (*.f64 x.re x.re)))) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y.im y.im)) (*.f64 x.re (cbrt.f64 y.im)) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 y.im y.im)) x.re) (cbrt.f64 y.im) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.re y.im) 2) (cbrt.f64 (*.f64 x.re y.im)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2))) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y.im (cbrt.f64 x.re)) (cbrt.f64 (cbrt.f64 (*.f64 x.re x.re)))) (cbrt.f64 (*.f64 x.re (cbrt.f64 x.re))) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cbrt.f64 (*.f64 x.re y.im))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.re y.im) 2) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)))) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 y.re x.im) 2)) (cbrt.f64 (*.f64 y.re x.im)) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (cbrt.f64 (*.f64 x.im x.im)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 x.im x.im))) 2) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (*.f64 x.re y.im) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (*.f64 x.re y.im) 2) 2))) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 y.re x.im) 2)) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im)))) (fma.f64 y.re x.im (*.f64 x.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2)) 0) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2))) (fma.f64 y.re x.im (*.f64 x.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 x.re y.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2))) (fma.f64 y.re x.im (*.f64 x.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 y.re x.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2))) (fma.f64 y.re x.im (*.f64 x.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 y.re x.im) 2)) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im)))) (fma.f64 y.re x.im (*.f64 x.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.im) (*.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) 2) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2)) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 y.re x.im) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))))) (+.f64 (cbrt.f64 (*.f64 y.re x.im)) (cbrt.f64 (*.f64 x.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 y.re x.im) 2)) (cbrt.f64 (*.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))))) (+.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (*.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y.re x.im (*.f64 x.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2)) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2)))) (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3)))))) |
| 1× | egglog |
| Inputs |
|---|
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 y.im x.re (*.f64 y.re x.im)) |
(fma.f64 x.im y.re (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 y.re) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 x.re y.im)) (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (*.f64 y.re x.im)) |
(fma.f64 (*.f64 y.im (cbrt.f64 x.re)) (cbrt.f64 (*.f64 x.re x.re)) (*.f64 y.re x.im)) |
(fma.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (*.f64 x.im x.im)) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 y.im)) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im))) (*.f64 (cbrt.f64 (*.f64 y.im y.im)) x.re)) (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.re x.re)) (*.f64 y.im (cbrt.f64 x.re)) (*.f64 y.re x.im)) |
(fma.f64 (*.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 x.im)) (cbrt.f64 x.im) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.im x.im)) (*.f64 y.re (cbrt.f64 x.im)) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 y.re (cbrt.f64 (*.f64 x.im x.im))) (cbrt.f64 x.im) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.im (cbrt.f64 y.re)) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 x.im) (*.f64 y.re (cbrt.f64 (*.f64 x.im x.im))) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 y.re)) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.re y.re))) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im)) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (cbrt.f64 y.re) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 x.im (cbrt.f64 y.re)) (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 x.re y.im) 1 (*.f64 y.re x.im)) |
(fma.f64 1 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 1 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 y.re x.im) 1 (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 y.im) (*.f64 (cbrt.f64 (*.f64 y.im y.im)) x.re) (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 x.re) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (*.f64 y.re x.im)) |
(fma.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (*.f64 y.im y.im)) (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (*.f64 y.re x.im)) (cbrt.f64 (pow.f64 (*.f64 y.re x.im) 2)) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (cbrt.f64 x.re) (*.f64 y.re x.im)) |
(fma.f64 (*.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im))) 2) (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.re y.im) 2) (cbrt.f64 (*.f64 x.re y.im)))) (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 x.re)) (*.f64 (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (cbrt.f64 (cbrt.f64 (*.f64 x.re x.re)))) (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (*.f64 y.im y.im)) (*.f64 x.re (cbrt.f64 y.im)) (*.f64 y.re x.im)) |
(fma.f64 (*.f64 (cbrt.f64 (*.f64 y.im y.im)) x.re) (cbrt.f64 y.im) (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.re y.im) 2) (cbrt.f64 (*.f64 x.re y.im)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2))) (*.f64 y.re x.im)) |
(fma.f64 (*.f64 (*.f64 y.im (cbrt.f64 x.re)) (cbrt.f64 (cbrt.f64 (*.f64 x.re x.re)))) (cbrt.f64 (*.f64 x.re (cbrt.f64 x.re))) (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 (*.f64 x.re y.im))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.re y.im) 2) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)))) (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 y.re x.im) 2)) (cbrt.f64 (*.f64 y.re x.im)) (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (cbrt.f64 (*.f64 x.im x.im)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 x.im x.im))) 2) (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 (*.f64 x.re y.im) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (*.f64 x.re y.im) 2) 2))) (*.f64 y.re x.im)) |
(if (!=.f64 (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 y.re x.im) 2)) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im)))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(if (!=.f64 (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2)) 0) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(if (!=.f64 (*.f64 x.re y.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(if (!=.f64 (*.f64 y.re x.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(if (!=.f64 (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 y.re x.im) 2)) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im)))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) 2) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) |
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2))))) |
(*.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2))) |
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2)) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) |
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 y.re x.im) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))))) (+.f64 (cbrt.f64 (*.f64 y.re x.im)) (cbrt.f64 (*.f64 x.re y.im)))) |
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 y.re x.im) 2)) (cbrt.f64 (*.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))))) (+.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (*.f64 y.re x.im)))) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2)) |
(*.f64 1 (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(*.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1) |
(*.f64 (*.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2)) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) 2)) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2)))) (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) |
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))) |
(/.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1) |
(pow.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3) 1/3) |
(pow.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 3) |
(pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1) |
(cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3)) |
| Outputs |
|---|
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 x.re y.im) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 x.re y.im (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 y.im x.re (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 x.im y.re (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 y.re) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 x.re y.im)) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 y.im (cbrt.f64 x.re)) (cbrt.f64 (*.f64 x.re x.re)) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (*.f64 x.im x.im)) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 y.im)) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im))) (*.f64 (cbrt.f64 (*.f64 y.im y.im)) x.re)) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.re x.re)) (*.f64 y.im (cbrt.f64 x.re)) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 x.im)) (cbrt.f64 x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 x.im x.im)) (*.f64 y.re (cbrt.f64 x.im)) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 y.re (cbrt.f64 (*.f64 x.im x.im))) (cbrt.f64 x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.im (cbrt.f64 y.re)) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 x.im) (*.f64 y.re (cbrt.f64 (*.f64 x.im x.im))) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 y.re)) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.re y.re))) (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im)) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (cbrt.f64 (*.f64 y.re y.re)) x.im) (cbrt.f64 y.re) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 x.im (cbrt.f64 y.re)) (cbrt.f64 (*.f64 y.re y.re)) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 x.re y.im) 1 (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 1 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 1 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 y.re x.im) 1 (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 y.im) (*.f64 (cbrt.f64 (*.f64 y.im y.im)) x.re) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 x.re) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (*.f64 y.im y.im)) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 y.re x.im)) (cbrt.f64 (pow.f64 (*.f64 y.re x.im) 2)) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (cbrt.f64 x.re) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (*.f64 x.re (cbrt.f64 y.im)) (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y.im y.im))) 2) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.re y.im) 2) (cbrt.f64 (*.f64 x.re y.im)))) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 x.re)) (*.f64 (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.im) (cbrt.f64 (cbrt.f64 (*.f64 x.re x.re)))) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 y.im y.im)) (*.f64 x.re (cbrt.f64 y.im)) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (cbrt.f64 (*.f64 y.im y.im)) x.re) (cbrt.f64 y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.re y.im) 2) (cbrt.f64 (*.f64 x.re y.im)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2))) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (*.f64 y.im (cbrt.f64 x.re)) (cbrt.f64 (cbrt.f64 (*.f64 x.re x.re)))) (cbrt.f64 (*.f64 x.re (cbrt.f64 x.re))) (*.f64 y.re x.im)) |
(fma.f64 (*.f64 y.im (cbrt.f64 (*.f64 x.re (cbrt.f64 (*.f64 x.re x.re))))) (cbrt.f64 (*.f64 x.re (cbrt.f64 x.re))) (*.f64 y.re x.im)) |
(fma.f64 (cbrt.f64 (cbrt.f64 (*.f64 x.re y.im))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 x.re y.im) 2) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)))) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 y.re x.im) 2)) (cbrt.f64 (*.f64 y.re x.im)) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (*.f64 (*.f64 y.re (cbrt.f64 x.im)) (cbrt.f64 (cbrt.f64 (*.f64 x.im x.im)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 x.im x.im))) 2) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(fma.f64 (cbrt.f64 (*.f64 (*.f64 x.re y.im) (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (*.f64 x.re y.im) 2) 2))) (*.f64 y.re x.im)) |
(if (!=.f64 (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 y.re x.im) 2)) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im)))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(if (!=.f64 (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 y.re x.im) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im)))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(if (!=.f64 (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2)) 0) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(if (!=.f64 (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2)) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 y.re x.im) 3)) (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(if (!=.f64 (*.f64 x.re y.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(if (!=.f64 (*.f64 x.re y.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 y.re x.im) 3)) (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(if (!=.f64 (*.f64 y.re x.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(if (!=.f64 (*.f64 y.re x.im) 0) (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.im) 3) (pow.f64 (*.f64 y.re x.im) 3)) (fma.f64 (*.f64 x.re y.im) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im))) (pow.f64 (*.f64 y.re x.im) 2))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(if (!=.f64 (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 y.re x.im) 2)) (fma.f64 y.im x.re (neg.f64 (*.f64 y.re x.im)))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(if (!=.f64 (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im))) 0) (/.f64 (-.f64 (pow.f64 (*.f64 y.re x.im) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 x.im y.re (neg.f64 (*.f64 x.re y.im)))) (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) 2) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2))))) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2))) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2)) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 y.re x.im) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (cbrt.f64 (*.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))))) (+.f64 (cbrt.f64 (*.f64 y.re x.im)) (cbrt.f64 (*.f64 x.re y.im)))) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 y.re x.im) 2)) (cbrt.f64 (*.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))))) (+.f64 (cbrt.f64 (*.f64 x.re y.im)) (cbrt.f64 (*.f64 y.re x.im)))) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 1 (fma.f64 y.re x.im (*.f64 x.re y.im))) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 (*.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2)) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) 2)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) (cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2)))) (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(/.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(pow.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3) 1/3) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(pow.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 3) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
(cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
Compiled 1334 to 364 computations (72.7% saved)
5 alts after pruning (0 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 72 | 0 | 72 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 4 | 4 |
| Total | 72 | 5 | 77 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0.0b | (fma.f64 y.re x.im (*.f64 x.re y.im)) |
| ✓ | 0.0b | (fma.f64 x.re y.im (*.f64 x.im y.re)) |
| ✓ | 0.0b | (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
| ✓ | 29.7b | (*.f64 y.re x.im) |
| ✓ | 32.8b | (*.f64 x.re y.im) |
Compiled 45 to 29 computations (35.6% saved)
| Inputs |
|---|
(*.f64 x.re y.im) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
(fma.f64 y.re x.im (*.f64 x.re y.im)) |
| Outputs |
|---|
(fma.f64 x.re y.im (*.f64 x.im y.re)) |
7 calls:
| 22.0ms | x.re |
| 11.0ms | (*.f64 x.im y.re) |
| 10.0ms | (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
| 10.0ms | y.re |
| 8.0ms | x.im |
| Error | Segments | Branch |
|---|---|---|
| 0.0b | 1 | x.re |
| 0.0b | 1 | x.im |
| 0.0b | 1 | y.re |
| 0.0b | 1 | y.im |
| 0.0b | 1 | (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
| 0.0b | 1 | (*.f64 x.re y.im) |
| 0.0b | 1 | (*.f64 x.im y.re) |
Compiled 74 to 43 computations (41.9% saved)
| Inputs |
|---|
(*.f64 x.re y.im) |
(*.f64 y.re x.im) |
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
| Outputs |
|---|
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
7 calls:
| 9.0ms | (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
| 8.0ms | y.re |
| 7.0ms | x.im |
| 7.0ms | (*.f64 x.im y.re) |
| 7.0ms | y.im |
| Error | Segments | Branch |
|---|---|---|
| 0.0b | 1 | x.re |
| 0.0b | 1 | x.im |
| 0.0b | 1 | y.re |
| 0.0b | 1 | y.im |
| 0.0b | 1 | (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) |
| 0.0b | 1 | (*.f64 x.re y.im) |
| 0.0b | 1 | (*.f64 x.im y.re) |
Compiled 62 to 41 computations (33.9% saved)
Total -47.1b remaining (-335.3%)
Threshold costs -47.1b (-335.3%)
| Inputs |
|---|
(*.f64 x.re y.im) |
(*.f64 y.re x.im) |
| Outputs |
|---|
(*.f64 x.re y.im) |
(*.f64 y.re x.im) |
(*.f64 x.re y.im) |
5 calls:
| 22.0ms | y.im |
| 17.0ms | x.im |
| 15.0ms | x.re |
| 15.0ms | y.re |
| 10.0ms | (*.f64 x.re y.im) |
| Error | Segments | Branch |
|---|---|---|
| 18.7b | 5 | x.re |
| 19.2b | 5 | x.im |
| 18.0b | 5 | y.re |
| 17.5b | 7 | y.im |
| 14.1b | 3 | (*.f64 x.re y.im) |
Compiled 37 to 27 computations (27% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 18.0ms | 3.074992492112229e-77 | 3.463279177572913e-54 |
| 17.0ms | -1.28429695817255e-91 | -1.9768886533588194e-102 |
| 32.0ms | 336× | body | 256 | valid |
Compiled 312 to 244 computations (21.8% saved)
| 1× | done |
Compiled 53 to 30 computations (43.4% saved)
Compiled 4 to 4 computations (0% saved)
Compiled 41 to 15 computations (63.4% saved)
Loading profile data...