Details

Time bar (total: 21.2s)

analyze984.0ms (4.6%)

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.9s (8.8%)

Results
1.8s8256×body256valid
65.0ms470×body256infinite
Bogosity

preprocess19.0ms (0.1%)

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)

simplify7.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)

prune2.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
26.9b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
26.9b
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im)))
26.9b
(/.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 36 to 20 computations (44.4% saved)

localize15.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
0.7b
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
26.4b
(/.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)

series18.0ms (0.1%)

Counts
3 → 120
Calls

30 calls:

TimeVariablePointExpression
2.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.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.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
y.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)))

rewrite81.0ms (0.4%)

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
01234
126432
2383132
Stop Event
node limit
Counts
3 → 165
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))
(+.f64 (*.f64 y.re y.re) (*.f64 y.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))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 y.re y.im) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (/.f64 1 (+.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 (pow.f64 y.re 4) (pow.f64 y.im 4)) (/.f64 1 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 y.re 4) (-.f64 (pow.f64 y.im 4) (pow.f64 (*.f64 y.re y.im) 2))) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.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 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.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 /.f64 (neg.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (neg.f64 (+.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 (neg.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (neg.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (-.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 y.re y.im) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (pow.f64 y.re 4) (-.f64 (pow.f64 y.im 4) (pow.f64 (*.f64 y.re y.im) 2))) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y.re y.re))) (pow.f64 (exp.f64 y.im) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y.re) y.re) (+.f64 1 (expm1.f64 (*.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y.re y.re))) (+.f64 1 (expm1.f64 (*.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y.im y.im))) (pow.f64 (exp.f64 y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y.im) y.im) (+.f64 1 (expm1.f64 (*.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y.im y.im))) (+.f64 1 (expm1.f64 (*.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (hypot.f64 y.re y.im))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.re y.re (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.im y.im (*.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.re y.re) 1 (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im y.im) 1 (*.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y.re y.re) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y.re) 2) (cbrt.f64 (pow.f64 y.re 4)) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y.re) 2) (*.f64 (cbrt.f64 y.re) y.re) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 y.re 4)) (pow.f64 (cbrt.f64 y.re) 2) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y.im) 2) (cbrt.f64 (pow.f64 y.im 4)) (*.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (cbrt.f64 y.im) y.im) (*.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 y.im 4)) (pow.f64 (cbrt.f64 y.im) 2) (*.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y.im) (*.f64 (sqrt.f64 y.im) y.im) (*.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y.re) (*.f64 (sqrt.f64 y.re) y.re) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (sqrt.f64 y.im)) (sqrt.f64 y.im) (*.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.re (sqrt.f64 y.re)) (sqrt.f64 y.re) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.re (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 y.im) (*.f64 y.re y.re))))))

simplify699.0ms (3.3%)

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
0461854
11311710
24611629
326441578
467721578
Stop Event
node limit
Counts
285 → 195
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))
(pow.f64 y.im 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.re 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.re 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.re 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.im 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.im 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
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))
(pow.f64 y.im 2)
(*.f64 y.im y.im)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(pow.f64 y.re 2)
(*.f64 y.re y.re)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(pow.f64 y.re 2)
(*.f64 y.re y.re)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(pow.f64 y.re 2)
(*.f64 y.re y.re)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(pow.f64 y.im 2)
(*.f64 y.im y.im)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(pow.f64 y.im 2)
(*.f64 y.im y.im)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))

localize12.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 y.re y.re (*.f64 y.im y.im))
0.5b
(fma.f64 x.re y.re (*.f64 x.im y.im))
26.4b
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im)))
Compiler

Compiled 39 to 9 computations (76.9% saved)

series16.0ms (0.1%)

Counts
3 → 120
Calls

30 calls:

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

rewrite71.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
512×log-prod_binary64
397×exp-prod_binary64
340×pow-prod-down_binary64
271×pow2_binary64
271×prod-diff_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01034
120332
2257332
Stop Event
node limit
Counts
3 → 119
Calls
Call 1
Inputs
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im)))
(fma.f64 x.re y.re (*.f64 x.im y.im))
(fma.f64 y.re y.re (*.f64 y.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 (pow.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (fma.f64 x.re y.re (*.f64 x.im y.im)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.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 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (fma.f64 x.re y.re (*.f64 x.im y.im))))) (log.f64 (sqrt.f64 (pow.f64 (exp.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 (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)) (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 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) (cbrt.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 *.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 4)) (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 (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))) (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 (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))) (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 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) (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 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4))) (/.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)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4))) (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))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4))) (/.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 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 (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 (exp.f64 1) (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 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) 6)) 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 pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.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 (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 pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))) (sqrt.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 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 (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 (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 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 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) (pow.f64 (hypot.f64 y.re y.im) 6)))))) (#(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 exp.f64 (*.f64 (log.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 exp.f64 (*.f64 (log.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 exp.f64 (*.f64 (log.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 exp.f64 (*.f64 (log.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 exp.f64 (*.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) 1))))))
((#(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 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (#(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 (*.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))) (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 (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 pow.f64 (exp.f64 1) (log.f64 (fma.f64 x.re 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 x.re y.re (*.f64 x.im y.im)))) 2)) (cbrt.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (sqrt.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))))) (#(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.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.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 exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x.re 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 x.re y.re (*.f64 x.im y.im)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (hypot.f64 y.re y.im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y.re y.re) 1) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (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) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 y.re y.im) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.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 (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 (pow.f64 (hypot.f64 y.re y.im) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 y.re y.im) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 y.re y.im) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 y.re y.im) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (*.f64 2 (log.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 2 (log.f64 (hypot.f64 y.re y.im)))) 2)) (cbrt.f64 (*.f64 2 (log.f64 (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (*.f64 2 (log.f64 (hypot.f64 y.re y.im))))) (sqrt.f64 (*.f64 2 (log.f64 (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 y.re y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y.im y.im))) (pow.f64 (exp.f64 y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y.re) y.re) (+.f64 1 (expm1.f64 (*.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (hypot.f64 y.re y.im))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 y.re y.im) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (hypot.f64 y.re y.im))) 1) 1))))))

simplify91.0ms (0.4%)

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
0461854
11311710
24611629
326441578
467721578
Stop Event
node limit
Counts
239 → 150
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))
(pow.f64 y.im 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.re 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.re 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.re 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.im 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.im 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
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))
(pow.f64 y.im 2)
(*.f64 y.im y.im)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(pow.f64 y.re 2)
(*.f64 y.re y.re)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(pow.f64 y.re 2)
(*.f64 y.re y.re)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(pow.f64 y.re 2)
(*.f64 y.re y.re)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(pow.f64 y.im 2)
(*.f64 y.im y.im)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(pow.f64 y.im 2)
(*.f64 y.im y.im)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(fma.f64 y.im y.im (*.f64 y.re y.re))

eval87.0ms (0.4%)

Compiler

Compiled 6448 to 2005 computations (68.9% saved)

prune157.0ms (0.7%)

Pruning

19 alts after pruning (18 fresh and 1 done)

PrunedKeptTotal
New32718345
Fresh000
Picked101
Done011
Total32819347
Error
0.7b
Counts
347 → 19
Alt Table
Click to see full alt table
StatusErrorProgram
38.8b
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
30.0b
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
41.8b
(/.f64 x.im y.im)
39.9b
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
17.0b
(*.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.7b
(/.f64 x.re y.re)
26.5b
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))
43.2b
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))
43.8b
(/.f64 (pow.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
41.7b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.re))
39.3b
(+.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))))
26.9b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (fma.f64 y.im y.im (*.f64 y.re y.re)))
34.1b
(+.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))))
36.8b
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
47.5b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))
38.4b
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2)
26.9b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))
26.9b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
43.2b
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Compiler

Compiled 581 to 347 computations (40.3% saved)

localize26.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.5b
(fma.f64 x.re y.re (*.f64 x.im y.im))
15.8b
(/.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)

series34.0ms (0.2%)

Counts
3 → 120
Calls

30 calls:

TimeVariablePointExpression
8.0ms
y.im
@-inf
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))
2.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))
1.0ms
y.im
@inf
(/.f64 1 (hypot.f64 y.re y.im))

rewrite226.0ms (1.1%)

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
01241
124538
2312938
Stop Event
node limit
Counts
3 → 133
Calls
Call 1
Inputs
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 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 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 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))))))

simplify122.0ms (0.6%)

Algorithm
egg-herbie
Rules
819×associate-/l*_binary64
563×associate-/r*_binary64
532×associate-*r*_binary64
507×associate-*l*_binary64
428×associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01873106
15942859
221712832
Stop Event
node limit
Counts
253 → 223
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 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 x.im (*.f64 y.im (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(+.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(+.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(+.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(+.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(+.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(+.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.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 x.im (*.f64 (/.f64 y.re y.im) x.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))))
(fma.f64 -1/2 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))
(fma.f64 -1/2 (*.f64 (/.f64 y.re (/.f64 y.im (/.f64 x.im y.im))) y.re) (+.f64 x.im (*.f64 (/.f64 y.re y.im) x.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 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 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 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (fma.f64 -1/2 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) (+.f64 x.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)) (fma.f64 -1/2 (*.f64 (/.f64 y.re (/.f64 y.im (/.f64 x.im y.im))) y.re) (+.f64 x.im (*.f64 (/.f64 y.re y.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 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 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.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 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)) x.im) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) (fma.f64 -1/2 (*.f64 (/.f64 x.im (pow.f64 y.re 3)) (pow.f64 y.im 3)) (+.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 y.im (/.f64 y.re x.im))))
(-.f64 (neg.f64 x.re) (/.f64 y.im (/.f64 y.re x.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 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 -1 (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))))
(fma.f64 (*.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im y.im) y.re)) 1/2 (-.f64 (neg.f64 x.re) (/.f64 y.im (/.f64 y.re x.im))))
(-.f64 (fma.f64 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) 1/2 (/.f64 (neg.f64 x.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 (/.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 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (fma.f64 -1 (/.f64 y.im (/.f64 y.re x.im)) (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 (*.f64 y.im y.im) y.re)) 1/2 (-.f64 (-.f64 (*.f64 (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)) x.im) 1/2) x.re) (/.f64 y.im (/.f64 y.re x.im))))
(fma.f64 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) 1/2 (-.f64 (*.f64 (*.f64 (/.f64 x.im (pow.f64 y.re 3)) (pow.f64 y.im 3)) 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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(+.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(+.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(*.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 x.im (*.f64 y.im (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(+.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(+.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(*.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 x.im (*.f64 y.im (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(+.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im x.im)))
(+.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)))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 y.re x.re (*.f64 y.im 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 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 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.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 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)) x.im) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))))
(fma.f64 -1/2 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) (fma.f64 -1/2 (*.f64 (/.f64 x.im (pow.f64 y.re 3)) (pow.f64 y.im 3)) (+.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 x.im (*.f64 (/.f64 y.re y.im) x.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))))
(fma.f64 -1/2 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) (+.f64 x.im (*.f64 (/.f64 x.re y.im) y.re)))
(fma.f64 -1/2 (*.f64 (/.f64 y.re (/.f64 y.im (/.f64 x.im y.im))) y.re) (+.f64 x.im (*.f64 (/.f64 y.re y.im) x.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 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 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 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (fma.f64 -1/2 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) (+.f64 x.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)) (fma.f64 -1/2 (*.f64 (/.f64 y.re (/.f64 y.im (/.f64 x.im y.im))) y.re) (+.f64 x.im (*.f64 (/.f64 y.re y.im) x.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 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.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 y.re (/.f64 y.im (/.f64 x.im y.im))) y.re) 1/2) (+.f64 x.im (*.f64 (/.f64 y.re y.im) x.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 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im))))))
(-.f64 (fma.f64 1/2 (+.f64 (*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) y.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3))) (neg.f64 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 x.re (*.f64 (/.f64 y.im (pow.f64 y.re 3)) y.im)))) (+.f64 x.im (*.f64 (/.f64 y.re 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 y.re (/.f64 (*.f64 y.im y.im) x.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re 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 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))
(+.f64 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.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 y.re y.im) (/.f64 x.re y.im)) (*.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 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))))))
(+.f64 (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))) (-.f64 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.re)) (*.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 (/.f64 x.re 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 y.im x.im) (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re (/.f64 x.im y.re))))
(+.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 (*.f64 y.im x.im) (*.f64 y.re y.re))))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re (/.f64 x.im y.re)))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.re y.re) (-.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (*.f64 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) 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 (*.f64 y.im x.im) (*.f64 y.re y.re)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re (/.f64 x.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 x.re y.re) (-.f64 (-.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (*.f64 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) y.im) x.re)) (*.f64 (/.f64 x.im (pow.f64 y.re 4)) (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 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re (/.f64 x.im y.re))))
(+.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 (*.f64 y.im x.im) (*.f64 y.re y.re))))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re (/.f64 x.im y.re)))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.re y.re) (-.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (*.f64 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) 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 (*.f64 y.im x.im) (*.f64 y.re y.re)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re (/.f64 x.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 x.re y.re) (-.f64 (-.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (*.f64 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) y.im) x.re)) (*.f64 (/.f64 x.im (pow.f64 y.re 4)) (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 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re (/.f64 x.im y.re))))
(+.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 (*.f64 y.im x.im) (*.f64 y.re y.re))))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re (/.f64 x.im y.re)))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.re y.re) (-.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (*.f64 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) 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 (*.f64 y.im x.im) (*.f64 y.re y.re)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re (/.f64 x.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 x.re y.re) (-.f64 (-.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (*.f64 (*.f64 (/.f64 y.im (pow.f64 y.re 3)) y.im) x.re)) (*.f64 (/.f64 x.im (pow.f64 y.re 4)) (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 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)))
(+.f64 (/.f64 x.im y.im) (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re 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 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))
(+.f64 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.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 y.re y.im) (/.f64 x.re y.im)) (*.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 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))))))
(+.f64 (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))) (-.f64 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.re)) (*.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 (/.f64 x.re 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 y.re (/.f64 (*.f64 y.im y.im) x.re)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re 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 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))
(+.f64 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.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 y.re y.im) (/.f64 x.re y.im)) (*.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 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))))))
(+.f64 (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))) (-.f64 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.re)) (*.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 (/.f64 x.re 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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.re (/.f64 (pow.f64 y.im 3) y.re)) (/.f64 1 y.im))
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.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 y.re (/.f64 (pow.f64 y.im 3) y.re)) (/.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 y.re) (pow.f64 y.im 3)) (/.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 (*.f64 -5/16 (pow.f64 y.re 6)) (pow.f64 y.im 7)))))
(+.f64 (fma.f64 -1/2 (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)) (/.f64 (*.f64 -5/16 (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 1 y.im)))
(+.f64 (/.f64 (*.f64 -5/16 (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)) (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.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 y.im (/.f64 (pow.f64 y.re 3) y.im)) (/.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 y.im (/.f64 (pow.f64 y.re 3) y.im)) (/.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 y.im (/.f64 (pow.f64 y.re 3) y.im)) (/.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 (*.f64 1/2 (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 1 y.re))
(fma.f64 1/2 (/.f64 y.im (/.f64 (pow.f64 y.re 3) y.im)) (/.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 y.im (/.f64 (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)))
(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 y.im (/.f64 (pow.f64 y.re 3) y.im)) (/.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 y.im (/.f64 (pow.f64 y.re 3) y.im)) (/.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 y.im (/.f64 (pow.f64 y.re 3) y.im)) (/.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 y.im (/.f64 (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))))
(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 y.re (/.f64 (pow.f64 y.im 3) y.re)) (/.f64 1 y.im))
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.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 y.re (/.f64 (pow.f64 y.im 3) y.re)) (/.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 y.re) (pow.f64 y.im 3)) (/.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 (*.f64 (*.f64 y.re y.re) -1/2) (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 y.re) (pow.f64 y.im 3)) (/.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 y.re (/.f64 (pow.f64 y.im 3) y.re)) (/.f64 -1 y.im))
(fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (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 (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 y.re (/.f64 (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)))
(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)))
(-.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 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)) 1/8))) (fma.f64 1/2 (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)) (/.f64 -1 y.im)))
(+.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))) (+.f64 (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 (*.f64 (pow.f64 y.re 6) 3/16) (pow.f64 y.im 7))) (/.f64 -1 y.im)))

localize10.0ms (0%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

localize18.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))
21.6b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))
Compiler

Compiled 35 to 9 computations (74.3% saved)

series12.0ms (0.1%)

Counts
1 → 48
Calls

12 calls:

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

