Details

Time bar (total: 15.6s)

analyze431.0ms (2.8%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
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
0%0%99.8%0.2%0%0%0%9
0%0%99.8%0.2%0%0%0%10
0%0%99.8%0.2%0%0%0%11
9.8%9.7%90.1%0.2%0%0%0%12
Compiler

Compiled 20 to 12 computations (40% saved)

sample1.4s (8.9%)

Results
1.3s8256×body256valid
85.0ms490×body256infinite
Bogosity

preprocess35.0ms (0.2%)

Algorithm
egg-herbie
Rules
23×fma-def_binary64
+-commutative_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
039126
164126
274126
044
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
2
3
Call 2
Inputs
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re x.re) (*.f64 y.im y.im)))
(/.f64 (+.f64 (*.f64 y.im y.re) (*.f64 x.im x.re)) (+.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)))
(/.f64 (+.f64 (*.f64 x.re x.im) (*.f64 y.re y.im)) (+.f64 (*.f64 x.im x.im) (*.f64 y.im y.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 y.re y.re) (*.f64 x.im x.im)))
(/.f64 (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
Outputs
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 (+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (fma.f64 x.re y.im (*.f64 y.re x.im)) (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re x.re) (*.f64 y.im y.im)))
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 x.re x.re (*.f64 y.im y.im)))
(/.f64 (+.f64 (*.f64 y.im y.re) (*.f64 x.im x.re)) (+.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)))
(/.f64 (fma.f64 x.re x.im (*.f64 y.re y.im)) (fma.f64 y.re y.re (*.f64 x.re x.re)))
(/.f64 (fma.f64 x.re x.im (*.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 y.re y.re)))
(/.f64 (+.f64 (*.f64 x.re x.im) (*.f64 y.re y.im)) (+.f64 (*.f64 x.im x.im) (*.f64 y.im y.im)))
(/.f64 (fma.f64 x.re x.im (*.f64 y.re y.im)) (fma.f64 x.im x.im (*.f64 y.im y.im)))
(/.f64 (fma.f64 x.re x.im (*.f64 y.re y.im)) (fma.f64 y.im y.im (*.f64 x.im x.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 y.re y.re) (*.f64 x.im x.im)))
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 x.im x.im)))
(/.f64 (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 (fma.f64 x.re y.im (*.f64 y.re x.im)) (fma.f64 y.re y.re (*.f64 y.im y.im)))
Compiler

Compiled 23 to 15 computations (34.8% saved)

simplify6.0ms (0%)

Algorithm
egg-herbie
Rules
fma-def_binary64
+-commutative_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01218
11818
22218
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Outputs
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im)))

eval1.0ms (0%)

Compiler

Compiled 32 to 14 computations (56.3% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
27.0b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
27.0b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Compiler

Compiled 19 to 11 computations (42.1% saved)

localize13.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.7b
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
26.5b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Compiler

Compiled 49 to 11 computations (77.6% saved)

series20.0ms (0.1%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
7.0ms
y.re
@-inf
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
1.0ms
x.re
@0
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
1.0ms
x.im
@inf
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
1.0ms
x.im
@0
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
1.0ms
x.re
@-inf
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite73.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
689×log-prod_binary64
506×fma-def_binary64
354×pow2_binary64
244×fma-neg_binary64
242×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01226
126425
2383125
Stop Event
node limit
Counts
2 → 109
Calls
Call 1
Inputs
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2)) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (fma.f64 x.re y.re (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2)) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) 2)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2)) (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) 2)) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) 2)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2)) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (+.f64 (pow.f64 y.re 4) (-.f64 (pow.f64 y.im 4) (pow.f64 (*.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 x.re y.re) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (/.f64 (pow.f64 (*.f64 x.im y.im) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (pow.f64 (*.f64 x.re y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (pow.f64 (*.f64 x.re y.re) 2)) (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (fma.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (pow.f64 (*.f64 x.re y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (+.f64 (pow.f64 (*.f64 x.im y.im) 2) (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 x.re (*.f64 y.re (*.f64 x.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) (neg.f64 (fma.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (pow.f64 (*.f64 x.re y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) (neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re y.re) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (pow.f64 (*.f64 x.re y.re) 2)) (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.re))) (pow.f64 (exp.f64 x.im) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x.re) y.re) (+.f64 1 (expm1.f64 (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.re))) (+.f64 1 (expm1.f64 (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.im))) (pow.f64 (exp.f64 x.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x.im) y.im) (+.f64 1 (expm1.f64 (*.f64 x.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.im))) (+.f64 1 (expm1.f64 (*.f64 x.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re y.re (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.re x.re (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re y.re) 1 (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.im y.im (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.im x.im (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.im y.im) 1 (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x.im y.im) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.im x.im)) (*.f64 (cbrt.f64 x.im) y.im) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.re x.re)) (*.f64 (cbrt.f64 x.re) y.re) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y.re) 2) (*.f64 (cbrt.f64 y.re) x.re) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (cbrt.f64 y.im) x.im) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (*.f64 x.im y.im)) 2) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.im y.im)) 2) (cbrt.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.re y.re)) (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2) (cbrt.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.im) (*.f64 (sqrt.f64 x.im) y.im) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) y.re) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y.im) (*.f64 (sqrt.f64 y.im) x.im) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y.re) (*.f64 (sqrt.f64 y.re) x.re) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x.im y.im)) (sqrt.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x.re y.re)) (sqrt.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re (sqrt.f64 y.re)) (sqrt.f64 y.re) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.re (cbrt.f64 (*.f64 x.re x.re))) (cbrt.f64 x.re) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.re (sqrt.f64 x.re)) (sqrt.f64 x.re) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.im (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 y.im) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.im (sqrt.f64 y.im)) (sqrt.f64 y.im) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (cbrt.f64 (*.f64 x.im x.im))) (cbrt.f64 x.im) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (sqrt.f64 x.im)) (sqrt.f64 x.im) (*.f64 x.re y.re))))))

simplify91.0ms (0.6%)

Algorithm
egg-herbie
Rules
751×fma-neg_binary64
609×associate-/r/_binary64
484×associate-/l/_binary64
354×sub-neg_binary64
350×div-sub_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0461650
11311542
24611461
326441410
467721410
Stop Event
node limit
Counts
205 → 134
Calls
Call 1
Inputs
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
Outputs
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im)
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re))
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re)
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re))
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re)
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(fma.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (-.f64 (/.f64 x.im y.im) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))))
(-.f64 (fma.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re (/.f64 x.im y.im)) (*.f64 x.im (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re))))
(-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 x.re (/.f64 (*.f64 x.im y.re) y.im))))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))))
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (-.f64 (-.f64 (/.f64 x.im y.im) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))))
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 x.im (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))
(-.f64 (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)) (*.f64 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))
(-.f64 (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)) (*.f64 (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)) (+.f64 x.im (/.f64 y.re (/.f64 y.im x.re)))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(-.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 (/.f64 y.im y.re) y.re) (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re))))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im))
(-.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) (fma.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re))))
(-.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(-.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 (/.f64 y.im y.re) y.re) (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re))))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im))
(-.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) (fma.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re))))
(-.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re))
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re)
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im)
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im)
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)))
(fma.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im (*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(-.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 (/.f64 y.im y.re) y.re) (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re))))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im))
(-.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) (fma.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re))))
(-.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(fma.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (-.f64 (/.f64 x.im y.im) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))))
(-.f64 (fma.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re (/.f64 x.im y.im)) (*.f64 x.im (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re))))
(-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 x.re (/.f64 (*.f64 x.im y.re) y.im))))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))))
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (-.f64 (-.f64 (/.f64 x.im y.im) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))))
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 x.im (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))
(-.f64 (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)) (*.f64 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))
(-.f64 (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)) (*.f64 (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)) (+.f64 x.im (/.f64 y.re (/.f64 y.im x.re)))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(fma.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (-.f64 (/.f64 x.im y.im) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))))
(-.f64 (fma.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re (/.f64 x.im y.im)) (*.f64 x.im (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re))))
(-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 x.re (/.f64 (*.f64 x.im y.re) y.im))))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))))
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (-.f64 (-.f64 (/.f64 x.im y.im) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))))
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 x.im (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))
(-.f64 (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)) (*.f64 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))
(-.f64 (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)) (*.f64 (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)) (+.f64 x.im (/.f64 y.re (/.f64 y.im x.re)))))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 y.im x.im))

eval32.0ms (0.2%)

Compiler

Compiled 2644 to 816 computations (69.1% saved)

prune36.0ms (0.2%)

Pruning

15 alts after pruning (14 fresh and 1 done)

PrunedKeptTotal
New12014134
Fresh000
Picked011
Done000
Total12015135
Error
0.4b
Counts
135 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
40.3b
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
32.8b
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
43.6b
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2)
40.2b
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
36.7b
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re))))
40.3b
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
27.5b
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))
36.9b
(/.f64 x.re y.re)
36.7b
(/.f64 x.im y.im)
38.7b
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
34.8b
(/.f64 (fma.f64 (*.f64 y.re (cbrt.f64 (*.f64 x.re x.re))) (cbrt.f64 x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
31.7b
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
27.0b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
18.8b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))
36.6b
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 x.re (/.f64 (*.f64 x.im y.re) y.im))))
Compiler

Compiled 461 to 275 computations (40.3% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (hypot.f64 y.re y.im))
0.2b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))
0.7b
(fma.f64 x.re y.re (*.f64 x.im y.im))
17.6b
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))
Compiler

Compiled 52 to 14 computations (73.1% saved)

series26.0ms (0.2%)

Counts
4 → 168
Calls

42 calls:

TimeVariablePointExpression
2.0ms
y.re
@0
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))
1.0ms
y.re
@inf
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))
1.0ms
x.re
@0
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))
1.0ms
y.re
@inf
(/.f64 1 (hypot.f64 y.re y.im))
1.0ms
y.re
@0
(/.f64 1 (hypot.f64 y.re y.im))

rewrite78.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
614×log-prod_binary64
411×pow-prod-down_binary64
310×pow2_binary64
254×prod-diff_binary64
231×pow-unpow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01249
124546
2312946
Stop Event
node limit
Counts
4 → 163
Calls
Call 1
Inputs
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))
(fma.f64 x.re y.re (*.f64 x.im y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))
(/.f64 1 (hypot.f64 y.re y.im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re y.re (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (pow.f64 (hypot.f64 y.re y.im) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) (pow.f64 (hypot.f64 y.re y.im) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) (pow.f64 (hypot.f64 y.re y.im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re y.re) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x.re y.re) 1) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (*.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y.im) x.im) (exp.f64 (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.im))) (exp.f64 (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 x.re y.re)) (+.f64 1 (expm1.f64 (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) -2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) -2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (hypot.f64 y.re y.im) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 y.re y.im) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) -1) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) (pow.f64 (neg.f64 (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (pow.f64 (neg.f64 (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 1) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (cbrt.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3) (pow.f64 (hypot.f64 y.re y.im) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (hypot.f64 y.re y.im) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 y.re y.im) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3) (pow.f64 (hypot.f64 y.re y.im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (hypot.f64 y.re y.im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (hypot.f64 y.re y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (hypot.f64 y.re y.im))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (hypot.f64 y.re y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (hypot.f64 y.re y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 y.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (pow.f64 (hypot.f64 y.re y.im) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 y.re y.im) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 y.re y.im) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 y.re y.im) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 y.re y.im) 3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (neg.f64 (hypot.f64 y.re y.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 y.re y.im)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (hypot.f64 y.re y.im))) 1))))))

simplify78.0ms (0.5%)

Algorithm
egg-herbie
Rules
819×associate-/l*_binary64
562×associate-/r*_binary64
534×associate-*r*_binary64
507×associate-*l*_binary64
426×associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01883406
15963195
221723168
Stop Event
node limit
Counts
331 → 258
Calls
Call 1
Inputs
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
x.im
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))))
(*.f64 -1 x.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (*.f64 -1 x.re))))
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))))
x.im
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)))
(*.f64 -1 x.im)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (*.f64 -1 x.im))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1 x.im) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))))))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 1 y.im)
(+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))))
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3)))))
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (+.f64 (/.f64 1 y.im) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (*.f64 -5/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7))))))
(/.f64 1 y.re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.im 6)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.im 2)))) (pow.f64 y.re 7))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re))))
(/.f64 -1 y.re)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))))) (/.f64 1 y.re))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.im 2)) (pow.f64 y.re 7))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))))))) (/.f64 1 y.re))
(/.f64 1 y.re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re))
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re)))
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (+.f64 (*.f64 -5/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7))) (/.f64 1 y.re))))
(/.f64 1 y.im)
(+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))))
(+.f64 (/.f64 1 y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3)))))
(+.f64 (/.f64 1 y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.re 2))) (*.f64 1/8 (pow.f64 y.re 6))) (pow.f64 y.im 7))))))
(/.f64 -1 y.im)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (/.f64 1 y.im))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))))) (/.f64 1 y.im))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.re 2)) (pow.f64 y.im 7))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (*.f64 1/8 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7))))))) (/.f64 1 y.im))
Outputs
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (*.f64 y.re x.re))
(*.f64 y.re (*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (*.f64 y.re x.re))
(*.f64 y.re (*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
x.im
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)
(+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))
(+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))
(+.f64 x.im (fma.f64 -1/2 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) (*.f64 (/.f64 x.re y.im) y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (+.f64 x.im (fma.f64 -1/2 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) (*.f64 (/.f64 x.re y.im) y.re))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (+.f64 x.im (fma.f64 -1/2 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) (*.f64 (/.f64 x.re y.im) y.re))))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))
(+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (*.f64 y.re y.re)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
(fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))
(+.f64 (*.f64 (/.f64 x.im y.re) y.im) (fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) x.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (*.f64 y.re y.re)) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) (+.f64 (/.f64 x.im (/.f64 y.re y.im)) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) x.re)))
(fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))))
(*.f64 -1 x.re)
(neg.f64 x.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re))
(*.f64 -1 (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
(-.f64 (neg.f64 x.re) (/.f64 x.im (/.f64 y.re y.im)))
(-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re)))
(fma.f64 1/2 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (*.f64 y.re y.re)) (*.f64 -1 (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))))
(fma.f64 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) 1/2 (-.f64 (neg.f64 x.re) (/.f64 x.im (/.f64 y.re y.im))))
(-.f64 (-.f64 (/.f64 1/2 (/.f64 (*.f64 y.re y.re) (*.f64 (*.f64 x.re y.im) y.im))) (*.f64 (/.f64 x.im y.re) y.im)) x.re)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (*.f64 -1 x.re))))
(fma.f64 1/2 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (*.f64 y.re y.re)) (fma.f64 -1 (/.f64 (*.f64 y.im x.im) y.re) (fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (neg.f64 x.re))))
(fma.f64 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) 1/2 (-.f64 (-.f64 (*.f64 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) 1/2) x.re) (/.f64 x.im (/.f64 y.re y.im))))
(fma.f64 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) 1/2 (-.f64 (*.f64 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) 1/2) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))))
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (*.f64 y.re x.re))
(*.f64 y.re (*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.im x.im (*.f64 y.re x.re)))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))
(+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (*.f64 y.re y.re)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
(fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))
(+.f64 (*.f64 (/.f64 x.im y.re) y.im) (fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) x.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (*.f64 y.re y.re)) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) (+.f64 (/.f64 x.im (/.f64 y.re y.im)) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) x.re)))
(fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))))
x.im
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)
(+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))
(+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))
(+.f64 x.im (fma.f64 -1/2 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) (*.f64 (/.f64 x.re y.im) y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (+.f64 x.im (fma.f64 -1/2 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) (*.f64 (/.f64 x.re y.im) y.re))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (+.f64 x.im (fma.f64 -1/2 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) (*.f64 (/.f64 x.re y.im) y.re))))
(*.f64 -1 x.im)
(neg.f64 x.im)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (*.f64 -1 x.im))
(*.f64 -1 (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))
(-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1 x.im) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2)))))
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1 x.im (*.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) 1/2)))
(-.f64 (fma.f64 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) 1/2 (neg.f64 x.im)) (*.f64 (/.f64 x.re y.im) y.re))
(-.f64 (*.f64 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) 1/2) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))))))
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1 x.im (*.f64 1/2 (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im))))))
(-.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))))) x.im) (*.f64 (/.f64 x.re y.im) y.re))
(-.f64 (*.f64 (/.f64 1/2 y.im) (+.f64 (/.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (/.f64 (pow.f64 y.re 3) (/.f64 y.im (/.f64 x.re y.im))))) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(*.f64 y.im x.im)
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))
(fma.f64 y.im x.im (*.f64 y.re x.re))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)))
(+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re) (*.f64 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) x.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))))
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (-.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))))
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) x.im)) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))) (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re)))
(+.f64 (/.f64 x.re y.re) (-.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 y.im (/.f64 (pow.f64 y.re 3) (*.f64 y.im x.re)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))) (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re))) (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (-.f64 (-.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (pow.f64 y.re 3) (*.f64 y.im x.re)))) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im)))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))) (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re)))
(+.f64 (/.f64 x.re y.re) (-.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 y.im (/.f64 (pow.f64 y.re 3) (*.f64 y.im x.re)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))) (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re))) (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (-.f64 (-.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (pow.f64 y.re 3) (*.f64 y.im x.re)))) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im)))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))) (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re)))
(+.f64 (/.f64 x.re y.re) (-.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 y.im (/.f64 (pow.f64 y.re 3) (*.f64 y.im x.re)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))) (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re))) (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (-.f64 (-.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (pow.f64 y.re 3) (*.f64 y.im x.re)))) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im)))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)))
(+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re) (*.f64 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) x.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))))
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (-.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))))
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) x.im)) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)))
(+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re) (*.f64 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) x.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))))
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (-.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))))
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) x.im)) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im)
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)
(*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re)
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)
(*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re)
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)
(*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re)
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im)
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im)
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re))
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) (*.f64 (/.f64 y.re (fma.f64 y.im y.im (*.f64 y.re y.re))) x.re))
(/.f64 1 y.im)
(+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))))
(+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3))))
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 1 y.im))
(fma.f64 -1/2 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) (/.f64 1 y.im))
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3)))))
(fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)))))
(fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 1 y.im)))
(fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (fma.f64 -1/2 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) (/.f64 1 y.im)))
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (+.f64 (/.f64 1 y.im) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (*.f64 -5/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7))))))
(fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (+.f64 (/.f64 1 y.im) (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (*.f64 -5/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 -5/16 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 6)))) (fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 1 y.im)))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) (*.f64 (/.f64 -5/16 (pow.f64 y.im 7)) (pow.f64 y.re 6))) (fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 1 y.im)))
(/.f64 1 y.re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re))
(fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re))
(fma.f64 -1/2 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) y.im) (/.f64 1 y.re))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re)))
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 4) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re)))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re)) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) -3/8)))
(fma.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) (fma.f64 -1/2 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) y.im) (/.f64 1 y.re)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.im 6)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.im 2)))) (pow.f64 y.re 7))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re))))
(fma.f64 -1 (/.f64 (fma.f64 1/8 (pow.f64 y.im 6) (*.f64 -1/2 (*.f64 (*.f64 y.im y.im) (*.f64 (pow.f64 y.im 4) -3/8)))) (pow.f64 y.re 7)) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 4) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re))))
(-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re)) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) -3/8))) (/.f64 (fma.f64 -1/2 (*.f64 (pow.f64 y.im 6) -3/8) (*.f64 1/8 (pow.f64 y.im 6))) (pow.f64 y.re 7)))
(-.f64 (fma.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) (fma.f64 -1/2 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) y.im) (/.f64 1 y.re))) (/.f64 (fma.f64 1/8 (pow.f64 y.im 6) (*.f64 (pow.f64 y.im 6) 3/16)) (pow.f64 y.re 7)))
(/.f64 -1 y.re)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re))
(-.f64 (*.f64 1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3))) (/.f64 1 y.re))
(fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 -1 y.re))
(fma.f64 1/2 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) y.im) (/.f64 -1 y.re))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))))) (/.f64 1 y.re))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) -3/8)) (/.f64 1 y.re))
(fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) -3/8 (/.f64 -1 y.re)))
(fma.f64 1/2 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) y.im) (fma.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) -3/8 (/.f64 -1 y.re)))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.im 2)) (pow.f64 y.re 7))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))))))) (/.f64 1 y.re))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 4) -3/8) (/.f64 (pow.f64 y.re 7) (*.f64 y.im y.im))) (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 1/8 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) -3/8)))) (/.f64 1 y.re))
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 6) -3/8) (pow.f64 y.re 7)) (+.f64 (fma.f64 1/8 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) -3/8))) (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 -1 y.re))))
(+.f64 (/.f64 (*.f64 (pow.f64 y.im 6) 3/16) (pow.f64 y.re 7)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7))) (fma.f64 1/2 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) y.im) (fma.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) -3/8 (/.f64 -1 y.re)))))
(/.f64 1 y.re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re))
(fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re))
(fma.f64 -1/2 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) y.im) (/.f64 1 y.re))
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re)))
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 4) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re)))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re)) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) -3/8)))
(fma.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) (fma.f64 -1/2 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) y.im) (/.f64 1 y.re)))
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (+.f64 (*.f64 -5/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7))) (/.f64 1 y.re))))
(fma.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 -5/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) (/.f64 1 y.re))))
(fma.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) (fma.f64 -1/2 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) y.im) (fma.f64 -5/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) (/.f64 1 y.re))))
(/.f64 1 y.im)
(+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))))
(+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3))))
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 1 y.im))
(fma.f64 -1/2 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) (/.f64 1 y.im))
(+.f64 (/.f64 1 y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3)))))
(fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)))))
(fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 1 y.im)))
(fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (fma.f64 -1/2 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) (/.f64 1 y.im)))
(+.f64 (/.f64 1 y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.re 2))) (*.f64 1/8 (pow.f64 y.re 6))) (pow.f64 y.im 7))))))
(+.f64 (/.f64 1 y.im) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 4) -3/8) (pow.f64 y.im 5)) (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (neg.f64 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 y.re y.re) (*.f64 (pow.f64 y.re 4) -3/8)) (*.f64 (pow.f64 y.re 6) 1/8)) (pow.f64 y.im 7))))))
(+.f64 (-.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3))) (/.f64 (fma.f64 -1/2 (*.f64 (pow.f64 y.re 6) -3/8) (*.f64 (pow.f64 y.re 6) 1/8)) (pow.f64 y.im 7))) (-.f64 (/.f64 1 y.im) (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) -3/8)))
(-.f64 (fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (fma.f64 -1/2 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) (/.f64 1 y.im))) (/.f64 (fma.f64 (pow.f64 y.re 6) 1/8 (*.f64 (pow.f64 y.re 6) 3/16)) (pow.f64 y.im 7)))
(/.f64 -1 y.im)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (/.f64 1 y.im))
(-.f64 (/.f64 (*.f64 1/2 (*.f64 y.re y.re)) (pow.f64 y.im 3)) (/.f64 1 y.im))
(fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 -1 y.im))
(fma.f64 1/2 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) (/.f64 -1 y.im))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))))) (/.f64 1 y.im))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) -3/8)) (/.f64 1 y.im))
(fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (fma.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) -3/8 (/.f64 -1 y.im)))
(fma.f64 1/2 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) (fma.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) -3/8 (/.f64 -1 y.im)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.re 2)) (pow.f64 y.im 7))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (*.f64 1/8 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7))))))) (/.f64 1 y.im))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 4) -3/8) (/.f64 (pow.f64 y.im 7) (*.f64 y.re y.re))) (+.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) -3/8) (*.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)) 1/8)))) (/.f64 1 y.im))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 6) -3/8) (pow.f64 y.im 7)) (fma.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) -3/8 (/.f64 1/8 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 6))))) (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 -1 y.im)))
(+.f64 (/.f64 (*.f64 (pow.f64 y.re 6) 3/16) (pow.f64 y.im 7)) (+.f64 (fma.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) -3/8 (*.f64 (/.f64 1/8 (pow.f64 y.im 7)) (pow.f64 y.re 6))) (fma.f64 1/2 (*.f64 (/.f64 y.re (pow.f64 y.im 3)) y.re) (/.f64 -1 y.im))))

localize4.0ms (0%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

localize85.0ms (0.5%)

Local error

Found 1 expressions with local error:

NewErrorProgram
18.7b
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Compiler

Compiled 34 to 9 computations (73.5% saved)

series16.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
5.0ms
x.re
@-inf
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
2.0ms
x.re
@0
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
2.0ms
x.re
@inf
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
1.0ms
y.re
@0
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
1.0ms
y.re
@inf
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite78.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
600×prod-diff_binary64
521×log-prod_binary64
368×pow-prod-down_binary64
259×pow2_binary64
210×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0914
119613
2283713
Stop Event
node limit
Counts
1 → 51
Calls
Call 1
Inputs
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y.re) (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y.re) (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y.re) (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y.re) (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.re (/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x.re (*.f64 y.re (pow.f64 (hypot.f64 y.re y.im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) 4)) (cbrt.f64 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (*.f64 (cbrt.f64 (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y.re x.re)) (*.f64 (sqrt.f64 (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 y.re y.im) -2) (*.f64 y.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re 1) (/.f64 x.re (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.re 1) (/.f64 y.re (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re (pow.f64 (hypot.f64 y.re y.im) 2)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) 1) (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4))) (/.f64 x.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.re (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4))) (/.f64 y.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4))) (/.f64 (*.f64 y.re x.re) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4))) (cbrt.f64 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4))) (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 y.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y.re x.re) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (-.f64 (+.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (pow.f64 (*.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y.re x.re) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.re x.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (hypot.f64 y.re y.im) 6)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.re x.re)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 y.re x.re) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y.re) (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (hypot.f64 y.re y.im) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 y.re (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -2)))) 1))))))

simplify70.0ms (0.4%)

Algorithm
egg-herbie
Rules
686×associate-/r/_binary64
614×fma-neg_binary64
528×associate-/l/_binary64
332×sub-neg_binary64
325×times-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
053930
1148876
2482825
32682804
46771804
Stop Event
node limit
Counts
87 → 68
Calls
Call 1
Inputs
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 8))))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))))))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 8))))))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 8))))))
Outputs
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)
(*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))
(fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))))
(*.f64 x.re (-.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 4))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))))
(fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)) (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6))))
(+.f64 (-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))) (*.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5)))
(fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (*.f64 x.re (-.f64 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 6)) (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 4)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 8))))))
(fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (+.f64 (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)) (neg.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 8) (pow.f64 y.re 7)))))))
(-.f64 (+.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5)) (-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (*.f64 (/.f64 x.re (pow.f64 y.im 8)) (pow.f64 y.re 7)))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))))) (*.f64 (pow.f64 y.re 7) (/.f64 x.re (pow.f64 y.im 8))))
(fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 6)))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re))
(-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(-.f64 (/.f64 x.re y.re) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))))
(-.f64 (/.f64 x.re y.re) (*.f64 x.re (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))))
(+.f64 (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re)) (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))))
(+.f64 (-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (*.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4)))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4) (/.f64 x.re y.re)) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))))
(+.f64 (/.f64 x.re y.re) (*.f64 x.re (-.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))))))
(+.f64 (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re)) (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))) (neg.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7)))))
(+.f64 (-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (-.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4)) (*.f64 (/.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 6))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4) (/.f64 x.re y.re)) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7)) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3)))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4) (/.f64 x.re y.re)) (*.f64 x.re (+.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)))))
(-.f64 (/.f64 x.re y.re) (fma.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3)) (*.f64 x.re (-.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re))
(-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(-.f64 (/.f64 x.re y.re) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))))
(-.f64 (/.f64 x.re y.re) (*.f64 x.re (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))))
(+.f64 (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re)) (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))))
(+.f64 (-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (*.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4)))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4) (/.f64 x.re y.re)) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))))
(+.f64 (/.f64 x.re y.re) (*.f64 x.re (-.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))))))
(+.f64 (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re)) (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))) (neg.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7)))))
(+.f64 (-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (-.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4)) (*.f64 (/.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 6))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4) (/.f64 x.re y.re)) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7)) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3)))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4) (/.f64 x.re y.re)) (*.f64 x.re (+.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)))))
(-.f64 (/.f64 x.re y.re) (fma.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3)) (*.f64 x.re (-.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re))
(-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(-.f64 (/.f64 x.re y.re) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))))
(-.f64 (/.f64 x.re y.re) (*.f64 x.re (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))))
(+.f64 (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re)) (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))))
(+.f64 (-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (*.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4)))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4) (/.f64 x.re y.re)) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))))
(+.f64 (/.f64 x.re y.re) (*.f64 x.re (-.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))))))
(+.f64 (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re)) (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))) (neg.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7)))))
(+.f64 (-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (-.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4)) (*.f64 (/.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 6))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4) (/.f64 x.re y.re)) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7)) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3)))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4) (/.f64 x.re y.re)) (*.f64 x.re (+.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)))))
(-.f64 (/.f64 x.re y.re) (fma.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3)) (*.f64 x.re (-.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))))))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)
(*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))
(fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))))
(*.f64 x.re (-.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 4))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))))
(fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)) (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6))))
(+.f64 (-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))) (*.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5)))
(fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (*.f64 x.re (-.f64 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 6)) (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 4)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 8))))))
(fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (+.f64 (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)) (neg.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 8) (pow.f64 y.re 7)))))))
(-.f64 (+.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5)) (-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (*.f64 (/.f64 x.re (pow.f64 y.im 8)) (pow.f64 y.re 7)))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))))) (*.f64 (pow.f64 y.re 7) (/.f64 x.re (pow.f64 y.im 8))))
(fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 6)))))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)
(*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))
(fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))))
(*.f64 x.re (-.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 4))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))))
(fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)) (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6))))
(+.f64 (-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))) (*.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5)))
(fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (*.f64 x.re (-.f64 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 6)) (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 4)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 8))))))
(fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (+.f64 (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)) (neg.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 8) (pow.f64 y.re 7)))))))
(-.f64 (+.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5)) (-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (*.f64 (/.f64 x.re (pow.f64 y.im 8)) (pow.f64 y.re 7)))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))))) (*.f64 (pow.f64 y.re 7) (/.f64 x.re (pow.f64 y.im 8))))
(fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 6)))))

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
7.1b
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
11.2b
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
Compiler