rewrite103.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
584×log-prod_binary64
413×pow-prod-down_binary64
331×fma-def_binary64
293×pow2_binary64
202×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01014
121614
2307914
Stop Event
node limit
Counts
1 → 44
Calls
Call 1
Inputs
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.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 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 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 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 y.im -2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 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 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 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 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 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) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 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 y.im -2))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im) 4)) (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 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))) (pow.f64 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))) y.im) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 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 (*.f64 y.im (neg.f64 y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 y.im -2) (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)) y.im) (/.f64 1 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y.im) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 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) y.im) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 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))) (*.f64 y.im 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))) (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (cbrt.f64 y.im) y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 y.im) 2)))))) (#(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) (*.f64 (cbrt.f64 y.im) y.im)) (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 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))) (*.f64 (cbrt.f64 y.im) y.im)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 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))) 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))) 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 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))) y.im) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 y.im 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 y.im 6)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (*.f64 y.im y.im) (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)) (*.f64 y.im (neg.f64 y.im))))))) (#(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))) 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 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 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))) y.im) 6))))) (#(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 y.im 6)))))) (#(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 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 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 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 y.im -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 y.im y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))) -1))))))

simplify177.0ms (0.8%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
011660
120660
238588
384588
4227588
5839588
63882588
74783588
84993588
95213588
105441588
115776588
127223588
Stop Event
node limit
Counts
92 → 49
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 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 (*.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))
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 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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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 (/.f64 x.re y.im) y.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 (/.f64 y.re 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 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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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 (/.f64 x.re y.im) y.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 (/.f64 y.re 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 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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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 (/.f64 x.re y.im) y.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 (/.f64 y.re 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 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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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 (/.f64 x.re y.im) y.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 (/.f64 y.re 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 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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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 (/.f64 x.re y.im) y.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 (/.f64 y.re 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 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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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 (/.f64 x.re y.im) y.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(*.f64 x.re (/.f64 (/.f64 y.re 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 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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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.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)))
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im))
(fma.f64 y.re (/.f64 (/.f64 x.re y.im) 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))

localize16.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 y.im y.im (*.f64 y.re y.re))
9.2b
(/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))
10.7b
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
Compiler

Compiled 34 to 8 computations (76.5% saved)

series28.0ms (0.1%)

Counts
3 → 96
Calls

24 calls:

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

rewrite98.0ms (0.5%)

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
0833
116530
2215230
Stop Event
node limit
Counts
3 → 74
Calls
Call 1
Inputs
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re)))
(fma.f64 y.im y.im (*.f64 y.re y.re))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 y.re (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) (*.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.im y.re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y.re x.re)) (neg.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y.re x.re) 1) (pow.f64 (hypot.f64 y.im y.re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y.re x.re) (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.re x.re) (hypot.f64 y.im y.re)) (hypot.f64 y.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x.re) y.re) (neg.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (neg.f64 x.re)) (neg.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y.re (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (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.re (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.im y.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y.re) (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y.re 3) (pow.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2)) 3) (pow.f64 y.re 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y.re (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y.re (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y.re (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x.re (/.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (cbrt.f64 x.re) (/.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2))) (pow.f64 (cbrt.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2))) 2) (cbrt.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) (/.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.re) (hypot.f64 y.im y.re)) (/.f64 (sqrt.f64 x.re) (hypot.f64 y.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x.re) (/.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.re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) 1) (/.f64 (cbrt.f64 x.re) (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.re) 1) (/.f64 (sqrt.f64 x.re) (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.re (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.re) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (cbrt.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.re) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 (sqrt.f64 x.re) (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.re (hypot.f64 y.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (hypot.f64 y.im y.re)) (/.f64 (cbrt.f64 x.re) (hypot.f64 y.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x.re (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.re (pow.f64 (hypot.f64 y.im y.re) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 x.re) (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.re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 x.re (neg.f64 (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 x.re 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.re (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 x.re (pow.f64 (hypot.f64 y.im y.re) 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y.im y.im) 1) (*.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 y.im y.re) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (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 (hypot.f64 y.im y.re) (hypot.f64 y.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y.im y.im) 3) (pow.f64 (*.f64 y.re y.re) 3)) (+.f64 (*.f64 (*.f64 y.im y.im) (*.f64 y.im y.im)) (-.f64 (pow.f64 y.re 4) (*.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 y.im y.im) (*.f64 y.im y.im)) (pow.f64 y.re 4)) (-.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 y.im y.re) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (hypot.f64 y.im y.re) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 y.im y.re) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (hypot.f64 y.im y.re) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 y.im y.re) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))))))

simplify112.0ms (0.5%)

Algorithm
egg-herbie
Rules
694×times-frac_binary64
410×distribute-rgt-neg-in_binary64
377×associate-/l*_binary64
356×associate-/r*_binary64
325×distribute-lft-neg-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0842025
12381884
27711809
347231770
Stop Event
node limit
Counts
170 → 115
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))))))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (pow.f64 y.re 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (/.f64 x.re (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 6)) (/.f64 x.re (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 8))) (/.f64 x.re (pow.f64 y.re 2)))))
(/.f64 x.re (pow.f64 y.im 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (/.f64 x.re (pow.f64 y.im 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.re (pow.f64 y.im 2)) (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.re (pow.f64 y.im 2)) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 8))))))
(/.f64 x.re (pow.f64 y.im 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (/.f64 x.re (pow.f64 y.im 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.re (pow.f64 y.im 2)) (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.re (pow.f64 y.im 2)) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 8))))))
(/.f64 x.re (pow.f64 y.im 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (/.f64 x.re (pow.f64 y.im 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.re (pow.f64 y.im 2)) (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.re (pow.f64 y.im 2)) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 8))))))
(/.f64 x.re (pow.f64 y.re 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (/.f64 x.re (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 6)) (/.f64 x.re (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 8))) (/.f64 x.re (pow.f64 y.re 2)))))
(/.f64 x.re (pow.f64 y.re 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (/.f64 x.re (pow.f64 y.re 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 6)) (/.f64 x.re (pow.f64 y.re 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 8))) (/.f64 x.re (pow.f64 y.re 2)))))
(pow.f64 y.re 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.im 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.im 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.im 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.re 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(pow.f64 y.re 2)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (pow.f64 y.re 2) (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 x.re (/.f64 y.im (/.f64 y.re y.im)))
(*.f64 (/.f64 y.re y.im) (/.f64 x.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 x.re (/.f64 (*.f64 y.im y.im) y.re)))
(-.f64 (/.f64 x.re (/.f64 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 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 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.re (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5)))))
(+.f64 (-.f64 (/.f64 x.re (/.f64 y.im (/.f64 y.re y.im))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))) (/.f64 (pow.f64 y.re 5) (/.f64 (pow.f64 y.im 6) x.re)))
(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 (/.f64 x.re (*.f64 y.im y.im)) y.re (*.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 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 x.re (/.f64 (*.f64 y.im y.im) y.re)) (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 x.re (/.f64 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 (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 -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 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 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4)) (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4) (/.f64 x.re y.re)) (+.f64 (*.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) x.re) (*.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 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 -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 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 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4)) (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4) (/.f64 x.re y.re)) (+.f64 (*.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) x.re) (*.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) (+.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 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))))
(/.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 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))))
(/.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 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))))
(/.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 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))))
(/.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 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))))
(/.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 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))))
(/.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 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))))
(/.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 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))))
(/.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 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))))
(/.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 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))))
(/.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 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))))
(/.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 x.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im))))
(/.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 -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 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 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4)) (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 7))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 4) (/.f64 x.re y.re)) (+.f64 (*.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) x.re) (*.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) (pow.f64 y.im 2))
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))
(/.f64 x.re (/.f64 y.im (/.f64 y.re y.im)))
(*.f64 (/.f64 y.re y.im) (/.f64 x.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 x.re (/.f64 (*.f64 y.im y.im) y.re)))
(-.f64 (/.f64 x.re (/.f64 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 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 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.re (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5)))))
(+.f64 (-.f64 (/.f64 x.re (/.f64 y.im (/.f64 y.re y.im))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))) (/.f64 (pow.f64 y.re 5) (/.f64 (pow.f64 y.im 6) x.re)))
(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 (/.f64 x.re (*.f64 y.im y.im)) y.re (*.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 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 x.re (/.f64 (*.f64 y.im y.im) y.re)) (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 x.re (/.f64 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 (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 x.re (/.f64 (*.f64 y.im y.im) y.re))
(/.f64 x.re (/.f64 y.im (/.f64 y.re y.im)))
(*.f64 (/.f64 y.re y.im) (/.f64 x.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 x.re (/.f64 (*.f64 y.im y.im) y.re)))
(-.f64 (/.f64 x.re (/.f64 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 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 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (/.f64 x.re (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5)))))
(+.f64 (-.f64 (/.f64 x.re (/.f64 y.im (/.f64 y.re y.im))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))) (/.f64 (pow.f64 y.re 5) (/.f64 (pow.f64 y.im 6) x.re)))
(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 (/.f64 x.re (*.f64 y.im y.im)) y.re (*.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 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 x.re (/.f64 (*.f64 y.im y.im) y.re)) (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 x.re (/.f64 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 (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 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 x.re (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 x.re (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))
(/.f64 x.re (fma.f64 y.re y.re (*.f64 y.im y.im)))
(/.f64 x.re (pow.f64 y.re 2))
(/.f64 x.re (*.f64 y.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (/.f64 x.re (pow.f64 y.re 2)))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))) (/.f64 x.re (*.f64 y.re y.re)))
(-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (*.f64 y.im y.im)))
(-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 4))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 6)) (/.f64 x.re (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re (*.f64 y.re y.re)) (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 4)))))
(+.f64 (-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 4))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 4) (/.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 4))))
(+.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (-.f64 (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re)) (*.f64 y.im y.im))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 8))) (/.f64 x.re (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 4))) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 8) (pow.f64 y.im 6))) (/.f64 x.re (*.f64 y.re y.re)))))
(+.f64 (-.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 4))) (*.f64 (/.f64 x.re (pow.f64 y.re 8)) (pow.f64 y.im 6))) (-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (*.f64 y.im y.im))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 4) (-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)) x.re))) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 4))))
(+.f64 (/.f64 x.re (*.f64 y.re y.re)) (-.f64 (*.f64 x.re (-.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)))) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 4)))))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (/.f64 x.re (pow.f64 y.im 2)))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re))) (/.f64 x.re (*.f64 y.im y.im)))
(-.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re))))
(-.f64 (/.f64 x.re (*.f64 y.im y.im)) (*.f64 (*.f64 y.re y.re) (/.f64 x.re (pow.f64 y.im 4))))
(-.f64 (/.f64 x.re (*.f64 y.im y.im)) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)) x.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.re (pow.f64 y.im 2)) (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6))))
(+.f64 (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re))) (/.f64 x.re (*.f64 y.im y.im))) (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6)))
(+.f64 (-.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re)))) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 6) x.re)))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 4) (/.f64 x.re (*.f64 y.im y.im))) (*.f64 (*.f64 y.re y.re) (/.f64 x.re (pow.f64 y.im 4))))
(+.f64 (/.f64 x.re (*.f64 y.im y.im)) (*.f64 x.re (-.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 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.re (pow.f64 y.im 2)) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 8))))))
(+.f64 (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re))) (/.f64 x.re (*.f64 y.im y.im))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6)) (neg.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 8) (pow.f64 y.re 6))))))
(+.f64 (-.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re)))) (-.f64 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 6) x.re)) (*.f64 (/.f64 x.re (pow.f64 y.im 8)) (pow.f64 y.re 6))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 4) (/.f64 x.re (*.f64 y.im y.im))) (+.f64 (*.f64 (pow.f64 y.re 6) (/.f64 x.re (pow.f64 y.im 8))) (*.f64 (*.f64 y.re y.re) (/.f64 x.re (pow.f64 y.im 4)))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 4) (/.f64 x.re (*.f64 y.im y.im))) (*.f64 x.re (+.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 8)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)))))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (/.f64 x.re (pow.f64 y.im 2)))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re))) (/.f64 x.re (*.f64 y.im y.im)))
(-.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re))))
(-.f64 (/.f64 x.re (*.f64 y.im y.im)) (*.f64 (*.f64 y.re y.re) (/.f64 x.re (pow.f64 y.im 4))))
(-.f64 (/.f64 x.re (*.f64 y.im y.im)) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)) x.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.re (pow.f64 y.im 2)) (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6))))
(+.f64 (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re))) (/.f64 x.re (*.f64 y.im y.im))) (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6)))
(+.f64 (-.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re)))) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 6) x.re)))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 4) (/.f64 x.re (*.f64 y.im y.im))) (*.f64 (*.f64 y.re y.re) (/.f64 x.re (pow.f64 y.im 4))))
(+.f64 (/.f64 x.re (*.f64 y.im y.im)) (*.f64 x.re (-.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 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.re (pow.f64 y.im 2)) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 8))))))
(+.f64 (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re))) (/.f64 x.re (*.f64 y.im y.im))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6)) (neg.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 8) (pow.f64 y.re 6))))))
(+.f64 (-.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re)))) (-.f64 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 6) x.re)) (*.f64 (/.f64 x.re (pow.f64 y.im 8)) (pow.f64 y.re 6))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 4) (/.f64 x.re (*.f64 y.im y.im))) (+.f64 (*.f64 (pow.f64 y.re 6) (/.f64 x.re (pow.f64 y.im 8))) (*.f64 (*.f64 y.re y.re) (/.f64 x.re (pow.f64 y.im 4)))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 4) (/.f64 x.re (*.f64 y.im y.im))) (*.f64 x.re (+.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 8)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)))))
(/.f64 x.re (pow.f64 y.im 2))
(/.f64 x.re (*.f64 y.im y.im))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (/.f64 x.re (pow.f64 y.im 2)))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re))) (/.f64 x.re (*.f64 y.im y.im)))
(-.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re))))
(-.f64 (/.f64 x.re (*.f64 y.im y.im)) (*.f64 (*.f64 y.re y.re) (/.f64 x.re (pow.f64 y.im 4))))
(-.f64 (/.f64 x.re (*.f64 y.im y.im)) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)) x.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.re (pow.f64 y.im 2)) (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6))))
(+.f64 (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re))) (/.f64 x.re (*.f64 y.im y.im))) (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6)))
(+.f64 (-.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re)))) (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 6) x.re)))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 4) (/.f64 x.re (*.f64 y.im y.im))) (*.f64 (*.f64 y.re y.re) (/.f64 x.re (pow.f64 y.im 4))))
(+.f64 (/.f64 x.re (*.f64 y.im y.im)) (*.f64 x.re (-.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 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.re (pow.f64 y.im 2)) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6)) (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 8))))))
(+.f64 (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re))) (/.f64 x.re (*.f64 y.im y.im))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 6)) (neg.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 8) (pow.f64 y.re 6))))))
(+.f64 (-.f64 (/.f64 x.re (*.f64 y.im y.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re)))) (-.f64 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 6) x.re)) (*.f64 (/.f64 x.re (pow.f64 y.im 8)) (pow.f64 y.re 6))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 4) (/.f64 x.re (*.f64 y.im y.im))) (+.f64 (*.f64 (pow.f64 y.re 6) (/.f64 x.re (pow.f64 y.im 8))) (*.f64 (*.f64 y.re y.re) (/.f64 x.re (pow.f64 y.im 4)))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 4) (/.f64 x.re (*.f64 y.im y.im))) (*.f64 x.re (+.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 8)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 4)))))
(/.f64 x.re (pow.f64 y.re 2))
(/.f64 x.re (*.f64 y.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (/.f64 x.re (pow.f64 y.re 2)))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))) (/.f64 x.re (*.f64 y.re y.re)))
(-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (*.f64 y.im y.im)))
(-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 4))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 6)) (/.f64 x.re (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re (*.f64 y.re y.re)) (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 4)))))
(+.f64 (-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 4))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 4) (/.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 4))))
(+.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (-.f64 (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re)) (*.f64 y.im y.im))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 8))) (/.f64 x.re (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 4))) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 8) (pow.f64 y.im 6))) (/.f64 x.re (*.f64 y.re y.re)))))
(+.f64 (-.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 4))) (*.f64 (/.f64 x.re (pow.f64 y.re 8)) (pow.f64 y.im 6))) (-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (*.f64 y.im y.im))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 4) (-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)) x.re))) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 4))))
(+.f64 (/.f64 x.re (*.f64 y.re y.re)) (-.f64 (*.f64 x.re (-.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)))) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 4)))))
(/.f64 x.re (pow.f64 y.re 2))
(/.f64 x.re (*.f64 y.re y.re))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (/.f64 x.re (pow.f64 y.re 2)))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))) (/.f64 x.re (*.f64 y.re y.re)))
(-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (*.f64 y.im y.im)))
(-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 4))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 6)) (/.f64 x.re (pow.f64 y.re 2))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re (*.f64 y.re y.re)) (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 4)))))
(+.f64 (-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (*.f64 y.im y.im))) (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 4))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 4) (/.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 4))))
(+.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (-.f64 (/.f64 (pow.f64 y.im 4) (*.f64 y.re y.re)) (*.f64 y.im y.im))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 6)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 8))) (/.f64 x.re (pow.f64 y.re 2)))))
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 4) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 4))) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 8) (pow.f64 y.im 6))) (/.f64 x.re (*.f64 y.re y.re)))))
(+.f64 (-.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 4))) (*.f64 (/.f64 x.re (pow.f64 y.re 8)) (pow.f64 y.im 6))) (-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (*.f64 y.im y.im))))
(-.f64 (fma.f64 (/.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 4) (-.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)) x.re))) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 4))))
(+.f64 (/.f64 x.re (*.f64 y.re y.re)) (-.f64 (*.f64 x.re (-.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 6)) (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 8)))) (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 4)))))
(pow.f64 y.re 2)
(*.f64 y.re y.re)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(pow.f64 y.im 2)
(*.f64 y.im y.im)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(pow.f64 y.im 2)
(*.f64 y.im y.im)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(pow.f64 y.im 2)
(*.f64 y.im y.im)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(pow.f64 y.re 2)
(*.f64 y.re y.re)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(pow.f64 y.re 2)
(*.f64 y.re y.re)
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))
(+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))
(fma.f64 y.re y.re (*.f64 y.im y.im))

localize21.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 y.im y.im (*.f64 y.re y.re))
0.7b
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
26.4b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (fma.f64 y.im y.im (*.f64 y.re y.re)))
Compiler

Compiled 44 to 10 computations (77.3% saved)

series9.0ms (0%)

Counts
1 → 48
Calls

12 calls:

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

rewrite88.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
615×log-prod_binary64
441×pow-prod-down_binary64
355×fma-def_binary64
315×pow2_binary64
217×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01118
123417
2323517
Stop Event
node limit
Counts
1 → 39
Calls
Call 1
Inputs
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (fma.f64 y.im y.im (*.f64 y.re y.re)))
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 (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)) (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 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) (cbrt.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 *.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 4)) (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 (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))) (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 (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))) (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 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) (fma.f64 x.re y.re (*.f64 x.im 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))) (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 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4))) (/.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 (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) 4))) (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))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4))) (/.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 (pow.f64 (cbrt.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 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 (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 (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) (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 (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 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) (pow.f64 (hypot.f64 y.re y.im) 6)))))) (#(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))))))

simplify110.0ms (0.5%)

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

Useful iterations: 3 (0.0ms)

IterNodesCost
0451314
11281206
24551125
326381074
467731074
Stop Event
node limit
Counts
87 → 59
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))))))
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 y.im (/.f64 (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 (/.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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.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 x.re (/.f64 y.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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)))
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.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 x.re (/.f64 y.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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) 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 (*.f64 y.re x.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re 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 (*.f64 y.re x.re) (*.f64 y.im y.im)) (+.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 y.re y.im) (/.f64 x.re y.im)) (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)))
(-.f64 (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)) (/.f64 y.re (/.f64 (pow.f64 y.im 3) (*.f64 x.im 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 (/.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 (*.f64 y.re x.re) (*.f64 y.im y.im)) (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 y.re y.im) (/.f64 x.re y.im)) (-.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))
(+.f64 (-.f64 (/.f64 x.im y.im) (/.f64 y.re (/.f64 (pow.f64 y.im 3) (*.f64 x.im y.re)))) (*.f64 (/.f64 (/.f64 x.re 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 x.im (*.f64 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 y.im x.im) (*.f64 y.re y.re)))
(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 y.im (/.f64 (*.f64 y.re y.re) x.im))))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))) (*.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 x.re (pow.f64 y.re 3))))
(-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 (/.f64 (*.f64 y.im x.re) y.re) x.im)))
(+.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 y.im (/.f64 (*.f64 y.re y.re) x.im)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)))
(-.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 x.re (pow.f64 y.re 3)))))
(-.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 y.im (/.f64 (*.f64 y.re y.re) x.im)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))
(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 y.im (/.f64 (*.f64 y.re y.re) x.im))))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))) (*.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 x.re (pow.f64 y.re 3))))
(-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 (/.f64 (*.f64 y.im x.re) y.re) x.im)))
(+.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 y.im (/.f64 (*.f64 y.re y.re) x.im)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)))
(-.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 x.re (pow.f64 y.re 3)))))
(-.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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(*.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 x.re (/.f64 y.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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.im (/.f64 (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 (/.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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.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 y.im (/.f64 (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 (/.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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (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 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
(+.f64 (/.f64 y.im (/.f64 (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))
(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 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) 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 x.im) (*.f64 y.re y.re)))
(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 y.im (/.f64 (*.f64 y.re y.re) x.im))))
(-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))) (*.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 x.re (pow.f64 y.re 3))))
(-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 (/.f64 (*.f64 y.im x.re) y.re) x.im)))
(+.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 y.im (/.f64 (*.f64 y.re y.re) x.im)))))
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (/.f64 (*.f64 x.im (pow.f64 y.im 3)) (pow.f64 y.re 4)))
(-.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 x.re (pow.f64 y.re 3)))))
(-.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 (*.f64 y.re x.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re 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 (*.f64 y.re x.re) (*.f64 y.im y.im)) (+.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 y.re y.im) (/.f64 x.re y.im)) (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)))
(-.f64 (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)) (/.f64 y.re (/.f64 (pow.f64 y.im 3) (*.f64 x.im 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 (/.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 (*.f64 y.re x.re) (*.f64 y.im y.im)) (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 y.re y.im) (/.f64 x.re y.im)) (-.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))
(+.f64 (-.f64 (/.f64 x.im y.im) (/.f64 y.re (/.f64 (pow.f64 y.im 3) (*.f64 x.im y.re)))) (*.f64 (/.f64 (/.f64 x.re 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 x.im (*.f64 y.re (/.f64 x.re 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 y.re x.re) (*.f64 y.im y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re 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 (*.f64 y.re x.re) (*.f64 y.im y.im)) (+.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 y.re y.im) (/.f64 x.re y.im)) (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)))
(-.f64 (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)) (/.f64 y.re (/.f64 (pow.f64 y.im 3) (*.f64 x.im 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 (/.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 (*.f64 y.re x.re) (*.f64 y.im y.im)) (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 y.re y.im) (/.f64 x.re y.im)) (-.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))
(+.f64 (-.f64 (/.f64 x.im y.im) (/.f64 y.re (/.f64 (pow.f64 y.im 3) (*.f64 x.im y.re)))) (*.f64 (/.f64 (/.f64 x.re 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 x.im (*.f64 y.re (/.f64 x.re y.im)))))

eval247.0ms (1.2%)

Compiler

Compiled 12604 to 4595 computations (63.5% saved)

prune200.0ms (0.9%)

Pruning

30 alts after pruning (26 fresh and 4 done)

PrunedKeptTotal
New64020660
Fresh7613
Picked011
Done235
Total64930679
Error
0.3b
Counts
679 → 30
Alt Table
Click to see full alt table
StatusErrorProgram
33.6b
(/.f64 (/.f64 (*.f64 y.re x.re) (hypot.f64 y.im y.re)) (hypot.f64 y.im y.re))
41.7b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.re))
38.8b
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
34.0b
(*.f64 y.re (*.f64 (/.f64 1 (hypot.f64 y.im y.re)) (/.f64 x.re (hypot.f64 y.im y.re))))
41.8b
(/.f64 x.im y.im)
38.8b
(/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.im y.re) 2))
44.1b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
26.5b
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))
43.2b
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))
54.5b
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))
30.0b
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)))
48.5b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
36.7b
(/.f64 x.re y.re)
42.6b
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im) (/.f64 1 y.im))
26.9b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
43.2b
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
55.1b
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
39.3b
(+.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))))
47.6b
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.im y.re)) 2)
26.9b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (fma.f64 y.im y.im (*.f64 y.re y.re)))
45.8b
(*.f64 y.re (/.f64 x.re (*.f64 y.re y.re)))
17.0b
(/.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))))
44.0b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re)))
34.1b
(-.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 (/.f64 (*.f64 y.im x.re) y.re) x.im)))
36.8b
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
47.5b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))
51.2b
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))
46.7b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re)))
53.0b
(*.f64 x.re (/.f64 (/.f64 y.re y.im) y.im))
43.5b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (fma.f64 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) 1/2 (/.f64 (neg.f64 x.im) (/.f64 y.re y.im))) x.re))
Compiler

Compiled 859 to 531 computations (38.2% saved)

localize26.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.5b
(fma.f64 x.re y.re (*.f64 x.im y.im))
15.8b
(/.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)

series22.0ms (0.1%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
2.0ms
y.re
@0
(/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))
2.0ms
x.re
@inf
(/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))
2.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.im
@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)))

rewrite111.0ms (0.5%)

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)))))))

simplify138.0ms (0.6%)

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))

localize6.0ms (0%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

localize18.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 35 to 9 computations (74.3% saved)

series19.0ms (0.1%)

Counts
2 → 84
Calls

21 calls:

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

rewrite110.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
664×log-prod_binary64
364×fma-def_binary64
318×pow2_binary64
251×log-div_binary64
229×pow-unpow_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify209.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
230 → 151
Calls
Call 1
Inputs
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.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 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) (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 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) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.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 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) (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 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) (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 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) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.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 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) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
Outputs
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))

localize16.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 26 to 12 computations (53.8% saved)

series27.0ms (0.1%)

Counts
2 → 60
Calls

15 calls:

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

rewrite79.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
740×pow1_binary64
679×add-log-exp_binary64
679×log1p-expm1-u_binary64
679×expm1-log1p-u_binary64
664×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0913
118111
2223811
Stop Event
node limit
Counts
2 → 48
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
(hypot.f64 y.re y.im)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 x.im (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 x.im (hypot.f64 y.re y.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 0 (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 y.re y.im) x.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x.im (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x.im (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 x.im) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 x.im) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 (hypot.f64 y.re y.im) x.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x.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 x.im 1) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x.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 pow.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 x.im (hypot.f64 y.re y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 x.im (hypot.f64 y.re y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 x.im (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 x.im (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 x.im 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.im 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x.im 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.im (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 x.im (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 x.im (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 1 (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 y.re y.im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (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 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))))) (#(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 (hypot.f64 y.re y.im) 1)))) (#(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 /.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (pow.f64 (hypot.f64 y.re y.im) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (hypot.f64 y.re y.im)) -1)))) (#(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 (pow.f64 (hypot.f64 y.re y.im) 3) 1/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 (sqrt.f64 (hypot.f64 y.re y.im)) 2)))) (#(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 sqrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (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 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 y.re y.im)))))))

simplify83.0ms (0.4%)

Algorithm
egg-herbie
Rules
846×times-frac_binary64
784×associate-/l*_binary64
658×associate-*r*_binary64
645×associate-*l*_binary64
454×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01861646
15771542
220991498
Stop Event
node limit
Counts
108 → 116
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 x.im y.im))
(+.f64 (*.f64 -1 (/.f64 x.im y.im)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))
(+.f64 (*.f64 -1 (/.f64 x.im y.im)) (+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.im (pow.f64 y.im 5))) (*.f64 -1/8 (/.f64 x.im (pow.f64 y.im 5)))) (pow.f64 y.re 4)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 x.im (pow.f64 y.im 5))) (*.f64 -1/8 (/.f64 x.im (pow.f64 y.im 5)))) (pow.f64 y.im 2))) (*.f64 1/8 (/.f64 x.im (pow.f64 y.im 7)))) (pow.f64 y.re 6)) (+.f64 (*.f64 -1 (/.f64 x.im y.im)) (+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.im (pow.f64 y.im 5))) (*.f64 -1/8 (/.f64 x.im (pow.f64 y.im 5)))) (pow.f64 y.re 4)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(*.f64 -1 (/.f64 x.im y.re))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 5))) (+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 5))))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 5))) (+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 y.im 4) x.im)) (*.f64 -1/8 (*.f64 (pow.f64 y.im 4) x.im))) (pow.f64 y.im 2)) (pow.f64 y.re 7))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.im 6) x.im) (pow.f64 y.re 7))) (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 5))))))))
(/.f64 x.im y.re)
(+.f64 (/.f64 x.im y.re) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 y.im 4) x.im)) (*.f64 -1/8 (*.f64 (pow.f64 y.im 4) x.im))) (pow.f64 y.re 5))) (+.f64 (/.f64 x.im y.re) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 y.im 4) x.im)) (*.f64 -1/8 (*.f64 (pow.f64 y.im 4) x.im))) (pow.f64 y.re 5))) (+.f64 (/.f64 x.im y.re) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 y.im 6) x.im)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 y.im 4) x.im)) (*.f64 -1/8 (*.f64 (pow.f64 y.im 4) x.im))) (pow.f64 y.im 2)))) (pow.f64 y.re 7))))))
(*.f64 -1 (/.f64 x.im y.re))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (*.f64 (pow.f64 y.im 4) (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.re 5))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.re 5)))))))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (+.f64 (*.f64 (pow.f64 y.im 4) (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.re 5))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.re 5))))) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.re 5))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.re 5)))) (pow.f64 y.re 2))) (*.f64 1/8 (/.f64 x.im (pow.f64 y.re 7)))) (pow.f64 y.im 6)))))
(*.f64 -1 (/.f64 x.im y.im))
(+.f64 (*.f64 -1 (/.f64 x.im y.im)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5))) (+.f64 (*.f64 -1 (/.f64 x.im y.im)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (+.f64 (*.f64 -1 (/.f64 x.im y.im)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.re 2)) (pow.f64 y.im 7))) (*.f64 1/2 (/.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/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))
(+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 y.re 6) x.im)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.re 2)))) (pow.f64 y.im 7))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
y.im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)) y.im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)) y.im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)) (+.f64 y.im (*.f64 1/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 5))))))
y.re
(+.f64 y.re (*.f64 1/2 (/.f64 (pow.f64 y.im 2) y.re)))
(+.f64 y.re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) y.re)) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))
(+.f64 y.re (+.f64 (*.f64 1/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) y.re)) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))))
(*.f64 -1 y.re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) y.re)) (*.f64 -1 y.re))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) y.re)) (+.f64 (*.f64 -1 y.re) (*.f64 1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) y.re)) (+.f64 (*.f64 -1 y.re) (*.f64 1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))))
y.re
(+.f64 y.re (*.f64 1/2 (/.f64 (pow.f64 y.im 2) y.re)))
(+.f64 y.re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) y.re)) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))
(+.f64 y.re (+.f64 (*.f64 1/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) y.re)) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))))
y.im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)) y.im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)) y.im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)) (+.f64 y.im (*.f64 1/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 5))))))
(*.f64 -1 y.im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) y.im)) (*.f64 -1 y.im))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) y.im)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (*.f64 -1 y.im)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) y.im)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 5))) (*.f64 -1 y.im))))
Outputs
(*.f64 -1 (/.f64 x.im y.im))
(neg.f64 (/.f64 x.im y.im))
(/.f64 (neg.f64 x.im) y.im)
(+.f64 (*.f64 -1 (/.f64 x.im y.im)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))
(fma.f64 -1 (/.f64 x.im y.im) (*.f64 1/2 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))))
(-.f64 (/.f64 (*.f64 1/2 (*.f64 x.im (*.f64 y.re y.re))) (pow.f64 y.im 3)) (/.f64 x.im y.im))
(-.f64 (*.f64 (/.f64 1/2 (pow.f64 y.im 3)) (*.f64 x.im (*.f64 y.re y.re))) (/.f64 x.im y.im))
(+.f64 (*.f64 -1 (/.f64 x.im y.im)) (+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.im (pow.f64 y.im 5))) (*.f64 -1/8 (/.f64 x.im (pow.f64 y.im 5)))) (pow.f64 y.re 4)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(fma.f64 -1 (/.f64 x.im y.im) (fma.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 5)) -3/8) (pow.f64 y.re 4) (*.f64 1/2 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))
(-.f64 (fma.f64 (/.f64 (*.f64 x.im -3/8) (pow.f64 y.im 5)) (pow.f64 y.re 4) (/.f64 (*.f64 1/2 (*.f64 x.im (*.f64 y.re y.re))) (pow.f64 y.im 3))) (/.f64 x.im y.im))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)) (*.f64 (/.f64 (*.f64 x.im -3/8) (pow.f64 y.im 5)) (pow.f64 y.re 4))) (/.f64 x.im y.im))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 x.im (pow.f64 y.im 5))) (*.f64 -1/8 (/.f64 x.im (pow.f64 y.im 5)))) (pow.f64 y.im 2))) (*.f64 1/8 (/.f64 x.im (pow.f64 y.im 7)))) (pow.f64 y.re 6)) (+.f64 (*.f64 -1 (/.f64 x.im y.im)) (+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.im (pow.f64 y.im 5))) (*.f64 -1/8 (/.f64 x.im (pow.f64 y.im 5)))) (pow.f64 y.re 4)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(fma.f64 (fma.f64 -1/2 (/.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 5)) -3/8) (*.f64 y.im y.im)) (*.f64 1/8 (/.f64 x.im (pow.f64 y.im 7)))) (pow.f64 y.re 6) (fma.f64 -1 (/.f64 x.im y.im) (fma.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 5)) -3/8) (pow.f64 y.re 4) (*.f64 1/2 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))))))
(fma.f64 (fma.f64 -1/2 (/.f64 (/.f64 (*.f64 x.im -3/8) (pow.f64 y.im 5)) (*.f64 y.im y.im)) (/.f64 (*.f64 x.im 1/8) (pow.f64 y.im 7))) (pow.f64 y.re 6) (-.f64 (fma.f64 (/.f64 (*.f64 x.im -3/8) (pow.f64 y.im 5)) (pow.f64 y.re 4) (/.f64 (*.f64 1/2 (*.f64 x.im (*.f64 y.re y.re))) (pow.f64 y.im 3))) (/.f64 x.im y.im)))
(fma.f64 (fma.f64 1/8 (/.f64 x.im (pow.f64 y.im 7)) (/.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 5)) 3/16) (*.f64 y.im y.im))) (pow.f64 y.re 6) (-.f64 (fma.f64 1/2 (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)) (*.f64 (/.f64 (*.f64 x.im -3/8) (pow.f64 y.im 5)) (pow.f64 y.re 4))) (/.f64 x.im 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/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))))
(fma.f64 -1 (/.f64 x.im y.re) (*.f64 1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.im))))
(-.f64 (/.f64 (*.f64 1/2 (*.f64 y.im y.im)) (/.f64 (pow.f64 y.re 3) x.im)) (/.f64 x.im y.re))
(-.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (*.f64 x.im 1/2)) (/.f64 x.im y.re))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 5))) (+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 5))))))
(fma.f64 -1/4 (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) x.im)) (fma.f64 -1 (/.f64 x.im y.re) (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.im)) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) x.im))))))
(-.f64 (fma.f64 (pow.f64 y.im 4) (/.f64 (*.f64 x.im -3/8) (pow.f64 y.re 5)) (/.f64 (*.f64 1/2 (*.f64 y.im y.im)) (/.f64 (pow.f64 y.re 3) x.im))) (/.f64 x.im y.re))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im) (/.f64 (*.f64 x.im (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 5) -3/8))) (/.f64 x.im y.re))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 5))) (+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 y.im 4) x.im)) (*.f64 -1/8 (*.f64 (pow.f64 y.im 4) x.im))) (pow.f64 y.im 2)) (pow.f64 y.re 7))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.im 6) x.im) (pow.f64 y.re 7))) (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 4) x.im) (pow.f64 y.re 5))))))))
(fma.f64 -1/4 (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) x.im)) (fma.f64 -1 (/.f64 x.im y.re) (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.im)) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 x.im (pow.f64 y.im 4)) -3/8) (/.f64 (pow.f64 y.re 7) (*.f64 y.im y.im))) (fma.f64 1/8 (/.f64 (pow.f64 y.im 6) (/.f64 (pow.f64 y.re 7) x.im)) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) x.im))))))))
(fma.f64 -1/4 (/.f64 (*.f64 x.im (pow.f64 y.im 4)) (pow.f64 y.re 5)) (-.f64 (fma.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im) (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 x.im (*.f64 (pow.f64 y.im 4) -3/8)) (pow.f64 y.re 7)) (*.f64 y.im y.im)) (fma.f64 -1/8 (/.f64 (*.f64 x.im (pow.f64 y.im 4)) (pow.f64 y.re 5)) (*.f64 1/8 (/.f64 x.im (/.f64 (pow.f64 y.re 7) (pow.f64 y.im 6))))))) (/.f64 x.im y.re)))
(fma.f64 -1/4 (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) x.im) (+.f64 (fma.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im) (/.f64 (*.f64 (*.f64 x.im (pow.f64 y.im 6)) 3/16) (pow.f64 y.re 7))) (-.f64 (fma.f64 -1/8 (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) x.im) (*.f64 1/8 (*.f64 (/.f64 x.im (pow.f64 y.re 7)) (pow.f64 y.im 6)))) (/.f64 x.im y.re))))
(/.f64 x.im y.re)
(+.f64 (/.f64 x.im y.re) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))))
(+.f64 (/.f64 x.im y.re) (*.f64 -1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.im))))
(fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im) (/.f64 x.im y.re))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 y.im 4) x.im)) (*.f64 -1/8 (*.f64 (pow.f64 y.im 4) x.im))) (pow.f64 y.re 5))) (+.f64 (/.f64 x.im y.re) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3)))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.im (pow.f64 y.im 4)) -3/8) (pow.f64 y.re 5)) (+.f64 (/.f64 x.im y.re) (*.f64 -1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.im)))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im) (/.f64 x.im y.re)) (/.f64 (*.f64 x.im (*.f64 (pow.f64 y.im 4) -3/8)) (pow.f64 y.re 5)))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im) (/.f64 x.im y.re)) (/.f64 (*.f64 (*.f64 x.im (pow.f64 y.im 4)) 3/8) (pow.f64 y.re 5)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 y.im 4) x.im)) (*.f64 -1/8 (*.f64 (pow.f64 y.im 4) x.im))) (pow.f64 y.re 5))) (+.f64 (/.f64 x.im y.re) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 y.im 6) x.im)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 y.im 4) x.im)) (*.f64 -1/8 (*.f64 (pow.f64 y.im 4) x.im))) (pow.f64 y.im 2)))) (pow.f64 y.re 7))))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.im (pow.f64 y.im 4)) -3/8) (pow.f64 y.re 5)) (+.f64 (/.f64 x.im y.re) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.im)) (neg.f64 (/.f64 (fma.f64 1/8 (*.f64 x.im (pow.f64 y.im 6)) (*.f64 -1/2 (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (pow.f64 y.im 4)) -3/8)))) (pow.f64 y.re 7))))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im) (/.f64 x.im y.re)) (/.f64 (fma.f64 -1/2 (*.f64 y.im (*.f64 y.im (*.f64 x.im (*.f64 (pow.f64 y.im 4) -3/8)))) (*.f64 (pow.f64 y.im 6) (*.f64 x.im 1/8))) (pow.f64 y.re 7))) (/.f64 (*.f64 x.im (*.f64 (pow.f64 y.im 4) -3/8)) (pow.f64 y.re 5)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im) (/.f64 x.im y.re)) (+.f64 (/.f64 (fma.f64 1/8 (*.f64 x.im (pow.f64 y.im 6)) (*.f64 (*.f64 x.im (pow.f64 y.im 6)) 3/16)) (pow.f64 y.re 7)) (/.f64 (*.f64 x.im (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 5) -3/8))))
(*.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/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))))
(fma.f64 -1 (/.f64 x.im y.re) (*.f64 1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.im))))
(-.f64 (/.f64 (*.f64 1/2 (*.f64 y.im y.im)) (/.f64 (pow.f64 y.re 3) x.im)) (/.f64 x.im y.re))
(-.f64 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (*.f64 x.im 1/2)) (/.f64 x.im y.re))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (*.f64 (pow.f64 y.im 4) (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.re 5))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.re 5)))))))
(fma.f64 -1/4 (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) x.im)) (fma.f64 -1 (/.f64 x.im y.re) (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.im)) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (/.f64 (pow.f64 y.re 5) x.im))))))
(-.f64 (fma.f64 (pow.f64 y.im 4) (/.f64 (*.f64 x.im -3/8) (pow.f64 y.re 5)) (/.f64 (*.f64 1/2 (*.f64 y.im y.im)) (/.f64 (pow.f64 y.re 3) x.im))) (/.f64 x.im y.re))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im) (/.f64 (*.f64 x.im (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 5) -3/8))) (/.f64 x.im y.re))
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (+.f64 (*.f64 (pow.f64 y.im 4) (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.re 5))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.re 5))))) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.re 5))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.re 5)))) (pow.f64 y.re 2))) (*.f64 1/8 (/.f64 x.im (pow.f64 y.re 7)))) (pow.f64 y.im 6)))))
(fma.f64 -1 (/.f64 x.im y.re) (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.im)) (fma.f64 (pow.f64 y.im 4) (*.f64 (/.f64 x.im (pow.f64 y.re 5)) -3/8) (*.f64 (pow.f64 y.im 6) (fma.f64 -1/2 (/.f64 (*.f64 (/.f64 x.im (pow.f64 y.re 5)) -3/8) (*.f64 y.re y.re)) (/.f64 (*.f64 1/8 x.im) (pow.f64 y.re 7)))))))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im) (fma.f64 (pow.f64 y.im 6) (fma.f64 -1/2 (*.f64 (/.f64 (/.f64 x.im (pow.f64 y.re 5)) y.re) (/.f64 -3/8 y.re)) (/.f64 1/8 (/.f64 (pow.f64 y.re 7) x.im))) (*.f64 (pow.f64 y.im 4) (/.f64 (*.f64 x.im -3/8) (pow.f64 y.re 5))))) (/.f64 x.im y.re))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im) (fma.f64 (pow.f64 y.im 6) (fma.f64 1/8 (/.f64 x.im (pow.f64 y.re 7)) (/.f64 (*.f64 (/.f64 x.im (pow.f64 y.re 5)) 3/16) (*.f64 y.re y.re))) (/.f64 (*.f64 x.im (pow.f64 y.im 4)) (/.f64 (pow.f64 y.re 5) -3/8)))) (/.f64 x.im y.re))
(*.f64 -1 (/.f64 x.im y.im))
(neg.f64 (/.f64 x.im y.im))
(/.f64 (neg.f64 x.im) y.im)
(+.f64 (*.f64 -1 (/.f64 x.im y.im)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))
(fma.f64 -1 (/.f64 x.im y.im) (*.f64 1/2 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))))
(-.f64 (/.f64 (*.f64 1/2 (*.f64 x.im (*.f64 y.re y.re))) (pow.f64 y.im 3)) (/.f64 x.im y.im))
(-.f64 (*.f64 (/.f64 1/2 (pow.f64 y.im 3)) (*.f64 x.im (*.f64 y.re y.re))) (/.f64 x.im y.im))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5))) (+.f64 (*.f64 -1 (/.f64 x.im y.im)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))
(fma.f64 -1 (/.f64 x.im y.im) (fma.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 5)) -3/8) (pow.f64 y.re 4) (*.f64 1/2 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))
(-.f64 (fma.f64 (/.f64 (*.f64 x.im -3/8) (pow.f64 y.im 5)) (pow.f64 y.re 4) (/.f64 (*.f64 1/2 (*.f64 x.im (*.f64 y.re y.re))) (pow.f64 y.im 3))) (/.f64 x.im y.im))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)) (*.f64 (/.f64 (*.f64 x.im -3/8) (pow.f64 y.im 5)) (pow.f64 y.re 4))) (/.f64 x.im y.im))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (+.f64 (*.f64 -1 (/.f64 x.im y.im)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.re 2)) (pow.f64 y.im 7))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))))))
(fma.f64 -1/4 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im)) (fma.f64 -1/8 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 5) x.im)) (fma.f64 1/8 (/.f64 (*.f64 x.im (pow.f64 y.re 6)) (pow.f64 y.im 7)) (fma.f64 -1 (/.f64 x.im y.im) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 x.im (pow.f64 y.re 4)) -3/8) (/.f64 (pow.f64 y.im 7) (*.f64 y.re y.re))) (*.f64 1/2 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))))))))
(+.f64 (fma.f64 1/8 (/.f64 (*.f64 x.im (pow.f64 y.re 6)) (pow.f64 y.im 7)) (-.f64 (fma.f64 1/2 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)) (/.f64 (*.f64 (*.f64 y.re y.re) (*.f64 (pow.f64 y.re 4) (*.f64 x.im -3/8))) (/.f64 (pow.f64 y.im 7) -1/2))) (/.f64 x.im y.im))) (*.f64 (/.f64 x.im (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 4))) -3/8))
(+.f64 (fma.f64 1/8 (*.f64 (/.f64 x.im (pow.f64 y.im 7)) (pow.f64 y.re 6)) (-.f64 (fma.f64 1/2 (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)) (/.f64 (*.f64 (*.f64 x.im (pow.f64 y.re 6)) 3/16) (pow.f64 y.im 7))) (/.f64 x.im y.im))) (*.f64 (/.f64 (*.f64 x.im -3/8) (pow.f64 y.im 5)) (pow.f64 y.re 4)))
(/.f64 x.im y.im)
(+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)) -1/2))
(fma.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)) -1/2 (/.f64 x.im y.im))
(fma.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)) -1/2 (/.f64 x.im y.im))
(+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))
(+.f64 (/.f64 x.im y.im) (fma.f64 -1 (/.f64 (*.f64 (*.f64 x.im (pow.f64 y.re 4)) -3/8) (pow.f64 y.im 5)) (*.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)) -1/2)))
(+.f64 (/.f64 x.im y.im) (-.f64 (/.f64 (*.f64 (*.f64 -1/2 x.im) (*.f64 y.re y.re)) (pow.f64 y.im 3)) (/.f64 (*.f64 (pow.f64 y.re 4) (*.f64 x.im -3/8)) (pow.f64 y.im 5))))
(+.f64 (fma.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)) -1/2 (/.f64 x.im y.im)) (/.f64 (*.f64 (*.f64 x.im (pow.f64 y.re 4)) 3/8) (pow.f64 y.im 5)))
(+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 y.re 6) x.im)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.re 2)))) (pow.f64 y.im 7))))))
(+.f64 (/.f64 x.im y.im) (fma.f64 -1 (/.f64 (*.f64 (*.f64 x.im (pow.f64 y.re 4)) -3/8) (pow.f64 y.im 5)) (fma.f64 -1/2 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)) (neg.f64 (/.f64 (fma.f64 1/8 (*.f64 x.im (pow.f64 y.re 6)) (*.f64 -1/2 (*.f64 (*.f64 y.re y.re) (*.f64 (*.f64 x.im (pow.f64 y.re 4)) -3/8)))) (pow.f64 y.im 7))))))
(+.f64 (-.f64 (/.f64 (*.f64 (*.f64 -1/2 x.im) (*.f64 y.re y.re)) (pow.f64 y.im 3)) (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 y.re y.re) (*.f64 (pow.f64 y.re 4) (*.f64 x.im -3/8))) (*.f64 (pow.f64 y.re 6) (*.f64 x.im 1/8))) (pow.f64 y.im 7))) (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 (pow.f64 y.re 4) (*.f64 x.im -3/8)) (pow.f64 y.im 5))))
(-.f64 (+.f64 (fma.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)) -1/2 (/.f64 x.im y.im)) (/.f64 (*.f64 (*.f64 x.im (pow.f64 y.re 4)) 3/8) (pow.f64 y.im 5))) (/.f64 (fma.f64 1/8 (*.f64 x.im (pow.f64 y.re 6)) (*.f64 (*.f64 x.im (pow.f64 y.re 6)) 3/16)) (pow.f64 y.im 7)))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(neg.f64 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (neg.f64 x.im))
(*.f64 x.im (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(neg.f64 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (neg.f64 x.im))
(*.f64 x.im (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(neg.f64 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (neg.f64 x.im))
(*.f64 x.im (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(neg.f64 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (neg.f64 x.im))
(*.f64 x.im (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(neg.f64 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (neg.f64 x.im))
(*.f64 x.im (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(neg.f64 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (neg.f64 x.im))
(*.f64 x.im (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(neg.f64 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (neg.f64 x.im))
(*.f64 x.im (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(neg.f64 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (neg.f64 x.im))
(*.f64 x.im (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(neg.f64 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (neg.f64 x.im))
(*.f64 x.im (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(neg.f64 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (neg.f64 x.im))
(*.f64 x.im (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(neg.f64 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (neg.f64 x.im))
(*.f64 x.im (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
(*.f64 -1 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(neg.f64 (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (neg.f64 x.im))
(*.f64 x.im (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))))
y.im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)) y.im)
(fma.f64 1/2 (/.f64 (*.f64 y.re y.re) y.im) y.im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)) y.im))
(fma.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)) (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) y.im) y.im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)) (+.f64 y.im (*.f64 1/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 5))))))
(fma.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)) (+.f64 (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) y.im) y.im) (*.f64 1/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 5)))))
(fma.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)) (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) y.im) (fma.f64 1/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 5)) y.im)))
y.re
(+.f64 y.re (*.f64 1/2 (/.f64 (pow.f64 y.im 2) y.re)))
(+.f64 y.re (*.f64 1/2 (/.f64 (*.f64 y.im y.im) y.re)))
(fma.f64 1/2 (/.f64 (*.f64 y.im y.im) y.re) y.re)
(fma.f64 1/2 (*.f64 (/.f64 y.im y.re) y.im) y.re)
(+.f64 y.re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) y.re)) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))
(+.f64 y.re (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) y.re) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) y.re) y.re) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))
(+.f64 y.re (fma.f64 1/2 (*.f64 (/.f64 y.im y.re) y.im) (/.f64 -1/8 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 4)))))
(+.f64 y.re (+.f64 (*.f64 1/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) y.re)) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))))
(+.f64 y.re (fma.f64 1/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5)) (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) y.re) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))))
(+.f64 y.re (fma.f64 1/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5)) (fma.f64 1/2 (*.f64 (/.f64 y.im y.re) y.im) (/.f64 -1/8 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 4))))))
(*.f64 -1 y.re)
(neg.f64 y.re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) y.re)) (*.f64 -1 y.re))
(fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) y.re) (neg.f64 y.re))
(-.f64 (*.f64 (/.f64 -1/2 y.re) (*.f64 y.im y.im)) y.re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) y.re)) (+.f64 (*.f64 -1 y.re) (*.f64 1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))
(fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) y.re) (fma.f64 -1 y.re (*.f64 1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))
(fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) y.re) (-.f64 (*.f64 1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) y.re))
(fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) y.im) (-.f64 (*.f64 1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) y.re))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) y.re)) (+.f64 (*.f64 -1 y.re) (*.f64 1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))))
(fma.f64 -1/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) y.re) (fma.f64 -1 y.re (*.f64 1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))))
(fma.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5)) -1/16 (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) y.re) (-.f64 (*.f64 1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) y.re)))
(fma.f64 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5)) -1/16 (fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) y.im) (-.f64 (*.f64 1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) y.re)))
y.re
(+.f64 y.re (*.f64 1/2 (/.f64 (pow.f64 y.im 2) y.re)))
(+.f64 y.re (*.f64 1/2 (/.f64 (*.f64 y.im y.im) y.re)))
(fma.f64 1/2 (/.f64 (*.f64 y.im y.im) y.re) y.re)
(fma.f64 1/2 (*.f64 (/.f64 y.im y.re) y.im) y.re)
(+.f64 y.re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) y.re)) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))
(+.f64 y.re (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) y.re) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) y.re) y.re) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))
(+.f64 y.re (fma.f64 1/2 (*.f64 (/.f64 y.im y.re) y.im) (/.f64 -1/8 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 4)))))
(+.f64 y.re (+.f64 (*.f64 1/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) y.re)) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))))
(+.f64 y.re (fma.f64 1/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5)) (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) y.re) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))))
(+.f64 y.re (fma.f64 1/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 5)) (fma.f64 1/2 (*.f64 (/.f64 y.im y.re) y.im) (/.f64 -1/8 (/.f64 (pow.f64 y.re 3) (pow.f64 y.im 4))))))
y.im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)) y.im)
(fma.f64 1/2 (/.f64 (*.f64 y.re y.re) y.im) y.im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)) y.im))
(fma.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)) (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) y.im) y.im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)) (+.f64 y.im (*.f64 1/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 5))))))
(fma.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)) (+.f64 (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) y.im) y.im) (*.f64 1/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 5)))))
(fma.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)) (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) y.im) (fma.f64 1/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 5)) y.im)))
(*.f64 -1 y.im)
(neg.f64 y.im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) y.im)) (*.f64 -1 y.im))
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) y.im) (neg.f64 y.im))
(-.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) y.im)) y.im)
(-.f64 (*.f64 (/.f64 -1/2 y.im) (*.f64 y.re y.re)) y.im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) y.im)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (*.f64 -1 y.im)))
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) y.im) (fma.f64 1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)) (neg.f64 y.im)))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) y.im) (*.f64 1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) y.im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) y.im)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 5))) (*.f64 -1 y.im))))
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) y.im) (fma.f64 1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)) (fma.f64 -1/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 5)) (neg.f64 y.im))))
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) y.im) (-.f64 (fma.f64 1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)) (*.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 5)) -1/16)) y.im))
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) y.im) (-.f64 (fma.f64 1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)) (*.f64 (/.f64 -1/16 (pow.f64 y.im 5)) (pow.f64 y.re 6))) y.im))