Compiled 34 to 8 computations (76.5% saved)

series34.0ms (0.2%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
23.0ms
y.re
@0
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
1.0ms
x.im
@-inf
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
1.0ms
x.im
@0
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
1.0ms
y.im
@0
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
1.0ms
x.im
@inf
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))

rewrite67.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
856×pow1_binary64
789×add-log-exp_binary64
789×log1p-expm1-u_binary64
789×expm1-log1p-u_binary64
769×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0825
116523
2215223
Stop Event
node limit
Counts
2 → 53
Calls
Call 1
Inputs
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) x.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y.im x.im)) (neg.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y.im x.im) 1) (pow.f64 (hypot.f64 y.im y.re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y.im x.im) (hypot.f64 y.im y.re)) (hypot.f64 y.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x.im) y.im) (neg.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (neg.f64 x.im)) (neg.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y.im) (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y.im 3) (pow.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)) 3) (pow.f64 y.im 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x.im (/.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 (cbrt.f64 x.im) (/.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) (pow.f64 (cbrt.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2) (cbrt.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x.im) (*.f64 (sqrt.f64 x.im) (/.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.im y.re)) (/.f64 (sqrt.f64 x.im) (hypot.f64 y.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x.im) (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2)) x.im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) 1) (/.f64 (cbrt.f64 x.im) (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.im) 1) (/.f64 (sqrt.f64 x.im) (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (cbrt.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.im) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 (sqrt.f64 x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 y.im y.re)) (/.f64 x.im (hypot.f64 y.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (hypot.f64 y.im y.re)) (/.f64 (cbrt.f64 x.im) (hypot.f64 y.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.im y.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) x.im) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 x.im (neg.f64 (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 x.im 3) (pow.f64 (pow.f64 (hypot.f64 y.im y.re) 2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))))))))

simplify86.0ms (0.6%)

Algorithm
egg-herbie
Rules
669×times-frac_binary64
445×distribute-rgt-neg-in_binary64
384×distribute-lft-neg-in_binary64
369×associate-/l*_binary64
369×div-sub_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0791824
12271716
27711611
345371584
474791584
Stop Event
node limit
Counts
125 → 88
Calls
Call 1
Inputs
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(/.f64 x.im y.im)
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(/.f64 x.im y.im)
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im y.im)
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (pow.f64 y.re 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (/.f64 x.im (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 6)) (/.f64 x.im (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 6) x.im) (pow.f64 y.re 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 6)) (/.f64 x.im (pow.f64 y.re 2)))))
(/.f64 x.im (pow.f64 y.im 2))
(+.f64 (/.f64 x.im (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))))
(+.f64 (/.f64 x.im (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))) (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 6))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 8))) (+.f64 (/.f64 x.im (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))) (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 6)))))
(/.f64 x.im (pow.f64 y.im 2))
(+.f64 (/.f64 x.im (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))))
(+.f64 (/.f64 x.im (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))) (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 6))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 8))) (+.f64 (/.f64 x.im (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))) (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 6)))))
(/.f64 x.im (pow.f64 y.im 2))
(+.f64 (/.f64 x.im (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))))
(+.f64 (/.f64 x.im (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))) (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 6))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 8))) (+.f64 (/.f64 x.im (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))) (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 6)))))
(/.f64 x.im (pow.f64 y.re 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (/.f64 x.im (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 6)) (/.f64 x.im (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 6) x.im) (pow.f64 y.re 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 6)) (/.f64 x.im (pow.f64 y.re 2)))))
(/.f64 x.im (pow.f64 y.re 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (/.f64 x.im (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 6)) (/.f64 x.im (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 6) x.im) (pow.f64 y.re 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 6)) (/.f64 x.im (pow.f64 y.re 2)))))
Outputs
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)
(*.f64 (/.f64 x.im (*.f64 y.re y.re)) y.im)
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(fma.f64 -1 (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))
(-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im))
(*.f64 x.im (-.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)) (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im))))
(+.f64 (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im)) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im))
(fma.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im (*.f64 x.im (-.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)))))
(*.f64 x.im (-.f64 (+.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) (/.f64 y.im (*.f64 y.re y.re))) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)) (fma.f64 -1 (/.f64 (pow.f64 y.im 7) (/.f64 (pow.f64 y.re 8) x.im)) (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im)))))
(-.f64 (-.f64 (+.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) (*.f64 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)) x.im)) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im))
(-.f64 (*.f64 x.im (+.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)))))
(*.f64 x.im (-.f64 (+.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) (/.f64 y.im (*.f64 y.re y.re))) (+.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)))))
(/.f64 x.im y.im)
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))
(+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))
(-.f64 (/.f64 x.im y.im) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))))
(-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.im y.im) (+.f64 (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im))))
(+.f64 (/.f64 x.im y.im) (-.f64 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im)) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))))
(+.f64 (/.f64 x.im y.im) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(+.f64 (+.f64 (/.f64 x.im y.im) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im))) (*.f64 -1 (+.f64 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 7) x.im)) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))
(+.f64 (/.f64 x.im y.im) (-.f64 (-.f64 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im)) (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 7) x.im))) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))))
(-.f64 (fma.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im (/.f64 x.im y.im)) (*.f64 x.im (+.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)))))
(-.f64 (/.f64 x.im y.im) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)) (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3))))))
(/.f64 x.im y.im)
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))
(+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))
(-.f64 (/.f64 x.im y.im) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))))
(-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.im y.im) (+.f64 (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im))))
(+.f64 (/.f64 x.im y.im) (-.f64 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im)) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))))
(+.f64 (/.f64 x.im y.im) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(+.f64 (+.f64 (/.f64 x.im y.im) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im))) (*.f64 -1 (+.f64 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 7) x.im)) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))
(+.f64 (/.f64 x.im y.im) (-.f64 (-.f64 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im)) (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 7) x.im))) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))))
(-.f64 (fma.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im (/.f64 x.im y.im)) (*.f64 x.im (+.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)))))
(-.f64 (/.f64 x.im y.im) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)) (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3))))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.im))
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.im))
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.im))
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.im))
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.im))
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.im))
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.im))
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.im))
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.im))
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.im))
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.im))
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.im))
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 x.im y.im)
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))
(+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))
(-.f64 (/.f64 x.im y.im) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))))
(-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.im y.im) (+.f64 (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im))))
(+.f64 (/.f64 x.im y.im) (-.f64 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im)) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))))
(+.f64 (/.f64 x.im y.im) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(+.f64 (+.f64 (/.f64 x.im y.im) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im))) (*.f64 -1 (+.f64 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 7) x.im)) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))
(+.f64 (/.f64 x.im y.im) (-.f64 (-.f64 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im)) (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 7) x.im))) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))))
(-.f64 (fma.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im (/.f64 x.im y.im)) (*.f64 x.im (+.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)))))
(-.f64 (/.f64 x.im y.im) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)) (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3))))))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)
(*.f64 (/.f64 x.im (*.f64 y.re y.re)) y.im)
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(fma.f64 -1 (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))
(-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im))
(*.f64 x.im (-.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)) (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im))))
(+.f64 (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im)) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im))
(fma.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im (*.f64 x.im (-.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)))))
(*.f64 x.im (-.f64 (+.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) (/.f64 y.im (*.f64 y.re y.re))) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)) (fma.f64 -1 (/.f64 (pow.f64 y.im 7) (/.f64 (pow.f64 y.re 8) x.im)) (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im)))))
(-.f64 (-.f64 (+.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) (*.f64 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)) x.im)) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im))
(-.f64 (*.f64 x.im (+.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)))))
(*.f64 x.im (-.f64 (+.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) (/.f64 y.im (*.f64 y.re y.re))) (+.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)))))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)
(*.f64 (/.f64 x.im (*.f64 y.re y.re)) y.im)
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(fma.f64 -1 (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))
(-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im))
(*.f64 x.im (-.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)) (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im))))
(+.f64 (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im)) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im))
(fma.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im (*.f64 x.im (-.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)))))
(*.f64 x.im (-.f64 (+.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) (/.f64 y.im (*.f64 y.re y.re))) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)) (fma.f64 -1 (/.f64 (pow.f64 y.im 7) (/.f64 (pow.f64 y.re 8) x.im)) (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im)))))
(-.f64 (-.f64 (+.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) (*.f64 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)) x.im)) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im))
(-.f64 (*.f64 x.im (+.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)))))
(*.f64 x.im (-.f64 (+.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) (/.f64 y.im (*.f64 y.re y.re))) (+.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)))))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re)))
(/.f64 x.im (pow.f64 y.re 2))
(/.f64 x.im (*.f64 y.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (/.f64 x.im (pow.f64 y.re 2)))
(fma.f64 -1 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 4) x.im)) (/.f64 x.im (*.f64 y.re y.re)))
(-.f64 (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))))
(-.f64 (/.f64 x.im (*.f64 y.re y.re)) (*.f64 x.im (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 6)) (/.f64 x.im (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 4) x.im)) (+.f64 (/.f64 x.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 6) x.im))))
(-.f64 (+.f64 (/.f64 x.im (*.f64 y.re y.re)) (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))))
(-.f64 (fma.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im (/.f64 x.im (*.f64 y.re y.re))) (*.f64 x.im (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im))))
(-.f64 (/.f64 x.im (*.f64 y.re y.re)) (*.f64 x.im (-.f64 (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im)) (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 6) x.im) (pow.f64 y.re 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 6)) (/.f64 x.im (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (pow.f64 y.im 6) (/.f64 (pow.f64 y.re 8) x.im)) (fma.f64 -1 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 4) x.im)) (+.f64 (/.f64 x.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 6) x.im)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.im (*.f64 y.re y.re)) (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im)))) (*.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)) x.im))
(-.f64 (fma.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im (/.f64 x.im (*.f64 y.re y.re))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)) (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im)))))
(-.f64 (fma.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im (/.f64 x.im (*.f64 y.re y.re))) (*.f64 x.im (+.f64 (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im)) (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)))))
(/.f64 x.im (pow.f64 y.im 2))
(/.f64 x.im (*.f64 y.im y.im))
(+.f64 (/.f64 x.im (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im))))
(-.f64 (/.f64 x.im (*.f64 y.im y.im)) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im)))
(-.f64 (/.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4))))
(+.f64 (/.f64 x.im (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))) (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 6))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im)) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 6) x.im))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (-.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) x.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)))))
(-.f64 (/.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (-.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 8))) (+.f64 (/.f64 x.im (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))) (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 6)))))
(fma.f64 -1 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 8) x.im)) (+.f64 (/.f64 x.im (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im)) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 6) x.im)))))
(-.f64 (+.f64 (/.f64 x.im (*.f64 y.im y.im)) (-.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) x.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im)))) (*.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 8)) x.im))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (-.f64 (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)))) (/.f64 (*.f64 x.im (pow.f64 y.re 6)) (pow.f64 y.im 8))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (-.f64 (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4))) (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 8)))))
(/.f64 x.im (pow.f64 y.im 2))
(/.f64 x.im (*.f64 y.im y.im))
(+.f64 (/.f64 x.im (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im))))
(-.f64 (/.f64 x.im (*.f64 y.im y.im)) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im)))
(-.f64 (/.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4))))
(+.f64 (/.f64 x.im (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))) (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 6))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im)) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 6) x.im))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (-.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) x.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)))))
(-.f64 (/.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (-.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 8))) (+.f64 (/.f64 x.im (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))) (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 6)))))
(fma.f64 -1 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 8) x.im)) (+.f64 (/.f64 x.im (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im)) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 6) x.im)))))
(-.f64 (+.f64 (/.f64 x.im (*.f64 y.im y.im)) (-.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) x.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im)))) (*.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 8)) x.im))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (-.f64 (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)))) (/.f64 (*.f64 x.im (pow.f64 y.re 6)) (pow.f64 y.im 8))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (-.f64 (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4))) (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 8)))))
(/.f64 x.im (pow.f64 y.im 2))
(/.f64 x.im (*.f64 y.im y.im))
(+.f64 (/.f64 x.im (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im))))
(-.f64 (/.f64 x.im (*.f64 y.im y.im)) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im)))
(-.f64 (/.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4))))
(+.f64 (/.f64 x.im (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))) (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 6))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im)) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 6) x.im))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (-.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) x.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)))))
(-.f64 (/.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (-.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 8))) (+.f64 (/.f64 x.im (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 4))) (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 6)))))
(fma.f64 -1 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 8) x.im)) (+.f64 (/.f64 x.im (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im)) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 6) x.im)))))
(-.f64 (+.f64 (/.f64 x.im (*.f64 y.im y.im)) (-.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) x.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 4) x.im)))) (*.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 8)) x.im))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (-.f64 (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)))) (/.f64 (*.f64 x.im (pow.f64 y.re 6)) (pow.f64 y.im 8))))
(+.f64 (/.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (-.f64 (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 6)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4))) (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 8)))))
(/.f64 x.im (pow.f64 y.re 2))
(/.f64 x.im (*.f64 y.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (/.f64 x.im (pow.f64 y.re 2)))
(fma.f64 -1 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 4) x.im)) (/.f64 x.im (*.f64 y.re y.re)))
(-.f64 (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))))
(-.f64 (/.f64 x.im (*.f64 y.re y.re)) (*.f64 x.im (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 6)) (/.f64 x.im (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 4) x.im)) (+.f64 (/.f64 x.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 6) x.im))))
(-.f64 (+.f64 (/.f64 x.im (*.f64 y.re y.re)) (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))))
(-.f64 (fma.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im (/.f64 x.im (*.f64 y.re y.re))) (*.f64 x.im (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im))))
(-.f64 (/.f64 x.im (*.f64 y.re y.re)) (*.f64 x.im (-.f64 (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im)) (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 6) x.im) (pow.f64 y.re 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 6)) (/.f64 x.im (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (pow.f64 y.im 6) (/.f64 (pow.f64 y.re 8) x.im)) (fma.f64 -1 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 4) x.im)) (+.f64 (/.f64 x.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 6) x.im)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.im (*.f64 y.re y.re)) (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im)))) (*.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)) x.im))
(-.f64 (fma.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im (/.f64 x.im (*.f64 y.re y.re))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)) (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im)))))
(-.f64 (fma.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im (/.f64 x.im (*.f64 y.re y.re))) (*.f64 x.im (+.f64 (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im)) (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)))))
(/.f64 x.im (pow.f64 y.re 2))
(/.f64 x.im (*.f64 y.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (/.f64 x.im (pow.f64 y.re 2)))
(fma.f64 -1 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 4) x.im)) (/.f64 x.im (*.f64 y.re y.re)))
(-.f64 (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))))
(-.f64 (/.f64 x.im (*.f64 y.re y.re)) (*.f64 x.im (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 6)) (/.f64 x.im (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 4) x.im)) (+.f64 (/.f64 x.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 6) x.im))))
(-.f64 (+.f64 (/.f64 x.im (*.f64 y.re y.re)) (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))))
(-.f64 (fma.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im (/.f64 x.im (*.f64 y.re y.re))) (*.f64 x.im (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im))))
(-.f64 (/.f64 x.im (*.f64 y.re y.re)) (*.f64 x.im (-.f64 (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im)) (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 6) x.im) (pow.f64 y.re 8))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 6)) (/.f64 x.im (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (pow.f64 y.im 6) (/.f64 (pow.f64 y.re 8) x.im)) (fma.f64 -1 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 4) x.im)) (+.f64 (/.f64 x.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 6) x.im)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.im (*.f64 y.re y.re)) (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im)))) (*.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)) x.im))
(-.f64 (fma.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im (/.f64 x.im (*.f64 y.re y.re))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)) (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im)))))
(-.f64 (fma.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) x.im (/.f64 x.im (*.f64 y.re y.re))) (*.f64 x.im (+.f64 (/.f64 y.im (/.f64 (pow.f64 y.re 4) y.im)) (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)))))

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (/.f64 x.re y.im) y.im)
4.6b
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
Compiler

Compiled 29 to 8 computations (72.4% saved)

series9.0ms (0.1%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
x.re
@0
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
1.0ms
y.re
@0
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
1.0ms
x.re
@inf
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
1.0ms
x.im
@0
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
1.0ms
y.im
@0
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))

rewrite67.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
545×log-prod_binary64
422×exp-prod_binary64
327×pow-prod-down_binary64
265×pow2_binary64
261×prod-diff_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
119221
2269421
Stop Event
node limit
Counts
2 → 89
Calls
Call 1
Inputs
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x.im y.im) (*.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re) 1) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))) 2) (cbrt.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))) (sqrt.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re) 3) (pow.f64 (/.f64 x.im y.im) 3)) (+.f64 (pow.f64 (*.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re) 2) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (*.f64 (*.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re) (/.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re) 2) (pow.f64 (/.f64 x.im y.im) 2)) (-.f64 (*.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re) (/.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)))) 2)) (cbrt.f64 (log.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))))) (sqrt.f64 (log.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 x.im y.im))) (pow.f64 (exp.f64 y.re) (*.f64 x.re (pow.f64 y.im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y.re) (*.f64 x.re (pow.f64 y.im -2))) (+.f64 1 (expm1.f64 (/.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (*.f64 x.re (pow.f64 y.im -2)) y.re (/.f64 x.im y.im))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x.re (pow.f64 y.im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x.re) (pow.f64 y.im -2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x.re) (pow.f64 y.im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x.re) (pow.f64 y.im -2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x.re) (pow.f64 y.im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x.re (pow.f64 y.im -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x.re (pow.f64 y.im -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.re y.im) (pow.f64 y.im -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x.re (pow.f64 y.im -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x.re (pow.f64 y.im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x.re (pow.f64 y.im -2))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 x.re) y.im) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 x.re) y.im) 4)) (cbrt.f64 (*.f64 x.re (pow.f64 y.im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 x.re y.im) 2)) (*.f64 (cbrt.f64 (/.f64 x.re y.im)) (pow.f64 y.im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.re) y.im) (/.f64 (sqrt.f64 x.re) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 x.re y.im)) (*.f64 (sqrt.f64 (/.f64 x.re y.im)) (pow.f64 y.im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 x.re) y.im) (/.f64 1 (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 y.im -1) (/.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 y.im) -2) (/.f64 (/.f64 x.re y.im) (cbrt.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 y.im -1/2) (/.f64 (/.f64 x.re y.im) (sqrt.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) y.im) (/.f64 (cbrt.f64 x.re) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.re 1) (pow.f64 y.im -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 x.re y.im) 2)) 1) (/.f64 (cbrt.f64 (/.f64 x.re y.im)) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 x.re y.im)) 1) (/.f64 (sqrt.f64 (/.f64 x.re y.im)) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.re (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 (pow.f64 y.im -1) (cbrt.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 x.re y.im) 2)) (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 (*.f64 x.re (pow.f64 y.im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 x.re y.im)) (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 (sqrt.f64 (/.f64 x.re y.im)) (cbrt.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.re (sqrt.f64 y.im)) (pow.f64 y.im -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 x.re y.im) 2)) (sqrt.f64 y.im)) (/.f64 (cbrt.f64 (/.f64 x.re y.im)) (sqrt.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x.re (pow.f64 y.im -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 x.re) y.im) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 x.re) y.im) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x.re (pow.f64 y.im -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 x.re) y.im) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y.im (/.f64 y.im x.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 x.re (pow.f64 y.im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 x.re y.im) 3) (pow.f64 y.im 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 y.im y.im) x.re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 y.im (/.f64 y.im x.re)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 x.re (pow.f64 y.im -2)))) 2)) (cbrt.f64 (log.f64 (*.f64 x.re (pow.f64 y.im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 x.re (pow.f64 y.im -2))))) (sqrt.f64 (log.f64 (*.f64 x.re (pow.f64 y.im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 x.re y.im) (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 x.re) y.im) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x.re) (pow.f64 y.im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x.re (pow.f64 y.im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 x.re) y.im) 6))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 x.re y.im) 3) (pow.f64 y.im 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x.re (pow.f64 y.im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x.re (pow.f64 y.im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x.re (pow.f64 y.im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x.re (pow.f64 y.im -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sqrt.f64 x.re) y.im) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 x.re (pow.f64 y.im -2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 x.re) y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 y.im (/.f64 y.im x.re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 x.re (pow.f64 y.im -2))) 1) 1))))))

simplify181.0ms (1.2%)

Algorithm
egg-herbie
Rules
945×associate-/r/_binary64
608×times-frac_binary64
569×associate-/l/_binary64
465×sqr-pow_binary64
434×unswap-sqr_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
012828
121828
239756
386756
4232756
5848756
63865756
74921756
85085756
95299756
105519756
115849756
127191756
137697756
Stop Event
node limit
Counts
161 → 96
Calls
Call 1
Inputs
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (pow.f64 y.im 2))
Outputs
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 (/.f64 x.re y.im) y.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 (/.f64 x.re y.im) y.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 (/.f64 x.re y.im) y.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 (/.f64 x.re y.im) y.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 (/.f64 x.re y.im) y.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 (/.f64 x.re y.im) y.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(/.f64 (/.f64 x.re y.im) y.im)

eval234.0ms (1.5%)

Compiler

Compiled 9767 to 4270 computations (56.3% saved)

prune131.0ms (0.8%)

Pruning

25 alts after pruning (20 fresh and 5 done)

PrunedKeptTotal
New49317510
Fresh639
Picked011
Done145
Total50025525
Error
0.1b
Counts
525 → 25
Alt Table
Click to see full alt table
StatusErrorProgram
40.3b
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
32.8b
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
43.7b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re)))
43.3b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
53.8b
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
36.7b
(/.f64 x.im y.im)
38.7b
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
45.2b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
44.9b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
40.2b
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
50.5b
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) 2)
54.2b
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
33.9b
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
18.8b
(/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))
40.3b
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
51.1b
(*.f64 y.im (pow.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.im y.re)) 2))
45.8b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))
54.6b
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
27.0b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
45.2b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.im)
27.2b
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))
31.7b
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
18.9b
(*.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) 2) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))
45.2b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
36.9b
(/.f64 x.re y.re)
Compiler

Compiled 645 to 409 computations (36.6% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (hypot.f64 y.re y.im))
0.3b
(/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))
0.7b
(fma.f64 x.re y.re (*.f64 x.im y.im))
17.7b
(/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))
Compiler

Compiled 52 to 14 computations (73.1% saved)

series15.0ms (0.1%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
1.0ms
y.im
@0
(/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))
1.0ms
x.re
@inf
(/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))
1.0ms
y.re
@0
(/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))
1.0ms
x.re
@0
(/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))
1.0ms
y.re
@inf
(/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))

rewrite66.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
656×log-prod_binary64
323×pow2_binary64
281×prod-diff_binary64
229×pow1/3_binary64
221×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01237
125231
2337631
Stop Event
node limit
Counts
2 → 91
Calls
Call 1
Inputs
(/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))
(/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 y.re y.im) (/.f64 1 (fma.f64 y.re x.re (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) -2)) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (/.f64 1 (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (/.f64 1 (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 1 (neg.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 y.re x.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) 1) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (fma.f64 y.re x.re (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) 1) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (fma.f64 y.re x.re (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y.re x.re (*.f64 y.im x.im))) -2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (pow.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) 2))) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) 2))) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) -1/2) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (sqrt.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)))) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) (pow.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (hypot.f64 y.re y.im) (neg.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) (pow.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) -2)) (*.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (hypot.f64 y.re y.im) -2) (*.f64 y.re x.re)) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -2) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (fma.f64 y.re x.re (*.f64 y.im x.im)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (fma.f64 y.re x.re (*.f64 y.im x.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (fma.f64 y.re x.re (*.f64 y.im x.im))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (fma.f64 y.re x.re (*.f64 y.im x.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 y.re y.im) -2) (fma.f64 y.re x.re (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 2) (cbrt.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (hypot.f64 y.re y.im)) (/.f64 1 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (/.f64 1 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im)) (/.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 1 (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 y.re y.im) -3/2) (/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 1 (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) 1) (/.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) 1) (/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im)))) -2) (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) -2))) (cbrt.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) -2))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))) -1/2) (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))))) (/.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) 1) (/.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 (fma.f64 y.re x.re (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (hypot.f64 y.re y.im) -2) 1) (fma.f64 y.re x.re (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (hypot.f64 y.re y.im) -2) (cbrt.f64 (pow.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) 2))) (cbrt.f64 (fma.f64 y.re x.re (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (hypot.f64 y.re y.im) -2) (sqrt.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)))) (sqrt.f64 (fma.f64 y.re x.re (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 y.re x.re (*.f64 y.im x.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) -3) (pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 y.re x.re (*.f64 y.im x.im))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) (fma.f64 y.re x.re (*.f64 y.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (fma.f64 y.re x.re (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) -3) (pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.re x.re (*.f64 y.im x.im))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 y.re x.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 y.re y.im) -2) (*.f64 y.re x.re) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -2) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) -2) (*.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) -2)))))))

simplify127.0ms (0.8%)