localize33.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re))
0.0b
(/.f64 1 (hypot.f64 y.re y.im))
4.9b
(/.f64 (*.f64 y.im x.im) y.re)
5.1b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re)))
Compiler

Compiled 64 to 28 computations (56.3% saved)

series26.0ms (0.1%)

Counts
3 → 60
Calls

33 calls:

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

rewrite141.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
771×log-prod_binary64
242×expm1-udef_binary64
242×log1p-udef_binary64
231×fma-def_binary64
231×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01539
132333
2484729
Stop Event
node limit
Counts
3 → 278
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re)))
(/.f64 (*.f64 y.im x.im) y.re)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (/.f64 (*.f64 y.im 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 x.re (hypot.f64 y.re y.im)) (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)) 1) (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im)))) (cbrt.f64 (exp.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im 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 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 y.im 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 (exp.f64 (log1p.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im 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 (/.f64 y.im y.re) x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 (hypot.f64 y.re y.im) (fma.f64 (/.f64 y.im y.re) x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (neg.f64 (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3) (pow.f64 x.re 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re (fma.f64 (/.f64 y.im y.re) x.im x.re) (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 2) (*.f64 (hypot.f64 y.re y.im) (fma.f64 (/.f64 y.im y.re) x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 2) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (fma.f64 (/.f64 y.im y.re) x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (+.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3) (pow.f64 x.re 3))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (fma.f64 x.re (fma.f64 (/.f64 y.im y.re) x.im x.re) (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3) (pow.f64 x.re 3)) 1) (*.f64 (fma.f64 x.re (fma.f64 (/.f64 y.im y.re) x.im x.re) (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2)) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 2) 1) (*.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3) (pow.f64 x.re 3)) -1) (*.f64 (fma.f64 x.re (fma.f64 (/.f64 y.im y.re) x.im x.re) (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2)) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 2) -1) (*.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (neg.f64 (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im 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 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)) 3) (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3)) (fma.f64 (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)) (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)) (-.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 (/.f64 (*.f64 y.im 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 (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)) (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)))) (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 1) (hypot.f64 y.re y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im 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 (+.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3) (pow.f64 x.re 3)) (/.f64 1 (hypot.f64 y.re y.im))) (fma.f64 x.re (fma.f64 (/.f64 y.im y.re) x.im x.re) (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 2) (/.f64 1 (hypot.f64 y.re y.im))) (fma.f64 (/.f64 y.im y.re) x.im x.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3) (pow.f64 x.re 3))) (fma.f64 x.re (fma.f64 (/.f64 y.im y.re) x.im x.re) (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 2)) (fma.f64 (/.f64 y.im y.re) x.im x.re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im 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 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (/.f64 (/.f64 (*.f64 y.im 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 log.f64 (*.f64 (exp.f64 (/.f64 x.re (hypot.f64 y.re y.im))) (exp.f64 (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im 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 (/.f64 y.im y.re) x.im x.re) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im 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 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (hypot.f64 y.re y.im))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (/.f64 (*.f64 y.im 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 1 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im x.im) y.re) (/.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 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 (/.f64 (*.f64 y.im 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 -1 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im x.im) y.re) (*.f64 -1 (/.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 x.re (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re (*.f64 -1 (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im x.im) y.re)) (/.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 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) 2) (*.f64 (cbrt.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im 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 (*.f64 y.im x.im) y.re)) (/.f64 x.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 (*.f64 y.im 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 x.im) y.re)) (*.f64 (sqrt.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)) 1 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)) -1 (/.f64 x.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 x.im) y.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im))) (cbrt.f64 (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)))) (cbrt.f64 (/.f64 (/.f64 (*.f64 y.im 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 (*.f64 (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im)))) (cbrt.f64 (/.f64 x.re (hypot.f64 y.re y.im))) (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 y.im 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 (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 (*.f64 y.im 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 (*.f64 y.im x.im) y.re))) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 x.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 (*.f64 y.im 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)) -1) (/.f64 (*.f64 y.im 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)) -1) x.re (/.f64 (/.f64 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im 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 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 (*.f64 y.im 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 (*.f64 y.im 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 (/.f64 (*.f64 y.im x.im) y.re)) 2)) (cbrt.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im x.im) y.re))) (sqrt.f64 (/.f64 (*.f64 y.im 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)) (pow.f64 (cbrt.f64 x.re) 2)) (cbrt.f64 x.re) (/.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im x.im) y.re) (hypot.f64 y.re y.im)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 y.im x.im) y.re))) (cbrt.f64 (exp.f64 (/.f64 (*.f64 y.im x.im) y.re))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 y.im x.im) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 y.im x.im) y.re)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 y.im x.im) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 y.im x.im) y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.im (/.f64 1 (/.f64 y.re x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.im (*.f64 x.im (/.f64 1 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x.im (*.f64 y.im (/.f64 1 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y.im x.im) (/.f64 1 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y.im x.im) (neg.f64 (/.f64 1 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y.im x.im) (*.f64 (/.f64 1 y.re) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y.im x.im) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y.im x.im) y.re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (*.f64 (cbrt.f64 (*.f64 y.im x.im)) (/.f64 1 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) 2) (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) 2) (neg.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y.im x.im)) (*.f64 (sqrt.f64 (*.f64 y.im x.im)) (/.f64 1 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (neg.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 1 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 1 (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y.re) (*.f64 y.im x.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (sqrt.f64 y.re)) (/.f64 (*.f64 y.im x.im) (sqrt.f64 y.re)))))) (#(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 x.im 1) (/.f64 y.im y.re))))) (#(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 (*.f64 y.im x.im)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.im (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 x.im (cbrt.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.im (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 y.im (cbrt.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 y.re)) (/.f64 (*.f64 y.im x.im) (sqrt.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.im (sqrt.f64 y.re)) (/.f64 x.im (sqrt.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.im (sqrt.f64 y.re)) (/.f64 y.im (sqrt.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (sqrt.f64 y.re)) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (sqrt.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re))) (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) 2)) (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) 2)) (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re))) (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 y.im 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 neg.f64 (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 y.im x.im) (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 y.im x.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 y.im x.im) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (/.f64 (*.f64 y.im x.im) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 y.im x.im) 3) (pow.f64 y.re 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 y.im x.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 y.im x.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 y.im x.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 y.im x.im) y.re)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 y.im x.im) y.re) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2) (fma.f64 (/.f64 y.im y.re) x.im x.re)) (/.f64 (*.f64 x.re x.re) (fma.f64 (/.f64 y.im y.re) x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (/.f64 y.im y.re) x.im x.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (fma.f64 (/.f64 y.im y.re) x.im x.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) 2) (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) (sqrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3) (pow.f64 x.re 3)) (/.f64 1 (fma.f64 x.re (fma.f64 (/.f64 y.im y.re) x.im x.re) (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 2) (/.f64 1 (fma.f64 (/.f64 y.im y.re) x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (sqrt.f64 x.re)) (-.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (sqrt.f64 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x.re (fma.f64 (/.f64 y.im y.re) x.im x.re) (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2)) (+.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3) (pow.f64 x.re 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3) (pow.f64 x.re 3)) (fma.f64 x.re (fma.f64 (/.f64 y.im y.re) x.im x.re) (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3) (pow.f64 x.re 3)) (fma.f64 x.re x.re (-.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 2) (fma.f64 (/.f64 y.im y.re) x.im x.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3) (pow.f64 x.re 3))) (neg.f64 (fma.f64 x.re (fma.f64 (/.f64 y.im y.re) x.im x.re) (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 2)) (fma.f64 (/.f64 y.im y.re) x.im x.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.re x.re (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2)) (fma.f64 (/.f64 y.im y.re) x.im x.re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (/.f64 (*.f64 y.im x.im) y.re)) (exp.f64 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (exp.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (/.f64 (exp.f64 (/.f64 (*.f64 y.im x.im) y.re)) (exp.f64 x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 y.im x.im) y.re))) (exp.f64 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im x.im) y.re))) (+.f64 1 (expm1.f64 x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 x.re) (exp.f64 (/.f64 (*.f64 y.im x.im) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x.re)) (exp.f64 (/.f64 (*.f64 y.im x.im) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 x.re) (+.f64 1 (expm1.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im x.im) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 y.im x.im) y.re))) (exp.f64 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im x.im) y.re))) (+.f64 1 (expm1.f64 x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x.re)) (exp.f64 (/.f64 (*.f64 y.im x.im) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x.re) (+.f64 1 (expm1.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im x.im) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (/.f64 (*.f64 y.im x.im) y.re) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (*.f64 y.im x.im) y.re) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x.re (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (/.f64 y.im y.re) x.im x.re) (+.f64 x.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (/.f64 y.im y.re) x.im x.re) (fma.f64 (neg.f64 (cbrt.f64 x.re)) (pow.f64 (cbrt.f64 x.re) 2) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.im (/.f64 1 (/.f64 y.re x.im)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.im (*.f64 x.im (/.f64 1 y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 (*.f64 y.im x.im) y.re) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 x.re (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (fma.f64 (/.f64 y.im y.re) x.im x.re) (+.f64 x.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (fma.f64 (/.f64 y.im y.re) x.im x.re) (fma.f64 (neg.f64 (cbrt.f64 x.re)) (pow.f64 (cbrt.f64 x.re) 2) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.im (*.f64 y.im (/.f64 1 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 y.im x.im) (neg.f64 (/.f64 1 y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im x.im) (*.f64 (/.f64 1 y.re) -1) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 y.im x.im) y.re) 1 x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 y.im x.im) y.re) -1 x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re 1 (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re -1 (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 1 (+.f64 x.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 1 (fma.f64 (neg.f64 (cbrt.f64 x.re)) (pow.f64 (cbrt.f64 x.re) 2) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) -1 (+.f64 x.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) -1 (fma.f64 (neg.f64 (cbrt.f64 x.re)) (pow.f64 (cbrt.f64 x.re) 2) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (*.f64 (cbrt.f64 (*.f64 y.im x.im)) (/.f64 1 y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) 2) (+.f64 x.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) 2) (fma.f64 (neg.f64 (cbrt.f64 x.re)) (pow.f64 (cbrt.f64 x.re) 2) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) 2) (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) (+.f64 x.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) 2) (cbrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) (fma.f64 (neg.f64 (cbrt.f64 x.re)) (pow.f64 (cbrt.f64 x.re) 2) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) 2) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) 2) (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) 2) (neg.f64 (cbrt.f64 (/.f64 (*.f64 y.im 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 (*.f64 y.im 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 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x.re) 2) (neg.f64 (cbrt.f64 x.re)) (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y.im x.im)) (*.f64 (sqrt.f64 (*.f64 y.im x.im)) (/.f64 1 y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) (sqrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) (+.f64 x.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) (sqrt.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re)) (fma.f64 (neg.f64 (cbrt.f64 x.re)) (pow.f64 (cbrt.f64 x.re) 2) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (neg.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re))) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) -1) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.re) (sqrt.f64 x.re) (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.re) (neg.f64 (sqrt.f64 x.re)) (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) -1) (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 1 y.re) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 1 (neg.f64 y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3) (pow.f64 x.re 3)) (/.f64 1 (fma.f64 x.re (fma.f64 (/.f64 y.im y.re) x.im x.re) (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2))) (+.f64 x.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 3) (pow.f64 x.re 3)) (/.f64 1 (fma.f64 x.re (fma.f64 (/.f64 y.im y.re) x.im x.re) (pow.f64 (/.f64 (*.f64 y.im x.im) y.re) 2))) (fma.f64 (neg.f64 (cbrt.f64 x.re)) (pow.f64 (cbrt.f64 x.re) 2) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y.re) (*.f64 y.im x.im) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 2) (/.f64 1 (fma.f64 (/.f64 y.im y.re) x.im x.re)) (+.f64 x.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) x.im x.re) 2) (/.f64 1 (fma.f64 (/.f64 y.im y.re) x.im x.re)) (fma.f64 (neg.f64 (cbrt.f64 x.re)) (pow.f64 (cbrt.f64 x.re) 2) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 x.re)) (sqrt.f64 x.re) (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1 (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1 (sqrt.f64 y.re)) (/.f64 (*.f64 y.im x.im) (sqrt.f64 y.re)) 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 x.im 1) (/.f64 y.im y.re) 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 (*.f64 y.im x.im)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) y.re) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) y.re) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.im (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 x.im (cbrt.f64 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 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 y.re)) (/.f64 (*.f64 y.im x.im) (sqrt.f64 y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.im (sqrt.f64 y.re)) (/.f64 x.im (sqrt.f64 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 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (sqrt.f64 y.re)) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (sqrt.f64 y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (sqrt.f64 x.re)) (-.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (sqrt.f64 x.re)) (+.f64 x.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (sqrt.f64 x.re)) (-.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) (sqrt.f64 x.re)) (fma.f64 (neg.f64 (cbrt.f64 x.re)) (pow.f64 (cbrt.f64 x.re) 2) x.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x.re) 2)) (cbrt.f64 x.re) (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re))) (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) 2)) (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (pow.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) 2)) (cbrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re))) (sqrt.f64 (/.f64 (*.f64 y.im x.im) y.re)) x.re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (pow.f64 (cbrt.f64 x.re) 2)) (cbrt.f64 x.re) (/.f64 (*.f64 y.im x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (sqrt.f64 x.re)) (sqrt.f64 x.re) (/.f64 (*.f64 y.im x.im) y.re))))))

simplify105.0ms (0.5%)

Algorithm
egg-herbie
Rules
715×associate-/r/_binary64
601×fma-neg_binary64
559×associate-/l/_binary64
376×times-frac_binary64
353×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0721636
12251242
27511217
333511184
472601136
Stop Event
node limit
Counts
338 → 316
Calls
Call 1
Inputs
(*.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 -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 -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 -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 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.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 x.re)
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re))
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re))
(*.f64 -1 x.re)
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re))
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re))
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re))
(*.f64 -1 x.re)
(*.f64 -1 x.re)
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re))
(*.f64 -1 x.re)
(*.f64 -1 x.re)
Outputs
(*.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)))
(fma.f64 -1 (/.f64 x.im y.re) (/.f64 (neg.f64 x.re) y.im))
(-.f64 (/.f64 (neg.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 1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)))))
(-.f64 (-.f64 (*.f64 1/2 (/.f64 x.im (/.f64 (*.f64 y.im y.im) y.re))) (/.f64 x.re y.im)) (/.f64 x.im y.re))
(-.f64 (/.f64 (*.f64 x.im 1/2) (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 (/.f64 1/2 y.im) (*.f64 (/.f64 y.re y.im) x.im) (-.f64 (/.f64 (neg.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 (*.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 x.im (/.f64 (*.f64 y.im y.im) y.re)) (*.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 (*.f64 y.re y.re) (/.f64 x.re (pow.f64 y.im 3))))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(-.f64 (/.f64 (neg.f64 x.im) y.re) (fma.f64 -1/2 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (+.f64 x.im (/.f64 (*.f64 y.re x.re) y.im))) (/.f64 x.re y.im)))
(*.f64 -1 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.re) y.re)
(neg.f64 (/.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) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (/.f64 -1 y.re) (fma.f64 x.im (/.f64 y.im y.re) 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 1/2 (*.f64 x.re (*.f64 y.im y.im))) (pow.f64 y.re 3))))
(-.f64 (-.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (/.f64 x.re y.re))
(-.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3))) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))
(-.f64 (*.f64 y.im (-.f64 (/.f64 (*.f64 x.re 1/2) (/.f64 (pow.f64 y.re 3) y.im)) (/.f64 x.im (*.f64 y.re y.re)))) (/.f64 x.re y.re))
(fma.f64 1/2 (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))) (*.f64 (/.f64 -1 y.re) (fma.f64 x.im (/.f64 y.im y.re) 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 1/2 (*.f64 x.re (*.f64 y.im y.im))) (pow.f64 y.re 3)))))
(-.f64 (fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (-.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))) (/.f64 x.re y.re))
(fma.f64 1/2 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (-.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3))) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))))
(-.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))) (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 x.im (/.f64 y.im y.re) x.re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 x.im (/.f64 y.im y.re) 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))
(+.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 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) -1/2 (/.f64 x.re y.re)))
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) -1/2 (/.f64 x.re y.re)))
(fma.f64 (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))) -1/2 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im 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 (*.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 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) (*.f64 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) -1/2)))
(+.f64 (fma.f64 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) -1/2 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (fma.f64 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) -1/2 (/.f64 x.re y.re)))
(fma.f64 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3)) -1/2 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (fma.f64 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) -1/2 (/.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)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))))
(+.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 x.im (/.f64 y.im y.re) x.re))))
(*.f64 -1 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.re) y.re)
(neg.f64 (/.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) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (/.f64 -1 y.re) (fma.f64 x.im (/.f64 y.im y.re) 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 1/2 (*.f64 x.re (*.f64 y.im y.im))) (pow.f64 y.re 3))))
(-.f64 (-.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (/.f64 x.re y.re))
(-.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3))) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))
(-.f64 (*.f64 y.im (-.f64 (/.f64 (*.f64 x.re 1/2) (/.f64 (pow.f64 y.re 3) y.im)) (/.f64 x.im (*.f64 y.re y.re)))) (/.f64 x.re y.re))
(fma.f64 1/2 (*.f64 (*.f64 y.im y.im) (/.f64 x.re (pow.f64 y.re 3))) (*.f64 (/.f64 -1 y.re) (fma.f64 x.im (/.f64 y.im y.re) 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 1/2 (*.f64 x.re (*.f64 y.im y.im))) (pow.f64 y.re 3)))))
(-.f64 (fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (-.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))) (/.f64 x.re y.re))
(fma.f64 1/2 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (-.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (pow.f64 y.re 3))) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))))
(-.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (+.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)))) (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 x.im (/.f64 y.im y.re) x.re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 x.im (/.f64 y.im y.re) x.re))))
(*.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)))
(fma.f64 -1 (/.f64 x.im y.re) (/.f64 (neg.f64 x.re) y.im))
(-.f64 (/.f64 (neg.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 1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)))))
(-.f64 (-.f64 (*.f64 1/2 (/.f64 x.im (/.f64 (*.f64 y.im y.im) y.re))) (/.f64 x.re y.im)) (/.f64 x.im y.re))
(-.f64 (/.f64 (*.f64 x.im 1/2) (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(fma.f64 (/.f64 1/2 y.im) (*.f64 (/.f64 y.re y.im) x.im) (-.f64 (/.f64 (neg.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 (*.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 x.im (/.f64 (*.f64 y.im y.im) y.re)) (*.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 (*.f64 y.re y.re) (/.f64 x.re (pow.f64 y.im 3))))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))
(-.f64 (/.f64 (neg.f64 x.im) y.re) (fma.f64 -1/2 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (+.f64 x.im (/.f64 (*.f64 y.re x.re) y.im))) (/.f64 x.re y.im)))
(/.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)))
(+.f64 (/.f64 x.re y.im) (fma.f64 (/.f64 x.im (/.f64 (*.f64 y.im y.im) y.re)) -1/2 (/.f64 x.im y.re)))
(+.f64 (/.f64 x.im y.re) (fma.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) -1/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 (*.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 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) -1/2 (+.f64 (/.f64 x.re y.im) (fma.f64 (/.f64 x.im (/.f64 (*.f64 y.im y.im) y.re)) -1/2 (/.f64 x.im y.re))))
(+.f64 (/.f64 x.im y.re) (fma.f64 -1/2 (fma.f64 (/.f64 y.re y.im) (/.f64 x.im y.im) (*.f64 (*.f64 y.re y.re) (/.f64 x.re (pow.f64 y.im 3)))) (/.f64 x.re y.im)))
(fma.f64 -1/2 (*.f64 (/.f64 y.re (*.f64 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.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (neg.f64 x.re) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 x.re))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(*.f64 -1 (*.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 (neg.f64 (/.f64 (*.f64 x.im y.im) y.re)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (/.f64 (*.f64 (neg.f64 x.im) y.im) y.re))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (*.f64 (/.f64 y.im y.re) (neg.f64 x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (*.f64 x.im (/.f64 (neg.f64 y.im) y.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(*.f64 -1 (*.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 (neg.f64 (/.f64 (*.f64 x.im y.im) y.re)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (/.f64 (*.f64 (neg.f64 x.im) y.im) y.re))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (*.f64 (/.f64 y.im y.re) (neg.f64 x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (*.f64 x.im (/.f64 (neg.f64 y.im) y.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(*.f64 -1 (*.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 (neg.f64 (/.f64 (*.f64 x.im y.im) y.re)) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (/.f64 (*.f64 (neg.f64 x.im) y.im) y.re))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (*.f64 (/.f64 y.im y.re) (neg.f64 x.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (*.f64 x.im (/.f64 (neg.f64 y.im) y.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (neg.f64 x.re) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 x.re))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
(*.f64 (neg.f64 x.re) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))
(*.f64 x.re (neg.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 x.re))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(+.f64 (*.f64 -1 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (*.f64 -1 (*.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 -1 (+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 x.im y.im) y.re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (+.f64 x.re (/.f64 (*.f64 x.im y.im) y.re))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (-.f64 (neg.f64 x.re) (*.f64 (/.f64 x.im y.re) y.im)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (neg.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)))
(*.f64 -1 x.re)
(neg.f64 x.re)
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re))
(neg.f64 (/.f64 (*.f64 x.im y.im) y.re))
(/.f64 (*.f64 (neg.f64 x.im) y.im) y.re)
(*.f64 (/.f64 y.im y.re) (neg.f64 x.im))
(*.f64 x.im (/.f64 (neg.f64 y.im) y.re))
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re))
(neg.f64 (/.f64 (*.f64 x.im y.im) y.re))
(/.f64 (*.f64 (neg.f64 x.im) y.im) y.re)
(*.f64 (/.f64 y.im y.re) (neg.f64 x.im))
(*.f64 x.im (/.f64 (neg.f64 y.im) y.re))
(*.f64 -1 x.re)
(neg.f64 x.re)
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re))
(neg.f64 (/.f64 (*.f64 x.im y.im) y.re))
(/.f64 (*.f64 (neg.f64 x.im) y.im) y.re)
(*.f64 (/.f64 y.im y.re) (neg.f64 x.im))
(*.f64 x.im (/.f64 (neg.f64 y.im) y.re))
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re))
(neg.f64 (/.f64 (*.f64 x.im y.im) y.re))
(/.f64 (*.f64 (neg.f64 x.im) y.im) y.re)
(*.f64 (/.f64 y.im y.re) (neg.f64 x.im))
(*.f64 x.im (/.f64 (neg.f64 y.im) y.re))
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re))
(neg.f64 (/.f64 (*.f64 x.im y.im) y.re))
(/.f64 (*.f64 (neg.f64 x.im) y.im) y.re)
(*.f64 (/.f64 y.im y.re) (neg.f64 x.im))
(*.f64 x.im (/.f64 (neg.f64 y.im) y.re))
(*.f64 -1 x.re)
(neg.f64 x.re)
(*.f64 -1 x.re)
(neg.f64 x.re)
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re))
(neg.f64 (/.f64 (*.f64 x.im y.im) y.re))
(/.f64 (*.f64 (neg.f64 x.im) y.im) y.re)
(*.f64 (/.f64 y.im y.re) (neg.f64 x.im))
(*.f64 x.im (/.f64 (neg.f64 y.im) y.re))
(*.f64 -1 x.re)
(neg.f64 x.re)
(*.f64 -1 x.re)
(neg.f64 x.re)

eval406.0ms (1.9%)

Compiler

Compiled 21785 to 9608 computations (55.9% saved)

prune330.0ms (1.6%)

Pruning

31 alts after pruning (27 fresh and 4 done)

PrunedKeptTotal
New96713980
Fresh71421
Picked101
Done448
Total979311010
Error
0.3b
Counts
1010 → 31
Alt Table
Click to see full alt table
StatusErrorProgram
38.8b
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
34.0b
(*.f64 y.re (*.f64 (/.f64 1 (hypot.f64 y.im y.re)) (/.f64 x.re (hypot.f64 y.im y.re))))
41.8b
(/.f64 x.im y.im)
59.6b
(/.f64 (neg.f64 x.im) y.im)
57.2b
(neg.f64 (/.f64 x.re y.re))
59.4b
(*.f64 (/.f64 1 y.re) (neg.f64 x.im))
46.7b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re)))
59.3b
(/.f64 x.im y.re)
52.8b
(/.f64 (/.f64 1 (hypot.f64 y.re y.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)))
54.5b
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))
36.7b
(/.f64 x.re y.re)
42.6b
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im) (/.f64 1 y.im))
26.9b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
43.2b
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
55.1b
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
48.4b
(/.f64 x.im (neg.f64 (hypot.f64 y.re y.im)))
47.6b
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.im y.re)) 2)
30.0b
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im)))
26.9b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (fma.f64 y.im y.im (*.f64 y.re y.re)))
59.4b
(/.f64 (neg.f64 x.im) y.re)
45.8b
(*.f64 y.re (/.f64 x.re (*.f64 y.re y.re)))
38.9b
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
30.8b
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re)))
36.8b
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
59.3b
(*.f64 (/.f64 -1 y.re) (neg.f64 x.im))
29.7b
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
51.2b
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))
33.6b
(/.f64 (/.f64 (*.f64 y.re x.re) (hypot.f64 y.im y.re)) (hypot.f64 y.im y.re))
38.8b
(/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.im y.re) 2))
53.0b
(*.f64 x.re (/.f64 (/.f64 y.re y.im) y.im))
42.7b
(*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im)
Compiler

Compiled 791 to 503 computations (36.4% saved)

localize223.0ms (1.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
1.7b
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
2.6b
(/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))
Compiler

Compiled 35 to 9 computations (74.3% saved)

series13.0ms (0.1%)

Counts
2 → 84
Calls

21 calls:

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

rewrite258.0ms (1.2%)

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.im y.re) (/.f64 y.re x.im))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 y.im y.re)) (/.f64 x.im y.re))) (cbrt.f64 (pow.f64 (exp.f64 (/.f64 y.im y.re)) (/.f64 x.im y.re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 y.im y.re)) (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 y.im y.re)) (/.f64 x.im y.re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 y.im y.re)) (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.im (/.f64 1 (*.f64 y.re (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.im (*.f64 (/.f64 1 y.re) (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) 2) (cbrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2) (*.f64 (cbrt.f64 (/.f64 y.im y.re)) (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) (sqrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 y.im y.re)) (*.f64 (sqrt.f64 (/.f64 y.im y.re)) (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 y.im) y.re) (/.f64 1 (/.f64 (neg.f64 y.re) x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y.re) (/.f64 (/.f64 y.im y.re) (/.f64 1 x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.im 1) (/.f64 (/.f64 1 y.re) (/.f64 y.re x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2) 1) (/.f64 (cbrt.f64 (/.f64 y.im y.re)) (/.f64 y.re x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 y.im y.re)) 1) (/.f64 (sqrt.f64 (/.f64 y.im y.re)) (/.f64 y.re x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 y.im y.re)) y.re) (/.f64 (sqrt.f64 (/.f64 y.im y.re)) (/.f64 1 x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (/.f64 y.re x.im)) (/.f64 (cbrt.f64 y.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y.im) (/.f64 y.re x.im)) (/.f64 (sqrt.f64 y.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2) y.re) (/.f64 (cbrt.f64 (/.f64 y.im y.re)) (/.f64 1 x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.im (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (/.f64 (/.f64 1 y.re) (cbrt.f64 (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (/.f64 (/.f64 y.im y.re) (cbrt.f64 (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2) (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 y.im y.re)) (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (/.f64 (sqrt.f64 (/.f64 y.im y.re)) (cbrt.f64 (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.im (sqrt.f64 (/.f64 y.re x.im))) (/.f64 (/.f64 1 y.re) (sqrt.f64 (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (/.f64 y.re x.im))) (/.f64 (/.f64 y.im y.re) (sqrt.f64 (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2) (sqrt.f64 (/.f64 y.re x.im))) (/.f64 (cbrt.f64 (/.f64 y.im y.re)) (sqrt.f64 (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 y.im y.re) 1) (/.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 y.im y.re) (neg.f64 y.re)) (neg.f64 x.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) 1) x.im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y.im (*.f64 y.re 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 (*.f64 y.re y.re)) (sqrt.f64 x.im)) (sqrt.f64 x.im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y.re (*.f64 (/.f64 y.im y.re) x.im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 y.re x.im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 y.re (/.f64 y.re x.im)) y.im) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 y.re (*.f64 (/.f64 y.im y.re) x.im)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 y.im y.re) (/.f64 (neg.f64 y.re) x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 y.im y.re)) (/.f64 x.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)))) 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 (/.f64 y.im (*.f64 y.re y.re))))) (/.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 2) (-.f64 (/.f64 x.re y.re) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))) 2) (cbrt.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))) (sqrt.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y.re (/.f64 y.im y.re) (/.f64 x.re (/.f64 x.im y.re))) (/.f64 1 (*.f64 y.re (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 3)) (/.f64 1 (fma.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (-.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (/.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 (/.f64 y.im (*.f64 y.re y.re))) 2)) (/.f64 1 (-.f64 (/.f64 x.re y.re) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 y.re (/.f64 y.re x.im)) (fma.f64 y.re (/.f64 y.im y.re) (/.f64 x.re (/.f64 x.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (-.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (/.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 (/.f64 y.im (*.f64 y.re y.re))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (/.f64 x.re y.re) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.re (/.f64 y.im y.re) (/.f64 x.re (/.f64 x.im y.re))) (*.f64 y.re (/.f64 y.re x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 3)) (fma.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (-.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (/.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 (/.f64 y.im (*.f64 y.re y.re))) 3)) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 2) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (*.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (/.f64 x.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 2)) (-.f64 (/.f64 x.re y.re) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 y.re (/.f64 y.im y.re) (/.f64 x.re (/.f64 x.im y.re)))) (neg.f64 (*.f64 y.re (/.f64 y.re x.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 (/.f64 y.im (*.f64 y.re y.re))) 3))) (neg.f64 (fma.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (-.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (/.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 (/.f64 y.im (*.f64 y.re y.re))) 2))) (neg.f64 (-.f64 (/.f64 x.re y.re) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.im y.re (*.f64 (*.f64 y.re (/.f64 y.re x.im)) x.re)) (*.f64 (*.f64 y.re (/.f64 y.re x.im)) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y.re (*.f64 (/.f64 y.re (*.f64 (/.f64 y.im y.re) x.im)) x.re)) (*.f64 (/.f64 y.re (*.f64 (/.f64 y.im y.re) x.im)) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 (neg.f64 y.im) y.re) y.re (*.f64 (/.f64 (neg.f64 y.re) x.im) x.re)) (*.f64 (/.f64 (neg.f64 y.re) x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.im (/.f64 y.re x.re) (*.f64 (*.f64 y.re (/.f64 y.re x.im)) 1)) (*.f64 (*.f64 y.re (/.f64 y.re x.im)) (/.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 y.re x.re) (/.f64 y.re x.im)) (*.f64 (/.f64 y.re x.im) (/.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 y.re x.re) (*.f64 (/.f64 y.re (*.f64 (/.f64 y.im y.re) x.im)) 1)) (*.f64 (/.f64 y.re (*.f64 (/.f64 y.im y.re) x.im)) (/.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 (neg.f64 y.im) y.re) (/.f64 y.re x.re) (*.f64 (/.f64 (neg.f64 y.re) x.im) 1)) (*.f64 (/.f64 (neg.f64 y.re) x.im) (/.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.im (neg.f64 y.re) (*.f64 (*.f64 y.re (/.f64 y.re x.im)) (neg.f64 x.re))) (*.f64 (*.f64 y.re (/.f64 y.re x.im)) (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 y.im y.re) (neg.f64 y.re) (*.f64 (/.f64 y.re x.im) (neg.f64 x.re))) (*.f64 (/.f64 y.re x.im) (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1 y.re (*.f64 (/.f64 y.re (*.f64 (/.f64 y.im y.re) x.im)) (neg.f64 x.re))) (*.f64 (/.f64 y.re (*.f64 (/.f64 y.im y.re) x.im)) (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 (neg.f64 y.im) y.re) (neg.f64 y.re) (*.f64 (/.f64 (neg.f64 y.re) x.im) (neg.f64 x.re))) (*.f64 (/.f64 (neg.f64 y.re) x.im) (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.re (*.f64 y.re (/.f64 y.re x.im)) (*.f64 y.re y.im)) (*.f64 y.re (*.f64 y.re (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.re (/.f64 y.re x.im) (*.f64 (/.f64 y.re x.re) y.im)) (*.f64 (/.f64 y.re x.re) (*.f64 y.re (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.re) (*.f64 y.re (/.f64 y.re x.im)) (*.f64 (neg.f64 y.re) y.im)) (*.f64 (neg.f64 y.re) (*.f64 y.re (/.f64 y.re x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 y.re x.im) (*.f64 (/.f64 y.re x.re) (/.f64 y.im y.re))) (*.f64 (/.f64 y.re x.re) (/.f64 y.re x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.re) (/.f64 y.re x.im) (*.f64 (neg.f64 y.re) (/.f64 y.im y.re))) (*.f64 (neg.f64 y.re) (/.f64 y.re x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.re (/.f64 y.re (*.f64 (/.f64 y.im y.re) x.im)) y.re) (*.f64 y.re (/.f64 y.re (*.f64 (/.f64 y.im y.re) x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 y.re x.im) (/.f64 y.re y.im) (*.f64 (/.f64 y.re x.re) 1)) (*.f64 (/.f64 y.re x.re) (/.f64 y.re (*.f64 (/.f64 y.im y.re) x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.re) (/.f64 y.re (*.f64 (/.f64 y.im y.re) x.im)) (*.f64 (neg.f64 y.re) 1)) (*.f64 (neg.f64 y.re) (/.f64 y.re (*.f64 (/.f64 y.im y.re) x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.re (/.f64 (neg.f64 y.re) x.im) (*.f64 y.re (/.f64 (neg.f64 y.im) y.re))) (*.f64 y.re (/.f64 (neg.f64 y.re) x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1 (/.f64 y.re x.im) (*.f64 (/.f64 y.re x.re) (/.f64 (neg.f64 y.im) y.re))) (*.f64 (/.f64 y.re x.re) (/.f64 (neg.f64 y.re) x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.re) (/.f64 (neg.f64 y.re) x.im) (*.f64 (neg.f64 y.re) (/.f64 (neg.f64 y.im) y.re))) (*.f64 (neg.f64 y.re) (/.f64 (neg.f64 y.re) x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 2) (pow.f64 (/.f64 x.re y.re) 2)) (-.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (/.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 y.re (/.f64 y.im y.re) (/.f64 x.re (/.f64 x.im y.re))) y.re) (/.f64 y.re x.im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 y.re (/.f64 y.re x.im)) (fma.f64 y.re (/.f64 y.im y.re) (/.f64 x.re (/.f64 x.im y.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (-.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (/.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 (/.f64 y.im (*.f64 y.re y.re))) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (/.f64 x.re y.re) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))) (exp.f64 (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (/.f64 y.im y.re)) (/.f64 x.im y.re)) (+.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 (/.f64 y.im (*.f64 y.re y.re))))) (+.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.re y.re))) (pow.f64 (exp.f64 (/.f64 y.im y.re)) (/.f64 x.im 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 (/.f64 y.im (*.f64 y.re y.re)))))))))) (#(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 (/.f64 y.im (*.f64 y.re y.re)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.im (/.f64 1 (*.f64 y.re (/.f64 y.re x.im))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y.im (*.f64 (/.f64 1 y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) 1 (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re (/.f64 1 y.re) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.re y.re) 1 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x.re y.re) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.re x.re)) (*.f64 (cbrt.f64 x.re) (/.f64 1 y.re)) (*.f64 x.im (/.f64 y.im (*.f64 y.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 (/.f64 y.im (*.f64 y.re y.re))))))) (#(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 (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) 2) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) 2) (cbrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2) (*.f64 (cbrt.f64 (/.f64 y.im y.re)) (/.f64 x.im y.re)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) (/.f64 1 y.re)) (*.f64 x.im (/.f64 y.im (*.f64 y.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 (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) (sqrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 y.im y.re)) (*.f64 (sqrt.f64 (/.f64 y.im y.re)) (/.f64 x.im y.re)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 x.re) (/.f64 1 (neg.f64 y.re)) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (neg.f64 y.im) y.re) (/.f64 1 (/.f64 (neg.f64 y.re) x.im)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y.re) x.re (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y.re) (/.f64 (/.f64 y.im y.re) (/.f64 1 x.im)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 x.re (cbrt.f64 y.re)) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 y.re)) (/.f64 x.re (sqrt.f64 y.re)) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.im 1) (/.f64 (/.f64 1 y.re) (/.f64 y.re x.im)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2) 1) (/.f64 (cbrt.f64 (/.f64 y.im y.re)) (/.f64 y.re x.im)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (/.f64 y.im y.re)) 1) (/.f64 (sqrt.f64 (/.f64 y.im y.re)) (/.f64 y.re x.im)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (/.f64 y.im y.re)) y.re) (/.f64 (sqrt.f64 (/.f64 y.im y.re)) (/.f64 1 x.im)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) 1) (/.f64 (cbrt.f64 x.re) y.re) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x.re) 1) (/.f64 (sqrt.f64 x.re) y.re) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 (/.f64 x.re y.re)) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x.re) (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 (sqrt.f64 x.re) (cbrt.f64 y.re)) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (sqrt.f64 y.re)) (/.f64 (cbrt.f64 x.re) (sqrt.f64 y.re)) (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (/.f64 y.re x.im)) (/.f64 (cbrt.f64 y.im) y.re) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 y.im) (/.f64 y.re x.im)) (/.f64 (sqrt.f64 y.im) y.re) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2) y.re) (/.f64 (cbrt.f64 (/.f64 y.im y.re)) (/.f64 1 x.im)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.im (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (/.f64 (/.f64 1 y.re) (cbrt.f64 (/.f64 y.re x.im))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (/.f64 (/.f64 y.im y.re) (cbrt.f64 (/.f64 y.re x.im))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2) (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (/.f64 y.im y.re)) (pow.f64 (cbrt.f64 (/.f64 y.re x.im)) 2)) (/.f64 (sqrt.f64 (/.f64 y.im y.re)) (cbrt.f64 (/.f64 y.re x.im))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.im (sqrt.f64 (/.f64 y.re x.im))) (/.f64 (/.f64 1 y.re) (sqrt.f64 (/.f64 y.re x.im))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (/.f64 y.re x.im))) (/.f64 (/.f64 y.im y.re) (sqrt.f64 (/.f64 y.re x.im))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2) (sqrt.f64 (/.f64 y.re x.im))) (/.f64 (cbrt.f64 (/.f64 y.im y.re)) (sqrt.f64 (/.f64 y.re x.im))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (/.f64 y.im y.re) 1) (/.f64 x.im y.re) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (/.f64 y.im y.re) (neg.f64 y.re)) (neg.f64 x.im) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) 1) x.im (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (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 (/.f64 y.im (*.f64 y.re y.re)) (sqrt.f64 x.im)) (sqrt.f64 x.im) (/.f64 x.re y.re))))))

simplify206.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 → 176
Calls
Call 1
Inputs
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.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 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) (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 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) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.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 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) (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 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) (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 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) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.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 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) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
Outputs
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re)))
(*.f64 y.im (/.f64 x.im (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))

localize8.0ms (0%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

localize14.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (/.f64 y.re y.im) y.im)
8.6b
(*.f64 x.re (/.f64 (/.f64 y.re y.im) y.im))
Compiler

Compiled 22 to 7 computations (68.2% saved)

series52.0ms (0.2%)

Counts
2 → 60
Calls

15 calls:

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

rewrite94.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
864×pow1_binary64
800×add-log-exp_binary64
800×log1p-expm1-u_binary64
800×expm1-log1p-u_binary64
782×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
115017
2214017
Stop Event
node limit
Counts
2 → 61
Calls
Call 1
Inputs
(*.f64 x.re (/.f64 (/.f64 y.re y.im) y.im))
(/.f64 (/.f64 y.re y.im) y.im)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x.re (/.f64 y.im (/.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 y.im (*.f64 x.re (/.f64 y.re y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x.re (/.f64 y.re y.im)) y.im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 x.re (/.f64 y.re y.im))) (neg.f64 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x.re (/.f64 y.re y.im)) 1) y.im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x.re (/.f64 y.re y.im)) (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x.re (/.f64 y.re y.im)) (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 (/.f64 (neg.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 (/.f64 (neg.f64 y.re) y.im)) (neg.f64 y.im))))) (#(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 (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 (cbrt.f64 (*.f64 x.re (/.f64 y.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 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 (*.f64 y.im y.im))) x.re))))) (#(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 cbrt.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 y.re (*.f64 y.im y.im)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 y.re (*.f64 y.im y.im)) 3) (pow.f64 x.re 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 -.f64 (+.f64 1 (/.f64 y.re (*.f64 y.im y.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.re (*.f64 (/.f64 1 y.im) (/.f64 1 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.re (/.f64 1 (*.f64 y.im y.im)))))) (#(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 (*.f64 y.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 y.re (*.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 y.re (*.f64 y.im y.im))) (pow.f64 (cbrt.f64 (/.f64 y.re (*.f64 y.im y.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 y.re (*.f64 y.im y.im))) 2) (cbrt.f64 (/.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 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 (/.f64 (neg.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 (pow.f64 (cbrt.f64 y.re) 2) y.im) (/.f64 (cbrt.f64 y.re) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.re 1) (/.f64 (/.f64 1 y.im) y.im))))) (#(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 (/.f64 1 (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 (*.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 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)) (/.f64 (/.f64 1 y.im) (sqrt.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 y.im)) (/.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 (*.f64 y.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 y.re (*.f64 y.im y.im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 y.re (*.f64 y.im y.im))) 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.re y.im)) -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 y.re (*.f64 y.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 y.re (*.f64 y.im y.im)) 3))))) (#(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 (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 y.re (*.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 y.re (*.f64 y.im y.im))))))))

simplify187.0ms (0.9%)

Algorithm
egg-herbie
Rules
964×associate-/r/_binary64
881×*-commutative_binary64
630×times-frac_binary64
525×associate-/l/_binary64
434×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09528
117528
236528
377528
4215528
5812528
63801528
74624528
84834528
95053528
105281528
115612528
127112528
Stop Event
node limit
Counts
121 → 65
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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 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 (*.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 x.re (*.f64 y.im y.im)))
(*.f64 x.re (/.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))
(/.f64 y.re (pow.f64 y.im 2))
(/.f64 y.re (*.f64 y.im y.im))

localize39.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (/.f64 y.re y.im) y.re)
1.7b
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re)))
5.3b
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
Compiler