Algorithm
egg-herbie
Rules
536×cancel-sign-sub-inv_binary64
509×associate-/r/_binary64
389×associate-/l/_binary64
346×distribute-rgt-neg-in_binary64
315×distribute-neg-frac_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01914146
17233428
234143227
Stop Event
node limit
Counts
187 → 161
Calls
Call 1
Inputs
(/.f64 1 x.im)
(+.f64 (/.f64 1 x.im) (*.f64 -1 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2)))))
(+.f64 (/.f64 1 x.im) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2)))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 y.im 2) x.im))) (*.f64 -1 (/.f64 (pow.f64 x.re 2) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3))))) (pow.f64 y.re 2))))
(+.f64 (/.f64 1 x.im) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 y.im 2) x.im))) (*.f64 -1 (/.f64 (pow.f64 x.re 2) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3))))) (*.f64 x.re (pow.f64 y.re 3))) (*.f64 y.im x.im))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 y.im 2) x.im))) (*.f64 -1 (/.f64 (pow.f64 x.re 2) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3))))) (pow.f64 y.re 2)))))
(/.f64 1 x.re)
(+.f64 (/.f64 1 x.re) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (*.f64 x.re (pow.f64 y.re 2)))) (+.f64 (/.f64 1 x.re) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re))))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2)))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) x.re)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (pow.f64 x.re 3)))) (*.f64 y.im x.im)) (*.f64 x.re (pow.f64 y.re 3)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (*.f64 x.re (pow.f64 y.re 2)))) (+.f64 (/.f64 1 x.re) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re)))))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2)))))
(/.f64 -1 x.re)
(-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re)) (/.f64 1 x.re))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (*.f64 x.re (pow.f64 y.re 2)))) (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re))) (+.f64 (/.f64 1 x.re) (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2)))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (*.f64 x.re (pow.f64 y.re 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im (*.f64 x.im (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) x.re)) (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (pow.f64 x.re 3))))) (*.f64 x.re (pow.f64 y.re 3)))) (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re)))) (+.f64 (/.f64 1 x.re) (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2)))))
(/.f64 1 x.re)
(+.f64 (/.f64 1 x.re) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re))))
(+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 x.re (pow.f64 y.re 2)))) (*.f64 -1 (/.f64 (pow.f64 x.im 2) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2))))) (pow.f64 y.im 2)) (+.f64 (/.f64 1 x.re) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 x.re (pow.f64 y.re 2)))) (*.f64 -1 (/.f64 (pow.f64 x.im 2) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2))))) (*.f64 (pow.f64 y.im 3) x.im)) (*.f64 x.re y.re))) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 x.re (pow.f64 y.re 2)))) (*.f64 -1 (/.f64 (pow.f64 x.im 2) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2))))) (pow.f64 y.im 2)) (+.f64 (/.f64 1 x.re) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re))))))
(/.f64 1 x.im)
(+.f64 (/.f64 1 x.im) (*.f64 -1 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 y.im 2) x.im))) (+.f64 (/.f64 1 x.im) (*.f64 -1 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2)))))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3)))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) x.im)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (pow.f64 x.im 3)))) (*.f64 x.re y.re)) (*.f64 (pow.f64 y.im 3) x.im))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 y.im 2) x.im))) (+.f64 (/.f64 1 x.im) (*.f64 -1 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2))))))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3)))))
(/.f64 -1 x.im)
(-.f64 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2))) (/.f64 1 x.im))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 y.im 2) x.im))) (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2)))) (+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3))) (/.f64 1 x.im)))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 y.im 2) x.im))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) x.im)) (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (pow.f64 x.im 3))) y.re)) (*.f64 (pow.f64 y.im 3) x.im))) (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2))))) (+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3))) (/.f64 1 x.im)))
(*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3)) (*.f64 (pow.f64 y.im 4) (pow.f64 x.im 4))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))))
(*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))))
(+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3)) (*.f64 (pow.f64 x.re 4) (pow.f64 y.re 4))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))))
(*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))))
(+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3)) (*.f64 (pow.f64 x.re 4) (pow.f64 y.re 4))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))))
(*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))))
(+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3)) (*.f64 (pow.f64 x.re 4) (pow.f64 y.re 4))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))))
(*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3)) (*.f64 (pow.f64 y.im 4) (pow.f64 x.im 4))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))))
(*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3)) (*.f64 (pow.f64 y.im 4) (pow.f64 x.im 4))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
Outputs
(/.f64 1 x.im)
(+.f64 (/.f64 1 x.im) (*.f64 -1 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2)))))
(+.f64 (/.f64 1 x.im) (neg.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re (*.f64 x.im x.im)))))
(-.f64 (/.f64 1 x.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re (*.f64 x.im x.im))))
(-.f64 (/.f64 1 x.im) (*.f64 (/.f64 y.re (*.f64 x.im x.im)) (/.f64 x.re y.im)))
(+.f64 (/.f64 1 x.im) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2)))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 y.im 2) x.im))) (*.f64 -1 (/.f64 (pow.f64 x.re 2) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3))))) (pow.f64 y.re 2))))
(+.f64 (/.f64 1 x.im) (fma.f64 -1 (*.f64 (/.f64 x.re y.im) (/.f64 y.re (*.f64 x.im x.im))) (*.f64 (-.f64 (/.f64 1/2 (*.f64 x.im (*.f64 y.im y.im))) (neg.f64 (/.f64 (*.f64 x.re x.re) (*.f64 (*.f64 y.im y.im) (pow.f64 x.im 3))))) (*.f64 y.re y.re))))
(+.f64 (/.f64 1 x.im) (-.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (*.f64 x.re x.re) (*.f64 y.im (*.f64 y.im (pow.f64 x.im 3))))) (*.f64 y.re y.re)) (*.f64 (/.f64 y.re y.im) (/.f64 x.re (*.f64 x.im x.im)))))
(+.f64 (-.f64 (/.f64 1 x.im) (*.f64 (/.f64 y.re (*.f64 x.im x.im)) (/.f64 x.re y.im))) (*.f64 (*.f64 (/.f64 y.re y.im) (/.f64 y.re y.im)) (+.f64 (/.f64 1/2 x.im) (/.f64 (*.f64 x.re x.re) (pow.f64 x.im 3)))))
(+.f64 (/.f64 1 x.im) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 y.im 2) x.im))) (*.f64 -1 (/.f64 (pow.f64 x.re 2) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3))))) (*.f64 x.re (pow.f64 y.re 3))) (*.f64 y.im x.im))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 y.im 2) x.im))) (*.f64 -1 (/.f64 (pow.f64 x.re 2) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3))))) (pow.f64 y.re 2)))))
(+.f64 (/.f64 1 x.im) (fma.f64 -1 (*.f64 (/.f64 x.re y.im) (/.f64 y.re (*.f64 x.im x.im))) (fma.f64 -1 (*.f64 (/.f64 (-.f64 (/.f64 1/2 (*.f64 x.im (*.f64 y.im y.im))) (neg.f64 (/.f64 (*.f64 x.re x.re) (*.f64 (*.f64 y.im y.im) (pow.f64 x.im 3))))) y.im) (/.f64 (*.f64 x.re (pow.f64 y.re 3)) x.im)) (*.f64 (-.f64 (/.f64 1/2 (*.f64 x.im (*.f64 y.im y.im))) (neg.f64 (/.f64 (*.f64 x.re x.re) (*.f64 (*.f64 y.im y.im) (pow.f64 x.im 3))))) (*.f64 y.re y.re)))))
(+.f64 (/.f64 1 x.im) (-.f64 (-.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (*.f64 x.re x.re) (*.f64 y.im (*.f64 y.im (pow.f64 x.im 3))))) (*.f64 y.re y.re)) (*.f64 (/.f64 (+.f64 (/.f64 1/2 (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (*.f64 x.re x.re) (*.f64 y.im (*.f64 y.im (pow.f64 x.im 3))))) y.im) (/.f64 (pow.f64 y.re 3) (/.f64 x.im x.re)))) (*.f64 (/.f64 y.re y.im) (/.f64 x.re (*.f64 x.im x.im)))))
(+.f64 (-.f64 (/.f64 1 x.im) (*.f64 (/.f64 y.re (*.f64 x.im x.im)) (/.f64 x.re y.im))) (-.f64 (*.f64 (*.f64 (/.f64 y.re y.im) (/.f64 y.re y.im)) (+.f64 (/.f64 1/2 x.im) (/.f64 (*.f64 x.re x.re) (pow.f64 x.im 3)))) (*.f64 (-.f64 (/.f64 1/2 (*.f64 x.im (pow.f64 y.im 3))) (/.f64 (*.f64 x.re (neg.f64 x.re)) (*.f64 (pow.f64 x.im 3) (pow.f64 y.im 3)))) (*.f64 (/.f64 x.re x.im) (pow.f64 y.re 3)))))
(/.f64 1 x.re)
(+.f64 (/.f64 1 x.re) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re))))
(+.f64 (/.f64 1 x.re) (neg.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.re (*.f64 x.re x.re)))))
(-.f64 (/.f64 1 x.re) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im y.re)))
(-.f64 (/.f64 1 x.re) (/.f64 (*.f64 (/.f64 y.im (*.f64 x.re x.re)) x.im) y.re))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (*.f64 x.re (pow.f64 y.re 2)))) (+.f64 (/.f64 1 x.re) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re))))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2)))))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (*.f64 x.re (*.f64 y.re y.re))) (+.f64 (/.f64 1 x.re) (neg.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.re (*.f64 x.re x.re)))))) (neg.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (/.f64 (*.f64 x.im x.im) (*.f64 y.re y.re)))))
(+.f64 (-.f64 (fma.f64 1/2 (/.f64 y.im (/.f64 (*.f64 y.re (*.f64 x.re y.re)) y.im)) (/.f64 1 x.re)) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im y.re))) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (*.f64 (/.f64 x.im y.re) (/.f64 x.im y.re))))
(+.f64 (-.f64 (/.f64 1 x.re) (/.f64 (*.f64 (/.f64 y.im (*.f64 x.re x.re)) x.im) y.re)) (*.f64 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) (+.f64 (/.f64 1/2 x.re) (/.f64 x.im (/.f64 (pow.f64 x.re 3) x.im)))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) x.re)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (pow.f64 x.re 3)))) (*.f64 y.im x.im)) (*.f64 x.re (pow.f64 y.re 3)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (*.f64 x.re (pow.f64 y.re 2)))) (+.f64 (/.f64 1 x.re) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re)))))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2)))))
(-.f64 (fma.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (/.f64 (*.f64 y.im y.im) x.re)) (neg.f64 (/.f64 (*.f64 (*.f64 x.im x.im) (*.f64 y.im y.im)) (pow.f64 x.re 3)))) (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (*.f64 x.im y.im))) (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (*.f64 x.re (*.f64 y.re y.re))) (+.f64 (/.f64 1 x.re) (neg.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.re (*.f64 x.re x.re))))))) (neg.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (/.f64 (*.f64 x.im x.im) (*.f64 y.re y.re)))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (*.f64 (/.f64 x.im y.re) (/.f64 x.im y.re))) (-.f64 (-.f64 (fma.f64 1/2 (/.f64 y.im (/.f64 (*.f64 y.re (*.f64 x.re y.re)) y.im)) (/.f64 1 x.re)) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im y.re))) (*.f64 (/.f64 (*.f64 x.im y.im) x.re) (/.f64 (fma.f64 1/2 (/.f64 y.im (/.f64 x.re y.im)) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (*.f64 x.im x.im))) (pow.f64 y.re 3)))))
(-.f64 (+.f64 (-.f64 (/.f64 1 x.re) (/.f64 (*.f64 (/.f64 y.im (*.f64 x.re x.re)) x.im) y.re)) (*.f64 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) (+.f64 (/.f64 1/2 x.re) (/.f64 x.im (/.f64 (pow.f64 x.re 3) x.im))))) (*.f64 (*.f64 (/.f64 y.im x.re) (/.f64 x.im (pow.f64 y.re 3))) (*.f64 (*.f64 (/.f64 y.im x.re) y.im) (+.f64 1/2 (/.f64 (*.f64 x.im x.im) (*.f64 x.re x.re))))))
(/.f64 -1 x.re)
(-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re)) (/.f64 1 x.re))
(-.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.re (*.f64 x.re x.re))) (/.f64 1 x.re))
(fma.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im y.re) (/.f64 -1 x.re))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (*.f64 x.re (pow.f64 y.re 2)))) (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re))) (+.f64 (/.f64 1 x.re) (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2)))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (*.f64 x.re (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (*.f64 y.re (*.f64 x.re x.re)))) (+.f64 (/.f64 1 x.re) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (/.f64 (*.f64 x.im x.im) (*.f64 y.re y.re)))))
(-.f64 (fma.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im y.re) (*.f64 (/.f64 y.im (/.f64 (*.f64 y.re (*.f64 x.re y.re)) y.im)) -1/2)) (fma.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (*.f64 (/.f64 x.im y.re) (/.f64 x.im y.re)) (/.f64 1 x.re)))
(-.f64 (fma.f64 (*.f64 (/.f64 y.im x.re) (/.f64 y.im (*.f64 y.re y.re))) -1/2 (/.f64 (*.f64 (/.f64 y.im (*.f64 x.re x.re)) x.im) y.re)) (fma.f64 (*.f64 (/.f64 y.im (pow.f64 x.re 3)) y.im) (/.f64 (/.f64 (*.f64 x.im x.im) y.re) y.re) (/.f64 1 x.re)))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (*.f64 x.re (pow.f64 y.re 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im (*.f64 x.im (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) x.re)) (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (pow.f64 x.re 3))))) (*.f64 x.re (pow.f64 y.re 3)))) (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re)))) (+.f64 (/.f64 1 x.re) (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2)))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (*.f64 x.re (*.f64 y.re y.re))) (fma.f64 -1 (*.f64 (/.f64 y.im x.re) (/.f64 (*.f64 x.im (-.f64 (/.f64 (*.f64 -1/2 (*.f64 y.im y.im)) x.re) (/.f64 (*.f64 (*.f64 x.im x.im) (*.f64 y.im y.im)) (pow.f64 x.re 3)))) (pow.f64 y.re 3))) (/.f64 (*.f64 x.im y.im) (*.f64 y.re (*.f64 x.re x.re))))) (+.f64 (/.f64 1 x.re) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (/.f64 (*.f64 x.im x.im) (*.f64 y.re y.re)))))
(-.f64 (fma.f64 (/.f64 y.im (/.f64 (*.f64 y.re (*.f64 x.re y.re)) y.im)) -1/2 (fma.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im y.re) (*.f64 (neg.f64 (/.f64 y.im x.re)) (/.f64 (-.f64 (/.f64 (*.f64 (*.f64 -1/2 y.im) y.im) x.re) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (*.f64 x.im x.im))) (/.f64 (pow.f64 y.re 3) x.im))))) (fma.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (*.f64 (/.f64 x.im y.re) (/.f64 x.im y.re)) (/.f64 1 x.re)))
(fma.f64 (*.f64 (/.f64 y.im x.re) (/.f64 y.im (*.f64 y.re y.re))) -1/2 (-.f64 (-.f64 (/.f64 (*.f64 (/.f64 y.im (*.f64 x.re x.re)) x.im) y.re) (*.f64 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) x.im) (/.f64 (*.f64 (*.f64 (/.f64 y.im x.re) y.im) (-.f64 -1/2 (/.f64 (*.f64 x.im x.im) (*.f64 x.re x.re)))) x.re))) (fma.f64 (*.f64 (/.f64 y.im (pow.f64 x.re 3)) y.im) (/.f64 (/.f64 (*.f64 x.im x.im) y.re) y.re) (/.f64 1 x.re))))
(/.f64 1 x.re)
(+.f64 (/.f64 1 x.re) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re))))
(+.f64 (/.f64 1 x.re) (neg.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.re (*.f64 x.re x.re)))))
(-.f64 (/.f64 1 x.re) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im y.re)))
(-.f64 (/.f64 1 x.re) (/.f64 (*.f64 (/.f64 y.im (*.f64 x.re x.re)) x.im) y.re))
(+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 x.re (pow.f64 y.re 2)))) (*.f64 -1 (/.f64 (pow.f64 x.im 2) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2))))) (pow.f64 y.im 2)) (+.f64 (/.f64 1 x.re) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re)))))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (*.f64 x.re (*.f64 y.re y.re))) (+.f64 (/.f64 1 x.re) (neg.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.re (*.f64 x.re x.re)))))) (neg.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (/.f64 (*.f64 x.im x.im) (*.f64 y.re y.re)))))
(+.f64 (-.f64 (fma.f64 1/2 (/.f64 y.im (/.f64 (*.f64 y.re (*.f64 x.re y.re)) y.im)) (/.f64 1 x.re)) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im y.re))) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (*.f64 (/.f64 x.im y.re) (/.f64 x.im y.re))))
(+.f64 (-.f64 (/.f64 1 x.re) (/.f64 (*.f64 (/.f64 y.im (*.f64 x.re x.re)) x.im) y.re)) (*.f64 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) (+.f64 (/.f64 1/2 x.re) (/.f64 x.im (/.f64 (pow.f64 x.re 3) x.im)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 x.re (pow.f64 y.re 2)))) (*.f64 -1 (/.f64 (pow.f64 x.im 2) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2))))) (*.f64 (pow.f64 y.im 3) x.im)) (*.f64 x.re y.re))) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 x.re (pow.f64 y.re 2)))) (*.f64 -1 (/.f64 (pow.f64 x.im 2) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 2))))) (pow.f64 y.im 2)) (+.f64 (/.f64 1 x.re) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) y.re))))))
(fma.f64 -1 (/.f64 (-.f64 (/.f64 1/2 (*.f64 x.re (*.f64 y.re y.re))) (neg.f64 (/.f64 (*.f64 x.im x.im) (*.f64 (*.f64 y.re y.re) (pow.f64 x.re 3))))) (/.f64 (*.f64 x.re y.re) (*.f64 x.im (pow.f64 y.im 3)))) (fma.f64 (-.f64 (/.f64 1/2 (*.f64 x.re (*.f64 y.re y.re))) (neg.f64 (/.f64 (*.f64 x.im x.im) (*.f64 (*.f64 y.re y.re) (pow.f64 x.re 3))))) (*.f64 y.im y.im) (+.f64 (/.f64 1 x.re) (neg.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.re (*.f64 x.re x.re)))))))
(-.f64 (-.f64 (fma.f64 (*.f64 y.im y.im) (+.f64 (/.f64 1/2 (*.f64 y.re (*.f64 x.re y.re))) (/.f64 (/.f64 x.im (/.f64 (pow.f64 x.re 3) x.im)) (*.f64 y.re y.re))) (/.f64 1 x.re)) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im y.re))) (*.f64 (/.f64 (*.f64 x.im (pow.f64 y.im 3)) x.re) (/.f64 (+.f64 (/.f64 1/2 (*.f64 y.re (*.f64 x.re y.re))) (/.f64 (/.f64 x.im (/.f64 (pow.f64 x.re 3) x.im)) (*.f64 y.re y.re))) y.re)))
(+.f64 (-.f64 (/.f64 1 x.re) (/.f64 (*.f64 (/.f64 y.im (*.f64 x.re x.re)) x.im) y.re)) (-.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) (+.f64 (/.f64 1/2 x.re) (/.f64 x.im (/.f64 (pow.f64 x.re 3) x.im)))) (*.f64 (/.f64 (*.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) (+.f64 (/.f64 1/2 x.re) (/.f64 x.im (/.f64 (pow.f64 x.re 3) x.im)))) y.im) (*.f64 x.re y.re)) x.im)))
(/.f64 1 x.im)
(+.f64 (/.f64 1 x.im) (*.f64 -1 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2)))))
(+.f64 (/.f64 1 x.im) (neg.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re (*.f64 x.im x.im)))))
(-.f64 (/.f64 1 x.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re (*.f64 x.im x.im))))
(-.f64 (/.f64 1 x.im) (*.f64 (/.f64 y.re (*.f64 x.im x.im)) (/.f64 x.re y.im)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 y.im 2) x.im))) (+.f64 (/.f64 1 x.im) (*.f64 -1 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2)))))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3)))))
(+.f64 (/.f64 1 x.im) (fma.f64 -1 (*.f64 (/.f64 x.re y.im) (/.f64 y.re (*.f64 x.im x.im))) (*.f64 (-.f64 (/.f64 1/2 (*.f64 x.im (*.f64 y.im y.im))) (neg.f64 (/.f64 (*.f64 x.re x.re) (*.f64 (*.f64 y.im y.im) (pow.f64 x.im 3))))) (*.f64 y.re y.re))))
(+.f64 (/.f64 1 x.im) (-.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (*.f64 x.re x.re) (*.f64 y.im (*.f64 y.im (pow.f64 x.im 3))))) (*.f64 y.re y.re)) (*.f64 (/.f64 y.re y.im) (/.f64 x.re (*.f64 x.im x.im)))))
(+.f64 (-.f64 (/.f64 1 x.im) (*.f64 (/.f64 y.re (*.f64 x.im x.im)) (/.f64 x.re y.im))) (*.f64 (*.f64 (/.f64 y.re y.im) (/.f64 y.re y.im)) (+.f64 (/.f64 1/2 x.im) (/.f64 (*.f64 x.re x.re) (pow.f64 x.im 3)))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) x.im)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (pow.f64 x.im 3)))) (*.f64 x.re y.re)) (*.f64 (pow.f64 y.im 3) x.im))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 y.im 2) x.im))) (+.f64 (/.f64 1 x.im) (*.f64 -1 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2))))))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3)))))
(-.f64 (fma.f64 -1 (*.f64 (/.f64 (-.f64 (*.f64 1/2 (/.f64 (*.f64 y.re y.re) x.im)) (neg.f64 (/.f64 (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re)) (pow.f64 x.im 3)))) (pow.f64 y.im 3)) (/.f64 (*.f64 x.re y.re) x.im)) (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (/.f64 1 x.im) (neg.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re (*.f64 x.im x.im))))))) (neg.f64 (/.f64 (/.f64 (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re)) (*.f64 y.im y.im)) (pow.f64 x.im 3))))
(+.f64 (*.f64 (*.f64 (/.f64 y.re y.im) (/.f64 y.re y.im)) (/.f64 (*.f64 x.re x.re) (pow.f64 x.im 3))) (-.f64 (-.f64 (fma.f64 1/2 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 y.re x.im)) (/.f64 1 x.im)) (*.f64 (/.f64 y.re y.im) (/.f64 x.re (*.f64 x.im x.im)))) (*.f64 (/.f64 (*.f64 x.re (fma.f64 1/2 (/.f64 y.re (/.f64 x.im y.re)) (*.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 x.im 3)) (*.f64 y.re y.re)))) x.im) (/.f64 y.re (pow.f64 y.im 3)))))
(-.f64 (+.f64 (-.f64 (/.f64 1 x.im) (*.f64 (/.f64 y.re (*.f64 x.im x.im)) (/.f64 x.re y.im))) (*.f64 (*.f64 (/.f64 y.re y.im) (/.f64 y.re y.im)) (+.f64 (/.f64 1/2 x.im) (/.f64 (*.f64 x.re x.re) (pow.f64 x.im 3))))) (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (/.f64 y.re x.im)) (*.f64 (*.f64 (/.f64 y.re x.im) y.re) (+.f64 1/2 (/.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))))
(/.f64 -1 x.im)
(-.f64 (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2))) (/.f64 1 x.im))
(-.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re (*.f64 x.im x.im))) (/.f64 1 x.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re (*.f64 x.im x.im)) (/.f64 -1 x.im))
(fma.f64 (/.f64 y.re (*.f64 x.im x.im)) (/.f64 x.re y.im) (/.f64 -1 x.im))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 y.im 2) x.im))) (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2)))) (+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3))) (/.f64 1 x.im)))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (/.f64 x.re y.im) (/.f64 y.re (*.f64 x.im x.im)))) (+.f64 (/.f64 1 x.im) (/.f64 (/.f64 (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re)) (*.f64 y.im y.im)) (pow.f64 x.im 3))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 y.re x.im)) (*.f64 (/.f64 y.re y.im) (/.f64 x.re (*.f64 x.im x.im)))) (fma.f64 (*.f64 (/.f64 x.re y.im) (/.f64 x.re y.im)) (/.f64 y.re (/.f64 (pow.f64 x.im 3) y.re)) (/.f64 1 x.im)))
(+.f64 (+.f64 (*.f64 (/.f64 y.re (*.f64 x.im x.im)) (/.f64 x.re y.im)) (*.f64 (*.f64 (/.f64 y.re y.im) (/.f64 y.re y.im)) (-.f64 (/.f64 -1/2 x.im) (/.f64 (*.f64 x.re x.re) (pow.f64 x.im 3))))) (/.f64 -1 x.im))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 y.im 2) x.im))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) x.im)) (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (pow.f64 x.im 3))) y.re)) (*.f64 (pow.f64 y.im 3) x.im))) (/.f64 (*.f64 x.re y.re) (*.f64 y.im (pow.f64 x.im 2))))) (+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 3))) (/.f64 1 x.im)))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (*.f64 x.im (*.f64 y.im y.im))) (fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 y.re (-.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re)) (pow.f64 x.im 3))))) (*.f64 x.im (pow.f64 y.im 3))) (*.f64 (/.f64 x.re y.im) (/.f64 y.re (*.f64 x.im x.im))))) (+.f64 (/.f64 1 x.im) (/.f64 (/.f64 (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re)) (*.f64 y.im y.im)) (pow.f64 x.im 3))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 y.re x.im)) (fma.f64 (/.f64 x.re y.im) (/.f64 y.re (*.f64 x.im x.im)) (/.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) (/.f64 (pow.f64 y.im 3) (-.f64 (/.f64 (*.f64 (*.f64 -1/2 y.re) y.re) x.im) (*.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 x.im 3)) (*.f64 y.re y.re)))))))) (fma.f64 (*.f64 (/.f64 x.re y.im) (/.f64 x.re y.im)) (/.f64 y.re (/.f64 (pow.f64 x.im 3) y.re)) (/.f64 1 x.im)))
(+.f64 (+.f64 (-.f64 (*.f64 (/.f64 y.re (*.f64 x.im x.im)) (/.f64 x.re y.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 (/.f64 y.re x.im) (*.f64 (*.f64 (/.f64 y.re x.im) y.re) (-.f64 -1/2 (/.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))))) (*.f64 (*.f64 (/.f64 y.re y.im) (/.f64 y.re y.im)) (-.f64 (/.f64 -1/2 x.im) (/.f64 (*.f64 x.re x.re) (pow.f64 x.im 3))))) (/.f64 -1 x.im))
(*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(*.f64 (/.f64 1 (*.f64 x.im y.im)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))
(/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(fma.f64 -1 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))) (*.f64 (/.f64 1 (*.f64 x.im y.im)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 (hypot.f64 y.re y.im) (+.f64 (/.f64 1 (*.f64 x.im y.im)) (neg.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.re (*.f64 x.im x.im))))))
(*.f64 (hypot.f64 y.re y.im) (-.f64 (/.f64 1 (*.f64 x.im y.im)) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(fma.f64 -1 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))) (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (+.f64 (*.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (/.f64 (*.f64 y.re y.re) (pow.f64 x.im 3))) (/.f64 1 (*.f64 x.im y.im)))))
(-.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (/.f64 y.re (/.f64 (pow.f64 x.im 3) y.re)) (/.f64 1 (*.f64 x.im y.im)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.re (*.f64 x.im x.im)))))
(*.f64 (hypot.f64 y.re y.im) (-.f64 (fma.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (*.f64 (/.f64 y.re (pow.f64 x.im 3)) y.re) (/.f64 1 (*.f64 x.im y.im))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3)) (*.f64 (pow.f64 y.im 4) (pow.f64 x.im 4))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))))
(fma.f64 -1 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 3) (pow.f64 x.im 4)))) (fma.f64 -1 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))) (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (+.f64 (*.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (/.f64 (*.f64 y.re y.re) (pow.f64 x.im 3))) (/.f64 1 (*.f64 x.im y.im))))))
(+.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (/.f64 y.re (/.f64 (pow.f64 x.im 3) y.re)) (/.f64 1 (*.f64 x.im y.im)))) (*.f64 (hypot.f64 y.re y.im) (+.f64 (neg.f64 (*.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 3) (pow.f64 x.im 4)))) (neg.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.re (*.f64 x.im x.im)))))))
(*.f64 (hypot.f64 y.re y.im) (+.f64 (fma.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (*.f64 (/.f64 y.re (pow.f64 x.im 3)) y.re) (/.f64 1 (*.f64 x.im y.im))) (-.f64 (*.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 y.im 4)) (neg.f64 (/.f64 (pow.f64 y.re 3) (pow.f64 x.im 4)))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im))))))
(*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (/.f64 1 (*.f64 x.re y.re)))
(/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(fma.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (neg.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re))))))
(*.f64 (hypot.f64 y.re y.im) (+.f64 (/.f64 1 (*.f64 x.re y.re)) (/.f64 (neg.f64 (*.f64 x.im y.im)) (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)))))
(*.f64 (hypot.f64 y.re y.im) (-.f64 (/.f64 1 (*.f64 x.re y.re)) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))))
(fma.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (/.f64 (*.f64 x.im x.im) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (fma.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (neg.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re)))))))
(fma.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 x.im (/.f64 (pow.f64 x.re 3) x.im)) (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3))) (*.f64 (hypot.f64 y.re y.im) (+.f64 (/.f64 1 (*.f64 x.re y.re)) (/.f64 (neg.f64 (*.f64 x.im y.im)) (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re))))))
(*.f64 (hypot.f64 y.re y.im) (-.f64 (+.f64 (*.f64 (*.f64 (/.f64 y.im (pow.f64 x.re 3)) y.im) (/.f64 (*.f64 x.im x.im) (pow.f64 y.re 3))) (/.f64 1 (*.f64 x.re y.re))) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3)) (*.f64 (pow.f64 x.re 4) (pow.f64 y.re 4))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))))
(fma.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (/.f64 (*.f64 x.im x.im) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (fma.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 -1 (+.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 x.re 4)) (/.f64 (pow.f64 x.im 3) (pow.f64 y.re 4)))) (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re))))))))
(fma.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 x.im (/.f64 (pow.f64 x.re 3) x.im)) (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3))) (fma.f64 -1 (*.f64 (hypot.f64 y.re y.im) (+.f64 (/.f64 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (pow.f64 y.re 4)) (/.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re))))) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re))))
(*.f64 (hypot.f64 y.re y.im) (+.f64 (-.f64 (/.f64 (neg.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 y.im 3))) (*.f64 (pow.f64 x.re 4) (pow.f64 y.re 4))) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im (*.f64 y.re y.re)))) (+.f64 (*.f64 (*.f64 (/.f64 y.im (pow.f64 x.re 3)) y.im) (/.f64 (*.f64 x.im x.im) (pow.f64 y.re 3))) (/.f64 1 (*.f64 x.re y.re)))))
(*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (/.f64 1 (*.f64 x.re y.re)))
(/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(fma.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (neg.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re))))))
(*.f64 (hypot.f64 y.re y.im) (+.f64 (/.f64 1 (*.f64 x.re y.re)) (/.f64 (neg.f64 (*.f64 x.im y.im)) (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)))))
(*.f64 (hypot.f64 y.re y.im) (-.f64 (/.f64 1 (*.f64 x.re y.re)) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))))
(fma.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (/.f64 (*.f64 x.im x.im) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (fma.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (neg.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re)))))))
(fma.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 x.im (/.f64 (pow.f64 x.re 3) x.im)) (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3))) (*.f64 (hypot.f64 y.re y.im) (+.f64 (/.f64 1 (*.f64 x.re y.re)) (/.f64 (neg.f64 (*.f64 x.im y.im)) (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re))))))
(*.f64 (hypot.f64 y.re y.im) (-.f64 (+.f64 (*.f64 (*.f64 (/.f64 y.im (pow.f64 x.re 3)) y.im) (/.f64 (*.f64 x.im x.im) (pow.f64 y.re 3))) (/.f64 1 (*.f64 x.re y.re))) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3)) (*.f64 (pow.f64 x.re 4) (pow.f64 y.re 4))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))))
(fma.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (/.f64 (*.f64 x.im x.im) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (fma.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 -1 (+.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 x.re 4)) (/.f64 (pow.f64 x.im 3) (pow.f64 y.re 4)))) (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re))))))))
(fma.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 x.im (/.f64 (pow.f64 x.re 3) x.im)) (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3))) (fma.f64 -1 (*.f64 (hypot.f64 y.re y.im) (+.f64 (/.f64 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (pow.f64 y.re 4)) (/.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re))))) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re))))
(*.f64 (hypot.f64 y.re y.im) (+.f64 (-.f64 (/.f64 (neg.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 y.im 3))) (*.f64 (pow.f64 x.re 4) (pow.f64 y.re 4))) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im (*.f64 y.re y.re)))) (+.f64 (*.f64 (*.f64 (/.f64 y.im (pow.f64 x.re 3)) y.im) (/.f64 (*.f64 x.im x.im) (pow.f64 y.re 3))) (/.f64 1 (*.f64 x.re y.re)))))
(*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (/.f64 1 (*.f64 x.re y.re)))
(/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(fma.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (neg.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re))))))
(*.f64 (hypot.f64 y.re y.im) (+.f64 (/.f64 1 (*.f64 x.re y.re)) (/.f64 (neg.f64 (*.f64 x.im y.im)) (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)))))
(*.f64 (hypot.f64 y.re y.im) (-.f64 (/.f64 1 (*.f64 x.re y.re)) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))))
(fma.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (/.f64 (*.f64 x.im x.im) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (fma.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (neg.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re)))))))
(fma.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 x.im (/.f64 (pow.f64 x.re 3) x.im)) (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3))) (*.f64 (hypot.f64 y.re y.im) (+.f64 (/.f64 1 (*.f64 x.re y.re)) (/.f64 (neg.f64 (*.f64 x.im y.im)) (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re))))))
(*.f64 (hypot.f64 y.re y.im) (-.f64 (+.f64 (*.f64 (*.f64 (/.f64 y.im (pow.f64 x.re 3)) y.im) (/.f64 (*.f64 x.im x.im) (pow.f64 y.re 3))) (/.f64 1 (*.f64 x.re y.re))) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3)) (*.f64 (pow.f64 x.re 4) (pow.f64 y.re 4))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 -1 (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))))
(fma.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 x.re 3)) (/.f64 (*.f64 x.im x.im) (pow.f64 y.re 3))) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (fma.f64 (/.f64 1 (*.f64 x.re y.re)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 -1 (+.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 x.re 4)) (/.f64 (pow.f64 x.im 3) (pow.f64 y.re 4)))) (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re x.re) (*.f64 y.re y.re))))))))
(fma.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 x.im (/.f64 (pow.f64 x.re 3) x.im)) (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3))) (fma.f64 -1 (*.f64 (hypot.f64 y.re y.im) (+.f64 (/.f64 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (pow.f64 y.re 4)) (/.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re))))) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re))))
(*.f64 (hypot.f64 y.re y.im) (+.f64 (-.f64 (/.f64 (neg.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 y.im 3))) (*.f64 (pow.f64 x.re 4) (pow.f64 y.re 4))) (*.f64 (/.f64 y.im (*.f64 x.re x.re)) (/.f64 x.im (*.f64 y.re y.re)))) (+.f64 (*.f64 (*.f64 (/.f64 y.im (pow.f64 x.re 3)) y.im) (/.f64 (*.f64 x.im x.im) (pow.f64 y.re 3))) (/.f64 1 (*.f64 x.re y.re)))))
(*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(*.f64 (/.f64 1 (*.f64 x.im y.im)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))
(/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(fma.f64 -1 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))) (*.f64 (/.f64 1 (*.f64 x.im y.im)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 (hypot.f64 y.re y.im) (+.f64 (/.f64 1 (*.f64 x.im y.im)) (neg.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.re (*.f64 x.im x.im))))))
(*.f64 (hypot.f64 y.re y.im) (-.f64 (/.f64 1 (*.f64 x.im y.im)) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(fma.f64 -1 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))) (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (+.f64 (*.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (/.f64 (*.f64 y.re y.re) (pow.f64 x.im 3))) (/.f64 1 (*.f64 x.im y.im)))))
(-.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (/.f64 y.re (/.f64 (pow.f64 x.im 3) y.re)) (/.f64 1 (*.f64 x.im y.im)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.re (*.f64 x.im x.im)))))
(*.f64 (hypot.f64 y.re y.im) (-.f64 (fma.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (*.f64 (/.f64 y.re (pow.f64 x.im 3)) y.re) (/.f64 1 (*.f64 x.im y.im))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3)) (*.f64 (pow.f64 y.im 4) (pow.f64 x.im 4))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))))
(fma.f64 -1 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 3) (pow.f64 x.im 4)))) (fma.f64 -1 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))) (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (+.f64 (*.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (/.f64 (*.f64 y.re y.re) (pow.f64 x.im 3))) (/.f64 1 (*.f64 x.im y.im))))))
(+.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (/.f64 y.re (/.f64 (pow.f64 x.im 3) y.re)) (/.f64 1 (*.f64 x.im y.im)))) (*.f64 (hypot.f64 y.re y.im) (+.f64 (neg.f64 (*.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 3) (pow.f64 x.im 4)))) (neg.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.re (*.f64 x.im x.im)))))))
(*.f64 (hypot.f64 y.re y.im) (+.f64 (fma.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (*.f64 (/.f64 y.re (pow.f64 x.im 3)) y.re) (/.f64 1 (*.f64 x.im y.im))) (-.f64 (*.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 y.im 4)) (neg.f64 (/.f64 (pow.f64 y.re 3) (pow.f64 x.im 4)))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im))))))
(*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(*.f64 (/.f64 1 (*.f64 x.im y.im)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))
(/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(fma.f64 -1 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))) (*.f64 (/.f64 1 (*.f64 x.im y.im)) (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 (hypot.f64 y.re y.im) (+.f64 (/.f64 1 (*.f64 x.im y.im)) (neg.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.re (*.f64 x.im x.im))))))
(*.f64 (hypot.f64 y.re y.im) (-.f64 (/.f64 1 (*.f64 x.im y.im)) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(fma.f64 -1 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))) (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (+.f64 (*.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (/.f64 (*.f64 y.re y.re) (pow.f64 x.im 3))) (/.f64 1 (*.f64 x.im y.im)))))
(-.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (/.f64 y.re (/.f64 (pow.f64 x.im 3) y.re)) (/.f64 1 (*.f64 x.im y.im)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.re (*.f64 x.im x.im)))))
(*.f64 (hypot.f64 y.re y.im) (-.f64 (fma.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (*.f64 (/.f64 y.re (pow.f64 x.im 3)) y.re) (/.f64 1 (*.f64 x.im y.im))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 y.re 3)) (*.f64 (pow.f64 y.im 4) (pow.f64 x.im 4))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 x.re 2) (pow.f64 y.re 2)) (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 3))) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (/.f64 1 (*.f64 y.im x.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))))
(fma.f64 -1 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 3) (pow.f64 x.im 4)))) (fma.f64 -1 (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im)))) (*.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) (+.f64 (*.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (/.f64 (*.f64 y.re y.re) (pow.f64 x.im 3))) (/.f64 1 (*.f64 x.im y.im))))))
(+.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (/.f64 y.re (/.f64 (pow.f64 x.im 3) y.re)) (/.f64 1 (*.f64 x.im y.im)))) (*.f64 (hypot.f64 y.re y.im) (+.f64 (neg.f64 (*.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 3) (pow.f64 x.im 4)))) (neg.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.re (*.f64 x.im x.im)))))))
(*.f64 (hypot.f64 y.re y.im) (+.f64 (fma.f64 (/.f64 (*.f64 x.re x.re) (pow.f64 y.im 3)) (*.f64 (/.f64 y.re (pow.f64 x.im 3)) y.re) (/.f64 1 (*.f64 x.im y.im))) (-.f64 (*.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 y.im 4)) (neg.f64 (/.f64 (pow.f64 y.re 3) (pow.f64 x.im 4)))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 y.re (*.f64 x.im x.im))))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re (*.f64 y.re x.im)) (pow.f64 y.im 3))))
(+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))))
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (-.f64 (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re (*.f64 y.re x.im)) (pow.f64 y.im 3))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))))
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.im y.im) (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 (*.f64 x.im y.im) y.re) y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.im y.im) (*.f64 y.re y.re))))
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 (*.f64 x.im y.im) y.re) y.re)) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.im y.im) (*.f64 y.re y.re)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 (*.f64 x.im y.im) y.re) y.re)) (+.f64 (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.re)))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.im y.im) (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 (*.f64 x.im y.im) y.re) y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.im y.im) (*.f64 y.re y.re))))
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 (*.f64 x.im y.im) y.re) y.re)) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.im y.im) (*.f64 y.re y.re)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 (*.f64 x.im y.im) y.re) y.re)) (+.f64 (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.re)))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.im y.im) (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 (*.f64 x.im y.im) y.re) y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.im y.im) (*.f64 y.re y.re))))
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 (*.f64 x.im y.im) y.re) y.re)) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.im y.im) (*.f64 y.re y.re)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 (*.f64 x.im y.im) y.re) y.re)) (+.f64 (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.re)))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re (*.f64 y.re x.im)) (pow.f64 y.im 3))))
(+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))))
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (-.f64 (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re (*.f64 y.re x.im)) (pow.f64 y.im 3))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))))
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re (*.f64 y.re x.im)) (pow.f64 y.im 3))))
(+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))))
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (-.f64 (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re (*.f64 y.re x.im)) (pow.f64 y.im 3))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))))
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im))
(/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im))
(*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im)
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im)))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im)))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im)))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im))
(/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im))
(*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im)
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im))
(/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im))
(*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im)
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)))
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 x.re y.re) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re))

localize4.0ms (0%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (/.f64 y.re y.im) y.im)
1.8b
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
6.9b
(*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re)
Compiler

Compiled 37 to 9 computations (75.7% saved)

series11.0ms (0.1%)

Counts
3 → 108
Calls

27 calls:

TimeVariablePointExpression
1.0ms
y.re
@0
(*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re)
1.0ms
y.re
@inf
(*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re)
1.0ms
x.re
@0
(*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re)
1.0ms
y.im
@inf
(*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re)
1.0ms
y.im
@0
(*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re)

rewrite112.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
658×log-prod_binary64
341×fma-def_binary64
313×pow2_binary64
228×log-div_binary64
224×pow-unpow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01033
122431
2345531
Stop Event
node limit
Counts
3 → 157
Calls
Call 1
Inputs
(*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re)
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
(/.f64 (/.f64 y.re y.im) y.im)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x.re) (*.f64 y.re (pow.f64 y.im -2)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x.re) (*.f64 y.re (pow.f64 y.im -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x.re) (*.f64 y.re (pow.f64 y.im -2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x.re) (*.f64 y.re (pow.f64 y.im -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y.re y.im) x.re) y.im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (/.f64 y.re y.im) x.re)) (neg.f64 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (/.f64 y.re y.im) x.re) 1) y.im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (/.f64 y.re y.im) x.re) (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (/.f64 y.re y.im) x.re) (sqrt.f64 y.im)) (sqrt.f64 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (/.f64 y.re y.im)) x.re) (neg.f64 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x.re (neg.f64 (/.f64 y.re y.im))) (neg.f64 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sqrt.f64 y.re) y.im) (sqrt.f64 x.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x.re) (*.f64 y.re (pow.f64 y.im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (/.f64 x.im y.im) 2) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)) (/.f64 (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 2) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))) 2) (cbrt.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))) (sqrt.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 3)) (/.f64 1 (fma.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (-.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (/.f64 x.im y.im)) (pow.f64 (/.f64 x.im y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 2)) (/.f64 1 (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (-.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (/.f64 x.im y.im)) (pow.f64 (/.f64 x.im y.im) 2)) (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 3)) (fma.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (-.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (/.f64 x.im y.im)) (pow.f64 (/.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 3)) (+.f64 (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 2) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (*.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (/.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 2)) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 3))) (neg.f64 (fma.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (-.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (/.f64 x.im y.im)) (pow.f64 (/.f64 x.im y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 2))) (neg.f64 (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (*.f64 (/.f64 y.re y.im) x.re) y.im (*.f64 y.im x.im)) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (*.f64 (/.f64 y.re y.im) x.re) (/.f64 y.im x.im) y.im) (*.f64 y.im (/.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (*.f64 (/.f64 y.re y.im) x.re) (neg.f64 y.im) (*.f64 y.im (neg.f64 x.im))) (*.f64 y.im (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.im y.im (*.f64 y.im (*.f64 (/.f64 y.re y.im) x.re))) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y.im (*.f64 (/.f64 y.im x.im) (*.f64 (/.f64 y.re y.im) x.re))) (*.f64 (/.f64 y.im x.im) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.im) y.im (*.f64 (neg.f64 y.im) (*.f64 (/.f64 y.re y.im) x.re))) (*.f64 (neg.f64 y.im) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 2) (pow.f64 (/.f64 x.im y.im) 2)) (-.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (/.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (-.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (/.f64 x.im y.im)) (pow.f64 (/.f64 x.im y.im) 2)) (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))) (exp.f64 (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x.re) (*.f64 y.re (pow.f64 y.im -2))) (+.f64 1 (expm1.f64 (/.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))) (+.f64 1 (expm1.f64 (/.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 x.im y.im))) (pow.f64 (exp.f64 x.re) (*.f64 y.re (pow.f64 y.im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 x.im y.im)) (+.f64 1 (expm1.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 x.im y.im))) (+.f64 1 (expm1.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.re y.im) (*.f64 (/.f64 1 y.im) x.re) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.re (pow.f64 y.im -2)) x.re (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re (*.f64 y.re (pow.f64 y.im -2)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) 1 (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.im (/.f64 1 y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.im y.im) 1 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x.im y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.im x.im)) (*.f64 (cbrt.f64 x.im) (/.f64 1 y.im)) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 y.re) y.im) 4)) (*.f64 (cbrt.f64 (*.f64 y.re (pow.f64 y.im -2))) x.re) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 x.im y.im)) (pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 2) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 2) (cbrt.f64 (/.f64 x.im y.im)) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (cbrt.f64 x.re) (*.f64 y.re (pow.f64 y.im -2))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) 2) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) 2) (cbrt.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.im) (*.f64 (sqrt.f64 x.im) (/.f64 1 y.im)) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 y.re) y.im) (*.f64 (/.f64 (sqrt.f64 y.re) y.im) x.re) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x.im y.im)) (sqrt.f64 (/.f64 x.im y.im)) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) (*.f64 y.re (pow.f64 y.im -2))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (sqrt.f64 y.re) y.im) (sqrt.f64 x.re)) (*.f64 (/.f64 (sqrt.f64 y.re) y.im) (sqrt.f64 x.re)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 x.im) (/.f64 1 (neg.f64 y.im)) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y.im) x.im (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y.re y.im) x.re) (/.f64 1 y.im) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y.im) -2) (/.f64 x.im (cbrt.f64 y.im)) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 y.im -1/2) (/.f64 x.im (sqrt.f64 y.im)) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (/.f64 y.re y.im) (sqrt.f64 y.im)) (/.f64 x.re (sqrt.f64 y.im)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) 1) (/.f64 (cbrt.f64 x.im) y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x.im) 1) (/.f64 (sqrt.f64 x.im) y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 (/.f64 x.im y.im)) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x.im) (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 (sqrt.f64 x.im) (cbrt.f64 y.im)) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) (sqrt.f64 y.im)) (/.f64 (cbrt.f64 x.im) (sqrt.f64 y.im)) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (/.f64 y.re y.im) 1) (/.f64 x.re y.im) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (/.f64 y.re y.im) (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 x.re (cbrt.f64 y.im)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y.re (pow.f64 y.im -2)) (pow.f64 (cbrt.f64 x.re) 2)) (cbrt.f64 x.re) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y.re (pow.f64 y.im -2)) (sqrt.f64 x.re)) (sqrt.f64 x.re) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 y.re) y.im) 4))) (cbrt.f64 (*.f64 y.re (pow.f64 y.im -2))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re (/.f64 (sqrt.f64 y.re) y.im)) (/.f64 (sqrt.f64 y.re) y.im) (/.f64 x.im y.im))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y.re (pow.f64 y.im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y.re) (pow.f64 y.im -2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y.re) (pow.f64 y.im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y.re) (pow.f64 y.im -2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y.re) (pow.f64 y.im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 y.re (pow.f64 y.im -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.re (pow.f64 (/.f64 1 y.im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.re (pow.f64 y.im -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re y.im) (/.f64 1 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y.re (pow.f64 y.im -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y.re (pow.f64 y.im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 y.re (pow.f64 y.im -2))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 y.re) y.im) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 y.re) y.im) 4)) (cbrt.f64 (*.f64 y.re (pow.f64 y.im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) (*.f64 (cbrt.f64 (/.f64 y.re y.im)) (/.f64 1 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y.re) y.im) (/.f64 (sqrt.f64 y.re) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 y.re y.im)) (*.f64 (sqrt.f64 (/.f64 y.re y.im)) (/.f64 1 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 y.re y.im)) (/.f64 1 (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y.im) (/.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 y.re y.re)) y.im) (/.f64 (cbrt.f64 y.re) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re 1) (pow.f64 y.im -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) 1) (/.f64 (cbrt.f64 (/.f64 y.re y.im)) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 y.re y.im)) 1) (/.f64 (sqrt.f64 (/.f64 y.re y.im)) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 (/.f64 1 y.im) (cbrt.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 y.im) -2) (/.f64 (/.f64 y.re y.im) (cbrt.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 (*.f64 y.re (pow.f64 y.im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 y.re y.im)) (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 (sqrt.f64 (/.f64 y.re y.im)) (cbrt.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re (sqrt.f64 y.im)) (pow.f64 y.im -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 y.im -1/2) (/.f64 (/.f64 y.re y.im) (sqrt.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) (sqrt.f64 y.im)) (/.f64 (cbrt.f64 (/.f64 y.re y.im)) (sqrt.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y.re (pow.f64 y.im -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 y.re) y.im) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 y.re) y.im) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y.re (pow.f64 y.im -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 y.re) y.im) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y.im (/.f64 y.im y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 y.re y.im) 3) (pow.f64 y.im 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 y.im y.im) y.re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 y.im (/.f64 y.im y.re)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 y.re y.im) (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 y.re) y.im) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y.re) (pow.f64 y.im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 y.re (pow.f64 y.im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 y.re) y.im) 6))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 y.re y.im) 3) (pow.f64 y.im 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y.re (pow.f64 y.im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y.re (pow.f64 y.im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y.re (pow.f64 y.im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 y.re (pow.f64 y.im -2))) 1))))))

simplify148.0ms (0.9%)

Algorithm
egg-herbie
Rules
928×associate-/r/_binary64
840×*-commutative_binary64
630×times-frac_binary64
543×associate-/l/_binary64
434×unswap-sqr_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0121188
1211188
2401116
3861116
42291116
58421116
639051116
748061116
850161116
952351116
1054631116
1158001116
1272321116
Stop Event
node limit
Counts
265 → 164
Calls
Call 1
Inputs
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (pow.f64 y.im 2))
Outputs
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (hypot.f64 y.re y.im))
0.2b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
Compiler

Compiled 23 to 11 computations (52.2% saved)

series17.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
7.0ms
x.re
@inf
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
5.0ms
y.re
@inf
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
1.0ms
y.re
@0
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
1.0ms
x.re
@0
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
1.0ms
y.im
@inf
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)

rewrite47.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
717×pow1_binary64
657×add-log-exp_binary64
657×log1p-expm1-u_binary64
657×expm1-log1p-u_binary64
642×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
087
11587
218487
Stop Event
node limit
Counts
1 → 24
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 x.re (hypot.f64 y.re y.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 y.re y.im) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x.re (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 x.re) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 x.re) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 x.re) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x.re 1) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 x.re) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x.re -1) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 x.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 (hypot.f64 y.re y.im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 3) (pow.f64 x.re 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 x.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 x.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 x.re (hypot.f64 y.re y.im))))))))

simplify223.0ms (1.4%)

Algorithm
egg-herbie
Rules
964×fma-def_binary64
656×times-frac_binary64
594×associate-/l*_binary64
395×associate-/r*_binary64
363×associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01481138
14801093
21943992
Stop Event
node limit
Counts
60 → 62
Calls
Call 1
Inputs
(/.f64 x.re y.im)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 4))) (/.f64 x.re y.im)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.re 6) (+.f64 (*.f64 1/8 (/.f64 x.re (pow.f64 y.im 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.im 2)))))) (/.f64 x.re y.im))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 x.re (pow.f64 y.im 6))) (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4))))))) (pow.f64 y.re 7))) (/.f64 x.re y.re))))
(*.f64 -1 (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))))))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.im 2)) (pow.f64 y.re 7))))))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 4)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 4))) (*.f64 -1 (*.f64 (pow.f64 y.im 6) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.re 2))) (*.f64 1/8 (/.f64 x.re (pow.f64 y.re 7)))))))))
(/.f64 x.re y.im)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (/.f64 x.re y.im))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (/.f64 x.re y.im)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (/.f64 x.re y.im) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4)))))) (*.f64 1/8 (*.f64 x.re (pow.f64 y.re 6)))) (pow.f64 y.im 7))))))
(*.f64 -1 (/.f64 x.re y.im))
(+.f64 (*.f64 -1 (/.f64 x.re y.im)) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))))
(+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4))))) (pow.f64 y.im 7))) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 7))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))))))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
Outputs
(/.f64 x.re y.im)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (/.f64 x.re y.im))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (/.f64 x.re y.im))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.re y.re)) (pow.f64 y.im 3)) (/.f64 x.re y.im))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) y.re)) y.re) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 4))) (/.f64 x.re y.im)))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8) (pow.f64 y.re 4)) (/.f64 x.re y.im)))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.re y.re)) (pow.f64 y.im 3)) (-.f64 (/.f64 x.re y.im) (*.f64 (*.f64 (pow.f64 y.re 4) (/.f64 x.re (pow.f64 y.im 5))) -3/8)))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) y.re)) y.re) (fma.f64 (pow.f64 y.re 4) (*.f64 (/.f64 x.re (pow.f64 y.im 5)) 3/8) (/.f64 x.re y.im)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.re 6) (+.f64 (*.f64 1/8 (/.f64 x.re (pow.f64 y.im 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.im 2)))))) (/.f64 x.re y.im))))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8) (pow.f64 y.re 4)) (fma.f64 -1 (*.f64 (pow.f64 y.re 6) (fma.f64 1/8 (/.f64 x.re (pow.f64 y.im 7)) (*.f64 -1/2 (/.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8) (*.f64 y.im y.im))))) (/.f64 x.re y.im))))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.re y.re)) (pow.f64 y.im 3)) (-.f64 (-.f64 (/.f64 x.re y.im) (*.f64 (pow.f64 y.re 6) (fma.f64 -1/2 (*.f64 (/.f64 (/.f64 x.re (pow.f64 y.im 5)) y.im) (/.f64 -3/8 y.im)) (/.f64 (*.f64 x.re 1/8) (pow.f64 y.im 7))))) (*.f64 (*.f64 (pow.f64 y.re 4) (/.f64 x.re (pow.f64 y.im 5))) -3/8)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) y.re)) y.re) (fma.f64 (pow.f64 y.re 4) (*.f64 (/.f64 x.re (pow.f64 y.im 5)) 3/8) (/.f64 x.re y.im))) (*.f64 (pow.f64 y.re 6) (fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.im (pow.f64 y.im 5))) (/.f64 -3/8 y.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 7) 1/8)))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re)))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 x.re y.re)) (/.f64 (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)) (pow.f64 y.re 5)))
(fma.f64 (pow.f64 y.im 4) (*.f64 (/.f64 x.re (pow.f64 y.re 5)) 3/8) (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 x.re y.re)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 x.re (pow.f64 y.im 6))) (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4))))))) (pow.f64 y.re 7))) (/.f64 x.re y.re))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (fma.f64 -1 (/.f64 (fma.f64 1/8 (*.f64 x.re (pow.f64 y.im 6)) (*.f64 -1/2 (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8)))) (pow.f64 y.re 7)) (/.f64 x.re y.re))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (-.f64 (/.f64 x.re y.re) (/.f64 (fma.f64 -1/2 (*.f64 y.im (*.f64 y.im (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)))) (*.f64 x.re (*.f64 (pow.f64 y.im 6) 1/8))) (pow.f64 y.re 7)))) (/.f64 (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)) (pow.f64 y.re 5)))
(-.f64 (fma.f64 (pow.f64 y.im 4) (*.f64 (/.f64 x.re (pow.f64 y.re 5)) 3/8) (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 x.re y.re))) (/.f64 (fma.f64 -1/2 (*.f64 (pow.f64 y.im 6) (*.f64 x.re -3/8)) (*.f64 x.re (*.f64 (pow.f64 y.im 6) 1/8))) (pow.f64 y.re 7)))
(*.f64 -1 (/.f64 x.re y.re))
(neg.f64 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.re) y.re)
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))
(fma.f64 -1 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) 1/2))
(fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) 1/2 (/.f64 (neg.f64 x.re) y.re))
(-.f64 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) 1/2) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))))))
(fma.f64 -1 (/.f64 x.re y.re) (fma.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))) (fma.f64 1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (pow.f64 y.re 5)))))
(-.f64 (fma.f64 -1/4 (*.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4)) (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) 1/2 (/.f64 (*.f64 (pow.f64 y.im 4) (*.f64 x.re -1/8)) (pow.f64 y.re 5)))) (/.f64 x.re y.re))
(-.f64 (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) 1/2 (/.f64 (*.f64 (pow.f64 y.im 4) (*.f64 x.re -3/8)) (pow.f64 y.re 5))) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.im 2)) (pow.f64 y.re 7))))))))
(fma.f64 -1 (/.f64 x.re y.re) (fma.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))) (fma.f64 1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (fma.f64 1/8 (/.f64 x.re (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 6))) (fma.f64 -1/8 (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))) (*.f64 -1/2 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (/.f64 (pow.f64 y.re 7) (*.f64 y.im y.im)))))))))
(-.f64 (fma.f64 -1/4 (*.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4)) (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) 1/2 (fma.f64 1/8 (*.f64 (/.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 6)) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 7) (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)))) (/.f64 (*.f64 (pow.f64 y.im 4) (*.f64 x.re -1/8)) (pow.f64 y.re 5)))))) (/.f64 x.re y.re))
(+.f64 (-.f64 (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) 1/2 (/.f64 (*.f64 (pow.f64 y.im 4) (*.f64 x.re -3/8)) (pow.f64 y.re 5))) (/.f64 x.re y.re)) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 6) (*.f64 x.re -3/8)) (pow.f64 y.re 7)) (*.f64 1/8 (*.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) x.re))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 4)))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 x.re y.re)) (/.f64 (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)) (pow.f64 y.re 5)))
(fma.f64 (pow.f64 y.im 4) (*.f64 (/.f64 x.re (pow.f64 y.re 5)) 3/8) (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 x.re y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 4))) (*.f64 -1 (*.f64 (pow.f64 y.im 6) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.re 2))) (*.f64 1/8 (/.f64 x.re (pow.f64 y.re 7)))))))))
(+.f64 (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.re y.re)) (*.f64 -1 (+.f64 (*.f64 (pow.f64 y.im 4) (*.f64 (/.f64 x.re (pow.f64 y.re 5)) -3/8)) (*.f64 (pow.f64 y.im 6) (fma.f64 -1/2 (/.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 5)) -3/8) (*.f64 y.re y.re)) (*.f64 1/8 (/.f64 x.re (pow.f64 y.re 7))))))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (fma.f64 -1 (fma.f64 (pow.f64 y.im 4) (/.f64 (*.f64 x.re -3/8) (pow.f64 y.re 5)) (*.f64 (pow.f64 y.im 6) (fma.f64 -1/2 (/.f64 (/.f64 x.re (pow.f64 y.re 5)) (/.f64 (*.f64 y.re y.re) -3/8)) (*.f64 1/8 (/.f64 x.re (pow.f64 y.re 7)))))) (/.f64 x.re y.re)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 x.re y.re)) (fma.f64 (pow.f64 y.im 6) (fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re (pow.f64 y.re 5))) (/.f64 -3/8 y.re)) (*.f64 (/.f64 1/8 (pow.f64 y.re 7)) x.re)) (/.f64 (*.f64 (pow.f64 y.im 4) (*.f64 x.re -3/8)) (pow.f64 y.re 5))))
(/.f64 x.re y.im)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (/.f64 x.re y.im))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (/.f64 x.re y.im))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.re y.re)) (pow.f64 y.im 3)) (/.f64 x.re y.im))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) y.re)) y.re) (/.f64 x.re y.im))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (/.f64 x.re y.im)))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8) (pow.f64 y.re 4)) (/.f64 x.re y.im)))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.re y.re)) (pow.f64 y.im 3)) (-.f64 (/.f64 x.re y.im) (*.f64 (*.f64 (pow.f64 y.re 4) (/.f64 x.re (pow.f64 y.im 5))) -3/8)))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) y.re)) y.re) (fma.f64 (pow.f64 y.re 4) (*.f64 (/.f64 x.re (pow.f64 y.im 5)) 3/8) (/.f64 x.re y.im)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (/.f64 x.re y.im) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4)))))) (*.f64 1/8 (*.f64 x.re (pow.f64 y.re 6)))) (pow.f64 y.im 7))))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.re 4)) -3/8) (pow.f64 y.im 5)) (+.f64 (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (/.f64 x.re y.im)) (neg.f64 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 y.re y.re) (*.f64 (*.f64 x.re (pow.f64 y.re 4)) -3/8)) (*.f64 (*.f64 1/8 x.re) (pow.f64 y.re 6))) (pow.f64 y.im 7)))))
(-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.re y.re)) (pow.f64 y.im 3)) (/.f64 x.re y.im)) (/.f64 (fma.f64 (*.f64 -1/2 (*.f64 y.re y.re)) (*.f64 (pow.f64 y.re 4) (*.f64 x.re -3/8)) (*.f64 (pow.f64 y.re 6) (*.f64 x.re 1/8))) (pow.f64 y.im 7))) (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 5) -3/8)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) y.re)) y.re) (fma.f64 (pow.f64 y.re 4) (*.f64 (/.f64 x.re (pow.f64 y.im 5)) 3/8) (/.f64 x.re y.im))) (/.f64 (fma.f64 -1/2 (*.f64 (pow.f64 y.re 6) (*.f64 x.re -3/8)) (*.f64 (pow.f64 y.re 6) (*.f64 x.re 1/8))) (pow.f64 y.im 7)))
(*.f64 -1 (/.f64 x.re y.im))
(neg.f64 (/.f64 x.re y.im))
(+.f64 (*.f64 -1 (/.f64 x.re y.im)) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))))
(fma.f64 -1 (/.f64 x.re y.im) (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) 1/2))
(-.f64 (/.f64 (*.f64 (*.f64 x.re (*.f64 y.re y.re)) 1/2) (pow.f64 y.im 3)) (/.f64 x.re y.im))
(-.f64 (/.f64 (*.f64 (*.f64 1/2 (*.f64 y.re y.re)) x.re) (pow.f64 y.im 3)) (/.f64 x.re y.im))
(+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))))))
(fma.f64 -1 (/.f64 x.re y.im) (fma.f64 -1/8 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 4))) (fma.f64 1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (*.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 4)))))))
(-.f64 (fma.f64 -1/8 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) (pow.f64 y.re 4)) (fma.f64 (/.f64 (*.f64 x.re (*.f64 y.re y.re)) (pow.f64 y.im 3)) 1/2 (*.f64 -1/4 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) (pow.f64 y.re 4))))) (/.f64 x.re y.im))
(-.f64 (fma.f64 (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) y.re)) y.re) 1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) (*.f64 -3/8 (pow.f64 y.re 4)))) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4))))) (pow.f64 y.im 7))) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 7))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))))))))
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 7) (*.f64 (*.f64 x.re (pow.f64 y.re 4)) -3/8))) (fma.f64 -1 (/.f64 x.re y.im) (fma.f64 1/8 (/.f64 x.re (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 6))) (fma.f64 -1/8 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 4))) (fma.f64 1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (*.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 4)))))))))
(fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 7)) (*.f64 (pow.f64 y.re 4) (*.f64 x.re -3/8))) (-.f64 (fma.f64 1/8 (*.f64 (/.f64 x.re (pow.f64 y.im 7)) (pow.f64 y.re 6)) (fma.f64 -1/8 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) (pow.f64 y.re 4)) (fma.f64 (/.f64 (*.f64 x.re (*.f64 y.re y.re)) (pow.f64 y.im 3)) 1/2 (*.f64 -1/4 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) (pow.f64 y.re 4)))))) (/.f64 x.re y.im)))
(-.f64 (fma.f64 -1/2 (*.f64 (*.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)) x.re) -3/8) (fma.f64 (pow.f64 y.re 6) (/.f64 x.re (/.f64 (pow.f64 y.im 7) 1/8)) (fma.f64 (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) y.re)) y.re) 1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) (*.f64 -3/8 (pow.f64 y.re 4)))))) (/.f64 x.re y.im))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (hypot.f64 y.re y.im))
0.0b
(+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))
3.2b
(*.f64 (/.f64 x.im y.re) y.im)
4.7b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
Compiler