Compiled 37 to 9 computations (75.7% saved)

series18.0ms (0.1%)

Counts
3 → 108
Calls

27 calls:

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

rewrite149.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
715×log-prod_binary64
426×fma-def_binary64
337×pow2_binary64
297×log-div_binary64
248×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01033
123231
2385431
Stop Event
node limit
Counts
3 → 181
Calls
Call 1
Inputs
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re)))
(*.f64 (/.f64 y.re y.im) y.re)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x.im) (/.f64 (/.f64 y.im y.re) y.re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x.im) (/.f64 (/.f64 y.im y.re) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x.im) (/.f64 (/.f64 y.im y.re) y.re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x.im) (/.f64 (/.f64 y.im y.re) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x.im x.im)) (*.f64 (cbrt.f64 x.im) (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))) (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))) 2) (cbrt.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x.im) (*.f64 (sqrt.f64 x.im) (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.im) (/.f64 y.re (sqrt.f64 y.im))) (/.f64 (sqrt.f64 x.im) (/.f64 y.re (sqrt.f64 y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x.im) (/.f64 1 (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y.re) (*.f64 (/.f64 x.im y.re) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 y.im y.re) y.re) x.im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x.im y.re) y.im) (/.f64 1 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (/.f64 (cbrt.f64 x.im) (/.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.im) y.re) (/.f64 (sqrt.f64 x.im) (/.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.im) (/.f64 y.re y.im)) (/.f64 (sqrt.f64 x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) (/.f64 y.re y.im)) (/.f64 (cbrt.f64 x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) 1) (/.f64 (cbrt.f64 x.im) (/.f64 y.re (/.f64 y.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.im) 1) (/.f64 (sqrt.f64 x.im) (/.f64 y.re (/.f64 y.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y.re (/.f64 y.im y.re))) 2)) (/.f64 x.im (cbrt.f64 (/.f64 y.re (/.f64 y.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) (pow.f64 (cbrt.f64 (/.f64 y.re (/.f64 y.im y.re))) 2)) (cbrt.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x.im) (pow.f64 (cbrt.f64 (/.f64 y.re (/.f64 y.im y.re))) 2)) (/.f64 (sqrt.f64 x.im) (cbrt.f64 (/.f64 y.re (/.f64 y.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 y.re (sqrt.f64 y.im))) (/.f64 x.im (/.f64 y.re (sqrt.f64 y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) (/.f64 y.re (sqrt.f64 y.im))) (/.f64 (cbrt.f64 x.im) (/.f64 y.re (sqrt.f64 y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x.im (*.f64 y.re y.re)) y.im)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 x.im) (/.f64 y.re (sqrt.f64 y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 x.im (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x.im) (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (/.f64 x.re y.re) 2) (/.f64 (-.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)) y.re)) (/.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (/.f64 (-.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))) (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))) 2) (cbrt.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))) (sqrt.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x.im y.re (*.f64 (/.f64 y.re (/.f64 y.im y.re)) x.re)) (/.f64 1 (/.f64 (pow.f64 y.re 3) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3)) (/.f64 1 (fma.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.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 (/.f64 (/.f64 y.im y.re) y.re)) 2)) (/.f64 1 (/.f64 (-.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 (pow.f64 y.re 3) y.im) (fma.f64 x.im y.re (*.f64 (/.f64 y.re (/.f64 y.im y.re)) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.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 (/.f64 (/.f64 y.im y.re) y.re)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 (-.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)) y.re) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.im y.re (*.f64 (/.f64 y.re (/.f64 y.im y.re)) x.re)) (/.f64 (pow.f64 y.re 3) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3)) (fma.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.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 (/.f64 (/.f64 y.im y.re) y.re)) 3)) (+.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (/.f64 (*.f64 x.re x.im) (/.f64 (pow.f64 y.re 3) y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (/.f64 (-.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 x.im y.re (*.f64 (/.f64 y.re (/.f64 y.im y.re)) x.re))) (neg.f64 (/.f64 (pow.f64 y.re 3) 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 (/.f64 (/.f64 y.im y.re) y.re)) 3))) (neg.f64 (fma.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.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 (/.f64 (/.f64 y.im y.re) y.re)) 2))) (neg.f64 (/.f64 (-.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y.re (*.f64 (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im)) x.re)) (*.f64 (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im)) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.im) y.re (*.f64 (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im) x.re)) (*.f64 (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (*.f64 (/.f64 x.im y.re) y.im) y.re (*.f64 y.re x.re)) (*.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.im (/.f64 y.re x.re) (/.f64 y.re (/.f64 y.im y.re))) (*.f64 (/.f64 y.re (/.f64 y.im y.re)) (/.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 y.re x.re) (*.f64 (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im)) 1)) (*.f64 (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im)) (/.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.im) (/.f64 y.re x.re) (*.f64 (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im) 1)) (*.f64 (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im) (/.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (*.f64 (/.f64 x.im y.re) y.im) (/.f64 y.re x.re) y.re) (*.f64 y.re (/.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.im (neg.f64 y.re) (*.f64 (/.f64 y.re (/.f64 y.im y.re)) (neg.f64 x.re))) (*.f64 (/.f64 y.re (/.f64 y.im y.re)) (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1 y.re (*.f64 (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im)) (neg.f64 x.re))) (*.f64 (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im)) (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.im) (neg.f64 y.re) (*.f64 (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im) (neg.f64 x.re))) (*.f64 (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im) (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (*.f64 (/.f64 x.im y.re) y.im) (neg.f64 y.re) (*.f64 y.re (neg.f64 x.re))) (*.f64 y.re (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.re (/.f64 y.re y.im) (*.f64 (/.f64 y.re x.re) x.im)) (*.f64 (/.f64 y.re x.re) (/.f64 y.re (/.f64 y.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.re) (/.f64 y.re (/.f64 y.im y.re)) (*.f64 (neg.f64 y.re) x.im)) (*.f64 (neg.f64 y.re) (/.f64 y.re (/.f64 y.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.re (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im)) y.re) (*.f64 y.re (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im)) (*.f64 (/.f64 y.re x.re) 1)) (*.f64 (/.f64 y.re x.re) (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.re) (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im)) (*.f64 (neg.f64 y.re) 1)) (*.f64 (neg.f64 y.re) (/.f64 y.re (*.f64 (/.f64 x.im y.re) y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.re (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im) (*.f64 y.re (neg.f64 x.im))) (*.f64 y.re (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y.re (neg.f64 (/.f64 y.re y.im)) (*.f64 (/.f64 y.re x.re) (neg.f64 x.im))) (*.f64 (/.f64 y.re x.re) (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.re) (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im) (*.f64 (neg.f64 y.re) (neg.f64 x.im))) (*.f64 (neg.f64 y.re) (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x.re y.re (*.f64 y.re (*.f64 (/.f64 x.im y.re) y.im))) (*.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y.re (*.f64 (/.f64 y.re x.re) (*.f64 (/.f64 x.im y.re) y.im))) (*.f64 (/.f64 y.re x.re) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 x.re) y.re (*.f64 (neg.f64 y.re) (*.f64 (/.f64 x.im y.re) y.im))) (*.f64 (neg.f64 y.re) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (pow.f64 (/.f64 x.re y.re) 2)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 x.im y.re (*.f64 (/.f64 y.re (/.f64 y.im y.re)) x.re)) y.re) (/.f64 y.re (/.f64 y.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (pow.f64 y.re 3) y.im) (fma.f64 x.im y.re (*.f64 (/.f64 y.re (/.f64 y.im y.re)) x.re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.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 (/.f64 (/.f64 y.im y.re) y.re)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (-.f64 x.re (*.f64 (/.f64 x.im y.re) y.im)) y.re) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))) (exp.f64 (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x.im) (/.f64 (/.f64 y.im y.re) y.re)) (+.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 (/.f64 (/.f64 y.im y.re) y.re)))) (+.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.re y.re))) (pow.f64 (exp.f64 x.im) (/.f64 (/.f64 y.im y.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 (/.f64 (/.f64 y.im y.re) y.re))))))))) (#(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 (/.f64 (/.f64 y.im y.re) y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.im (/.f64 (/.f64 y.im y.re) y.re) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 1 (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x.re (/.f64 1 y.re) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.re y.re) 1 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x.re y.re) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.re x.re)) (*.f64 (cbrt.f64 x.re) (/.f64 1 y.re)) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.im x.im)) (*.f64 (cbrt.f64 x.im) (/.f64 (/.f64 y.im y.re) y.re)) (/.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 (/.f64 (/.f64 y.im y.re) y.re)))))) (#(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 (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))) (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))) 2) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))) 2) (cbrt.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) (/.f64 1 y.re)) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x.im) (*.f64 (sqrt.f64 x.im) (/.f64 (/.f64 y.im y.re) y.re)) (/.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 (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x.im) (/.f64 y.re (sqrt.f64 y.im))) (/.f64 (sqrt.f64 x.im) (/.f64 y.re (sqrt.f64 y.im))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 x.re) (/.f64 1 (neg.f64 y.re)) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 x.im) (/.f64 1 (/.f64 (neg.f64 (*.f64 y.re y.re)) y.im)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y.re) x.re (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y.re) (*.f64 (/.f64 x.im y.re) y.im) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (/.f64 y.im y.re) y.re) x.im (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 x.im y.re) y.im) (/.f64 1 y.re) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 x.re (cbrt.f64 y.re)) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 y.re)) (/.f64 x.re (sqrt.f64 y.re)) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) 1) (/.f64 (cbrt.f64 x.re) y.re) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x.re) 1) (/.f64 (sqrt.f64 x.re) y.re) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 (/.f64 x.re y.re)) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x.re) (pow.f64 (cbrt.f64 y.re) 2)) (/.f64 (sqrt.f64 x.re) (cbrt.f64 y.re)) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (sqrt.f64 y.re)) (/.f64 (cbrt.f64 x.re) (sqrt.f64 y.re)) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) y.re) (/.f64 (cbrt.f64 x.im) (/.f64 y.re y.im)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x.im) y.re) (/.f64 (sqrt.f64 x.im) (/.f64 y.re y.im)) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x.im) (/.f64 y.re y.im)) (/.f64 (sqrt.f64 x.im) y.re) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) (/.f64 y.re y.im)) (/.f64 (cbrt.f64 x.im) y.re) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) 1) (/.f64 (cbrt.f64 x.im) (/.f64 y.re (/.f64 y.im y.re))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x.im) 1) (/.f64 (sqrt.f64 x.im) (/.f64 y.re (/.f64 y.im y.re))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y.re (/.f64 y.im y.re))) 2)) (/.f64 x.im (cbrt.f64 (/.f64 y.re (/.f64 y.im y.re)))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) (pow.f64 (cbrt.f64 (/.f64 y.re (/.f64 y.im y.re))) 2)) (cbrt.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x.im) (pow.f64 (cbrt.f64 (/.f64 y.re (/.f64 y.im y.re))) 2)) (/.f64 (sqrt.f64 x.im) (cbrt.f64 (/.f64 y.re (/.f64 y.im y.re)))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (/.f64 y.re (sqrt.f64 y.im))) (/.f64 x.im (/.f64 y.re (sqrt.f64 y.im))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 x.im x.im)) (/.f64 y.re (sqrt.f64 y.im))) (/.f64 (cbrt.f64 x.im) (/.f64 y.re (sqrt.f64 y.im))) (/.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x.im (*.f64 y.re y.re)) y.im (/.f64 x.re y.re))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 y.re (/.f64 y.im y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y.re) (/.f64 y.re y.im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y.re) (/.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y.re) (/.f64 y.re y.im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y.re) (/.f64 y.re y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 y.re (/.f64 y.im y.re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y.re (/.f64 y.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 y.im (*.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re y.re) y.im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y.re y.re)) (neg.f64 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y.re) y.re) (neg.f64 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (neg.f64 y.re)) (neg.f64 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y.re y.re) 1) y.im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y.re y.re) (sqrt.f64 y.im)) (sqrt.f64 y.im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y.re (/.f64 y.im y.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 y.re (/.f64 y.im y.re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 y.re (/.f64 y.im y.re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y.re (sqrt.f64 y.im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 y.re 3) (pow.f64 (/.f64 y.re y.im) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 y.re y.im) 3) (pow.f64 y.re 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y.im (*.f64 y.re y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 y.re (/.f64 y.im y.re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y.re) (/.f64 y.re y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 y.re (/.f64 y.im y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 y.re (/.f64 y.im y.re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y.re 3) (pow.f64 (/.f64 y.re y.im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 y.re y.im) 3) (pow.f64 y.re 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 y.re (/.f64 y.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 y.re (/.f64 y.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 y.re (/.f64 y.im y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 y.re (/.f64 y.im y.re))) 1))))))

simplify224.0ms (1.1%)

Algorithm
egg-herbie
Rules
949×associate-/r/_binary64
600×times-frac_binary64
555×associate-/l/_binary64
465×sqr-pow_binary64
434×unswap-sqr_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0121188
1211188
2391116
3871116
42331116
58391116
638381116
749031116
850671116
952801116
1055001116
1158281116
1271731116
1376781116
Stop Event
node limit
Counts
289 → 188
Calls
Call 1
Inputs
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.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 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) (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 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) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.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 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) (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 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) (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 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) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.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 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) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(+.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) (pow.f64 y.re 2)))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (pow.f64 y.re 2) y.im)
Outputs
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))
(*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re))
(/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))
(+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.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 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 x.re y.re))
(+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im y.re)) (/.f64 x.re y.re))
(fma.f64 (/.f64 y.im y.re) (/.f64 x.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))
(fma.f64 y.im (/.f64 x.im (*.f64 y.re y.re)) (/.f64 x.re y.re))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))
(/.f64 (pow.f64 y.re 2) y.im)
(/.f64 (*.f64 y.re y.re) y.im)
(*.f64 (/.f64 y.re y.im) y.re)
(*.f64 y.re (/.f64 y.re y.im))