Compiled 45 to 14 computations (68.9% saved)

series112.0ms (0.7%)

Counts
3 → 132
Calls

33 calls:

TimeVariablePointExpression
97.0ms
y.im
@0
(+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))
1.0ms
x.im
@0
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
1.0ms
x.re
@0
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
1.0ms
x.im
@-inf
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
1.0ms
x.im
@inf
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))

rewrite126.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
686×log-prod_binary64
347×pow2_binary64
315×fma-def_binary64
244×pow1/3_binary64
234×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01233
126229
2379329
Stop Event
node limit
Counts
3 → 178
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (/.f64 x.im y.re) y.im)
(+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1) (*.f64 (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 2)) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) 1) (*.f64 (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2)) 1) (*.f64 (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) -1) (*.f64 (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2)) -1) (*.f64 (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3) (pow.f64 (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)) 3)) (+.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 2) (-.f64 (pow.f64 (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)) 2) (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 2) (pow.f64 (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)) 2)) (-.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 1) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (cbrt.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (fma.f64 y.im (/.f64 x.im y.re) x.re)) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) (/.f64 1 (hypot.f64 y.re y.im))) (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3))) (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2))) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) -1) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3) (pow.f64 (hypot.f64 y.re y.im) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 3) (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3) (pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.im (/.f64 x.im y.re) x.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im))) (exp.f64 (/.f64 x.re (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3) (pow.f64 (hypot.f64 y.re y.im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 3) (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3) (pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.im (*.f64 (/.f64 x.im y.re) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 y.im (/.f64 x.im y.re)) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.im y.re) (*.f64 y.im (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (/.f64 x.im y.re)) (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) x.re) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (*.f64 y.im (/.f64 x.im y.re))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 2) (*.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (cbrt.f64 x.re) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) x.re) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 y.im (/.f64 x.im y.re))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (*.f64 (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1 (*.f64 (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 x.re) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (*.f64 (sqrt.f64 x.re) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (sqrt.f64 x.re)) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (sqrt.f64 x.re)) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re)))) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re)))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (*.f64 (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -1/2)) (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 x.re) 2)) (cbrt.f64 x.re) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 x.re)) (sqrt.f64 x.re) (/.f64 (*.f64 y.im (/.f64 x.im y.re)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) y.im) (/.f64 x.im y.re) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 x.im y.re)) y.im (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 2)) (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re)))) (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 x.re (hypot.f64 y.re y.im)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y.im (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 y.im (/.f64 x.im y.re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 y.re (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y.im (/.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x.im (/.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im x.im) y.re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y.im x.im)) (neg.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y.im x.im) 1) y.re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y.im x.im) (sqrt.f64 y.re)) (sqrt.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x.im) y.im) (neg.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (neg.f64 x.im)) (neg.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y.re (*.f64 y.im x.im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 y.im (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 y.im (/.f64 x.im y.re))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x.re x.re) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (/.f64 (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y.im (/.f64 x.im y.re) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) (cbrt.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 2)) (cbrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) (sqrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) (/.f64 1 (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2)) (/.f64 1 (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))) (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))) (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) (+.f64 (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2) (-.f64 (*.f64 x.re x.re) (*.f64 (*.f64 x.re y.im) (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2)) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3))) (neg.f64 (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2))) (neg.f64 (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2) (*.f64 x.re x.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))) (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))) (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x.re)) (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x.re) (+.f64 1 (expm1.f64 (*.f64 y.im (/.f64 x.im y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x.re)) (+.f64 1 (expm1.f64 (*.f64 y.im (/.f64 x.im y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y.im (/.f64 x.im y.re)))) (exp.f64 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re)) (+.f64 1 (expm1.f64 x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y.im (/.f64 x.im y.re)))) (+.f64 1 (expm1.f64 x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x.re (*.f64 y.im (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y.im (/.f64 x.im y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.im (/.f64 x.im y.re) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re 1 (*.f64 y.im (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.im (*.f64 (/.f64 1 y.re) y.im) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.im y.re) y.im x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (/.f64 x.im y.re)) 1 x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 x.im y.re)) 2) (*.f64 (cbrt.f64 (/.f64 x.im y.re)) y.im) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (pow.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 2) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 2) (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x.re) (pow.f64 (cbrt.f64 x.re) 2) (*.f64 y.im (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x.re) 2) (cbrt.f64 x.re) (*.f64 y.im (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (cbrt.f64 y.im) (/.f64 x.im y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x.im y.re)) (*.f64 (sqrt.f64 (/.f64 x.im y.re)) y.im) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.re) (sqrt.f64 x.re) (*.f64 y.im (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y.im) (*.f64 (sqrt.f64 y.im) (/.f64 x.im y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im x.im) (/.f64 1 y.re) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.im (sqrt.f64 y.re)) (/.f64 y.im (sqrt.f64 y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.im 1) (/.f64 y.im y.re) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.im (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 y.im (cbrt.f64 y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (pow.f64 (cbrt.f64 (/.f64 x.im y.re)) 2)) (cbrt.f64 (/.f64 x.im y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (sqrt.f64 (/.f64 x.im y.re))) (sqrt.f64 (/.f64 x.im y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 x.im y.re) (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 y.im) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 x.im y.re) (sqrt.f64 y.im)) (sqrt.f64 y.im) x.re)))))

simplify132.0ms (0.8%)

Algorithm
egg-herbie
Rules
708×associate-/r/_binary64
555×fma-neg_binary64
548×associate-/l/_binary64
497×distribute-neg-frac_binary64
369×times-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0701829
12141767
26911633
331621594
468331594
Stop Event
node limit
Counts
310 → 218
Calls
Call 1
Inputs
(/.f64 x.im y.re)
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))))))
(*.f64 -1 (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3)))))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))))))
(/.f64 x.im y.re)
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(*.f64 -1 (/.f64 x.im y.re))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (*.f64 -1 (/.f64 x.re y.im)))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (*.f64 1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2)))))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))))))
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
Outputs
(/.f64 x.im y.re)
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 -1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (/.f64 y.re (*.f64 (/.f64 y.im x.im) y.im)) (/.f64 x.im y.re)))
(+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (*.f64 x.im (/.f64 (/.f64 y.re y.im) y.im)) (/.f64 x.im y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(fma.f64 -1/2 (fma.f64 (/.f64 y.re y.im) (/.f64 x.im y.im) (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 -1/2 (*.f64 (/.f64 (/.f64 y.re y.im) y.im) (+.f64 x.im (/.f64 (*.f64 y.re x.re) y.im))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))
(fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))
(+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)))
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 -1/2 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) y.im) y.im) (/.f64 x.re y.re)))
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 -1/2 (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))) (/.f64 x.re y.re)))
(fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (fma.f64 -1/2 (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))) (/.f64 x.re y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))))))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (*.f64 -1/2 (*.f64 x.im (pow.f64 y.im 3))) (pow.f64 y.re 4)))))
(+.f64 (fma.f64 -1/2 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)))
(fma.f64 -1/2 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) y.im) y.im) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 -1/2 (*.f64 x.im (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))) (/.f64 x.re y.re))))
(-.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 (/.f64 y.im y.re) x.im x.re))))
(-.f64 (fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (/.f64 x.re y.re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 (/.f64 y.im y.re) x.im x.re))))
(*.f64 -1 (/.f64 x.re y.re))
(neg.f64 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.re) y.re)
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(*.f64 -1 (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))
(-.f64 (/.f64 (neg.f64 x.re) y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))
(neg.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))
(*.f64 (/.f64 -1 y.re) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3)))))
(fma.f64 -1 (/.f64 x.re y.re) (fma.f64 -1 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (*.f64 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) 1/2)))
(-.f64 (-.f64 (*.f64 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) 1/2) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (/.f64 x.re y.re))
(-.f64 (*.f64 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) y.im) y.im) 1/2) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))
(fma.f64 (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))) 1/2 (*.f64 (/.f64 -1 y.re) (fma.f64 (/.f64 y.im y.re) x.im x.re)))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))))
(fma.f64 -1 (/.f64 x.re y.re) (fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (*.f64 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) 1/2))))
(-.f64 (fma.f64 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) 1/2 (-.f64 (*.f64 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) 1/2) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))) (/.f64 x.re y.re))
(fma.f64 (*.f64 x.im (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))) 1/2 (-.f64 (*.f64 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) y.im) y.im) 1/2) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))))
(+.f64 (*.f64 (/.f64 -1 y.re) (fma.f64 (/.f64 y.im y.re) x.im x.re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 (/.f64 y.im y.re) x.im x.re))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))
(fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))
(+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)))
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 -1/2 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) y.im) y.im) (/.f64 x.re y.re)))
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 -1/2 (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))) (/.f64 x.re y.re)))
(fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (fma.f64 -1/2 (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))) (/.f64 x.re y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))))))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (*.f64 -1/2 (*.f64 x.im (pow.f64 y.im 3))) (pow.f64 y.re 4)))))
(+.f64 (fma.f64 -1/2 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)))
(fma.f64 -1/2 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) y.im) y.im) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 -1/2 (*.f64 x.im (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))) (/.f64 x.re y.re))))
(-.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 (/.f64 y.im y.re) x.im x.re))))
(-.f64 (fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (/.f64 x.re y.re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 (/.f64 y.im y.re) x.im x.re))))
(/.f64 x.im y.re)
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 -1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (/.f64 y.re (*.f64 (/.f64 y.im x.im) y.im)) (/.f64 x.im y.re)))
(+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (*.f64 x.im (/.f64 (/.f64 y.re y.im) y.im)) (/.f64 x.im y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(fma.f64 -1/2 (fma.f64 (/.f64 y.re y.im) (/.f64 x.im y.im) (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 -1/2 (*.f64 (/.f64 (/.f64 y.re y.im) y.im) (+.f64 x.im (/.f64 (*.f64 y.re x.re) y.im))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(*.f64 -1 (/.f64 x.im y.re))
(neg.f64 (/.f64 x.im y.re))
(/.f64 (neg.f64 x.im) y.re)
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (*.f64 -1 (/.f64 x.re y.im)))
(*.f64 -1 (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(-.f64 (neg.f64 (/.f64 x.re y.im)) (/.f64 x.im y.re))
(-.f64 (/.f64 (neg.f64 x.im) y.re) (/.f64 x.re y.im))
(-.f64 (neg.f64 (/.f64 x.im y.re)) (/.f64 x.re y.im))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (*.f64 1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2)))))
(fma.f64 -1 (/.f64 x.im y.re) (fma.f64 -1 (/.f64 x.re y.im) (/.f64 (*.f64 1/2 (*.f64 x.im y.re)) (*.f64 y.im y.im))))
(-.f64 (-.f64 (*.f64 (/.f64 1/2 y.im) (/.f64 (*.f64 x.im y.re) y.im)) (/.f64 x.re y.im)) (/.f64 x.im y.re))
(-.f64 (*.f64 (/.f64 y.re (*.f64 (/.f64 y.im x.im) y.im)) 1/2) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(neg.f64 (+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (*.f64 x.im (/.f64 (/.f64 y.re y.im) y.im)) (/.f64 x.im y.re))))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))))))
(fma.f64 -1 (/.f64 x.im y.re) (fma.f64 -1 (/.f64 x.re y.im) (*.f64 1/2 (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im))))))
(-.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)))) (/.f64 x.re y.im)) (/.f64 x.im y.re))
(-.f64 (*.f64 1/2 (fma.f64 (/.f64 y.re y.im) (/.f64 x.im y.im) (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(-.f64 (neg.f64 (/.f64 x.im y.re)) (fma.f64 -1/2 (*.f64 (/.f64 (/.f64 y.re y.im) y.im) (+.f64 x.im (/.f64 (*.f64 y.re x.re) y.im))) (/.f64 x.re y.im)))
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 (/.f64 y.im (/.f64 y.re x.im)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 (*.f64 (/.f64 y.im y.re) x.im) (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 (*.f64 x.im (/.f64 y.im y.re)) (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 (/.f64 y.im (/.f64 y.re x.im)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 (*.f64 (/.f64 y.im y.re) x.im) (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 (*.f64 x.im (/.f64 y.im y.re)) (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 (/.f64 y.im (/.f64 y.re x.im)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 (*.f64 (/.f64 y.im y.re) x.im) (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 (*.f64 x.im (/.f64 y.im y.re)) (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)

eval386.0ms (2.5%)

Compiler

Compiled 18447 to 8185 computations (55.6% saved)

prune282.0ms (1.8%)

Pruning

30 alts after pruning (24 fresh and 6 done)

PrunedKeptTotal
New81916835
Fresh7815
Picked101
Done369
Total83030860
Error
0.1b
Counts
860 → 30
Alt Table
Click to see full alt table
StatusErrorProgram
31.3b
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
40.3b
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
53.8b
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
36.7b
(/.f64 x.im y.im)
37.0b
(*.f64 (/.f64 1 y.re) x.re)
59.7b
(/.f64 x.re y.im)
49.8b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (exp.f64 (log.f64 (*.f64 y.im (/.f64 x.im y.re))))))
44.9b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
32.2b
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
40.2b
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
50.5b
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) 2)
57.4b
(*.f64 (/.f64 -1 y.re) x.re)
58.9b
(/.f64 (neg.f64 x.im) y.re)
54.2b
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
33.9b
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
40.3b
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
59.8b
(neg.f64 (/.f64 x.re y.im))
43.3b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
54.6b
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
44.9b
(/.f64 x.re (hypot.f64 y.re y.im))
36.9b
(/.f64 x.re y.re)
57.4b
(/.f64 (neg.f64 x.re) y.re)
27.2b
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))
31.7b
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
32.8b
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
32.0b
(fma.f64 (*.f64 (/.f64 y.re y.im) x.re) (/.f64 1 y.im) (/.f64 x.im y.im))
59.0b
(/.f64 x.im y.re)
38.7b
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
51.1b
(*.f64 y.im (pow.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.im y.re)) 2))
43.3b
(/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))
Compiler

Compiled 661 to 430 computations (34.9% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 y.re (hypot.f64 y.re y.im))
0.0b
(/.f64 x.re (hypot.f64 y.re y.im))
1.9b
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))
Compiler

Compiled 31 to 8 computations (74.2% saved)

series39.0ms (0.2%)

Counts
3 → 96
Calls

24 calls:

TimeVariablePointExpression
22.0ms
x.re
@inf
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))
3.0ms
y.re
@inf
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))
1.0ms
y.im
@inf
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))
1.0ms
y.re
@-inf
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))
1.0ms
y.re
@0
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))

rewrite69.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
987×pow1_binary64
913×add-log-exp_binary64
913×log1p-expm1-u_binary64
913×expm1-log1p-u_binary64
90×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0830
117427
2249027
Stop Event
node limit
Counts
3 → 111
Calls
Call 1
Inputs
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))
(/.f64 x.re (hypot.f64 y.re y.im))
(/.f64 y.re (hypot.f64 y.re y.im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y.re (*.f64 (hypot.f64 y.re y.im) (/.f64 (hypot.f64 y.re y.im) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y.re (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y.re (/.f64 (hypot.f64 y.re y.im) (/.f64 x.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x.re (*.f64 (/.f64 (hypot.f64 y.re y.im) y.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x.re (*.f64 (hypot.f64 y.re y.im) (/.f64 (hypot.f64 y.re y.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) y.re) (/.f64 (hypot.f64 y.re y.im) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (hypot.f64 y.re y.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y.re) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 x.re) (*.f64 (/.f64 (hypot.f64 y.re y.im) y.re) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y.re x.re)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y.re) x.re) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y.re) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (neg.f64 x.re)) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y.re) (neg.f64 x.re)) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x.re) y.re) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x.re) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x.re) (neg.f64 y.re)) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) 1) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y.re) (/.f64 x.re (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x.re) (/.f64 y.re (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (neg.f64 x.re)) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (neg.f64 y.re)) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 y.re (hypot.f64 y.re y.im)) 3) (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3) (pow.f64 (/.f64 y.re (hypot.f64 y.re y.im)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 x.re (hypot.f64 y.re y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x.re (/.f64 1 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (cbrt.f64 x.re) (/.f64 1 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) (/.f64 1 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x.re) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 x.re (cbrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) 1) (/.f64 (cbrt.f64 x.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.re) 1) (/.f64 (sqrt.f64 x.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.re) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 x.re) (cbrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 x.re) (sqrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 y.re y.im) x.re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 x.re (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 x.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 x.re (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 (hypot.f64 y.re y.im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 x.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 x.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 x.re (hypot.f64 y.re y.im))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 y.re (hypot.f64 y.re y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.re (/.f64 1 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re (hypot.f64 y.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 y.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 y.re (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 y.re (hypot.f64 y.re y.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 y.re (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 y.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 y.re) 2) (*.f64 (cbrt.f64 y.re) (/.f64 1 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 y.re (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 y.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 y.re) (*.f64 (sqrt.f64 y.re) (/.f64 1 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y.re) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 y.re y.im)) y.re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y.re) 2) 1) (/.f64 (cbrt.f64 y.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y.re) 1) (/.f64 (sqrt.f64 y.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.re (cbrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y.re) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 y.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y.re) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 y.re) (cbrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y.re) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 y.re) (sqrt.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y.re (hypot.f64 y.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 y.re (hypot.f64 y.re y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 y.re (hypot.f64 y.re y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 y.re (hypot.f64 y.re y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 y.re y.im) y.re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 y.re (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 y.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 y.re (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 y.re (hypot.f64 y.re y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 y.re 3) (pow.f64 (hypot.f64 y.re y.im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 y.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 y.re (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 y.re (hypot.f64 y.re y.im))))))))

simplify231.0ms (1.5%)

Algorithm
egg-herbie
Rules
815×associate-/r*_binary64
396×distribute-rgt-in_binary64
395×fma-def_binary64
387×distribute-lft-in_binary64
225×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03263075
110822777
242282529
Stop Event
node limit
Counts
207 → 210
Calls
Call 1
Inputs
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 8))))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 x.re (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4)))) (*.f64 -1 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))) (/.f64 x.re y.re)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 x.re (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4)))) (*.f64 -1 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))) (+.f64 (/.f64 x.re y.re) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (*.f64 x.re (pow.f64 y.im 2)))) (+.f64 (*.f64 x.re (+.f64 (*.f64 1/8 (pow.f64 y.im 6)) (*.f64 -1/8 (pow.f64 y.im 6)))) (*.f64 -1 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) x.re) (*.f64 -1 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.im 2))))) (pow.f64 y.re 7))))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (*.f64 -1 (/.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) x.re) (*.f64 -1 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (*.f64 x.re (pow.f64 y.im 2)))) (+.f64 (*.f64 x.re (+.f64 (*.f64 1/8 (pow.f64 y.im 6)) (*.f64 -1/8 (pow.f64 y.im 6)))) (*.f64 -1 (*.f64 (+.f64 (*.f64 x.re (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4)))) (*.f64 -1 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.im 2))))) (pow.f64 y.re 7))) (*.f64 -1 (/.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) x.re) (*.f64 -1 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))))))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.re 4)) (*.f64 -1/4 (pow.f64 y.re 4))) (*.f64 x.re y.re))) (pow.f64 y.im 6))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.re 4)) (*.f64 -1/4 (pow.f64 y.re 4))) (*.f64 x.re (pow.f64 y.re 3)))) (+.f64 (*.f64 x.re (*.f64 (+.f64 (*.f64 1/8 (pow.f64 y.re 6)) (*.f64 -1/8 (pow.f64 y.re 6))) y.re)) (*.f64 -1 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 x.re (*.f64 y.re (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 1/4 (pow.f64 y.re 4))))) (*.f64 -1 (*.f64 x.re (pow.f64 y.re 5)))))))) (pow.f64 y.im 8))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.re 4)) (*.f64 -1/4 (pow.f64 y.re 4))) (*.f64 x.re y.re))) (pow.f64 y.im 6))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.re 4)) (*.f64 -1/4 (pow.f64 y.re 4))) (*.f64 x.re y.re))) (pow.f64 y.im 6))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.re 4)) (*.f64 -1/4 (pow.f64 y.re 4))) (*.f64 x.re (pow.f64 y.re 3)))) (+.f64 (*.f64 x.re (*.f64 (+.f64 (*.f64 1/8 (pow.f64 y.re 6)) (*.f64 -1/8 (pow.f64 y.re 6))) y.re)) (*.f64 -1 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 x.re (*.f64 y.re (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 1/4 (pow.f64 y.re 4))))) (*.f64 -1 (*.f64 x.re (pow.f64 y.re 5)))))))) (pow.f64 y.im 8))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.re 4)) (*.f64 -1/4 (pow.f64 y.re 4))) (*.f64 x.re y.re))) (pow.f64 y.im 6))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(/.f64 x.re y.im)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 4))) (/.f64 x.re y.im)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.re 6) (+.f64 (*.f64 1/8 (/.f64 x.re (pow.f64 y.im 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.im 2)))))) (/.f64 x.re y.im))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 x.re (pow.f64 y.im 6))) (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4))))))) (pow.f64 y.re 7))) (/.f64 x.re y.re))))
(*.f64 -1 (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))))))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.im 2)) (pow.f64 y.re 7))))))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 4)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 4))) (*.f64 -1 (*.f64 (pow.f64 y.im 6) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.re 2))) (*.f64 1/8 (/.f64 x.re (pow.f64 y.re 7)))))))))
(/.f64 x.re y.im)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (/.f64 x.re y.im))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (/.f64 x.re y.im)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (/.f64 x.re y.im) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4)))))) (*.f64 1/8 (*.f64 x.re (pow.f64 y.re 6)))) (pow.f64 y.im 7))))))
(*.f64 -1 (/.f64 x.re y.im))
(+.f64 (*.f64 -1 (/.f64 x.re y.im)) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))))
(+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4))))) (pow.f64 y.im 7))) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 7))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))))))))
(/.f64 y.re y.im)
(+.f64 (/.f64 y.re y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))))
(+.f64 (/.f64 y.re y.im) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)))))
(+.f64 (*.f64 -5/16 (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 7))) (+.f64 (/.f64 y.re y.im) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))))))
1
(+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.re 4))) (+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.im 6)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.im 2)))) (pow.f64 y.re 6))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.re 4))) (+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))))))
-1
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))) 1)
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 1/8 (pow.f64 y.im 4))) (pow.f64 y.re 4)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 1/8 (pow.f64 y.im 4))) (pow.f64 y.im 2))) (*.f64 -1/8 (pow.f64 y.im 6))) (pow.f64 y.re 6))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 1/8 (pow.f64 y.im 4))) (pow.f64 y.re 4))))) 1)
1
(+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))))
(+.f64 1 (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2)))))
(+.f64 1 (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))) (*.f64 -5/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 6))))))
(/.f64 y.re y.im)
(+.f64 (/.f64 y.re y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))))
(+.f64 (/.f64 y.re y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 5)) (*.f64 -1/8 (pow.f64 y.re 5))) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)))))
(+.f64 (/.f64 y.re y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.re 7)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 5)) (*.f64 -1/8 (pow.f64 y.re 5))) (pow.f64 y.re 2)))) (pow.f64 y.im 7))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 5)) (*.f64 -1/8 (pow.f64 y.re 5))) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))))))
(*.f64 -1 (/.f64 y.re y.im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))) (*.f64 -1 (/.f64 y.re y.im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))) (*.f64 -1 (/.f64 y.re y.im)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 5)) (*.f64 -1/8 (pow.f64 y.re 5))) (pow.f64 y.re 2)) (pow.f64 y.im 7))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 7))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))) (*.f64 -1 (/.f64 y.re y.im)))))))
Outputs
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(-.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5)))))
(-.f64 (+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 (pow.f64 y.re 5) (/.f64 (pow.f64 y.im 6) x.re))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))) (*.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 6)) (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 8))))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5))) (+.f64 (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)) (neg.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 8) (pow.f64 y.re 7)))))))
(-.f64 (+.f64 (/.f64 (pow.f64 y.re 5) (/.f64 (pow.f64 y.im 6) x.re)) (-.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 8)) (pow.f64 y.re 7)))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(-.f64 (+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))) (*.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 5))) (*.f64 (/.f64 x.re (pow.f64 y.im 8)) (pow.f64 y.re 7)))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re))
(-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 x.re (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4)))) (*.f64 -1 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))) (/.f64 x.re y.re)))
(fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (fma.f64 -1 (/.f64 (fma.f64 x.re (*.f64 (pow.f64 y.im 4) 0) (neg.f64 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5)) (/.f64 x.re y.re)))
(-.f64 (-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (/.f64 (-.f64 (*.f64 x.re 0) (*.f64 x.re (pow.f64 y.im 4))) (pow.f64 y.re 5)))
(-.f64 (/.f64 x.re y.re) (+.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 (*.f64 x.re (neg.f64 (pow.f64 y.im 4))) (pow.f64 y.re 5))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 x.re (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4)))) (*.f64 -1 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))) (+.f64 (/.f64 x.re y.re) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (*.f64 x.re (pow.f64 y.im 2)))) (+.f64 (*.f64 x.re (+.f64 (*.f64 1/8 (pow.f64 y.im 6)) (*.f64 -1/8 (pow.f64 y.im 6)))) (*.f64 -1 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) x.re) (*.f64 -1 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.im 2))))) (pow.f64 y.re 7))))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)) (*.f64 -1 (+.f64 (/.f64 (fma.f64 -1 (*.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 (pow.f64 y.im 4) 0)) (fma.f64 x.re (*.f64 (pow.f64 y.im 6) 0) (neg.f64 (*.f64 (*.f64 y.im y.im) (fma.f64 x.re (*.f64 (pow.f64 y.im 4) 0) (neg.f64 (*.f64 x.re (pow.f64 y.im 4)))))))) (pow.f64 y.re 7)) (/.f64 (fma.f64 x.re (*.f64 (pow.f64 y.im 4) 0) (neg.f64 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5)))))
(-.f64 (-.f64 (-.f64 (/.f64 x.re y.re) (/.f64 (-.f64 (*.f64 x.re 0) (*.f64 x.re (pow.f64 y.im 4))) (pow.f64 y.re 5))) (/.f64 (-.f64 (fma.f64 0 (*.f64 y.im (*.f64 y.im x.re)) (*.f64 x.re 0)) (*.f64 y.im (*.f64 y.im (-.f64 (*.f64 x.re 0) (*.f64 x.re (pow.f64 y.im 4)))))) (pow.f64 y.re 7))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(-.f64 (-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (+.f64 (/.f64 (*.f64 x.re (neg.f64 (pow.f64 y.im 4))) (pow.f64 y.re 5)) (/.f64 (*.f64 (*.f64 x.re (neg.f64 (pow.f64 y.im 4))) (*.f64 y.im (neg.f64 y.im))) (pow.f64 y.re 7))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re))
(-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (*.f64 -1 (/.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) x.re) (*.f64 -1 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5)))))
(fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (fma.f64 -1 (/.f64 (fma.f64 x.re (*.f64 (pow.f64 y.im 4) 0) (neg.f64 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5)) (/.f64 x.re y.re)))
(-.f64 (-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (/.f64 (-.f64 (*.f64 x.re 0) (*.f64 x.re (pow.f64 y.im 4))) (pow.f64 y.re 5)))
(-.f64 (/.f64 x.re y.re) (+.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 (*.f64 x.re (neg.f64 (pow.f64 y.im 4))) (pow.f64 y.re 5))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (*.f64 x.re (pow.f64 y.im 2)))) (+.f64 (*.f64 x.re (+.f64 (*.f64 1/8 (pow.f64 y.im 6)) (*.f64 -1/8 (pow.f64 y.im 6)))) (*.f64 -1 (*.f64 (+.f64 (*.f64 x.re (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4)))) (*.f64 -1 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.im 2))))) (pow.f64 y.re 7))) (*.f64 -1 (/.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) x.re) (*.f64 -1 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)) (*.f64 -1 (+.f64 (/.f64 (fma.f64 -1 (*.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 (pow.f64 y.im 4) 0)) (fma.f64 x.re (*.f64 (pow.f64 y.im 6) 0) (neg.f64 (*.f64 (*.f64 y.im y.im) (fma.f64 x.re (*.f64 (pow.f64 y.im 4) 0) (neg.f64 (*.f64 x.re (pow.f64 y.im 4)))))))) (pow.f64 y.re 7)) (/.f64 (fma.f64 x.re (*.f64 (pow.f64 y.im 4) 0) (neg.f64 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5)))))
(-.f64 (-.f64 (-.f64 (/.f64 x.re y.re) (/.f64 (-.f64 (*.f64 x.re 0) (*.f64 x.re (pow.f64 y.im 4))) (pow.f64 y.re 5))) (/.f64 (-.f64 (fma.f64 0 (*.f64 y.im (*.f64 y.im x.re)) (*.f64 x.re 0)) (*.f64 y.im (*.f64 y.im (-.f64 (*.f64 x.re 0) (*.f64 x.re (pow.f64 y.im 4)))))) (pow.f64 y.re 7))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(-.f64 (-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (+.f64 (/.f64 (*.f64 x.re (neg.f64 (pow.f64 y.im 4))) (pow.f64 y.re 5)) (/.f64 (*.f64 (*.f64 x.re (neg.f64 (pow.f64 y.im 4))) (*.f64 y.im (neg.f64 y.im))) (pow.f64 y.re 7))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re))
(-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)) (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) x.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.re y.re) (-.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4)) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)) (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))) (neg.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 6))))))
(+.f64 (-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (-.f64 (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) x.re)) (/.f64 (pow.f64 y.im 6) (/.f64 (pow.f64 y.re 7) x.re))))
(+.f64 (/.f64 x.re y.re) (-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4) (/.f64 (*.f64 x.re (neg.f64 (pow.f64 y.im 6))) (pow.f64 y.re 7))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(-.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.re 4)) (*.f64 -1/4 (pow.f64 y.re 4))) (*.f64 x.re y.re))) (pow.f64 y.im 6))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (fma.f64 -1 (/.f64 (fma.f64 x.re (*.f64 y.re (*.f64 (pow.f64 y.re 4) 0)) (neg.f64 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 6)) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))))
(-.f64 (-.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 0)) (*.f64 x.re (pow.f64 y.re 5))) (pow.f64 y.im 6))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))) (/.f64 (*.f64 x.re (neg.f64 (pow.f64 y.re 5))) (pow.f64 y.im 6)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.re 4)) (*.f64 -1/4 (pow.f64 y.re 4))) (*.f64 x.re (pow.f64 y.re 3)))) (+.f64 (*.f64 x.re (*.f64 (+.f64 (*.f64 1/8 (pow.f64 y.re 6)) (*.f64 -1/8 (pow.f64 y.re 6))) y.re)) (*.f64 -1 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 x.re (*.f64 y.re (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 1/4 (pow.f64 y.re 4))))) (*.f64 -1 (*.f64 x.re (pow.f64 y.re 5)))))))) (pow.f64 y.im 8))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.re 4)) (*.f64 -1/4 (pow.f64 y.re 4))) (*.f64 x.re y.re))) (pow.f64 y.im 6))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (fma.f64 -1 (/.f64 (fma.f64 -1 (*.f64 (*.f64 x.re (pow.f64 y.re 3)) (*.f64 (pow.f64 y.re 4) 0)) (fma.f64 x.re (*.f64 y.re (*.f64 (pow.f64 y.re 6) 0)) (neg.f64 (*.f64 (*.f64 y.re y.re) (fma.f64 x.re (*.f64 y.re (*.f64 (pow.f64 y.re 4) 0)) (neg.f64 (*.f64 x.re (pow.f64 y.re 5)))))))) (pow.f64 y.im 8)) (fma.f64 -1 (/.f64 (fma.f64 x.re (*.f64 y.re (*.f64 (pow.f64 y.re 4) 0)) (neg.f64 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 6)) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))))
(-.f64 (-.f64 (-.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 0)) (*.f64 x.re (pow.f64 y.re 5))) (pow.f64 y.im 6))) (/.f64 (-.f64 (fma.f64 0 (*.f64 x.re (pow.f64 y.re 3)) (*.f64 x.re (*.f64 y.re 0))) (*.f64 y.re (*.f64 y.re (-.f64 (*.f64 x.re (*.f64 y.re 0)) (*.f64 x.re (pow.f64 y.re 5)))))) (pow.f64 y.im 8))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(-.f64 (-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))) (/.f64 (*.f64 x.re (neg.f64 (pow.f64 y.re 5))) (pow.f64 y.im 6))) (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.re 5)) (*.f64 y.re y.re)) (pow.f64 y.im 8)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))
(-.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.re 4)) (*.f64 -1/4 (pow.f64 y.re 4))) (*.f64 x.re y.re))) (pow.f64 y.im 6))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (fma.f64 -1 (/.f64 (fma.f64 x.re (*.f64 y.re (*.f64 (pow.f64 y.re 4) 0)) (neg.f64 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 6)) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im))))
(-.f64 (-.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 0)) (*.f64 x.re (pow.f64 y.re 5))) (pow.f64 y.im 6))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))) (/.f64 (*.f64 x.re (neg.f64 (pow.f64 y.re 5))) (pow.f64 y.im 6)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.re 4)) (*.f64 -1/4 (pow.f64 y.re 4))) (*.f64 x.re (pow.f64 y.re 3)))) (+.f64 (*.f64 x.re (*.f64 (+.f64 (*.f64 1/8 (pow.f64 y.re 6)) (*.f64 -1/8 (pow.f64 y.re 6))) y.re)) (*.f64 -1 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 x.re (*.f64 y.re (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 1/4 (pow.f64 y.re 4))))) (*.f64 -1 (*.f64 x.re (pow.f64 y.re 5)))))))) (pow.f64 y.im 8))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.re 4)) (*.f64 -1/4 (pow.f64 y.re 4))) (*.f64 x.re y.re))) (pow.f64 y.im 6))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (fma.f64 -1 (/.f64 (fma.f64 -1 (*.f64 (*.f64 x.re (pow.f64 y.re 3)) (*.f64 (pow.f64 y.re 4) 0)) (fma.f64 x.re (*.f64 y.re (*.f64 (pow.f64 y.re 6) 0)) (neg.f64 (*.f64 (*.f64 y.re y.re) (fma.f64 x.re (*.f64 y.re (*.f64 (pow.f64 y.re 4) 0)) (neg.f64 (*.f64 x.re (pow.f64 y.re 5)))))))) (pow.f64 y.im 8)) (fma.f64 -1 (/.f64 (fma.f64 x.re (*.f64 y.re (*.f64 (pow.f64 y.re 4) 0)) (neg.f64 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 6)) (/.f64 (*.f64 x.re y.re) (*.f64 y.im y.im)))))
(-.f64 (-.f64 (-.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 0)) (*.f64 x.re (pow.f64 y.re 5))) (pow.f64 y.im 6))) (/.f64 (-.f64 (fma.f64 0 (*.f64 x.re (pow.f64 y.re 3)) (*.f64 x.re (*.f64 y.re 0))) (*.f64 y.re (*.f64 y.re (-.f64 (*.f64 x.re (*.f64 y.re 0)) (*.f64 x.re (pow.f64 y.re 5)))))) (pow.f64 y.im 8))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))
(-.f64 (-.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))) (/.f64 (*.f64 x.re (neg.f64 (pow.f64 y.re 5))) (pow.f64 y.im 6))) (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.re 5)) (*.f64 y.re y.re)) (pow.f64 y.im 8)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(/.f64 x.re y.im)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (/.f64 x.re y.im))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (/.f64 x.re y.im))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 4))) (/.f64 x.re y.im)))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1 (*.f64 (pow.f64 y.re 4) (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8)) (/.f64 x.re y.im)))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (fma.f64 (neg.f64 (/.f64 (*.f64 x.re -3/8) (pow.f64 y.im 5))) (pow.f64 y.re 4) (/.f64 x.re y.im)))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) 3/8) (pow.f64 y.re 4) (/.f64 x.re y.im)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.re 6) (+.f64 (*.f64 1/8 (/.f64 x.re (pow.f64 y.im 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.im 2)))))) (/.f64 x.re y.im))))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1 (*.f64 (pow.f64 y.re 4) (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8)) (fma.f64 -1 (*.f64 (pow.f64 y.re 6) (fma.f64 1/8 (/.f64 x.re (pow.f64 y.im 7)) (*.f64 -1/2 (/.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8) (*.f64 y.im y.im))))) (/.f64 x.re y.im))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (-.f64 (-.f64 (/.f64 x.re y.im) (*.f64 (pow.f64 y.re 6) (fma.f64 1/8 (/.f64 x.re (pow.f64 y.im 7)) (*.f64 -1/2 (/.f64 (/.f64 (*.f64 x.re -3/8) (pow.f64 y.im 5)) (*.f64 y.im y.im)))))) (*.f64 (pow.f64 y.re 4) (/.f64 (*.f64 x.re -3/8) (pow.f64 y.im 5)))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) 3/8) (pow.f64 y.re 4) (/.f64 x.re y.im))) (*.f64 (pow.f64 y.re 6) (fma.f64 1/8 (/.f64 x.re (pow.f64 y.im 7)) (*.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.im (pow.f64 y.im 5))) (/.f64 -3/8 y.im))))))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re))
(fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) -1/2 (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re)))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)))
(-.f64 (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) -1/2 (/.f64 x.re y.re)) (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 5) -3/8)))
(fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) -1/2 (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 5)) 3/8) (pow.f64 y.im 4) (/.f64 x.re y.re)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 x.re (pow.f64 y.im 6))) (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4))))))) (pow.f64 y.re 7))) (/.f64 x.re y.re))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (fma.f64 -1 (/.f64 (fma.f64 1/8 (*.f64 x.re (pow.f64 y.im 6)) (*.f64 -1/2 (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8)))) (pow.f64 y.re 7)) (/.f64 x.re y.re))))
(-.f64 (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) -1/2 (-.f64 (/.f64 x.re y.re) (/.f64 (fma.f64 1/8 (*.f64 x.re (pow.f64 y.im 6)) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)) -1/2))) (pow.f64 y.re 7)))) (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 5) -3/8)))
(-.f64 (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) -1/2 (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 5)) 3/8) (pow.f64 y.im 4) (/.f64 x.re y.re))) (/.f64 (fma.f64 1/8 (*.f64 x.re (pow.f64 y.im 6)) (*.f64 -1/2 (*.f64 (pow.f64 y.im 6) (*.f64 x.re -3/8)))) (pow.f64 y.re 7)))
(*.f64 -1 (/.f64 x.re y.re))
(neg.f64 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.re) y.re)
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))
(fma.f64 -1 (/.f64 x.re y.re) (*.f64 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) 1/2))
(-.f64 (/.f64 1/2 (/.f64 (pow.f64 y.re 3) (*.f64 y.im (*.f64 y.im x.re)))) (/.f64 x.re y.re))
(-.f64 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) 1/2) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))))))
(fma.f64 -1 (/.f64 x.re y.re) (fma.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))) (fma.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (*.f64 -1/8 (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4)))))))
(-.f64 (fma.f64 -1/4 (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) x.re)) (fma.f64 -1/8 (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) x.re)) (/.f64 1/2 (/.f64 (pow.f64 y.re 3) (*.f64 y.im (*.f64 y.im x.re)))))) (/.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) 1/2) (*.f64 (pow.f64 y.im 4) (/.f64 (*.f64 x.re -3/8) (pow.f64 y.re 5)))) (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 5))) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.im 2)) (pow.f64 y.re 7))))))))
(fma.f64 -1 (/.f64 x.re y.re) (fma.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))) (fma.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (fma.f64 1/8 (/.f64 x.re (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 6))) (fma.f64 -1/8 (/.f64 x.re (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 4))) (*.f64 -1/2 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (/.f64 (pow.f64 y.re 7) (*.f64 y.im y.im)))))))))
(-.f64 (fma.f64 -1/4 (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) x.re)) (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) 1/2 (fma.f64 1/8 (/.f64 (pow.f64 y.im 6) (/.f64 (pow.f64 y.re 7) x.re)) (fma.f64 -1/8 (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) x.re)) (*.f64 -1/2 (*.f64 (/.f64 (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)) (pow.f64 y.re 7)) (*.f64 y.im y.im))))))) (/.f64 x.re y.re))
(-.f64 (fma.f64 -1/4 (*.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4)) (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) 1/2 (fma.f64 1/8 (*.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) x.re) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 6) (*.f64 x.re -3/8)) (pow.f64 y.re 7)) (*.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 5))) (pow.f64 y.im 4)))))) (/.f64 x.re y.re))
(/.f64 x.re y.re)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (/.f64 x.re y.re))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re))
(fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) -1/2 (/.f64 x.re y.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 4)))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)))
(-.f64 (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) -1/2 (/.f64 x.re y.re)) (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 5) -3/8)))
(fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) -1/2 (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 5)) 3/8) (pow.f64 y.im 4) (/.f64 x.re y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 4))) (*.f64 -1 (*.f64 (pow.f64 y.im 6) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.re 2))) (*.f64 1/8 (/.f64 x.re (pow.f64 y.re 7)))))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)) (*.f64 -1 (+.f64 (*.f64 (pow.f64 y.im 4) (*.f64 (/.f64 x.re (pow.f64 y.re 5)) -3/8)) (*.f64 (pow.f64 y.im 6) (fma.f64 -1/2 (/.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 5)) -3/8) (*.f64 y.re y.re)) (/.f64 (*.f64 1/8 x.re) (pow.f64 y.re 7)))))))
(fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) -1/2 (fma.f64 -1 (fma.f64 (pow.f64 y.im 4) (/.f64 (*.f64 x.re -3/8) (pow.f64 y.re 5)) (*.f64 (pow.f64 y.im 6) (fma.f64 -1/2 (*.f64 (/.f64 (/.f64 x.re (pow.f64 y.re 5)) y.re) (/.f64 -3/8 y.re)) (*.f64 1/8 (/.f64 x.re (pow.f64 y.re 7)))))) (/.f64 x.re y.re)))
(-.f64 (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) -1/2 (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 5)) 3/8) (pow.f64 y.im 4) (/.f64 x.re y.re))) (*.f64 (pow.f64 y.im 6) (fma.f64 -1/2 (*.f64 (/.f64 (/.f64 x.re (pow.f64 y.re 5)) y.re) (/.f64 -3/8 y.re)) (/.f64 (*.f64 x.re 1/8) (pow.f64 y.re 7)))))
(/.f64 x.re y.im)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (/.f64 x.re y.im))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (/.f64 x.re y.im))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (/.f64 x.re y.im))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (/.f64 x.re y.im)))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1 (*.f64 (pow.f64 y.re 4) (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8)) (/.f64 x.re y.im)))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (fma.f64 (neg.f64 (/.f64 (*.f64 x.re -3/8) (pow.f64 y.im 5))) (pow.f64 y.re 4) (/.f64 x.re y.im)))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) 3/8) (pow.f64 y.re 4) (/.f64 x.re y.im)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (/.f64 x.re y.im) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4)))))) (*.f64 1/8 (*.f64 x.re (pow.f64 y.re 6)))) (pow.f64 y.im 7))))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.re 4)) -3/8) (pow.f64 y.im 5)) (+.f64 (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (/.f64 x.re y.im)) (neg.f64 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 y.re y.re) (*.f64 (*.f64 x.re (pow.f64 y.re 4)) -3/8)) (*.f64 (*.f64 1/8 x.re) (pow.f64 y.re 6))) (pow.f64 y.im 7)))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (/.f64 x.re y.im)) (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 y.re y.re) (*.f64 x.re (*.f64 (pow.f64 y.re 4) -3/8))) (*.f64 (pow.f64 y.re 6) (*.f64 x.re 1/8))) (pow.f64 y.im 7))) (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 5) -3/8)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) 3/8) (pow.f64 y.re 4) (/.f64 x.re y.im))) (/.f64 (fma.f64 -1/2 (*.f64 (pow.f64 y.re 6) (*.f64 x.re -3/8)) (*.f64 x.re (*.f64 1/8 (pow.f64 y.re 6)))) (pow.f64 y.im 7)))
(*.f64 -1 (/.f64 x.re y.im))
(neg.f64 (/.f64 x.re y.im))
(/.f64 (neg.f64 x.re) y.im)
(+.f64 (*.f64 -1 (/.f64 x.re y.im)) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))))
(fma.f64 -1 (/.f64 x.re y.im) (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) 1/2))
(-.f64 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) 1/2) (/.f64 x.re y.im))
(+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))))))
(fma.f64 -1 (/.f64 x.re y.im) (fma.f64 -1/8 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 4))) (fma.f64 1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (*.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 4)))))))
(-.f64 (fma.f64 -1/8 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) (pow.f64 y.re 4)) (fma.f64 -1/4 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) (pow.f64 y.re 4)) (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) 1/2))) (/.f64 x.re y.im))
(-.f64 (+.f64 (*.f64 (pow.f64 y.re 4) (/.f64 (*.f64 x.re -3/8) (pow.f64 y.im 5))) (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) 1/2)) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 4))))) (pow.f64 y.im 7))) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 7))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 5))))))))
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 7) (*.f64 (*.f64 x.re (pow.f64 y.re 4)) -3/8))) (fma.f64 -1 (/.f64 x.re y.im) (fma.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 7)) (fma.f64 -1/8 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 4))) (fma.f64 1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (*.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 4)))))))))
(fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 7)) (*.f64 x.re (*.f64 (pow.f64 y.re 4) -3/8))) (-.f64 (fma.f64 1/8 (*.f64 (/.f64 x.re (pow.f64 y.im 7)) (pow.f64 y.re 6)) (fma.f64 -1/8 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) (pow.f64 y.re 4)) (fma.f64 -1/4 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) (pow.f64 y.re 4)) (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) 1/2)))) (/.f64 x.re y.im)))
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 6) (*.f64 x.re -3/8)) (pow.f64 y.im 7)) (-.f64 (fma.f64 1/8 (*.f64 (/.f64 x.re (pow.f64 y.im 7)) (pow.f64 y.re 6)) (+.f64 (*.f64 (pow.f64 y.re 4) (/.f64 (*.f64 x.re -3/8) (pow.f64 y.im 5))) (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) 1/2))) (/.f64 x.re y.im)))
(/.f64 y.re y.im)
(+.f64 (/.f64 y.re y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))))
(fma.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)) (/.f64 y.re y.im))
(+.f64 (/.f64 y.re y.im) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)))))
(+.f64 (/.f64 y.re y.im) (fma.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)))))
(+.f64 (/.f64 y.re y.im) (fma.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)) (/.f64 (*.f64 (pow.f64 y.re 3) -1/2) (pow.f64 y.im 3))))
(+.f64 (fma.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)) (/.f64 y.re y.im)) (*.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))))
(+.f64 (*.f64 -5/16 (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 7))) (+.f64 (/.f64 y.re y.im) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))))))
(fma.f64 -5/16 (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 7)) (+.f64 (/.f64 y.re y.im) (fma.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))))))
(+.f64 (fma.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)) (/.f64 (*.f64 (pow.f64 y.re 3) -1/2) (pow.f64 y.im 3))) (fma.f64 -5/16 (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 7)) (/.f64 y.re y.im)))
(+.f64 (fma.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)) (*.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)))) (fma.f64 -5/16 (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 7)) (/.f64 y.re y.im)))
1
(+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))))
(+.f64 1 (/.f64 (*.f64 -1/2 (*.f64 y.im y.im)) (*.f64 y.re y.re)))
(fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) (/.f64 y.im y.re)) 1)
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.re 4))) (+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 4) -3/8) (pow.f64 y.re 4)) (+.f64 1 (/.f64 (*.f64 -1/2 (*.f64 y.im y.im)) (*.f64 y.re y.re))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) (/.f64 y.im y.re)) 1) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 4) -3/8)))
(+.f64 1 (fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) (/.f64 y.im y.re)) (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.im 6)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.im 2)))) (pow.f64 y.re 6))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.re 4))) (+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))))))
(fma.f64 -1 (/.f64 (fma.f64 1/8 (pow.f64 y.im 6) (*.f64 -1/2 (*.f64 (*.f64 y.im y.im) (*.f64 (pow.f64 y.im 4) -3/8)))) (pow.f64 y.re 6)) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 4) -3/8) (pow.f64 y.re 4)) (+.f64 1 (/.f64 (*.f64 -1/2 (*.f64 y.im y.im)) (*.f64 y.re y.re)))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) (/.f64 y.im y.re)) 1) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 4) -3/8))) (/.f64 (fma.f64 (pow.f64 y.im 6) 1/8 (*.f64 -1/2 (*.f64 (pow.f64 y.im 6) -3/8))) (pow.f64 y.re 6)))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) (/.f64 y.im y.re)) 1) (-.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) (/.f64 (fma.f64 -1/2 (*.f64 (pow.f64 y.im 6) -3/8) (*.f64 (pow.f64 y.im 6) 1/8)) (pow.f64 y.re 6))))
-1
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))) 1)
(fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) -1)
(fma.f64 1/2 (*.f64 (/.f64 y.im y.re) (/.f64 y.im y.re)) -1)
(fma.f64 (/.f64 1/2 y.re) (*.f64 (/.f64 y.im y.re) y.im) -1)
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 1/8 (pow.f64 y.im 4))) (pow.f64 y.re 4)))) 1)
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) (neg.f64 (/.f64 (*.f64 (pow.f64 y.im 4) 3/8) (pow.f64 y.re 4)))) -1)
(fma.f64 1/2 (*.f64 (/.f64 y.im y.re) (/.f64 y.im y.re)) (fma.f64 -1 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) -1))
(+.f64 (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) -3/8) (fma.f64 (/.f64 1/2 y.re) (*.f64 (/.f64 y.im y.re) y.im) -1))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 1/8 (pow.f64 y.im 4))) (pow.f64 y.im 2))) (*.f64 -1/8 (pow.f64 y.im 6))) (pow.f64 y.re 6))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 y.im 4)) (*.f64 1/8 (pow.f64 y.im 4))) (pow.f64 y.re 4))))) 1)
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) (fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 y.im y.im) (*.f64 (pow.f64 y.im 4) 3/8)) (*.f64 (pow.f64 y.im 6) -1/8)) (pow.f64 y.re 6)) (neg.f64 (/.f64 (*.f64 (pow.f64 y.im 4) 3/8) (pow.f64 y.re 4))))) -1)
(fma.f64 1/2 (*.f64 (/.f64 y.im y.re) (/.f64 y.im y.re)) (fma.f64 -1 (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) (/.f64 (fma.f64 (pow.f64 y.im 6) -1/8 (*.f64 -1/2 (*.f64 (pow.f64 y.im 6) 3/8))) (pow.f64 y.re 6))) -1))
(+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) -3/8) (/.f64 (fma.f64 -1/2 (*.f64 (pow.f64 y.im 6) 3/8) (*.f64 (pow.f64 y.im 6) -1/8)) (pow.f64 y.re 6))) (fma.f64 (/.f64 1/2 y.re) (*.f64 (/.f64 y.im y.re) y.im) -1))
1
(+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))))
(+.f64 1 (/.f64 (*.f64 -1/2 (*.f64 y.im y.im)) (*.f64 y.re y.re)))
(fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) (/.f64 y.im y.re)) 1)
(+.f64 1 (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 4) -3/8) (pow.f64 y.re 4)) (+.f64 1 (/.f64 (*.f64 -1/2 (*.f64 y.im y.im)) (*.f64 y.re y.re))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) (/.f64 y.im y.re)) 1) (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 4) -3/8)))
(+.f64 1 (fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) (/.f64 y.im y.re)) (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)))))
(+.f64 1 (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 2))) (*.f64 -5/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 6))))))
(+.f64 1 (fma.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) (*.f64 -5/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 6))))))
(+.f64 1 (fma.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) (/.f64 y.im y.re)) (/.f64 (*.f64 (pow.f64 y.im 6) -5/16) (pow.f64 y.re 6)))))
(+.f64 1 (fma.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (fma.f64 -5/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 6)) (/.f64 (*.f64 (*.f64 y.im y.im) -1/2) (*.f64 y.re y.re)))))
(/.f64 y.re y.im)
(+.f64 (/.f64 y.re y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))))
(fma.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)) (/.f64 y.re y.im))
(+.f64 (/.f64 y.re y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 5)) (*.f64 -1/8 (pow.f64 y.re 5))) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)))))
(+.f64 (/.f64 y.re y.im) (fma.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)))))
(+.f64 (/.f64 y.re y.im) (fma.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)) (/.f64 (*.f64 (pow.f64 y.re 3) -1/2) (pow.f64 y.im 3))))
(+.f64 (fma.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)) (/.f64 y.re y.im)) (*.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))))
(+.f64 (/.f64 y.re y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.re 7)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 5)) (*.f64 -1/8 (pow.f64 y.re 5))) (pow.f64 y.re 2)))) (pow.f64 y.im 7))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 5)) (*.f64 -1/8 (pow.f64 y.re 5))) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))))))
(+.f64 (/.f64 y.re y.im) (fma.f64 -1 (/.f64 (fma.f64 1/8 (pow.f64 y.re 7) (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 5) -3/8)) (*.f64 y.re y.re))) (pow.f64 y.im 7)) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 5) -3/8) (pow.f64 y.im 5)) (*.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))))))
(+.f64 (/.f64 y.re y.im) (-.f64 (-.f64 (/.f64 (*.f64 (pow.f64 y.re 3) -1/2) (pow.f64 y.im 3)) (/.f64 (pow.f64 y.re 5) (/.f64 (pow.f64 y.im 5) -3/8))) (/.f64 (fma.f64 (pow.f64 y.re 7) 1/8 (*.f64 (*.f64 y.re y.re) (*.f64 -1/2 (*.f64 (pow.f64 y.re 5) -3/8)))) (pow.f64 y.im 7))))
(+.f64 (/.f64 y.re y.im) (-.f64 (fma.f64 -1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)) (*.f64 3/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)))) (/.f64 (fma.f64 (pow.f64 y.re 7) 1/8 (*.f64 (*.f64 y.re y.re) (*.f64 -1/2 (*.f64 (pow.f64 y.re 5) -3/8)))) (pow.f64 y.im 7))))
(*.f64 -1 (/.f64 y.re y.im))
(neg.f64 (/.f64 y.re y.im))
(/.f64 (neg.f64 y.re) y.im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))) (*.f64 -1 (/.f64 y.re y.im)))
(fma.f64 1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)) (neg.f64 (/.f64 y.re y.im)))
(-.f64 (/.f64 1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (/.f64 y.re y.im))
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))) (/.f64 y.re y.im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))) (*.f64 -1 (/.f64 y.re y.im)))))
(fma.f64 1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)) (fma.f64 -1/4 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)) (fma.f64 -1/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)) (neg.f64 (/.f64 y.re y.im)))))
(fma.f64 1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)) (-.f64 (*.f64 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)) -3/8) (/.f64 y.re y.im)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 5)) (*.f64 -1/8 (pow.f64 y.re 5))) (pow.f64 y.re 2)) (pow.f64 y.im 7))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 7))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5))) (*.f64 -1 (/.f64 y.re y.im)))))))
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 5) -3/8) (/.f64 (pow.f64 y.im 7) (*.f64 y.re y.re))) (fma.f64 1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)) (fma.f64 1/8 (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 7)) (fma.f64 -1/4 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)) (fma.f64 -1/8 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)) (neg.f64 (/.f64 y.re y.im)))))))
(fma.f64 -1/2 (*.f64 (/.f64 (*.f64 (pow.f64 y.re 5) -3/8) (pow.f64 y.im 7)) (*.f64 y.re y.re)) (fma.f64 1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)) (fma.f64 1/8 (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 7)) (-.f64 (*.f64 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)) -3/8) (/.f64 y.re y.im)))))
(fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 y.re 5) (/.f64 (pow.f64 y.im 7) (*.f64 y.re y.re))) -3/8) (fma.f64 1/2 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 3)) (fma.f64 1/8 (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 7)) (-.f64 (*.f64 (/.f64 (pow.f64 y.re 5) (pow.f64 y.im 5)) -3/8) (/.f64 y.re y.im)))))