localize43.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (/.f64 x.re y.im) y.im)
7.1b
(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)

series14.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.im
@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.re
@inf
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))

rewrite120.0ms (0.6%)

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))))))

simplify224.0ms (1.1%)

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)

eval358.0ms (1.7%)

Compiler

Compiled 8603 to 2477 computations (71.2% saved)

prune318.0ms (1.5%)

Pruning

33 alts after pruning (25 fresh and 8 done)

PrunedKeptTotal
New5205525
Fresh22022
Picked011
Done178
Total52333556
Error
0.3b
Counts
556 → 33
Alt Table
Click to see full alt table
StatusErrorProgram
51.2b
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))
51.2b
(/.f64 1 (/.f64 y.im (*.f64 x.re (/.f64 y.re y.im))))
38.8b
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
54.7b
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
53.0b
(*.f64 x.re (*.f64 (/.f64 y.re y.im) (/.f64 1 y.im)))
41.8b
(/.f64 x.im y.im)
57.2b
(neg.f64 (/.f64 x.re y.re))
53.2b
(/.f64 x.re (/.f64 y.im (/.f64 y.re y.im)))
59.6b
(/.f64 (neg.f64 x.im) y.im)
59.4b
(*.f64 (/.f64 1 y.re) (neg.f64 x.im))
46.7b
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re)))
59.3b
(/.f64 x.im y.re)
52.8b
(/.f64 (/.f64 1 (hypot.f64 y.re y.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)))
54.5b
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))
36.7b
(/.f64 x.re y.re)
42.6b
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im) (/.f64 1 y.im))
26.9b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
48.4b
(/.f64 x.im (neg.f64 (hypot.f64 y.re y.im)))
47.6b
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.im y.re)) 2)
30.0b
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im)))
26.9b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (fma.f64 y.im y.im (*.f64 y.re y.re)))
59.4b
(/.f64 (neg.f64 x.im) y.re)
45.8b
(*.f64 y.re (/.f64 x.re (*.f64 y.re y.re)))
51.2b
(/.f64 (*.f64 x.re (/.f64 y.re y.im)) y.im)
38.9b
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
30.8b
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re)))
36.8b
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
59.3b
(*.f64 (/.f64 -1 y.re) (neg.f64 x.im))
29.7b
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
33.6b
(/.f64 (/.f64 (*.f64 y.re x.re) (hypot.f64 y.im y.re)) (hypot.f64 y.im y.re))
38.8b
(/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.im y.re) 2))
43.2b
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
42.7b
(*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im)
Compiler

Compiled 441 to 282 computations (36.1% saved)

regimes994.0ms (4.7%)

Counts
58 → 5
Calls
Call 1
Inputs
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 x.re y.re)
(/.f64 (neg.f64 x.im) y.im)
(neg.f64 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.im) y.re)
(*.f64 (/.f64 1 y.re) (neg.f64 x.im))
(*.f64 (/.f64 -1 y.re) (neg.f64 x.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 x.re (/.f64 y.im (/.f64 y.re y.im)))
(/.f64 (*.f64 x.re (/.f64 y.re y.im)) y.im)
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 y.re (/.f64 x.re (*.f64 y.re y.re)))
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))
(*.f64 x.re (/.f64 (/.f64 y.re y.im) y.im))
(/.f64 1 (/.f64 y.im (*.f64 x.re (/.f64 y.re y.im))))
(*.f64 x.re (*.f64 (/.f64 y.re y.im) (/.f64 1 y.im)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.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 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.re))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.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 (/.f64 (*.f64 y.im x.re) y.re) x.im)))
(+.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 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 x.im (neg.f64 (hypot.f64 y.re y.im)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
(*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im)
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im) (/.f64 1 y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re)))
(/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.im y.re) 2))
(/.f64 (/.f64 (*.f64 y.re x.re) (hypot.f64 y.im y.re)) (hypot.f64 y.im y.re))
(*.f64 y.re (*.f64 (/.f64 1 (hypot.f64 y.im y.re)) (/.f64 x.re (hypot.f64 y.im y.re))))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))
(/.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 1 (hypot.f64 y.re y.im)) (-.f64 (fma.f64 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) 1/2 (/.f64 (neg.f64 x.im) (/.f64 y.re y.im))) x.re))
(/.f64 (/.f64 1 (hypot.f64 y.re y.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)))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.im y.re)) 2)
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))
(/.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 (pow.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (+.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)
Outputs
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.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 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.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)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
Calls

5 calls:

228.0ms
y.re
217.0ms
y.im
208.0ms
x.re
182.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
130.0ms
x.im
Results
ErrorSegmentsBranch
12.7b3x.re
13.0b3x.im
10.2b5y.re
8.9b5y.im
9.8b2(/.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 670 to 211 computations (68.5% saved)

bsearch122.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
27.0ms
7.200908651103965e+56
8.904617603997026e+56
15.0ms
1.49734266821821e-193
1.8335721910540972e-193
18.0ms
-4.291444994614701e-248
-3.902874152767336e-257
43.0ms
-2.0284987936154364e+92
-3.7462056822629743e+90
Compiler

Compiled 100 to 61 computations (39% saved)

regimes1.2s (5.8%)

Counts
55 → 5
Calls
Call 1
Inputs
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 x.re y.re)
(/.f64 (neg.f64 x.im) y.im)
(neg.f64 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.im) y.re)
(*.f64 (/.f64 1 y.re) (neg.f64 x.im))
(*.f64 (/.f64 -1 y.re) (neg.f64 x.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 x.re (/.f64 y.im (/.f64 y.re y.im)))
(/.f64 (*.f64 x.re (/.f64 y.re y.im)) y.im)
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 y.re (/.f64 x.re (*.f64 y.re y.re)))
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))
(*.f64 x.re (/.f64 (/.f64 y.re y.im) y.im))
(/.f64 1 (/.f64 y.im (*.f64 x.re (/.f64 y.re y.im))))
(*.f64 x.re (*.f64 (/.f64 y.re y.im) (/.f64 1 y.im)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.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 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.re))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.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 (/.f64 (*.f64 y.im x.re) y.re) x.im)))
(+.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 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 x.im (neg.f64 (hypot.f64 y.re y.im)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
(*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im)
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im) (/.f64 1 y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re)))
(/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.im y.re) 2))
(/.f64 (/.f64 (*.f64 y.re x.re) (hypot.f64 y.im y.re)) (hypot.f64 y.im y.re))
(*.f64 y.re (*.f64 (/.f64 1 (hypot.f64 y.im y.re)) (/.f64 x.re (hypot.f64 y.im y.re))))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))
(/.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 1 (hypot.f64 y.re y.im)) (-.f64 (fma.f64 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) 1/2 (/.f64 (neg.f64 x.im) (/.f64 y.re y.im))) x.re))
(/.f64 (/.f64 1 (hypot.f64 y.re y.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)))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.im y.re)) 2)
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))
(/.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 y.re y.im) x.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 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.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))))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
Calls

5 calls:

398.0ms
y.re
385.0ms
x.re
232.0ms
x.im
166.0ms
y.im
42.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
12.7b3x.re
13.0b3x.im
10.2b5y.re
8.9b5y.im
9.8b2(/.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 624 to 200 computations (67.9% saved)

bsearch106.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
22.0ms
7.200908651103965e+56
8.904617603997026e+56
50.0ms
1.222208507072891e-264
8.29821953283615e-258
11.0ms
-4.291444994614701e-248
-3.902874152767336e-257
23.0ms
-2.0284987936154364e+92
-3.7462056822629743e+90
Compiler

Compiled 100 to 61 computations (39% saved)

regimes1.7s (7.9%)

Counts
54 → 4
Calls
Call 1
Inputs
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 x.re y.re)
(/.f64 (neg.f64 x.im) y.im)
(neg.f64 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.im) y.re)
(*.f64 (/.f64 1 y.re) (neg.f64 x.im))
(*.f64 (/.f64 -1 y.re) (neg.f64 x.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 x.re (/.f64 y.im (/.f64 y.re y.im)))
(/.f64 (*.f64 x.re (/.f64 y.re y.im)) y.im)
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 y.re (/.f64 x.re (*.f64 y.re y.re)))
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))
(*.f64 x.re (/.f64 (/.f64 y.re y.im) y.im))
(/.f64 1 (/.f64 y.im (*.f64 x.re (/.f64 y.re y.im))))
(*.f64 x.re (*.f64 (/.f64 y.re y.im) (/.f64 1 y.im)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.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 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.re))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.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 (/.f64 (*.f64 y.im x.re) y.re) x.im)))
(+.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 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 x.im (neg.f64 (hypot.f64 y.re y.im)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
(*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im)
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im) (/.f64 1 y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re)))
(/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.im y.re) 2))
(/.f64 (/.f64 (*.f64 y.re x.re) (hypot.f64 y.im y.re)) (hypot.f64 y.im y.re))
(*.f64 y.re (*.f64 (/.f64 1 (hypot.f64 y.im y.re)) (/.f64 x.re (hypot.f64 y.im y.re))))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))
(/.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 1 (hypot.f64 y.re y.im)) (-.f64 (fma.f64 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) 1/2 (/.f64 (neg.f64 x.im) (/.f64 y.re y.im))) x.re))
(/.f64 (/.f64 1 (hypot.f64 y.re y.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)))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.im y.re)) 2)
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))
Outputs
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re)))
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
Calls

5 calls:

572.0ms
x.re
479.0ms
x.im
247.0ms
y.re
185.0ms
y.im
158.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
17.0b8x.re
16.9b5x.im
12.0b5y.re
11.7b4y.im
13.2b5(/.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 608 to 196 computations (67.8% saved)

bsearch149.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
55.0ms
1.3233920652177107e-46
3.722257036318918e-44
30.0ms
-2.9295819978973083e-136
-7.230173212476485e-154
63.0ms
-3.7462056822629743e+90
-1.9483272877001103e+87
Compiler

Compiled 59 to 38 computations (35.6% saved)

regimes1.4s (6.6%)

Counts
53 → 4
Calls
Call 1
Inputs
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 x.re y.re)
(/.f64 (neg.f64 x.im) y.im)
(neg.f64 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.im) y.re)
(*.f64 (/.f64 1 y.re) (neg.f64 x.im))
(*.f64 (/.f64 -1 y.re) (neg.f64 x.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 x.re (/.f64 y.im (/.f64 y.re y.im)))
(/.f64 (*.f64 x.re (/.f64 y.re y.im)) y.im)
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 y.re (/.f64 x.re (*.f64 y.re y.re)))
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))
(*.f64 x.re (/.f64 (/.f64 y.re y.im) y.im))
(/.f64 1 (/.f64 y.im (*.f64 x.re (/.f64 y.re y.im))))
(*.f64 x.re (*.f64 (/.f64 y.re y.im) (/.f64 1 y.im)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.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 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.re))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.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 (/.f64 (*.f64 y.im x.re) y.re) x.im)))
(+.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 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 x.im (neg.f64 (hypot.f64 y.re y.im)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
(*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im)
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im) (/.f64 1 y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re)))
(/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.im y.re) 2))
(/.f64 (/.f64 (*.f64 y.re x.re) (hypot.f64 y.im y.re)) (hypot.f64 y.im y.re))
(*.f64 y.re (*.f64 (/.f64 1 (hypot.f64 y.im y.re)) (/.f64 x.re (hypot.f64 y.im y.re))))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))
(/.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 1 (hypot.f64 y.re y.im)) (-.f64 (fma.f64 (*.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 y.re y.im))) 1/2 (/.f64 (neg.f64 x.im) (/.f64 y.re y.im))) x.re))
(/.f64 (/.f64 1 (hypot.f64 y.re y.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)))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.im y.re)) 2)
Outputs
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (fma.f64 y.im y.im (*.f64 y.re y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
Calls

5 calls:

347.0ms
x.im
282.0ms
y.re
275.0ms
x.re
241.0ms
y.im
164.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.9b10x.re
16.2b8x.im
12.0b5y.re
11.8b4y.im
13.2b5(/.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 596 to 193 computations (67.6% saved)

bsearch61.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
23.0ms
1.3233920652177107e-46
3.722257036318918e-44
15.0ms
-2.9295819978973083e-136
-7.230173212476485e-154
23.0ms
-3.7462056822629743e+90
-1.9483272877001103e+87
Compiler

Compiled 61 to 38 computations (37.7% saved)

regimes644.0ms (3%)

Counts
43 → 4
Calls
Call 1
Inputs
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 x.re y.re)
(/.f64 (neg.f64 x.im) y.im)
(neg.f64 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.im) y.re)
(*.f64 (/.f64 1 y.re) (neg.f64 x.im))
(*.f64 (/.f64 -1 y.re) (neg.f64 x.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 x.re (/.f64 y.im (/.f64 y.re y.im)))
(/.f64 (*.f64 x.re (/.f64 y.re y.im)) y.im)
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 y.re (/.f64 x.re (*.f64 y.re y.re)))
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))
(*.f64 x.re (/.f64 (/.f64 y.re y.im) y.im))
(/.f64 1 (/.f64 y.im (*.f64 x.re (/.f64 y.re y.im))))
(*.f64 x.re (*.f64 (/.f64 y.re y.im) (/.f64 1 y.im)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.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 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.re))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.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 (/.f64 (*.f64 y.im x.re) y.re) x.im)))
(+.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 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 x.im (neg.f64 (hypot.f64 y.re y.im)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
(*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im)
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im) (/.f64 1 y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re)))
Outputs
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re 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 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
Calls

5 calls:

220.0ms
x.re
163.0ms
x.im
101.0ms
y.re
81.0ms
y.im
68.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.8b8x.re
17.8b7x.im
12.0b5y.re
11.8b4y.im
16.2b5(/.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 432 to 138 computations (68.1% saved)

bsearch61.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
22.0ms
1.3233920652177107e-46
3.722257036318918e-44
16.0ms
-2.9295819978973083e-136
-7.230173212476485e-154
23.0ms
-3.7462056822629743e+90
-1.9483272877001103e+87
Compiler

Compiled 62 to 39 computations (37.1% saved)

regimes892.0ms (4.2%)

Counts
42 → 5
Calls
Call 1
Inputs
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 x.re y.re)
(/.f64 (neg.f64 x.im) y.im)
(neg.f64 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.im) y.re)
(*.f64 (/.f64 1 y.re) (neg.f64 x.im))
(*.f64 (/.f64 -1 y.re) (neg.f64 x.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 x.re (/.f64 y.im (/.f64 y.re y.im)))
(/.f64 (*.f64 x.re (/.f64 y.re y.im)) y.im)
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 y.re (/.f64 x.re (*.f64 y.re y.re)))
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))
(*.f64 x.re (/.f64 (/.f64 y.re y.im) y.im))
(/.f64 1 (/.f64 y.im (*.f64 x.re (/.f64 y.re y.im))))
(*.f64 x.re (*.f64 (/.f64 y.re y.im) (/.f64 1 y.im)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.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 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.re))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.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 (/.f64 (*.f64 y.im x.re) y.re) x.im)))
(+.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 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 x.im (neg.f64 (hypot.f64 y.re y.im)))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im))
(*.f64 (/.f64 x.im (fma.f64 y.re y.re (*.f64 y.im y.im))) y.im)
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re))
(*.f64 y.re (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))))
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))
(fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im) (/.f64 1 y.im))
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))
Outputs
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.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 (/.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) (*.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 y.re) (/.f64 y.re x.im)))
Calls

5 calls:

273.0ms
x.im
238.0ms
x.re
214.0ms
y.re
66.0ms
y.im
62.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.8b8x.re
17.8b7x.im
12.0b5y.re
13.4b3y.im
16.2b5(/.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 418 to 133 computations (68.2% saved)

bsearch91.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
27.0ms
1.8475690085853758e+87
8.003423901484813e+90
20.0ms
3.3083133781529356e-128
3.9736508758500136e-126
20.0ms
-3.064095151534979e-101
-7.533374305334602e-106
24.0ms
-2.3862211260766862e+88
-2.383207383769995e+84
Compiler

Compiled 110 to 67 computations (39.1% saved)

regimes497.0ms (2.3%)

Counts
31 → 5
Calls
Call 1
Inputs
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 x.re y.re)
(/.f64 (neg.f64 x.im) y.im)
(neg.f64 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.im) y.re)
(*.f64 (/.f64 1 y.re) (neg.f64 x.im))
(*.f64 (/.f64 -1 y.re) (neg.f64 x.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 x.re (/.f64 y.im (/.f64 y.re y.im)))
(/.f64 (*.f64 x.re (/.f64 y.re y.im)) y.im)
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 y.re (/.f64 x.re (*.f64 y.re y.re)))
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))
(*.f64 x.re (/.f64 (/.f64 y.re y.im) y.im))
(/.f64 1 (/.f64 y.im (*.f64 x.re (/.f64 y.re y.im))))
(*.f64 x.re (*.f64 (/.f64 y.re y.im) (/.f64 1 y.im)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.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 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.re))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.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 (/.f64 (*.f64 y.im x.re) y.re) x.im)))
Outputs
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.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 (/.f64 x.re (*.f64 y.im 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 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
Calls

5 calls:

145.0ms
y.re
128.0ms
x.re
99.0ms
x.im
63.0ms
y.im
48.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
21.4b5x.re
18.8b4x.im
12.3b5y.re
15.1b3y.im
16.9b5(/.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 295 to 99 computations (66.4% saved)

bsearch150.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
34.0ms
1.8475690085853758e+87
8.003423901484813e+90
43.0ms
4.135553643690118e-163
1.8485543133963e-160
33.0ms
-3.064095151534979e-101
-7.533374305334602e-106
39.0ms
-2.3862211260766862e+88
-2.383207383769995e+84
Compiler

Compiled 98 to 61 computations (37.8% saved)

regimes337.0ms (1.6%)

Counts
29 → 3
Calls
Call 1
Inputs
(/.f64 x.im y.re)
(/.f64 x.re y.re)
(/.f64 x.im y.im)
(/.f64 x.re y.re)
(/.f64 (neg.f64 x.im) y.im)
(neg.f64 (/.f64 x.re y.re))
(/.f64 (neg.f64 x.im) y.re)
(*.f64 (/.f64 1 y.re) (neg.f64 x.im))
(*.f64 (/.f64 -1 y.re) (neg.f64 x.im))
(*.f64 x.re (/.f64 y.re (*.f64 y.im y.im)))
(/.f64 x.re (/.f64 y.im (/.f64 y.re y.im)))
(/.f64 (*.f64 x.re (/.f64 y.re y.im)) y.im)
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))
(*.f64 y.re (/.f64 x.re (*.f64 y.re y.re)))
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))
(*.f64 x.re (/.f64 (/.f64 y.re y.im) y.im))
(/.f64 1 (/.f64 y.im (*.f64 x.re (/.f64 y.re y.im))))
(*.f64 x.re (*.f64 (/.f64 y.re y.im) (/.f64 1 y.im)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re)))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.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 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.re y.re))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.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 x.re (*.f64 y.im y.im)) y.re))
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))
Calls

4 calls:

135.0ms
x.re
78.0ms
x.im
74.0ms
y.re
44.0ms
y.im
Results
ErrorSegmentsBranch
21.9b9x.re
19.8b6x.im
16.7b5y.re
15.1b3y.im
Compiler

Compiled 244 to 81 computations (66.8% saved)

bsearch46.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
22.0ms
1.3233920652177107e-46
3.722257036318918e-44
23.0ms
-9.752845205853692e+107
-2.1473217153902224e+104
Compiler

Compiled 26 to 17 computations (34.6% saved)

regimes347.0ms (1.6%)

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

4 calls:

121.0ms
x.re
91.0ms
x.im
66.0ms
y.re
63.0ms
y.im
Results
ErrorSegmentsBranch
22.2b11x.re
22.6b6x.im
16.8b5y.re
14.2b6y.im
Compiler

Compiled 167 to 66 computations (60.5% saved)

bsearch103.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
23.0ms
1.3233920652177107e-46
3.722257036318918e-44
10.0ms
4.767918355202668e-239
1.6851929698048384e-223
23.0ms
-3.649780066403465e-8
-4.591592275494476e-12
23.0ms
-0.061306424113414346
-4.1095926152858756e-5
23.0ms
-9.752845205853692e+107
-2.1473217153902224e+104
Compiler

Compiled 58 to 37 computations (36.2% saved)

regimes336.0ms (1.6%)

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

4 calls:

186.0ms
x.re
61.0ms
x.im
52.0ms
y.re
31.0ms
y.im
Results
ErrorSegmentsBranch
22.3b11x.re
22.6b6x.im
17.0b5y.re
15.4b3y.im
Compiler

Compiled 156 to 63 computations (59.6% saved)

bsearch248.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
155.0ms
1.3233920652177107e-46
3.722257036318918e-44
93.0ms
-9.752845205853692e+107
-2.1473217153902224e+104
Compiler

Compiled 26 to 17 computations (34.6% saved)

regimes361.0ms (1.7%)

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

4 calls:

108.0ms
y.im
103.0ms
x.re
90.0ms
x.im
51.0ms
y.re
Results
ErrorSegmentsBranch
22.8b11x.re
22.6b6x.im
18.4b5y.re
17.6b3y.im
Compiler

Compiled 145 to 61 computations (57.9% saved)

bsearch85.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
25.0ms
1.3233920652177107e-46
3.722257036318918e-44
59.0ms
-9.752845205853692e+107
-2.1473217153902224e+104
Compiler

Compiled 26 to 17 computations (34.6% saved)

regimes273.0ms (1.3%)

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

4 calls:

88.0ms
x.re
70.0ms
x.im
56.0ms
y.im
49.0ms
y.re
Results
ErrorSegmentsBranch
28.6b9x.re
26.3b6x.im
24.1b5y.re
22.5b3y.im
Compiler

Compiled 134 to 59 computations (56% saved)

bsearch81.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
40.0ms
1.3233920652177107e-46
3.722257036318918e-44
40.0ms
-5.449340246179198e+92
-2.0284987936154364e+92
Compiler

Compiled 26 to 17 computations (34.6% saved)

regimes33.0ms (0.2%)

Accuracy

Total -23.2b remaining (-63.1%)

Threshold costs -23.2b (-63.1%)

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

4 calls:

8.0ms
x.im
8.0ms
y.im
8.0ms
x.re
7.0ms
y.re
Results
ErrorSegmentsBranch
36.7b1x.re
36.7b1x.im
36.7b1y.re
36.7b1y.im
Compiler

Compiled 30 to 22 computations (26.7% saved)

simplify87.0ms (0.4%)

Algorithm
egg-herbie
Rules
21×*-commutative_binary64
20×+-commutative_binary64
12×sub-neg_binary64
11×neg-sub0_binary64
11×neg-mul-1_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01251063
11541063
21751063
32011063
42191053
52291053
62321053
72331053
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 y.im -202849879361543641054378696368474930264484598941999135321165397453369960335099193894325190656) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (/.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 770527719953375/5136851466355833503165029182500125649951503713694505722166289944403058744430742990345377476833582471901350555523611540735370539306820120960085756611964727392534398116336371677921546638558908903585247316148224) (+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))) (if (<=.f64 y.im 720090865110396483162441797296917304846991838186022371328) (*.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))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))))))
(if (<=.f64 y.im -202849879361543641054378696368474930264484598941999135321165397453369960335099193894325190656) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (/.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 5539569662801113/553956966280111321359151042308621317197106853745652161186848528428353614047320326248246548509656023453846098404449586961587736474553087989908021159880755329796288475560940755137311819879076531853615938045960455092067922915100261601864210866521544040371494407003426519343169536) (+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))) (if (<=.f64 y.im 720090865110396483162441797296917304846991838186022371328) (/.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)))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))))))
(if (<=.f64 y.im -3746205682262974302725203201736112917802076336352882621304877201705656639713849261021986816) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -7371020360979573/7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248) (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)))))
(if (<=.f64 y.im -3746205682262974302725203201736112917802076336352882621304877201705656639713849261021986816) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -7371020360979573/7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (fma.f64 y.im y.im (*.f64 y.re y.re))) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)))))
(if (<=.f64 y.im -3746205682262974302725203201736112917802076336352882621304877201705656639713849261021986816) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -7371020360979573/7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248) (/.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 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)))))
(if (<=.f64 y.re -23862211260766862484281232476374651082355326233460678834391759084023864789647929276104704) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (if (<=.f64 y.re -5164499756173817/5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752) (/.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.re 2438866054934369/24388660549343689307668728357759111763660922989570087116087163747073216709529418907189891430183531024686147899385989241370687309994439728955392) (+.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)))) (if (<=.f64 y.re 1847569008585375782546686626487925150846394589676335408517600748488600324328141229129728) (/.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 y.re) (/.f64 y.re x.im)))))))
(if (<=.f64 y.re -23862211260766862484281232476374651082355326233460678834391759084023864789647929276104704) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (if (<=.f64 y.re -5164499756173817/5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752) (/.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.re 8104522595470689/8104522595470689372094546608771799123071184047348509570304018222052056272290836223436927829974812098219136497287696853871865529444163623648216552410378835326291370709768573288448) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) (if (<=.f64 y.re 1847569008585375782546686626487925150846394589676335408517600748488600324328141229129728) (/.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 y.re) (/.f64 y.re x.im)))))))
(if (<=.f64 y.im -975284520585369213661621652701593343145497565967204901337613476331819154170682985299863592121580479167070208) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))))
(if (<=.f64 y.im -975284520585369213661621652701593343145497565967204901337613476331819154170682985299863592121580479167070208) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) (if (<=.f64 y.im -4417593420681447/72057594037927936) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im))) (if (<=.f64 y.im -5515391697737431/151115727451828646838272) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) (if (<=.f64 y.im 8739899877464283/873989987746428259412194333913416701987357762822590714399458303903535888835232670878457161432636363996257309241302481691723537010408733419813385804491106555801784494262060916206872597091033287849274902594962928694944169726768114734355431735427072) (+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)))))))
(if (<=.f64 y.im -975284520585369213661621652701593343145497565967204901337613476331819154170682985299863592121580479167070208) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))))
(if (<=.f64 y.im -975284520585369213661621652701593343145497565967204901337613476331819154170682985299863592121580479167070208) (/.f64 x.im y.im) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im))) (/.f64 x.im y.im)))
(if (<=.f64 y.im -544934024617919805084754221800184072420879693285783250878915455607009904986497272381414834176) (/.f64 x.im y.im) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (/.f64 x.re y.re) (/.f64 x.im y.im)))
(/.f64 x.re y.re)
(/.f64 x.im y.re)
Outputs
(if (<=.f64 y.im -202849879361543641054378696368474930264484598941999135321165397453369960335099193894325190656) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (/.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 770527719953375/5136851466355833503165029182500125649951503713694505722166289944403058744430742990345377476833582471901350555523611540735370539306820120960085756611964727392534398116336371677921546638558908903585247316148224) (+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))) (if (<=.f64 y.im 720090865110396483162441797296917304846991838186022371328) (*.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))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))))))
(if (<=.f64 y.im -202849879361543641054378696368474930264484598941999135321165397453369960335099193894325190656) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (/.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 770527719953375/5136851466355833503165029182500125649951503713694505722166289944403058744430742990345377476833582471901350555523611540735370539306820120960085756611964727392534398116336371677921546638558908903585247316148224) (+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 y.re (/.f64 y.re y.im)))) (if (<=.f64 y.im 720090865110396483162441797296917304846991838186022371328) (*.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))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))))))
(if (<=.f64 y.im -202849879361543641054378696368474930264484598941999135321165397453369960335099193894325190656) (*.f64 (+.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) (/.f64 -1 (hypot.f64 y.re y.im))) (if (<=.f64 y.im -1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (/.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 770527719953375/5136851466355833503165029182500125649951503713694505722166289944403058744430742990345377476833582471901350555523611540735370539306820120960085756611964727392534398116336371677921546638558908903585247316148224) (+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 y.re (/.f64 y.re y.im)))) (if (<=.f64 y.im 720090865110396483162441797296917304846991838186022371328) (*.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))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))))))
(if (<=.f64 y.im -202849879361543641054378696368474930264484598941999135321165397453369960335099193894325190656) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (/.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 5539569662801113/553956966280111321359151042308621317197106853745652161186848528428353614047320326248246548509656023453846098404449586961587736474553087989908021159880755329796288475560940755137311819879076531853615938045960455092067922915100261601864210866521544040371494407003426519343169536) (+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))) (if (<=.f64 y.im 720090865110396483162441797296917304846991838186022371328) (/.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)))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))))))
(if (<=.f64 y.im -202849879361543641054378696368474930264484598941999135321165397453369960335099193894325190656) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (/.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 5539569662801113/553956966280111321359151042308621317197106853745652161186848528428353614047320326248246548509656023453846098404449586961587736474553087989908021159880755329796288475560940755137311819879076531853615938045960455092067922915100261601864210866521544040371494407003426519343169536) (+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 y.re (/.f64 y.re y.im)))) (if (<=.f64 y.im 720090865110396483162441797296917304846991838186022371328) (/.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)))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))))))
(if (<=.f64 y.im -202849879361543641054378696368474930264484598941999135321165397453369960335099193894325190656) (*.f64 (+.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) (/.f64 -1 (hypot.f64 y.re y.im))) (if (<=.f64 y.im -1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (/.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 5539569662801113/553956966280111321359151042308621317197106853745652161186848528428353614047320326248246548509656023453846098404449586961587736474553087989908021159880755329796288475560940755137311819879076531853615938045960455092067922915100261601864210866521544040371494407003426519343169536) (+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 y.re (/.f64 y.re y.im)))) (if (<=.f64 y.im 720090865110396483162441797296917304846991838186022371328) (/.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)))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im))))))
(if (<=.f64 y.im -3746205682262974302725203201736112917802076336352882621304877201705656639713849261021986816) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -7371020360979573/7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248) (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)))))
(if (<=.f64 y.im -3746205682262974302725203201736112917802076336352882621304877201705656639713849261021986816) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -7371020360979573/7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)))))
(if (<=.f64 y.im -3746205682262974302725203201736112917802076336352882621304877201705656639713849261021986816) (*.f64 (+.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) (/.f64 -1 (hypot.f64 y.re y.im))) (if (<=.f64 y.im -7371020360979573/7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)))))
(if (<=.f64 y.im -3746205682262974302725203201736112917802076336352882621304877201705656639713849261021986816) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -7371020360979573/7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (fma.f64 y.im y.im (*.f64 y.re y.re))) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)))))
(if (<=.f64 y.im -3746205682262974302725203201736112917802076336352882621304877201705656639713849261021986816) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -7371020360979573/7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (fma.f64 y.im y.im (*.f64 y.re y.re))) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)))))
(if (<=.f64 y.im -3746205682262974302725203201736112917802076336352882621304877201705656639713849261021986816) (*.f64 (+.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) (/.f64 -1 (hypot.f64 y.re y.im))) (if (<=.f64 y.im -7371020360979573/7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (fma.f64 y.im y.im (*.f64 y.re y.re))) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)))))
(if (<=.f64 y.im -3746205682262974302725203201736112917802076336352882621304877201705656639713849261021986816) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -7371020360979573/7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248) (/.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 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)))))
(if (<=.f64 y.im -3746205682262974302725203201736112917802076336352882621304877201705656639713849261021986816) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) x.re))) (if (<=.f64 y.im -7371020360979573/7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248) (/.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 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)))))
(if (<=.f64 y.im -3746205682262974302725203201736112917802076336352882621304877201705656639713849261021986816) (*.f64 (+.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) (/.f64 -1 (hypot.f64 y.re y.im))) (if (<=.f64 y.im -7371020360979573/7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248) (/.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 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (fma.f64 (/.f64 (/.f64 x.re y.im) y.im) y.re (/.f64 x.im y.im)))))
(if (<=.f64 y.re -23862211260766862484281232476374651082355326233460678834391759084023864789647929276104704) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (if (<=.f64 y.re -5164499756173817/5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752) (/.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.re 2438866054934369/24388660549343689307668728357759111763660922989570087116087163747073216709529418907189891430183531024686147899385989241370687309994439728955392) (+.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)))) (if (<=.f64 y.re 1847569008585375782546686626487925150846394589676335408517600748488600324328141229129728) (/.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 y.re) (/.f64 y.re x.im)))))))
(if (<=.f64 y.re -23862211260766862484281232476374651082355326233460678834391759084023864789647929276104704) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (if (<=.f64 y.re -5164499756173817/5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752) (/.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.re 2438866054934369/24388660549343689307668728357759111763660922989570087116087163747073216709529418907189891430183531024686147899385989241370687309994439728955392) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 x.re (/.f64 (*.f64 y.re x.im) y.im)))) (if (<=.f64 y.re 1847569008585375782546686626487925150846394589676335408517600748488600324328141229129728) (/.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.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))))))
(if (<=.f64 y.re -23862211260766862484281232476374651082355326233460678834391759084023864789647929276104704) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (if (<=.f64 y.re -5164499756173817/5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752) (/.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.re 8104522595470689/8104522595470689372094546608771799123071184047348509570304018222052056272290836223436927829974812098219136497287696853871865529444163623648216552410378835326291370709768573288448) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) (if (<=.f64 y.re 1847569008585375782546686626487925150846394589676335408517600748488600324328141229129728) (/.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 y.re) (/.f64 y.re x.im)))))))
(if (<=.f64 y.re -23862211260766862484281232476374651082355326233460678834391759084023864789647929276104704) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (if (<=.f64 y.re -5164499756173817/5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752) (/.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.re 8104522595470689/8104522595470689372094546608771799123071184047348509570304018222052056272290836223436927829974812098219136497287696853871865529444163623648216552410378835326291370709768573288448) (+.f64 (/.f64 x.im y.im) (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))) (if (<=.f64 y.re 1847569008585375782546686626487925150846394589676335408517600748488600324328141229129728) (/.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.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))))))
(if (<=.f64 y.im -975284520585369213661621652701593343145497565967204901337613476331819154170682985299863592121580479167070208) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))))
(if (<=.f64 y.im -975284520585369213661621652701593343145497565967204901337613476331819154170682985299863592121580479167070208) (+.f64 (/.f64 x.im y.im) (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (+.f64 (/.f64 x.im y.im) (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))))))
(if (<=.f64 y.im -975284520585369213661621652701593343145497565967204901337613476331819154170682985299863592121580479167070208) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) (if (<=.f64 y.im -4417593420681447/72057594037927936) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im))) (if (<=.f64 y.im -5515391697737431/151115727451828646838272) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) (if (<=.f64 y.im 8739899877464283/873989987746428259412194333913416701987357762822590714399458303903535888835232670878457161432636363996257309241302481691723537010408733419813385804491106555801784494262060916206872597091033287849274902594962928694944169726768114734355431735427072) (+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 (/.f64 y.re y.im) y.re))) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)))))))
(if (<=.f64 y.im -975284520585369213661621652701593343145497565967204901337613476331819154170682985299863592121580479167070208) (+.f64 (/.f64 x.im y.im) (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))) (if (<=.f64 y.im -4417593420681447/72057594037927936) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im))) (if (<=.f64 y.im -5515391697737431/151115727451828646838272) (+.f64 (/.f64 x.im y.im) (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))) (if (<=.f64 y.im 8739899877464283/873989987746428259412194333913416701987357762822590714399458303903535888835232670878457161432636363996257309241302481691723537010408733419813385804491106555801784494262060916206872597091033287849274902594962928694944169726768114734355431735427072) (+.f64 (/.f64 x.re y.re) (/.f64 x.im (*.f64 y.re (/.f64 y.re y.im)))) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im))) (+.f64 (/.f64 x.im y.im) (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))))))))
(if (<=.f64 y.im -975284520585369213661621652701593343145497565967204901337613476331819154170682985299863592121580479167070208) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))))
(if (<=.f64 y.im -975284520585369213661621652701593343145497565967204901337613476331819154170682985299863592121580479167070208) (+.f64 (/.f64 x.im y.im) (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im))) (+.f64 (/.f64 x.im y.im) (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))))))
(if (<=.f64 y.im -975284520585369213661621652701593343145497565967204901337613476331819154170682985299863592121580479167070208) (/.f64 x.im y.im) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im))) (/.f64 x.im y.im)))
(if (<=.f64 y.im -544934024617919805084754221800184072420879693285783250878915455607009904986497272381414834176) (/.f64 x.im y.im) (if (<=.f64 y.im 6805148982620205/51422017416287688817342786954917203280710495801049370729644032) (/.f64 x.re y.re) (/.f64 x.im y.im)))
(/.f64 x.re y.re)
(/.f64 x.im y.re)
Compiler

Compiled 779 to 363 computations (53.4% saved)

soundness308.0ms (1.5%)

Algorithm
egg-herbie
Rules
819×associate-/l*_binary64
819×associate-/l*_binary64
751×fma-neg_binary64
609×associate-/r/_binary64
563×associate-/r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01873106
15942859
221712832
01873106
15942859
221712832
0461854
11311710
24611629
326441578
467721578
Stop Event
node limit
node limit
node limit
Compiler

Compiled 225 to 149 computations (33.8% saved)

end231.0ms (1.1%)

Compiler

Compiled 727 to 188 computations (74.1% saved)

Profiling

Loading profile data...