localize4.0ms (0%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

localize10.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (/.f64 1 y.re) x.re)
Compiler

Compiled 15 to 10 computations (33.3% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
x.re
@-inf
(*.f64 (/.f64 1 y.re) x.re)
0.0ms
y.re
@-inf
(*.f64 (/.f64 1 y.re) x.re)
0.0ms
x.re
@0
(*.f64 (/.f64 1 y.re) x.re)
0.0ms
x.re
@inf
(*.f64 (/.f64 1 y.re) x.re)
0.0ms
y.re
@0
(*.f64 (/.f64 1 y.re) x.re)

rewrite57.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
534×pow1_binary64
511×add-sqr-sqrt_binary64
492×add-log-exp_binary64
492×log1p-expm1-u_binary64
492×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
064
11184
213864
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(*.f64 (/.f64 1 y.re) x.re)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 x.re y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 y.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x.re y.re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 x.re) 2) (/.f64 y.re (cbrt.f64 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 x.re) (/.f64 y.re (sqrt.f64 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 x.re) (neg.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x.re (sqrt.f64 y.re)) (sqrt.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x.re 1) y.re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x.re (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 x.re) (neg.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x.re -1) (neg.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x.re y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x.re y.re) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 x.re y.re)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 x.re y.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 x.re y.re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 x.re y.re) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 x.re y.re)))))))

simplify7.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0496
Stop Event
saturated
Counts
45 → 21
Calls
Call 1
Inputs
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
Outputs
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)
(/.f64 x.re y.re)

localize23.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
1.8b
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
2.8b
(/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))
Compiler

Compiled 35 to 9 computations (74.3% saved)

series6.0ms (0%)

Counts
2 → 84
Calls

21 calls:

TimeVariablePointExpression
0.0ms
y.re
@0
(/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))
0.0ms
y.im
@inf
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
0.0ms
x.re
@-inf
(/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))
0.0ms
y.im
@-inf
(/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))
0.0ms
x.re
@0
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))

rewrite79.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
748×log-prod_binary64
479×fma-def_binary64
348×log-div_binary64
278×fma-neg_binary64
228×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01026
123724
2412524
Stop Event
node limit
Counts
2 → 171
Calls
Call 1
Inputs
(/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 y.re y.im)) (/.f64 x.re y.im))) (cbrt.f64 (pow.f64 (exp.f64 (/.f64 y.re y.im)) (/.f64 x.re y.im))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 y.re y.im)) (/.f64 x.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 y.re y.im)) (/.f64 x.re y.im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 y.re y.im)) (/.f64 x.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.re (/.f64 1 (*.f64 y.im (/.f64 y.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.re (*.f64 (/.f64 1 y.im) (/.f64 x.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) (pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) 2) (cbrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) (*.f64 (cbrt.f64 (/.f64 y.re y.im)) (/.f64 x.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) (sqrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 y.re y.im)) (*.f64 (sqrt.f64 (/.f64 y.re y.im)) (/.f64 x.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 y.re) y.im) (/.f64 1 (/.f64 (neg.f64 y.im) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y.im) (/.f64 (/.f64 y.re y.im) (/.f64 1 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re 1) (/.f64 (/.f64 1 y.im) (/.f64 y.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) 1) (/.f64 (cbrt.f64 (/.f64 y.re y.im)) (/.f64 y.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 y.re y.im)) 1) (/.f64 (sqrt.f64 (/.f64 y.re y.im)) (/.f64 y.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 y.re y.im)) y.im) (/.f64 (sqrt.f64 (/.f64 y.re y.im)) (/.f64 1 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 y.re y.re)) (/.f64 y.im x.re)) (/.f64 (cbrt.f64 y.re) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y.re) (/.f64 y.im x.re)) (/.f64 (sqrt.f64 y.re) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) y.im) (/.f64 (cbrt.f64 (/.f64 y.re y.im)) (/.f64 1 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re (pow.f64 (cbrt.f64 (/.f64 y.im x.re)) 2)) (/.f64 (/.f64 1 y.im) (cbrt.f64 (/.f64 y.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y.im x.re)) 2)) (/.f64 (/.f64 y.re y.im) (cbrt.f64 (/.f64 y.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) (pow.f64 (cbrt.f64 (/.f64 y.im x.re)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 y.re y.im)) (pow.f64 (cbrt.f64 (/.f64 y.im x.re)) 2)) (/.f64 (sqrt.f64 (/.f64 y.re y.im)) (cbrt.f64 (/.f64 y.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re (sqrt.f64 (/.f64 y.im x.re))) (/.f64 (/.f64 1 y.im) (sqrt.f64 (/.f64 y.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (/.f64 y.im x.re))) (/.f64 (/.f64 y.re y.im) (sqrt.f64 (/.f64 y.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) (sqrt.f64 (/.f64 y.im x.re))) (/.f64 (cbrt.f64 (/.f64 y.re y.im)) (sqrt.f64 (/.f64 y.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 y.re y.im) 1) (/.f64 x.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 y.re y.im) (neg.f64 y.im)) (neg.f64 x.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) 1) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (cbrt.f64 (*.f64 x.re x.re))) (cbrt.f64 x.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (sqrt.f64 x.re)) (sqrt.f64 x.re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 y.im y.re) (/.f64 y.im x.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 y.im (/.f64 y.im x.re)) y.re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 y.re y.im) (/.f64 (neg.f64 y.im) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 y.re y.im)) (/.f64 x.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (/.f64 x.im y.im) 2) (-.f64 (/.f64 x.im y.im) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))) (/.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 2) (-.f64 (/.f64 x.im y.im) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 2) (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) (sqrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y.im (/.f64 y.re y.im) (/.f64 x.im (/.f64 x.re y.im))) (/.f64 1 (*.f64 y.im (/.f64 y.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 3)) (/.f64 1 (fma.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) (-.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) (/.f64 x.im y.im)) (pow.f64 (/.f64 x.im y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 2)) (/.f64 1 (-.f64 (/.f64 x.im y.im) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 y.im (/.f64 y.im x.re)) (fma.f64 y.im (/.f64 y.re y.im) (/.f64 x.im (/.f64 x.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) (-.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) (/.f64 x.im y.im)) (pow.f64 (/.f64 x.im y.im) 2)) (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (/.f64 x.im y.im) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.im (/.f64 y.re y.im) (/.f64 x.im (/.f64 x.re y.im))) (*.f64 y.im (/.f64 y.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 3)) (fma.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) (-.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) (/.f64 x.im y.im)) (pow.f64 (/.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 3)) (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 2) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (*.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) (/.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 2)) (-.f64 (/.f64 x.im y.im) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 y.im (/.f64 y.re y.im) (/.f64 x.im (/.f64 x.re y.im)))) (neg.f64 (*.f64 y.im (/.f64 y.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 3))) (neg.f64 (fma.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) (-.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) (/.f64 x.im y.im)) (pow.f64 (/.f64 x.im y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 2))) (neg.f64 (-.f64 (/.f64 x.im y.im) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.re y.im (*.f64 (*.f64 y.im (/.f64 y.im x.re)) x.im)) (*.f64 (*.f64 y.im (/.f64 y.im x.re)) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y.im (*.f64 (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)) x.im)) (*.f64 (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 (neg.f64 y.re) y.im) y.im (*.f64 (/.f64 (neg.f64 y.im) x.re) x.im)) (*.f64 (/.f64 (neg.f64 y.im) x.re) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.re (/.f64 y.im x.im) (*.f64 (*.f64 y.im (/.f64 y.im x.re)) 1)) (*.f64 (*.f64 y.im (/.f64 y.im x.re)) (/.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 y.im x.im) (/.f64 y.im x.re)) (*.f64 (/.f64 y.im x.re) (/.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 y.im x.im) (*.f64 (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)) 1)) (*.f64 (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)) (/.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 (neg.f64 y.re) y.im) (/.f64 y.im x.im) (*.f64 (/.f64 (neg.f64 y.im) x.re) 1)) (*.f64 (/.f64 (neg.f64 y.im) x.re) (/.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.re (neg.f64 y.im) (*.f64 (*.f64 y.im (/.f64 y.im x.re)) (neg.f64 x.im))) (*.f64 (*.f64 y.im (/.f64 y.im x.re)) (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 y.re y.im) (neg.f64 y.im) (*.f64 (/.f64 y.im x.re) (neg.f64 x.im))) (*.f64 (/.f64 y.im x.re) (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1 y.im (*.f64 (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)) (neg.f64 x.im))) (*.f64 (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)) (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 (neg.f64 y.re) y.im) (neg.f64 y.im) (*.f64 (/.f64 (neg.f64 y.im) x.re) (neg.f64 x.im))) (*.f64 (/.f64 (neg.f64 y.im) x.re) (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.im (*.f64 y.im (/.f64 y.im x.re)) (*.f64 y.im y.re)) (*.f64 y.im (*.f64 y.im (/.f64 y.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.im (/.f64 y.im x.re) (*.f64 (/.f64 y.im x.im) y.re)) (*.f64 (/.f64 y.im x.im) (*.f64 y.im (/.f64 y.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.im) (*.f64 y.im (/.f64 y.im x.re)) (*.f64 (neg.f64 y.im) y.re)) (*.f64 (neg.f64 y.im) (*.f64 y.im (/.f64 y.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 y.im x.re) (*.f64 (/.f64 y.im x.im) (/.f64 y.re y.im))) (*.f64 (/.f64 y.im x.im) (/.f64 y.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.im) (/.f64 y.im x.re) (*.f64 (neg.f64 y.im) (/.f64 y.re y.im))) (*.f64 (neg.f64 y.im) (/.f64 y.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.im (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)) y.im) (*.f64 y.im (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 y.im x.re) (/.f64 y.im y.re) (*.f64 (/.f64 y.im x.im) 1)) (*.f64 (/.f64 y.im x.im) (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.im) (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)) (*.f64 (neg.f64 y.im) 1)) (*.f64 (neg.f64 y.im) (/.f64 y.im (*.f64 (/.f64 y.re y.im) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.im (/.f64 (neg.f64 y.im) x.re) (*.f64 y.im (/.f64 (neg.f64 y.re) y.im))) (*.f64 y.im (/.f64 (neg.f64 y.im) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1 (/.f64 y.im x.re) (*.f64 (/.f64 y.im x.im) (/.f64 (neg.f64 y.re) y.im))) (*.f64 (/.f64 y.im x.im) (/.f64 (neg.f64 y.im) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.im) (/.f64 (neg.f64 y.im) x.re) (*.f64 (neg.f64 y.im) (/.f64 (neg.f64 y.re) y.im))) (*.f64 (neg.f64 y.im) (/.f64 (neg.f64 y.im) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 2) (pow.f64 (/.f64 x.im y.im) 2)) (-.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) (/.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 y.im (/.f64 y.re y.im) (/.f64 x.im (/.f64 x.re y.im))) y.im) (/.f64 y.im x.re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 y.im (/.f64 y.im x.re)) (fma.f64 y.im (/.f64 y.re y.im) (/.f64 x.im (/.f64 x.re y.im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) (-.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) (/.f64 x.im y.im)) (pow.f64 (/.f64 x.im y.im) 2)) (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (/.f64 x.im y.im) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))) (exp.f64 (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (/.f64 y.re y.im)) (/.f64 x.re y.im)) (+.f64 1 (expm1.f64 (/.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))) (+.f64 1 (expm1.f64 (/.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 x.im y.im))) (pow.f64 (exp.f64 (/.f64 y.re y.im)) (/.f64 x.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 x.im y.im)) (+.f64 1 (expm1.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 x.im y.im))) (+.f64 1 (expm1.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.re (/.f64 1 (*.f64 y.im (/.f64 y.im x.re))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.re (*.f64 (/.f64 1 y.im) (/.f64 x.re y.im)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) 1 (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.im (/.f64 1 y.im) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.im y.im) 1 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x.im y.im) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.im x.im)) (*.f64 (cbrt.f64 x.im) (/.f64 1 y.im)) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 x.im y.im)) (pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 2) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 2) (cbrt.f64 (/.f64 x.im y.im)) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) (pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) 2) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) 2) (cbrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) (*.f64 (cbrt.f64 (/.f64 y.re y.im)) (/.f64 x.re y.im)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.im) (*.f64 (sqrt.f64 x.im) (/.f64 1 y.im)) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x.im y.im)) (sqrt.f64 (/.f64 x.im y.im)) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) (sqrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 y.re y.im)) (*.f64 (sqrt.f64 (/.f64 y.re y.im)) (/.f64 x.re y.im)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 x.im) (/.f64 1 (neg.f64 y.im)) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (neg.f64 y.re) y.im) (/.f64 1 (/.f64 (neg.f64 y.im) x.re)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y.im) x.im (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y.im) (/.f64 (/.f64 y.re y.im) (/.f64 1 x.re)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 x.im (cbrt.f64 y.im)) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 y.im)) (/.f64 x.im (sqrt.f64 y.im)) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.re 1) (/.f64 (/.f64 1 y.im) (/.f64 y.im x.re)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) 1) (/.f64 (cbrt.f64 (/.f64 y.re y.im)) (/.f64 y.im x.re)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (/.f64 y.re y.im)) 1) (/.f64 (sqrt.f64 (/.f64 y.re y.im)) (/.f64 y.im x.re)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (/.f64 y.re y.im)) y.im) (/.f64 (sqrt.f64 (/.f64 y.re y.im)) (/.f64 1 x.re)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) 1) (/.f64 (cbrt.f64 x.im) y.im) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x.im) 1) (/.f64 (sqrt.f64 x.im) y.im) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 (/.f64 x.im y.im)) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x.im) (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 (sqrt.f64 x.im) (cbrt.f64 y.im)) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) (sqrt.f64 y.im)) (/.f64 (cbrt.f64 x.im) (sqrt.f64 y.im)) (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 y.re y.re)) (/.f64 y.im x.re)) (/.f64 (cbrt.f64 y.re) y.im) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 y.re) (/.f64 y.im x.re)) (/.f64 (sqrt.f64 y.re) y.im) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) y.im) (/.f64 (cbrt.f64 (/.f64 y.re y.im)) (/.f64 1 x.re)) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.re (pow.f64 (cbrt.f64 (/.f64 y.im x.re)) 2)) (/.f64 (/.f64 1 y.im) (cbrt.f64 (/.f64 y.im x.re))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y.im x.re)) 2)) (/.f64 (/.f64 y.re y.im) (cbrt.f64 (/.f64 y.im x.re))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) (pow.f64 (cbrt.f64 (/.f64 y.im x.re)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (/.f64 y.re y.im)) (pow.f64 (cbrt.f64 (/.f64 y.im x.re)) 2)) (/.f64 (sqrt.f64 (/.f64 y.re y.im)) (cbrt.f64 (/.f64 y.im x.re))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.re (sqrt.f64 (/.f64 y.im x.re))) (/.f64 (/.f64 1 y.im) (sqrt.f64 (/.f64 y.im x.re))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (/.f64 y.im x.re))) (/.f64 (/.f64 y.re y.im) (sqrt.f64 (/.f64 y.im x.re))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.re y.im)) 2) (sqrt.f64 (/.f64 y.im x.re))) (/.f64 (cbrt.f64 (/.f64 y.re y.im)) (sqrt.f64 (/.f64 y.im x.re))) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (/.f64 y.re y.im) 1) (/.f64 x.re y.im) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (/.f64 y.re y.im) (neg.f64 y.im)) (neg.f64 x.re) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) 1) x.re (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (cbrt.f64 (*.f64 x.re x.re))) (cbrt.f64 x.re) (/.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (sqrt.f64 x.re)) (sqrt.f64 x.re) (/.f64 x.im y.im))))))

simplify157.0ms (1%)

Algorithm
egg-herbie
Rules
936×associate-/r/_binary64
851×*-commutative_binary64
624×times-frac_binary64
533×associate-/l/_binary64
434×unswap-sqr_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0111020
1201020
238948
384948
4226948
5836948
63878948
74779948
84989948
95209948
105437948
115774948
127224948
Stop Event
node limit
Counts
255 → 174
Calls
Call 1
Inputs
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
Outputs
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im))
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.im y.im))
(+.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)) (/.f64 x.im y.im))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.im y.im))
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (/.f64 x.im y.im))

localize19.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (hypot.f64 y.re y.im))
0.0b
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
3.2b
(/.f64 y.im (/.f64 y.re x.im))
4.7b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
Compiler

Compiled 45 to 14 computations (68.9% saved)

series9.0ms (0.1%)

Counts
3 → 132
Calls

33 calls:

TimeVariablePointExpression
0.0ms
y.re
@0
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
0.0ms
x.im
@-inf
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
0.0ms
y.re
@-inf
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
0.0ms
y.im
@-inf
(/.f64 y.im (/.f64 y.re x.im))
0.0ms
y.re
@inf
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))

rewrite92.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
731×log-prod_binary64
357×pow2_binary64
316×fma-def_binary64
251×pow1/3_binary64
240×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01233
126829
2409129
Stop Event
node limit
Counts
3 → 201
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(/.f64 y.im (/.f64 y.re x.im))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1) (*.f64 (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 2)) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) 1) (*.f64 (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2)) 1) (*.f64 (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) -1) (*.f64 (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2)) -1) (*.f64 (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3) (pow.f64 (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))) 3)) (+.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 2) (-.f64 (pow.f64 (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))) 2) (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 2) (pow.f64 (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))) 2)) (-.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 1) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (cbrt.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (fma.f64 y.im (/.f64 x.im y.re) x.re)) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) (/.f64 1 (hypot.f64 y.re y.im))) (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3))) (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2))) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) -1) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3) (pow.f64 (hypot.f64 y.re y.im) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 3) (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3) (pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 y.im (/.f64 x.im y.re) x.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im)))) (exp.f64 (/.f64 x.re (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3) (pow.f64 (hypot.f64 y.re y.im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 3) (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3) (pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.im (*.f64 (/.f64 x.im y.re) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 y.im (/.f64 x.im y.re)) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (/.f64 x.im y.re)) (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) x.re) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (*.f64 y.im (/.f64 x.im y.re))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 2) (*.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (cbrt.f64 x.re) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) x.re) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 y.im (/.f64 x.im y.re))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (*.f64 (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1 (*.f64 (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.im y.re) (*.f64 x.im (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im)))) 2) (cbrt.f64 (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im)))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im)))) (sqrt.f64 (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im)))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 x.re) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (*.f64 (sqrt.f64 x.re) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (sqrt.f64 x.re)) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (sqrt.f64 x.re)) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re)))) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re)))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (*.f64 (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) y.im) (/.f64 x.im y.re) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -1/2)) (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 x.re) 2)) (cbrt.f64 x.re) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 x.re)) (sqrt.f64 x.re) (/.f64 y.im (*.f64 (hypot.f64 y.re y.im) (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 2)) (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re)))) (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 y.im y.re)) x.im (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 x.re (hypot.f64 y.re y.im)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y.im (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 y.im (/.f64 x.im y.re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y.im (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.im (/.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x.im (/.f64 y.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y.im (/.f64 x.im y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (pow.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 2) (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (cbrt.f64 y.im) (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 y.im) (*.f64 (sqrt.f64 y.im) (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y.im) (/.f64 1 (/.f64 (neg.f64 y.re) x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.im y.re) y.im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.im y.re) x.im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) 1) (/.f64 (cbrt.f64 y.im) (/.f64 y.re x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y.im) 1) (/.f64 (sqrt.f64 y.im) (/.f64 y.re x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y.im) y.re) (/.f64 (sqrt.f64 y.im) (/.f64 1 x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 y.re -1) (/.f64 y.im (/.f64 1 x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) y.re) (/.f64 (cbrt.f64 y.im) (/.f64 1 x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (/.f64 y.im (cbrt.f64 (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y.im) (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (/.f64 (sqrt.f64 y.im) (cbrt.f64 (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (/.f64 y.re x.im))) (/.f64 y.im (sqrt.f64 (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) (sqrt.f64 (/.f64 y.re x.im))) (/.f64 (cbrt.f64 y.im) (sqrt.f64 (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.im 1) (/.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.im (neg.f64 y.re)) (neg.f64 x.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y.im y.re) 1) x.im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y.im y.re) (cbrt.f64 (*.f64 x.im x.im))) (cbrt.f64 x.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y.im y.re) (sqrt.f64 x.im)) (sqrt.f64 x.im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y.re (*.f64 y.im x.im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 y.re (*.f64 y.im x.im)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 y.im (/.f64 (neg.f64 y.re) x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 y.im (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 y.im (/.f64 x.im y.re))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x.re x.re) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (/.f64 (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y.im (/.f64 x.im y.re) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) (cbrt.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 2)) (cbrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) (sqrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) (/.f64 1 (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2)) (/.f64 1 (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))) (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))) (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3)) (+.f64 (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2) (-.f64 (*.f64 x.re x.re) (*.f64 x.re (*.f64 y.im (/.f64 x.im y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2)) (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3))) (neg.f64 (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2))) (neg.f64 (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2) (*.f64 x.re x.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x.re x.re (*.f64 (*.f64 y.im (/.f64 x.im y.re)) (-.f64 (*.f64 y.im (/.f64 x.im y.re)) x.re))) (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x.re (*.f64 y.im (/.f64 x.im y.re))) (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 y.im (/.f64 x.im y.re)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x.re)) (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x.re) (+.f64 1 (expm1.f64 (*.f64 y.im (/.f64 x.im y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x.re)) (+.f64 1 (expm1.f64 (*.f64 y.im (/.f64 x.im y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y.im (/.f64 x.im y.re)))) (exp.f64 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y.im) (/.f64 x.im y.re)) (+.f64 1 (expm1.f64 x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y.im (/.f64 x.im y.re)))) (+.f64 1 (expm1.f64 x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x.re (*.f64 y.im (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y.im (/.f64 x.im y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.im (/.f64 x.im y.re) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re 1 (*.f64 y.im (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.im (/.f64 y.im y.re) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (/.f64 x.im y.re)) 1 x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (pow.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 2) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) 2) (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x.re) (pow.f64 (cbrt.f64 x.re) 2) (*.f64 y.im (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x.re) 2) (cbrt.f64 x.re) (*.f64 y.im (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (cbrt.f64 y.im) (/.f64 x.im y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) (sqrt.f64 (*.f64 y.im (/.f64 x.im y.re))) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.re) (sqrt.f64 x.re) (*.f64 y.im (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y.im) (*.f64 (sqrt.f64 y.im) (/.f64 x.im y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 y.im) (/.f64 1 (/.f64 (neg.f64 y.re) x.im)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.im y.re) y.im x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.im y.re) x.im x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) 1) (/.f64 (cbrt.f64 y.im) (/.f64 y.re x.im)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 y.im) 1) (/.f64 (sqrt.f64 y.im) (/.f64 y.re x.im)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 y.im) y.re) (/.f64 (sqrt.f64 y.im) (/.f64 1 x.im)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 y.re -1) (/.f64 y.im (/.f64 1 x.im)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) y.re) (/.f64 (cbrt.f64 y.im) (/.f64 1 x.im)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (/.f64 y.im (cbrt.f64 (/.f64 y.re x.im))) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (cbrt.f64 (*.f64 y.im (/.f64 x.im y.re))) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 y.im) (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (/.f64 (sqrt.f64 y.im) (cbrt.f64 (/.f64 y.re x.im))) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (/.f64 y.re x.im))) (/.f64 y.im (sqrt.f64 (/.f64 y.re x.im))) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) (sqrt.f64 (/.f64 y.re x.im))) (/.f64 (cbrt.f64 y.im) (sqrt.f64 (/.f64 y.re x.im))) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.im 1) (/.f64 x.im y.re) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.im (neg.f64 y.re)) (neg.f64 x.im) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y.im y.re) 1) x.im x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y.im y.re) (cbrt.f64 (*.f64 x.im x.im))) (cbrt.f64 x.im) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y.im y.re) (sqrt.f64 x.im)) (sqrt.f64 x.im) x.re)))))

simplify113.0ms (0.7%)

Algorithm
egg-herbie
Rules
708×associate-/r/_binary64
555×fma-neg_binary64
548×associate-/l/_binary64
497×distribute-neg-frac_binary64
369×times-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0701829
12141767
26911633
331621594
468331594
Stop Event
node limit
Counts
333 → 240
Calls
Call 1
Inputs
(/.f64 x.im y.re)
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))))))
(*.f64 -1 (/.f64 x.re y.re))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3)))))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))))))
(/.f64 x.im y.re)
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(*.f64 -1 (/.f64 x.im y.re))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (*.f64 -1 (/.f64 x.re y.im)))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (*.f64 1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2)))))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))))))
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 (*.f64 y.im x.im) y.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
Outputs
(/.f64 x.im y.re)
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 -1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (/.f64 y.re (*.f64 (/.f64 y.im x.im) y.im)) (/.f64 x.im y.re)))
(+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (*.f64 x.im (/.f64 (/.f64 y.re y.im) y.im)) (/.f64 x.im y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(fma.f64 -1/2 (fma.f64 (/.f64 y.re y.im) (/.f64 x.im y.im) (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 -1/2 (*.f64 (/.f64 (/.f64 y.re y.im) y.im) (+.f64 x.im (/.f64 (*.f64 y.re x.re) y.im))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))
(fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))
(+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)))
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 -1/2 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) y.im) y.im) (/.f64 x.re y.re)))
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 -1/2 (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))) (/.f64 x.re y.re)))
(fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (fma.f64 -1/2 (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))) (/.f64 x.re y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))))))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (*.f64 -1/2 (*.f64 x.im (pow.f64 y.im 3))) (pow.f64 y.re 4)))))
(+.f64 (fma.f64 -1/2 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)))
(fma.f64 -1/2 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) y.im) y.im) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 -1/2 (*.f64 x.im (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))) (/.f64 x.re y.re))))
(-.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 (/.f64 y.im y.re) x.im x.re))))
(-.f64 (fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (/.f64 x.re y.re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 (/.f64 y.im y.re) x.im x.re))))
(*.f64 -1 (/.f64 x.re y.re))
(neg.f64 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.re) y.re)
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(*.f64 -1 (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))
(-.f64 (/.f64 (neg.f64 x.re) y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))
(neg.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))
(*.f64 (/.f64 -1 y.re) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3)))))
(fma.f64 -1 (/.f64 x.re y.re) (fma.f64 -1 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (*.f64 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) 1/2)))
(-.f64 (-.f64 (*.f64 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) 1/2) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (/.f64 x.re y.re))
(-.f64 (*.f64 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) y.im) y.im) 1/2) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))
(fma.f64 (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))) 1/2 (*.f64 (/.f64 -1 y.re) (fma.f64 (/.f64 y.im y.re) x.im x.re)))
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))))
(fma.f64 -1 (/.f64 x.re y.re) (fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (*.f64 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) 1/2))))
(-.f64 (fma.f64 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) 1/2 (-.f64 (*.f64 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) 1/2) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))) (/.f64 x.re y.re))
(fma.f64 (*.f64 x.im (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))) 1/2 (-.f64 (*.f64 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) y.im) y.im) 1/2) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))))
(+.f64 (*.f64 (/.f64 -1 y.re) (fma.f64 (/.f64 y.im y.re) x.im x.re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 (/.f64 y.im y.re) x.im x.re))))
(/.f64 x.re y.re)
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))
(fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))
(+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)))
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 -1/2 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) y.im) y.im) (/.f64 x.re y.re)))
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 -1/2 (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))) (/.f64 x.re y.re)))
(fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (fma.f64 -1/2 (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))) (/.f64 x.re y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))))))
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (*.f64 -1/2 (*.f64 x.im (pow.f64 y.im 3))) (pow.f64 y.re 4)))))
(+.f64 (fma.f64 -1/2 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 x.re y.re)))
(fma.f64 -1/2 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) y.im) y.im) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 -1/2 (*.f64 x.im (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))) (/.f64 x.re y.re))))
(-.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 (/.f64 y.im y.re) x.im x.re))))
(-.f64 (fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (/.f64 x.re y.re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 (/.f64 y.im y.re) x.im x.re))))
(/.f64 x.im y.re)
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 -1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (/.f64 y.re (*.f64 (/.f64 y.im x.im) y.im)) (/.f64 x.im y.re)))
(+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (*.f64 x.im (/.f64 (/.f64 y.re y.im) y.im)) (/.f64 x.im y.re)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))))
(fma.f64 -1/2 (fma.f64 (/.f64 y.re y.im) (/.f64 x.im y.im) (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 -1/2 (*.f64 (/.f64 (/.f64 y.re y.im) y.im) (+.f64 x.im (/.f64 (*.f64 y.re x.re) y.im))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(*.f64 -1 (/.f64 x.im y.re))
(neg.f64 (/.f64 x.im y.re))
(/.f64 (neg.f64 x.im) y.re)
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (*.f64 -1 (/.f64 x.re y.im)))
(*.f64 -1 (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(-.f64 (neg.f64 (/.f64 x.re y.im)) (/.f64 x.im y.re))
(-.f64 (/.f64 (neg.f64 x.im) y.re) (/.f64 x.re y.im))
(-.f64 (neg.f64 (/.f64 x.im y.re)) (/.f64 x.re y.im))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (*.f64 1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2)))))
(fma.f64 -1 (/.f64 x.im y.re) (fma.f64 -1 (/.f64 x.re y.im) (/.f64 (*.f64 1/2 (*.f64 x.im y.re)) (*.f64 y.im y.im))))
(-.f64 (-.f64 (*.f64 (/.f64 1/2 y.im) (/.f64 (*.f64 x.im y.re) y.im)) (/.f64 x.re y.im)) (/.f64 x.im y.re))
(-.f64 (*.f64 (/.f64 y.re (*.f64 (/.f64 y.im x.im) y.im)) 1/2) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(neg.f64 (+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (*.f64 x.im (/.f64 (/.f64 y.re y.im) y.im)) (/.f64 x.im y.re))))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))))))
(fma.f64 -1 (/.f64 x.im y.re) (fma.f64 -1 (/.f64 x.re y.im) (*.f64 1/2 (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im))))))
(-.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)))) (/.f64 x.re y.im)) (/.f64 x.im y.re))
(-.f64 (*.f64 1/2 (fma.f64 (/.f64 y.re y.im) (/.f64 x.im y.im) (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(-.f64 (neg.f64 (/.f64 x.im y.re)) (fma.f64 -1/2 (*.f64 (/.f64 (/.f64 y.re y.im) y.im) (+.f64 x.im (/.f64 (*.f64 y.re x.re) y.im))) (/.f64 x.re y.im)))
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 (/.f64 y.im (/.f64 y.re x.im)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 (*.f64 (/.f64 y.im y.re) x.im) (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 (*.f64 x.im (/.f64 y.im y.re)) (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 (/.f64 y.im (/.f64 y.re x.im)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 (*.f64 (/.f64 y.im y.re) x.im) (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 (*.f64 x.im (/.f64 y.im y.re)) (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
(*.f64 (/.f64 y.im (/.f64 y.re x.im)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 (*.f64 (/.f64 y.im y.re) x.im) (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 (*.f64 x.im (/.f64 y.im y.re)) (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 (/.f64 y.im y.re) x.im x.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
x.re
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(/.f64 (*.f64 y.im x.im) y.re)
(/.f64 y.im (/.f64 y.re x.im))
(*.f64 (/.f64 y.im y.re) x.im)
(*.f64 x.im (/.f64 y.im y.re))
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))
(fma.f64 (/.f64 y.im y.re) x.im x.re)

eval319.0ms (2%)

Compiler

Compiled 14721 to 5857 computations (60.2% saved)

prune236.0ms (1.5%)

Pruning

30 alts after pruning (20 fresh and 10 done)

PrunedKeptTotal
New7055710
Fresh41519
Picked011
Done1910
Total71030740
Error
0.1b
Counts
740 → 30
Alt Table
Click to see full alt table
StatusErrorProgram
31.3b
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
40.3b
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
53.8b
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
36.7b
(/.f64 x.im y.im)
37.0b
(*.f64 (/.f64 1 y.re) x.re)
59.7b
(/.f64 x.re y.im)
44.9b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
37.2b
(/.f64 1 (/.f64 y.re x.re))
40.2b
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
57.4b
(*.f64 (/.f64 -1 y.re) x.re)
58.9b
(/.f64 (neg.f64 x.im) y.re)
54.2b
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
33.9b
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
49.8b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (exp.f64 (log.f64 (*.f64 y.im (/.f64 x.im y.re))))))
40.3b
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
59.8b
(neg.f64 (/.f64 x.re y.im))
43.3b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
44.9b
(/.f64 x.re (hypot.f64 y.re y.im))
40.4b
(/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.re x.re)))
36.9b
(/.f64 x.re y.re)
52.3b
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
27.2b
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))
31.7b
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
32.8b
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
32.0b
(fma.f64 (*.f64 (/.f64 y.re y.im) x.re) (/.f64 1 y.im) (/.f64 x.im y.im))
59.0b
(/.f64 x.im y.re)
38.7b
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
51.1b
(*.f64 y.im (pow.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.im y.re)) 2))
43.3b
(/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))
57.4b
(/.f64 (neg.f64 x.re) y.re)
Compiler

Compiled 360 to 236 computations (34.4% saved)

regimes985.0ms (6.3%)

Counts
53 → 5
Calls
Call 1
Inputs
(/.f64 x.re y.im)
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 (neg.f64 x.re) y.re)
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 (/.f64 x.re y.im))
(/.f64 (neg.f64 x.re) y.re)
(/.f64 1 (/.f64 y.re x.re))
(*.f64 (/.f64 1 y.re) x.re)
(*.f64 (/.f64 -1 y.re) x.re)
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 x.re (/.f64 (*.f64 x.im y.re) y.im))))
(/.f64 x.re (hypot.f64 y.re y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.im)
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(fma.f64 (*.f64 (/.f64 y.re y.im) x.re) (/.f64 1 y.im) (/.f64 x.im y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))
(/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.re x.re)))
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) 2)
(*.f64 y.im (pow.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.im y.re)) 2))
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (exp.f64 (log.f64 (*.f64 y.im (/.f64 x.im y.re))))))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (exp.f64 (log.f64 (*.f64 y.im (/.f64 x.im y.re))))))
(/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))
(/.f64 (fma.f64 (*.f64 y.re (cbrt.f64 (*.f64 x.re x.re))) (cbrt.f64 x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2)
(*.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) 2) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))
Outputs
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
Calls

5 calls:

383.0ms
x.im
210.0ms
x.re
200.0ms
y.im
142.0ms
y.re
33.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Results
ErrorSegmentsBranch
13.9b5x.re
12.0b9x.im
9.4b5y.re
7.7b5y.im
9.4b2(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Compiler

Compiled 575 to 201 computations (65% saved)

bsearch246.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
23.0ms
9.109495027883992e+52
4.843721839438302e+61
186.0ms
2.1467359209255283e-160
3.265772373462802e-158
13.0ms
-3.3330078632935484e-109
-1.1061502750867015e-120
23.0ms
-1.6221103327553225e+66
-8.793106772578725e+61
Compiler

Compiled 100 to 63 computations (37% saved)

regimes932.0ms (6%)

Counts
49 → 5
Calls
Call 1
Inputs
(/.f64 x.re y.im)
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 (neg.f64 x.re) y.re)
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 (/.f64 x.re y.im))
(/.f64 (neg.f64 x.re) y.re)
(/.f64 1 (/.f64 y.re x.re))
(*.f64 (/.f64 1 y.re) x.re)
(*.f64 (/.f64 -1 y.re) x.re)
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 x.re (/.f64 (*.f64 x.im y.re) y.im))))
(/.f64 x.re (hypot.f64 y.re y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.im)
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(fma.f64 (*.f64 (/.f64 y.re y.im) x.re) (/.f64 1 y.im) (/.f64 x.im y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))
(/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.re x.re)))
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) 2)
(*.f64 y.im (pow.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.im y.re)) 2))
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (exp.f64 (log.f64 (*.f64 y.im (/.f64 x.im y.re))))))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (exp.f64 (log.f64 (*.f64 y.im (/.f64 x.im y.re))))))
(/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))
Outputs
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re)))
(/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
Calls

5 calls:

280.0ms
y.im
264.0ms
x.im
189.0ms
x.re
148.0ms
y.re
34.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Results
ErrorSegmentsBranch
13.9b5x.re
12.1b9x.im
9.4b5y.re
7.7b5y.im
9.4b2(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Compiler

Compiled 508 to 182 computations (64.2% saved)

bsearch117.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
37.0ms
9.109495027883992e+52
4.843721839438302e+61
10.0ms
2.1467359209255283e-160
3.265772373462802e-158
17.0ms
-2.199989447611039e-107
-3.3330078632935484e-109
52.0ms
-1.6221103327553225e+66
-8.793106772578725e+61
Compiler

Compiled 100 to 63 computations (37% saved)

regimes1.3s (8.2%)

Counts
48 → 5
Calls
Call 1
Inputs
(/.f64 x.re y.im)
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 (neg.f64 x.re) y.re)
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 (/.f64 x.re y.im))
(/.f64 (neg.f64 x.re) y.re)
(/.f64 1 (/.f64 y.re x.re))
(*.f64 (/.f64 1 y.re) x.re)
(*.f64 (/.f64 -1 y.re) x.re)
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 x.re (/.f64 (*.f64 x.im y.re) y.im))))
(/.f64 x.re (hypot.f64 y.re y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.im)
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(fma.f64 (*.f64 (/.f64 y.re y.im) x.re) (/.f64 1 y.im) (/.f64 x.im y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(/.f64 (fma.f64 y.im (/.f64 x.im y.re) x.re) (hypot.f64 y.re y.im))
(/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.re x.re)))
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) 2)
(*.f64 y.im (pow.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.im y.re)) 2))
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (exp.f64 (log.f64 (*.f64 y.im (/.f64 x.im y.re))))))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (exp.f64 (log.f64 (*.f64 y.im (/.f64 x.im y.re))))))
Outputs
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))
Calls

5 calls:

365.0ms
y.re
350.0ms
y.im
247.0ms
x.im
203.0ms
x.re
101.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Results
ErrorSegmentsBranch
16.5b6x.re
17.2b6x.im
10.2b5y.re
9.4b5y.im
11.4b5(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Compiler

Compiled 492 to 178 computations (63.8% saved)

bsearch90.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
24.0ms
4.843721839438302e+61
2.286412138494984e+72
27.0ms
2.1467359209255283e-160
3.265772373462802e-158
13.0ms
-3.3330078632935484e-109
-1.1061502750867015e-120
25.0ms
-4.303166916027757e+49
-5.264218662406005e+48
Compiler

Compiled 98 to 63 computations (35.7% saved)

regimes487.0ms (3.1%)

Counts
38 → 5
Calls
Call 1
Inputs
(/.f64 x.re y.im)
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 (neg.f64 x.re) y.re)
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 (/.f64 x.re y.im))
(/.f64 (neg.f64 x.re) y.re)
(/.f64 1 (/.f64 y.re x.re))
(*.f64 (/.f64 1 y.re) x.re)
(*.f64 (/.f64 -1 y.re) x.re)
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 x.re (/.f64 (*.f64 x.im y.re) y.im))))
(/.f64 x.re (hypot.f64 y.re y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.im)
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(fma.f64 (*.f64 (/.f64 y.re y.im) x.re) (/.f64 1 y.im) (/.f64 x.im y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))
Outputs
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))
Calls

5 calls:

143.0ms
y.im
115.0ms
x.im
95.0ms
x.re
88.0ms
y.re
34.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Results
ErrorSegmentsBranch
19.4b6x.re
21.4b5x.im
10.2b5y.re
9.6b5y.im
16.0b3(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Compiler

Compiled 368 to 135 computations (63.3% saved)

bsearch73.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
24.0ms
4.843721839438302e+61
2.286412138494984e+72
11.0ms
2.1467359209255283e-160
3.265772373462802e-158
14.0ms
-3.3330078632935484e-109
-1.1061502750867015e-120
24.0ms
-4.303166916027757e+49
-5.264218662406005e+48
Compiler

Compiled 98 to 63 computations (35.7% saved)

regimes973.0ms (6.2%)

Counts
37 → 5
Calls
Call 1
Inputs
(/.f64 x.re y.im)
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 (neg.f64 x.re) y.re)
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 (/.f64 x.re y.im))
(/.f64 (neg.f64 x.re) y.re)
(/.f64 1 (/.f64 y.re x.re))
(*.f64 (/.f64 1 y.re) x.re)
(*.f64 (/.f64 -1 y.re) x.re)
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 x.re (/.f64 (*.f64 x.im y.re) y.im))))
(/.f64 x.re (hypot.f64 y.re y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re)
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.im)
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
(*.f64 (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))) y.re)
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(*.f64 y.im (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))))
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(fma.f64 (*.f64 (/.f64 y.re y.im) x.re) (/.f64 1 y.im) (/.f64 x.im y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
Outputs
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
Calls

5 calls:

346.0ms
y.re
267.0ms
x.im
166.0ms
x.re
140.0ms
y.im
40.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Results
ErrorSegmentsBranch
19.4b6x.re
21.4b5x.im
10.2b5y.re
9.6b5y.im
16.0b3(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Compiler

Compiled 355 to 130 computations (63.4% saved)

bsearch155.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
62.0ms
9.109495027883992e+52
4.843721839438302e+61
18.0ms
2.1467359209255283e-160
3.265772373462802e-158
29.0ms
-3.3330078632935484e-109
-1.1061502750867015e-120
45.0ms
-4.303166916027757e+49
-5.264218662406005e+48
Compiler

Compiled 98 to 63 computations (35.7% saved)

regimes338.0ms (2.2%)

Counts
22 → 7
Calls
Call 1
Inputs
(/.f64 x.re y.im)
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 (neg.f64 x.re) y.re)
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 (/.f64 x.re y.im))
(/.f64 (neg.f64 x.re) y.re)
(/.f64 1 (/.f64 y.re x.re))
(*.f64 (/.f64 1 y.re) x.re)
(*.f64 (/.f64 -1 y.re) x.re)
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Outputs
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
Calls

4 calls:

107.0ms
x.im
92.0ms
x.re
79.0ms
y.im
55.0ms
y.re
Results
ErrorSegmentsBranch
19.8b8x.re
21.2b10x.im
12.9b3y.re
11.9b7y.im
Compiler

Compiled 172 to 70 computations (59.3% saved)

bsearch148.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
26.0ms
9.109495027883992e+52
4.843721839438302e+61
35.0ms
6.458230857498665e+31
2.510179362781669e+33
26.0ms
3.554156736768857e-55
2.5437452616339756e-47
0.0ms
-6.028754331286264e-63
-5.808455293922013e-63
27.0ms
-3.2539367517734567e-15
-1.3009067631020288e-17
33.0ms
-6.000877851733397e+40
-3.427021358215987e+39
Compiler

Compiled 26 to 17 computations (34.6% saved)

regimes313.0ms (2%)

Counts
21 → 3
Calls
Call 1
Inputs
(/.f64 x.re y.im)
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 (neg.f64 x.re) y.re)
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 (/.f64 x.re y.im))
(/.f64 (neg.f64 x.re) y.re)
(/.f64 1 (/.f64 y.re x.re))
(*.f64 (/.f64 1 y.re) x.re)
(*.f64 (/.f64 -1 y.re) x.re)
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Outputs
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
Calls

4 calls:

110.0ms
x.re
95.0ms
x.im
61.0ms
y.im
41.0ms
y.re
Results
ErrorSegmentsBranch
18.4b11x.re
21.2b10x.im
12.9b3y.re
13.1b5y.im
Compiler

Compiled 161 to 68 computations (57.8% saved)

bsearch50.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
25.0ms
15054256.082764637
2461869735833139.5
24.0ms
-1.367277341472856e-24
-7.632879109888262e-28
Compiler

Compiled 26 to 17 computations (34.6% saved)

regimes378.0ms (2.4%)

Counts
19 → 3
Calls
Call 1
Inputs
(/.f64 x.re y.im)
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 (neg.f64 x.re) y.re)
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 (/.f64 x.re y.im))
(/.f64 (neg.f64 x.re) y.re)
(/.f64 1 (/.f64 y.re x.re))
(*.f64 (/.f64 1 y.re) x.re)
(*.f64 (/.f64 -1 y.re) x.re)
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (/.f64 y.re y.im) y.im) x.re))
Outputs
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
Calls

4 calls:

183.0ms
x.re
99.0ms
x.im
60.0ms
y.im
31.0ms
y.re
Results
ErrorSegmentsBranch
18.4b11x.re
22.6b10x.im
13.0b3y.re
13.1b5y.im
Compiler

Compiled 139 to 62 computations (55.4% saved)

bsearch82.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
41.0ms
15054256.082764637
2461869735833139.5
41.0ms
-1.367277341472856e-24
-7.632879109888262e-28
Compiler

Compiled 26 to 17 computations (34.6% saved)

regimes636.0ms (4.1%)

Counts
16 → 3
Calls
Call 1
Inputs
(/.f64 x.re y.im)
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 (neg.f64 x.re) y.re)
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 (/.f64 x.re y.im))
(/.f64 (neg.f64 x.re) y.re)
(/.f64 1 (/.f64 y.re x.re))
(*.f64 (/.f64 1 y.re) x.re)
(*.f64 (/.f64 -1 y.re) x.re)
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
Outputs
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(/.f64 x.im y.im)
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
Calls

4 calls:

342.0ms
x.re
163.0ms
x.im
61.0ms
y.re
61.0ms
y.im
Results
ErrorSegmentsBranch
21.1b11x.re
23.8b11x.im
16.2b3y.re
17.9b3y.im
Compiler

Compiled 106 to 53 computations (50% saved)

bsearch169.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
76.0ms
2.7459503277662954e-44
2.1969539350645013e-32
92.0ms
-1.367277341472856e-24
-7.632879109888262e-28
Compiler

Compiled 26 to 17 computations (34.6% saved)

regimes411.0ms (2.6%)

Counts
15 → 3
Calls
Call 1
Inputs
(/.f64 x.re y.im)
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 (neg.f64 x.re) y.re)
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 (/.f64 x.re y.im))
(/.f64 (neg.f64 x.re) y.re)
(/.f64 1 (/.f64 y.re x.re))
(*.f64 (/.f64 1 y.re) x.re)
(*.f64 (/.f64 -1 y.re) x.re)
(*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
Outputs
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 x.re y.re)
Calls

4 calls:

153.0ms
x.re
139.0ms
x.im
59.0ms
y.im
53.0ms
y.re
Results
ErrorSegmentsBranch
25.8b9x.re
26.6b7x.im
20.1b3y.re
22.3b3y.im
Compiler

Compiled 95 to 48 computations (49.5% saved)

bsearch164.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
73.0ms
15054256.082764637
2461869735833139.5
90.0ms
-1.367277341472856e-24
-7.632879109888262e-28
Compiler

Compiled 26 to 17 computations (34.6% saved)

regimes39.0ms (0.2%)

Counts
3 → 1
Calls
Call 1
Inputs
(/.f64 x.re y.im)
(/.f64 x.im y.re)
(/.f64 x.re y.re)
Outputs
(/.f64 x.re y.re)
Calls

4 calls:

10.0ms
x.re
9.0ms
y.re
8.0ms
y.im
8.0ms
x.im
Results
ErrorSegmentsBranch
36.9b1x.re
36.9b1x.im
36.9b1y.re
36.9b1y.im
Compiler

Compiled 33 to 23 computations (30.3% saved)

regimes130.0ms (0.8%)

Accuracy

Total -4.5b remaining (-7.9%)

Threshold costs -4.5b (-7.9%)

Counts
2 → 3
Calls
Call 1
Inputs
(/.f64 x.re y.im)
(/.f64 x.im y.re)
Outputs
(/.f64 x.im y.re)
(/.f64 x.re y.im)
(/.f64 x.im y.re)
Calls

4 calls:

54.0ms
x.im
46.0ms
y.im
20.0ms
y.re
7.0ms
x.re
Results
ErrorSegmentsBranch
59.0b1x.re
59.0b1x.im
57.4b3y.re
57.9b2y.im
Compiler

Compiled 30 to 22 computations (26.7% saved)

bsearch84.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
46.0ms
1.0545691943241164e-31
7.315769684671265e-21
38.0ms
-2.725526912866907e+110
-5.856922794707092e+109
Compiler

Compiled 26 to 17 computations (34.6% saved)

simplify90.0ms (0.6%)

Algorithm
egg-herbie
Rules
18×*-commutative_binary64
16×+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0113977
1140977
2155977
3168977
4181971
5190971
6193971
7194971
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 y.im -1622110332755322480204545363255664959162602314137840388533578104832) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))
(if (<=.f64 y.im -1622110332755322480204545363255664959162602314137840388533578104832) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re))) (if (<=.f64 y.im -5288447750321989/5288447750321988791615322464262168318627237463714249754277190362195246329890490766601513683517722278780729696200186866434048) (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))
(if (<=.f64 y.im -43031669160277568686214527057293639013081102155776) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im 48437218394383017462183925042116150094644408842420379239579648) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))))))
(if (<=.f64 y.im -43031669160277568686214527057293639013081102155776) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im 48437218394383017462183925042116150094644408842420379239579648) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))))))
(if (<=.f64 y.im -43031669160277568686214527057293639013081102155776) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))
(if (<=.f64 y.im -60008778517333968587606905213949344481280) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (if (<=.f64 y.im -8249709752980635/2535301200456458802993406410752) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im -5558020283391177/926336713898529563388567880069503262826159877325124512315660672063305037119488) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (if (<=.f64 y.im 2452988827391553/6901746346790563787434755862277025452451108972170386555162524223799296) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im 64582308574986648267069180608512) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))))
(if (<=.f64 y.re -7444165919900027/5444517870735015415413993718908291383296) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))) (if (<=.f64 y.re 4041096096317699/268435456) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))))
(if (<=.f64 y.re -7444165919900027/5444517870735015415413993718908291383296) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.re 4041096096317699/268435456) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))))
(if (<=.f64 y.re -7444165919900027/5444517870735015415413993718908291383296) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.re 1378928765416595/50216813883093446110686315385661331328818843555712276103168) (/.f64 x.im y.im) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))))
(if (<=.f64 y.re -7444165919900027/5444517870735015415413993718908291383296) (/.f64 x.re y.re) (if (<=.f64 y.re 4041096096317699/268435456) (/.f64 x.im y.im) (/.f64 x.re y.re)))
(/.f64 x.re y.re)
(if (<=.f64 y.re -272552691286690696887401295374857761059632693355112805195135315172086158258904002765970401756565606210876735488) (/.f64 x.im y.re) (if (<=.f64 y.re 2408210319036605/22835963083295358096932575511191922182123945984) (/.f64 x.re y.im) (/.f64 x.im y.re)))
(/.f64 x.re y.im)
Outputs
(if (<=.f64 y.im -1622110332755322480204545363255664959162602314137840388533578104832) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))
(if (<=.f64 y.im -1622110332755322480204545363255664959162602314137840388533578104832) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 y.re (/.f64 x.re y.im)))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))
(if (<=.f64 y.im -1622110332755322480204545363255664959162602314137840388533578104832) (*.f64 (+.f64 x.im (*.f64 y.re (/.f64 x.re y.im))) (/.f64 -1 (hypot.f64 y.re y.im))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))
(if (<=.f64 y.im -1622110332755322480204545363255664959162602314137840388533578104832) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re))) (if (<=.f64 y.im -5288447750321989/5288447750321988791615322464262168318627237463714249754277190362195246329890490766601513683517722278780729696200186866434048) (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))
(if (<=.f64 y.im -1622110332755322480204545363255664959162602314137840388533578104832) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 y.re (/.f64 x.re y.im)))) (if (<=.f64 y.im -5288447750321989/5288447750321988791615322464262168318627237463714249754277190362195246329890490766601513683517722278780729696200186866434048) (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))
(if (<=.f64 y.im -1622110332755322480204545363255664959162602314137840388533578104832) (*.f64 (+.f64 x.im (*.f64 y.re (/.f64 x.re y.im))) (/.f64 -1 (hypot.f64 y.re y.im))) (if (<=.f64 y.im -5288447750321989/5288447750321988791615322464262168318627237463714249754277190362195246329890490766601513683517722278780729696200186866434048) (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))
(if (<=.f64 y.im -43031669160277568686214527057293639013081102155776) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 x.re y.im) y.re))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im 48437218394383017462183925042116150094644408842420379239579648) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))))))
(if (<=.f64 y.im -43031669160277568686214527057293639013081102155776) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 y.re (/.f64 x.re y.im)))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (if (<=.f64 y.im 48437218394383017462183925042116150094644408842420379239579648) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 y.re (/.f64 x.re y.im))))))))
(if (<=.f64 y.im -43031669160277568686214527057293639013081102155776) (*.f64 (+.f64 x.im (*.f64 y.re (/.f64 x.re y.im))) (/.f64 -1 (hypot.f64 y.re y.im))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (if (<=.f64 y.im 48437218394383017462183925042116150094644408842420379239579648) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 y.re (/.f64 x.re y.im))))))))
(if (<=.f64 y.im -43031669160277568686214527057293639013081102155776) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im 48437218394383017462183925042116150094644408842420379239579648) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))))))
(if (<=.f64 y.im -43031669160277568686214527057293639013081102155776) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (if (<=.f64 y.im 48437218394383017462183925042116150094644408842420379239579648) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (*.f64 y.re (/.f64 x.re y.im))))))))
(if (<=.f64 y.im -43031669160277568686214527057293639013081102155776) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))
(if (<=.f64 y.im -43031669160277568686214527057293639013081102155776) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (if (<=.f64 y.im -3384606560206073/338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 7914572847139345/7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))
(if (<=.f64 y.im -60008778517333968587606905213949344481280) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (if (<=.f64 y.im -8249709752980635/2535301200456458802993406410752) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im -5558020283391177/926336713898529563388567880069503262826159877325124512315660672063305037119488) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (if (<=.f64 y.im 2452988827391553/6901746346790563787434755862277025452451108972170386555162524223799296) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.im 64582308574986648267069180608512) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))))
(if (<=.f64 y.im -60008778517333968587606905213949344481280) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (if (<=.f64 y.im -8249709752980635/2535301200456458802993406410752) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (if (<=.f64 y.im -5558020283391177/926336713898529563388567880069503262826159877325124512315660672063305037119488) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (if (<=.f64 y.im 2452988827391553/6901746346790563787434755862277025452451108972170386555162524223799296) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (if (<=.f64 y.im 64582308574986648267069180608512) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 91094950278839917730507817843394656359981172530348032) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (+.f64 (/.f64 x.im y.im) (/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))))))))))
(if (<=.f64 y.re -7444165919900027/5444517870735015415413993718908291383296) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))) (if (<=.f64 y.re 4041096096317699/268435456) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))))
(if (<=.f64 y.re -7444165919900027/5444517870735015415413993718908291383296) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (if (<=.f64 y.re 4041096096317699/268435456) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re))))))
(if (<=.f64 y.re -7444165919900027/5444517870735015415413993718908291383296) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.re 4041096096317699/268435456) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))))
(if (<=.f64 y.re -7444165919900027/5444517870735015415413993718908291383296) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (if (<=.f64 y.re 4041096096317699/268435456) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re))) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re))))))
(if (<=.f64 y.re -7444165919900027/5444517870735015415413993718908291383296) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im))) (if (<=.f64 y.re 1378928765416595/50216813883093446110686315385661331328818843555712276103168) (/.f64 x.im y.im) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))))
(if (<=.f64 y.re -7444165919900027/5444517870735015415413993718908291383296) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re)))) (if (<=.f64 y.re 1378928765416595/50216813883093446110686315385661331328818843555712276103168) (/.f64 x.im y.im) (*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 y.im (/.f64 x.im y.re))))))
(if (<=.f64 y.re -7444165919900027/5444517870735015415413993718908291383296) (/.f64 x.re y.re) (if (<=.f64 y.re 4041096096317699/268435456) (/.f64 x.im y.im) (/.f64 x.re y.re)))
(/.f64 x.re y.re)
(if (<=.f64 y.re -272552691286690696887401295374857761059632693355112805195135315172086158258904002765970401756565606210876735488) (/.f64 x.im y.re) (if (<=.f64 y.re 2408210319036605/22835963083295358096932575511191922182123945984) (/.f64 x.re y.im) (/.f64 x.im y.re)))
(/.f64 x.re y.im)
Compiler

Compiled 717 to 353 computations (50.8% saved)

soundness356.0ms (2.3%)

Algorithm
egg-herbie
Rules
928×associate-/r/_binary64
840×*-commutative_binary64
819×associate-/l*_binary64
819×associate-/l*_binary64
819×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01883406
15963195
221723168
01883406
15963195
221723168
01883406
15963195
221723168
0121188
1211188
2401116
3861116
42291116
58421116
639051116
748061116
850161116
952351116
1054631116
1158001116
1272321116
Stop Event
node limit
node limit
node limit
node limit
Compiler

Compiled 286 to 192 computations (32.9% saved)

end171.0ms (1.1%)

Compiler

Compiled 669 to 208 computations (68.9% saved)

Profiling

Loading profile data...