Details

Time bar (total: 4.2s)

analyze596.0ms (14.3%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
12.5%87.4%0.1%5
18.7%81.2%0.1%6
37.5%62.4%0.1%7
42.1%57.8%0.1%8
54.6%45.3%0.1%9
57.4%42.5%0.1%10
64.4%35.5%0.1%11
65.9%34%0.1%12
69.6%30.3%0.1%13
70.3%29.6%0.1%14
Compiler

Compiled 18 to 13 computations (27.8% saved)

sample2.0s (48.5%)

Results
874.0ms6193×body128valid
414.0ms564×body4096valid
385.0ms655×body2048valid
180.0ms437×body1024valid
82.0ms257×body512valid
78.0ms150×body256valid
Compiler

Compiled 36 to 26 computations (27.8% saved)

preprocess18.0ms (0.4%)

Algorithm
egg-herbie
Rules
10×fma-def_binary64
*-commutative_binary64
distribute-lft-in_binary64
distribute-rgt-in_binary64
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01930
14530
25530
35930
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) im))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 im (hypot.f64 re im)))))
Compiler

Compiled 17 to 12 computations (29.4% saved)

simplify7.0ms (0.2%)

Algorithm
egg-herbie
Rules
fma-def_binary64
*-commutative_binary64
+-commutative_binary64
distribute-lft-in_binary64
distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01315
12515
23415
33615
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))

prune4.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
12.9b
Counts
3 → 1
Alt Table
StatusErrorProgram
12.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
Compiler

Compiled 51 to 37 computations (27.5% saved)

localize9.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 re im)
0.0b
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
1.1b
(+.f64 re (hypot.f64 re im))

series15.0ms (0.4%)

Counts
3 → 56
Calls

18 calls:

TimeVariablePointExpression
2.0ms
re
@-inf
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
1.0ms
im
@0
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
1.0ms
re
@0
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
1.0ms
re
@-inf
(+.f64 re (hypot.f64 re im))
1.0ms
im
@inf
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))

rewrite74.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
844×log1p-expm1-u_binary64
844×expm1-log1p-u_binary64
92×add-sqr-sqrt_binary64
88×pow1_binary64
87×*-un-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify40.0ms (1%)

Algorithm
egg-herbie
Rules
735×fma-def_binary64
671×associate-*r*_binary64
608×associate-*l*_binary64
280×times-frac_binary64
218×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01501391
14511326
214231271
Stop Event
node limit
Counts
135 → 152
Calls
Call 1
Inputs
im
(+.f64 re im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im)))
(*.f64 2 re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
(*.f64 2 re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
im
(+.f64 re im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im)))
(*.f64 -1 im)
(+.f64 re (*.f64 -1 im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -1 re)
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
(*.f64 -1 im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
Outputs
im
(+.f64 re im)
(+.f64 im re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 im re))
(fma.f64 1/2 (/.f64 re (/.f64 im re)) (+.f64 im re))
(fma.f64 1/2 (*.f64 (/.f64 re im) re) (+.f64 im re))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 im re)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) (+.f64 im re)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) (+.f64 im re)))
(*.f64 2 re)
(*.f64 re 2)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))
(fma.f64 re 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (*.f64 re 2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 re 2 (/.f64 -1/8 (/.f64 (pow.f64 re 3) (pow.f64 im 4)))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 re 2)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 re 2 (/.f64 -1/8 (/.f64 (pow.f64 re 3) (pow.f64 im 4))))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 re 2 (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 (pow.f64 im 6) (/.f64 1/16 (pow.f64 re 5))))))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 (*.f64 (/.f64 im re) im) -1/2)
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 (/.f64 (*.f64 im im) re) -1/2))
(fma.f64 (/.f64 im (/.f64 re im)) -1/2 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8))
(fma.f64 (*.f64 (/.f64 im re) im) -1/2 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.f64 (*.f64 im im) re) -1/2)))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (/.f64 -1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6)))))
(fma.f64 (*.f64 (/.f64 im re) im) -1/2 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (*.f64 (/.f64 -1/16 (pow.f64 re 5)) (pow.f64 im 6))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7)) (fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.f64 (*.f64 im im) re) -1/2))))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 1/2 (/.f64 (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)) (pow.f64 re 7)) (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (/.f64 -1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6))))))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 (*.f64 (/.f64 im re) im) -1/2 (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 im 8) 5/64) (pow.f64 re 7)) (*.f64 (/.f64 -1/16 (pow.f64 re 5)) (pow.f64 im 6)))))
(*.f64 2 re)
(*.f64 re 2)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))
(fma.f64 re 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (*.f64 re 2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 re 2 (/.f64 -1/8 (/.f64 (pow.f64 re 3) (pow.f64 im 4)))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 re 2)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 re 2 (/.f64 -1/8 (/.f64 (pow.f64 re 3) (pow.f64 im 4))))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 re 2 (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 (pow.f64 im 6) (/.f64 1/16 (pow.f64 re 5))))))
im
(+.f64 re im)
(+.f64 im re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 im re))
(fma.f64 1/2 (/.f64 re (/.f64 im re)) (+.f64 im re))
(fma.f64 1/2 (*.f64 (/.f64 re im) re) (+.f64 im re))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 im re)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) (+.f64 im re)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) (+.f64 im re)))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 re (*.f64 -1 im))
(+.f64 re (neg.f64 im))
(-.f64 re im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 re (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im)))
(+.f64 re (fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im)))
(-.f64 (fma.f64 (*.f64 (/.f64 re im) re) -1/2 re) im)
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(fma.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (+.f64 re (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im))))
(+.f64 re (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im))))
(-.f64 (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (fma.f64 (*.f64 (/.f64 re im) re) -1/2 re)) im)
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re 1/2))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2))) (sqrt.f64 (/.f64 1 im)))) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 2)))) (*.f64 (*.f64 1/2 re) (sqrt.f64 2)))))
(fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 re (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 -1/2 (/.f64 1/2 im))))) re)) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2))) (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/4 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (pow.f64 re 3) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) -1/4)) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 2)))) (*.f64 (*.f64 1/2 re) (sqrt.f64 2))))))
(fma.f64 (sqrt.f64 2) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/2 (/.f64 1/2 im))) (*.f64 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) -1/4)) (fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 re (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 -1/2 (/.f64 1/2 im))))) re)) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(*.f64 2 (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 2 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (*.f64 im im) 1/4)))
(fma.f64 2 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im (*.f64 im 1/4))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (*.f64 1/4 (/.f64 1 (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (fma.f64 2 (sqrt.f64 re) (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re))) -1/2))))
(fma.f64 2 (sqrt.f64 re) (fma.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 (pow.f64 im 4) (*.f64 (sqrt.f64 (/.f64 1 re)) -1/2)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im (*.f64 im 1/4)))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (*.f64 1/4 (/.f64 1 (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (pow.f64 im 6) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 -1/4 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (*.f64 1/4 (/.f64 1 (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 2) 2))))))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 4)) (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2))) (*.f64 (*.f64 1/2 (pow.f64 im 6)) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 re re))))))) (fma.f64 2 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (*.f64 im im) 1/4))))
(fma.f64 (*.f64 im im) (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (fma.f64 2 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 re)) (fma.f64 -1/2 (*.f64 (pow.f64 im 4) (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2))) (*.f64 (pow.f64 im 6) (*.f64 (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/8 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 re re)))) 1/2))))))
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(fma.f64 1/2 (/.f64 (*.f64 re re) im) im)
(fma.f64 1/2 (/.f64 re (/.f64 im re)) im)
(fma.f64 1/2 (*.f64 (/.f64 re im) re) im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) im))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(fma.f64 1/2 (/.f64 (*.f64 im im) re) re)
(fma.f64 1/2 (/.f64 im (/.f64 re im)) re)
(fma.f64 1/2 (*.f64 (/.f64 im re) im) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 im im) re) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re)))
(fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re)))
(*.f64 -1 re)
(neg.f64 re)
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 (/.f64 (*.f64 im im) re) -1/2))
(-.f64 (*.f64 (/.f64 im (/.f64 re im)) -1/2) re)
(-.f64 (*.f64 (*.f64 (/.f64 im re) im) -1/2) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(fma.f64 -1 re (fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 (/.f64 (*.f64 im im) re) -1/2)))
(-.f64 (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8)) re)
(fma.f64 (*.f64 (/.f64 im re) im) -1/2 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (neg.f64 re)))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
(fma.f64 -1 re (fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.f64 (*.f64 im im) re) -1/2))))
(-.f64 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (/.f64 -1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6))))) re)
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (-.f64 (fma.f64 (*.f64 (/.f64 im re) im) -1/2 (*.f64 (/.f64 -1/16 (pow.f64 re 5)) (pow.f64 im 6))) re))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(fma.f64 1/2 (/.f64 (*.f64 im im) re) re)
(fma.f64 1/2 (/.f64 im (/.f64 re im)) re)
(fma.f64 1/2 (*.f64 (/.f64 im re) im) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 im im) re) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re)))
(fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re)))
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(fma.f64 1/2 (/.f64 (*.f64 re re) im) im)
(fma.f64 1/2 (/.f64 re (/.f64 im re)) im)
(fma.f64 1/2 (*.f64 (/.f64 re im) re) im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) im))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))
(fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im))
(fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im))
(-.f64 (/.f64 (*.f64 re re) (/.f64 im -1/2)) im)
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im)))
(fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im)))
(-.f64 (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (/.f64 (*.f64 re re) (/.f64 im -1/2))) im)
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(fma.f64 -1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) (fma.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im))))
(fma.f64 -1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im))))
(-.f64 (fma.f64 -1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (/.f64 (*.f64 re re) (/.f64 im -1/2)))) im)

prune120.0ms (2.9%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1466152
Fresh000
Picked011
Done000
Total1467153
Error
5.8b
Counts
153 → 7
Alt Table
StatusErrorProgram
47.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))))))
13.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2)))))
12.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
44.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
49.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
56.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (*.f64 (/.f64 im re) im) -1/2 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3)))))))
52.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (/.f64 im re) im) -1/2))))
Compiler

Compiled 3301 to 2254 computations (31.7% saved)

localize10.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2))
0.3b
(pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2)
0.4b
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
1.1b
(+.f64 re (hypot.f64 re im))

series20.0ms (0.5%)

Counts
3 → 40
Calls

18 calls:

TimeVariablePointExpression
5.0ms
im
@0
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
2.0ms
im
@0
(pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2)
2.0ms
re
@-inf
(pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2)
2.0ms
re
@0
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
1.0ms
re
@0
(pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2)

rewrite48.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
812×pow1_binary64
757×log1p-expm1-u_binary64
757×expm1-log1p-u_binary64
87×add-sqr-sqrt_binary64
82×*-un-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify43.0ms (1%)

Algorithm
egg-herbie
Rules
918×fma-def_binary64
399×times-frac_binary64
318×associate-/l*_binary64
306×associate-/r*_binary64
163×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02071575
15971508
219541465
Stop Event
node limit
Counts
113 → 136
Calls
Call 1
Inputs
(pow.f64 im 1/3)
(+.f64 (pow.f64 im 1/3) (*.f64 1/3 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9))))
(+.f64 (pow.f64 im 1/3) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))) (*.f64 1/3 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9)))))
(+.f64 (pow.f64 im 1/3) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))) (+.f64 (*.f64 1/3 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9))) (*.f64 -1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9)))) (pow.f64 re 3)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))))))
(*.f64 (cbrt.f64 2) (pow.f64 re 1/3))
(+.f64 (*.f64 (cbrt.f64 2) (pow.f64 re 1/3)) (*.f64 1/6 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3))))
(+.f64 (*.f64 (cbrt.f64 2) (pow.f64 re 1/3)) (+.f64 (*.f64 1/6 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3))) (*.f64 -1/18 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (pow.f64 re 11)) 1/3)))))
(+.f64 (*.f64 (cbrt.f64 2) (pow.f64 re 1/3)) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5))))) (pow.f64 im 6)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (pow.f64 re 2)) 1/3))) (+.f64 (*.f64 1/6 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3))) (*.f64 -1/18 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (pow.f64 re 11)) 1/3))))))
(pow.f64 (pow.f64 im 2) 1/3)
(+.f64 (pow.f64 (pow.f64 im 2) 1/3) (*.f64 2/3 (*.f64 re (pow.f64 im 1/9))))
(+.f64 (pow.f64 (pow.f64 im 2) 1/3) (+.f64 (*.f64 2/3 (*.f64 re (pow.f64 im 1/9))) (*.f64 (+.f64 (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 2/3 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 (/.f64 1 im) 1/3)))) (pow.f64 re 2))))
(+.f64 (pow.f64 (pow.f64 im 2) 1/3) (+.f64 (*.f64 2/3 (*.f64 re (pow.f64 im 1/9))) (+.f64 (*.f64 (+.f64 (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 2/3 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 (/.f64 1 im) 1/3)))) (pow.f64 re 2)) (*.f64 (pow.f64 re 3) (+.f64 (*.f64 2/9 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/9))) (*.f64 -2/3 (*.f64 (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9)))) (pow.f64 (/.f64 1 im) 1/3))))))))
(*.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 (pow.f64 re 2) 1/3))
(+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 im 2) (cbrt.f64 2)) (pow.f64 (/.f64 1 (pow.f64 re 4)) 1/3))) (*.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 (pow.f64 re 2) 1/3)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/9 (*.f64 (/.f64 1 (cbrt.f64 2)) (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3))) (*.f64 1/36 (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 4)) (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3)))) (pow.f64 im 4)) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 im 2) (cbrt.f64 2)) (pow.f64 (/.f64 1 (pow.f64 re 4)) 1/3))) (*.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 (pow.f64 re 2) 1/3))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/54 (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 4)) (pow.f64 (/.f64 1 (pow.f64 re 16)) 1/3))) (*.f64 2/3 (*.f64 (/.f64 (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5))))) (cbrt.f64 2)) (pow.f64 (/.f64 1 re) 1/3)))) (pow.f64 im 6)) (+.f64 (*.f64 (+.f64 (*.f64 -1/9 (*.f64 (/.f64 1 (cbrt.f64 2)) (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3))) (*.f64 1/36 (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 4)) (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3)))) (pow.f64 im 4)) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 im 2) (cbrt.f64 2)) (pow.f64 (/.f64 1 (pow.f64 re 4)) 1/3))) (*.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 (pow.f64 re 2) 1/3)))))
im
(+.f64 re im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im)))
(*.f64 2 re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
(*.f64 2 re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
im
(+.f64 re im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im)))
(*.f64 -1 im)
(+.f64 re (*.f64 -1 im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
Outputs
(pow.f64 im 1/3)
(cbrt.f64 im)
(+.f64 (pow.f64 im 1/3) (*.f64 1/3 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9))))
(+.f64 (cbrt.f64 im) (*.f64 1/3 (*.f64 re (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)))))
(fma.f64 (*.f64 1/3 re) (*.f64 (pow.f64 (/.f64 (/.f64 1 im) im) 1/18) (pow.f64 (/.f64 (/.f64 1 im) im) 1/18)) (cbrt.f64 im))
(fma.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 im) im) 1/18) (pow.f64 (/.f64 (/.f64 1 im) im) 1/18)) (*.f64 1/3 re) (cbrt.f64 im))
(+.f64 (pow.f64 im 1/3) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))) (*.f64 1/3 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9)))))
(+.f64 (cbrt.f64 im) (*.f64 1/3 (+.f64 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (*.f64 re re) (cbrt.f64 (/.f64 1 (*.f64 im im))))) (*.f64 re (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))))))
(fma.f64 1/3 (fma.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 -1/3 (pow.f64 (/.f64 1 im) 1/18)) (pow.f64 (/.f64 1 im) 1/18))) (*.f64 (*.f64 re re) (cbrt.f64 (/.f64 (/.f64 1 im) im))) (*.f64 re (*.f64 (pow.f64 (/.f64 (/.f64 1 im) im) 1/18) (pow.f64 (/.f64 (/.f64 1 im) im) 1/18)))) (cbrt.f64 im))
(fma.f64 1/3 (fma.f64 re (*.f64 (pow.f64 (/.f64 (/.f64 1 im) im) 1/18) (pow.f64 (/.f64 (/.f64 1 im) im) 1/18)) (*.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3 (/.f64 1/2 im)) (*.f64 re (*.f64 re (cbrt.f64 (/.f64 (/.f64 1 im) im)))))) (cbrt.f64 im))
(+.f64 (pow.f64 im 1/3) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))) (+.f64 (*.f64 1/3 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9))) (*.f64 -1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9)))) (pow.f64 re 3)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))))))
(+.f64 (cbrt.f64 im) (fma.f64 1/3 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (*.f64 re re) (cbrt.f64 (/.f64 1 (*.f64 im im))))) (fma.f64 1/3 (*.f64 re (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))) (*.f64 -1/3 (*.f64 (fma.f64 1/27 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 2/3 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))))) (*.f64 (pow.f64 re 3) (cbrt.f64 (/.f64 1 (*.f64 im im)))))))))
(+.f64 (cbrt.f64 im) (fma.f64 1/3 (fma.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 -1/3 (pow.f64 (/.f64 1 im) 1/18)) (pow.f64 (/.f64 1 im) 1/18))) (*.f64 (*.f64 re re) (cbrt.f64 (/.f64 (/.f64 1 im) im))) (*.f64 re (*.f64 (pow.f64 (/.f64 (/.f64 1 im) im) 1/18) (pow.f64 (/.f64 (/.f64 1 im) im) 1/18)))) (*.f64 (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 -1/3 (pow.f64 (/.f64 1 im) 1/18)) (pow.f64 (/.f64 1 im) 1/18))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 im) im)) 1/27)) (*.f64 (*.f64 (cbrt.f64 (/.f64 (/.f64 1 im) im)) (pow.f64 re 3)) -1/3))))
(+.f64 (cbrt.f64 im) (fma.f64 1/3 (*.f64 re (*.f64 (pow.f64 (/.f64 (/.f64 1 im) im) 1/18) (pow.f64 (/.f64 (/.f64 1 im) im) 1/18))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 im) im)) (+.f64 (*.f64 (*.f64 1/3 (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3 (/.f64 1/2 im))) (*.f64 re re)) (*.f64 (*.f64 -1/3 (fma.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3 (/.f64 1/2 im)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) 2/3) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 im) im)) 1/27))) (pow.f64 re 3))))))
(*.f64 (cbrt.f64 2) (pow.f64 re 1/3))
(*.f64 (cbrt.f64 2) (cbrt.f64 re))
(+.f64 (*.f64 (cbrt.f64 2) (pow.f64 re 1/3)) (*.f64 1/6 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3))))
(fma.f64 (cbrt.f64 2) (cbrt.f64 re) (*.f64 1/6 (*.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 5))))))
(fma.f64 (cbrt.f64 2) (cbrt.f64 re) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 1/6 (*.f64 im im)) (pow.f64 (cbrt.f64 2) 2))))
(+.f64 (*.f64 (cbrt.f64 2) (pow.f64 re 1/3)) (+.f64 (*.f64 1/6 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3))) (*.f64 -1/18 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (pow.f64 re 11)) 1/3)))))
(fma.f64 (cbrt.f64 2) (cbrt.f64 re) (fma.f64 1/6 (*.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 -1/18 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 11)))))))
(fma.f64 (cbrt.f64 2) (cbrt.f64 re) (fma.f64 1/6 (*.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 2) 2) im)) (cbrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 -1/18 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 11)))))))
(fma.f64 (cbrt.f64 2) (cbrt.f64 re) (fma.f64 1/6 (*.f64 (*.f64 (/.f64 im (pow.f64 (cbrt.f64 2) 2)) im) (cbrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 -1/18 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 11)))))))
(+.f64 (*.f64 (cbrt.f64 2) (pow.f64 re 1/3)) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5))))) (pow.f64 im 6)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (pow.f64 re 2)) 1/3))) (+.f64 (*.f64 1/6 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3))) (*.f64 -1/18 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (pow.f64 re 11)) 1/3))))))
(fma.f64 (cbrt.f64 2) (cbrt.f64 re) (fma.f64 1/3 (*.f64 (/.f64 (-.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 1/216 (*.f64 (pow.f64 re 5) (pow.f64 (cbrt.f64 2) 6)))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 im 6))) (cbrt.f64 (/.f64 1 (*.f64 re re)))) (fma.f64 1/6 (*.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 -1/18 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 11))))))))
(fma.f64 (cbrt.f64 2) (cbrt.f64 re) (fma.f64 1/3 (/.f64 (*.f64 (-.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 1/864 (pow.f64 re 5))) (pow.f64 im 6)) (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (/.f64 1 (*.f64 re re))))) (fma.f64 1/6 (*.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 2) 2) im)) (cbrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 -1/18 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 11))))))))
(fma.f64 1/3 (/.f64 (+.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 -1/864 (pow.f64 re 5))) (/.f64 (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (/.f64 1 (*.f64 re re)))) (pow.f64 im 6))) (fma.f64 (cbrt.f64 2) (cbrt.f64 re) (fma.f64 1/6 (*.f64 (*.f64 (/.f64 im (pow.f64 (cbrt.f64 2) 2)) im) (cbrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 -1/18 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 11))))))))
(pow.f64 (pow.f64 im 2) 1/3)
(cbrt.f64 (*.f64 im im))
(+.f64 (pow.f64 (pow.f64 im 2) 1/3) (*.f64 2/3 (*.f64 re (pow.f64 im 1/9))))
(+.f64 (cbrt.f64 (*.f64 im im)) (*.f64 2/3 (*.f64 re (*.f64 (pow.f64 im 1/18) (pow.f64 im 1/18)))))
(fma.f64 2/3 (*.f64 re (*.f64 (pow.f64 im 1/18) (pow.f64 im 1/18))) (cbrt.f64 (*.f64 im im)))
(fma.f64 re (*.f64 (*.f64 (pow.f64 im 1/18) (pow.f64 im 1/18)) 2/3) (cbrt.f64 (*.f64 im im)))
(+.f64 (pow.f64 (pow.f64 im 2) 1/3) (+.f64 (*.f64 2/3 (*.f64 re (pow.f64 im 1/9))) (*.f64 (+.f64 (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 2/3 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 (/.f64 1 im) 1/3)))) (pow.f64 re 2))))
(+.f64 (cbrt.f64 (*.f64 im im)) (fma.f64 2/3 (*.f64 re (*.f64 (pow.f64 im 1/18) (pow.f64 im 1/18))) (*.f64 (*.f64 re re) (fma.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18)) (*.f64 2/3 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (cbrt.f64 (/.f64 1 im))))))))
(+.f64 (cbrt.f64 (*.f64 im im)) (fma.f64 (*.f64 re re) (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 -1/3 (pow.f64 (/.f64 1 im) 1/18)) (pow.f64 (/.f64 1 im) 1/18))) (cbrt.f64 (/.f64 1 im))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18)))) (*.f64 (*.f64 (pow.f64 im 1/18) (pow.f64 im 1/18)) (*.f64 re 2/3))))
(fma.f64 re (*.f64 re (fma.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18)) (*.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3 (/.f64 1/2 im)) (*.f64 (cbrt.f64 (/.f64 1 im)) 2/3)))) (fma.f64 re (*.f64 (*.f64 (pow.f64 im 1/18) (pow.f64 im 1/18)) 2/3) (cbrt.f64 (*.f64 im im))))
(+.f64 (pow.f64 (pow.f64 im 2) 1/3) (+.f64 (*.f64 2/3 (*.f64 re (pow.f64 im 1/9))) (+.f64 (*.f64 (+.f64 (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 2/3 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 (/.f64 1 im) 1/3)))) (pow.f64 re 2)) (*.f64 (pow.f64 re 3) (+.f64 (*.f64 2/9 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/9))) (*.f64 -2/3 (*.f64 (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9)))) (pow.f64 (/.f64 1 im) 1/3))))))))
(+.f64 (cbrt.f64 (*.f64 im im)) (fma.f64 2/3 (*.f64 re (*.f64 (pow.f64 im 1/18) (pow.f64 im 1/18))) (fma.f64 (fma.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18)) (*.f64 2/3 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (cbrt.f64 (/.f64 1 im))))) (*.f64 re re) (*.f64 (pow.f64 re 3) (fma.f64 2/9 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18))) (*.f64 -2/3 (*.f64 (fma.f64 1/27 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 2/3 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))))) (cbrt.f64 (/.f64 1 im)))))))))
(+.f64 (fma.f64 2/3 (*.f64 re (*.f64 (pow.f64 im 1/18) (pow.f64 im 1/18))) (cbrt.f64 (*.f64 im im))) (fma.f64 (pow.f64 re 3) (fma.f64 2/9 (*.f64 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 -1/3 (pow.f64 (/.f64 1 im) 1/18)) (pow.f64 (/.f64 1 im) 1/18))) (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18)) (*.f64 (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 -1/3 (pow.f64 (/.f64 1 im) 1/18)) (pow.f64 (/.f64 1 im) 1/18))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 im) im)) 1/27)) (*.f64 (cbrt.f64 (/.f64 1 im)) -2/3))) (*.f64 re (*.f64 re (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 -1/3 (pow.f64 (/.f64 1 im) 1/18)) (pow.f64 (/.f64 1 im) 1/18))) (cbrt.f64 (/.f64 1 im))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18))))))))
(+.f64 (*.f64 re (+.f64 (*.f64 2/3 (*.f64 (pow.f64 im 1/18) (pow.f64 im 1/18))) (*.f64 (fma.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18)) (*.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3 (/.f64 1/2 im)) (*.f64 (cbrt.f64 (/.f64 1 im)) 2/3))) re))) (fma.f64 (pow.f64 re 3) (fma.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3 (/.f64 1/2 im)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) 2/3) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 im) im)) 1/27)) (*.f64 (cbrt.f64 (/.f64 1 im)) -2/3) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18)) (*.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3 (/.f64 1/2 im)) 2/9))) (cbrt.f64 (*.f64 im im))))
(*.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 (pow.f64 re 2) 1/3))
(*.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (*.f64 re re)))
(+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 im 2) (cbrt.f64 2)) (pow.f64 (/.f64 1 (pow.f64 re 4)) 1/3))) (*.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 (pow.f64 re 2) 1/3)))
(fma.f64 1/3 (*.f64 (/.f64 (*.f64 im im) (cbrt.f64 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 4)))) (*.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (*.f64 re re))))
(fma.f64 1/3 (*.f64 (*.f64 (/.f64 im (cbrt.f64 2)) im) (cbrt.f64 (/.f64 1 (pow.f64 re 4)))) (*.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (*.f64 re re))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/9 (*.f64 (/.f64 1 (cbrt.f64 2)) (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3))) (*.f64 1/36 (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 4)) (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3)))) (pow.f64 im 4)) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 im 2) (cbrt.f64 2)) (pow.f64 (/.f64 1 (pow.f64 re 4)) 1/3))) (*.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 (pow.f64 re 2) 1/3))))
(fma.f64 (fma.f64 -1/9 (*.f64 (/.f64 1 (cbrt.f64 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 10)))) (*.f64 1/36 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (/.f64 1 (pow.f64 (cbrt.f64 2) 4))))) (pow.f64 im 4) (fma.f64 1/3 (*.f64 (/.f64 (*.f64 im im) (cbrt.f64 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 4)))) (*.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (*.f64 re re)))))
(fma.f64 (pow.f64 im 4) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (+.f64 (/.f64 -1/9 (cbrt.f64 2)) (/.f64 1/36 (*.f64 2 (cbrt.f64 2))))) (fma.f64 1/3 (*.f64 (/.f64 (*.f64 im im) (cbrt.f64 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 4)))) (*.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (*.f64 re re)))))
(fma.f64 1/3 (*.f64 (*.f64 (/.f64 im (cbrt.f64 2)) im) (cbrt.f64 (/.f64 1 (pow.f64 re 4)))) (fma.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (*.f64 re re)) (*.f64 (pow.f64 im 4) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (+.f64 (/.f64 -1/9 (cbrt.f64 2)) (/.f64 1/72 (cbrt.f64 2)))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/54 (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 4)) (pow.f64 (/.f64 1 (pow.f64 re 16)) 1/3))) (*.f64 2/3 (*.f64 (/.f64 (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5))))) (cbrt.f64 2)) (pow.f64 (/.f64 1 re) 1/3)))) (pow.f64 im 6)) (+.f64 (*.f64 (+.f64 (*.f64 -1/9 (*.f64 (/.f64 1 (cbrt.f64 2)) (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3))) (*.f64 1/36 (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 4)) (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3)))) (pow.f64 im 4)) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 im 2) (cbrt.f64 2)) (pow.f64 (/.f64 1 (pow.f64 re 4)) 1/3))) (*.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 (pow.f64 re 2) 1/3)))))
(fma.f64 (fma.f64 -1/54 (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 4)) (cbrt.f64 (/.f64 1 (pow.f64 re 16)))) (*.f64 2/3 (/.f64 (*.f64 (-.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 1/216 (*.f64 (pow.f64 re 5) (pow.f64 (cbrt.f64 2) 6)))) (cbrt.f64 (/.f64 1 re))) (cbrt.f64 2)))) (pow.f64 im 6) (fma.f64 (fma.f64 -1/9 (*.f64 (/.f64 1 (cbrt.f64 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 10)))) (*.f64 1/36 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (/.f64 1 (pow.f64 (cbrt.f64 2) 4))))) (pow.f64 im 4) (fma.f64 1/3 (*.f64 (/.f64 (*.f64 im im) (cbrt.f64 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 4)))) (*.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (*.f64 re re))))))
(fma.f64 (pow.f64 im 6) (fma.f64 2/3 (/.f64 (*.f64 (-.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 1/864 (pow.f64 re 5))) (cbrt.f64 (/.f64 1 re))) (cbrt.f64 2)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 16))) (/.f64 -1/54 (*.f64 2 (cbrt.f64 2))))) (fma.f64 (pow.f64 im 4) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (+.f64 (/.f64 -1/9 (cbrt.f64 2)) (/.f64 1/36 (*.f64 2 (cbrt.f64 2))))) (fma.f64 1/3 (*.f64 (/.f64 (*.f64 im im) (cbrt.f64 2)) (cbrt.f64 (/.f64 1 (pow.f64 re 4)))) (*.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (*.f64 re re))))))
(fma.f64 (pow.f64 im 6) (fma.f64 2/3 (/.f64 (+.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 -1/864 (pow.f64 re 5))) (/.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 1 re)))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 16))) (/.f64 -1/108 (cbrt.f64 2)))) (fma.f64 1/3 (*.f64 (*.f64 (/.f64 im (cbrt.f64 2)) im) (cbrt.f64 (/.f64 1 (pow.f64 re 4)))) (fma.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (*.f64 re re)) (*.f64 (pow.f64 im 4) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (+.f64 (/.f64 -1/9 (cbrt.f64 2)) (/.f64 1/72 (cbrt.f64 2))))))))
im
(+.f64 re im)
(+.f64 im re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 im re))
(+.f64 im (fma.f64 1/2 (/.f64 re (/.f64 im re)) re))
(+.f64 im (fma.f64 1/2 (*.f64 (/.f64 re im) re) re))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 im re)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (+.f64 im (fma.f64 1/2 (/.f64 re (/.f64 im re)) re)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (+.f64 im (fma.f64 1/2 (*.f64 (/.f64 re im) re) re)))
(*.f64 2 re)
(*.f64 re 2)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))
(fma.f64 re 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))
(fma.f64 re 2 (*.f64 (/.f64 1/2 re) (*.f64 im im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 re 2 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 re 2 (*.f64 (/.f64 1/2 re) (*.f64 im im))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 re 2 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 re 2))))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(/.f64 (*.f64 (*.f64 -1/2 im) im) re)
(*.f64 (/.f64 -1/2 re) (*.f64 im im))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 (/.f64 (*.f64 im im) re) -1/2))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (/.f64 (*.f64 (*.f64 -1/2 im) im) re))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (*.f64 (/.f64 -1/2 re) (*.f64 im im)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.f64 (*.f64 im im) re) -1/2)))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) -1/16 (/.f64 (*.f64 (*.f64 -1/2 im) im) re)))
(fma.f64 (*.f64 (/.f64 im re) im) -1/2 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (*.f64 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) -1/16)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 im 4) -1/8) 2) (*.f64 (pow.f64 im 8) 1/16)) (pow.f64 re 7)) (fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.f64 (*.f64 im im) re) -1/2))))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 1/2 (/.f64 (fma.f64 (pow.f64 im 8) 1/16 (*.f64 (pow.f64 im 8) 1/64)) (pow.f64 re 7)) (fma.f64 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) -1/16 (/.f64 (*.f64 (*.f64 -1/2 im) im) re))))
(fma.f64 1/2 (/.f64 (*.f64 (pow.f64 im 8) 5/64) (pow.f64 re 7)) (fma.f64 (*.f64 (/.f64 im re) im) -1/2 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (*.f64 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) -1/16))))
(*.f64 2 re)
(*.f64 re 2)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))
(fma.f64 re 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))
(fma.f64 re 2 (*.f64 (/.f64 1/2 re) (*.f64 im im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 re 2 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 re 2 (*.f64 (/.f64 1/2 re) (*.f64 im im))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 re 2 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 re 2))))
im
(+.f64 re im)
(+.f64 im re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 im re))
(+.f64 im (fma.f64 1/2 (/.f64 re (/.f64 im re)) re))
(+.f64 im (fma.f64 1/2 (*.f64 (/.f64 re im) re) re))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 im re)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (+.f64 im (fma.f64 1/2 (/.f64 re (/.f64 im re)) re)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (+.f64 im (fma.f64 1/2 (*.f64 (/.f64 re im) re) re)))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 re (*.f64 -1 im))
(+.f64 re (neg.f64 im))
(-.f64 re im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 re (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im)))
(+.f64 re (fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im)))
(-.f64 (fma.f64 (*.f64 (/.f64 re im) re) -1/2 re) im)
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(fma.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (+.f64 re (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im))))
(+.f64 (fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im)) (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 re))
(-.f64 (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (fma.f64 (*.f64 (/.f64 re im) re) -1/2 re)) im)

prune258.0ms (6.2%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New3081309
Fresh145
Picked011
Done011
Total3097316
Error
5.8b
Counts
316 → 7
Alt Table
StatusErrorProgram
48.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (pow.f64 (/.f64 (cbrt.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2))) (cbrt.f64 (-.f64 re (hypot.f64 re im)))) 2)))))
13.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2)))))
12.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
44.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
49.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
56.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (*.f64 (/.f64 im re) im) -1/2 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3)))))))
52.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (/.f64 im re) im) -1/2))))
Compiler

Compiled 9447 to 5594 computations (40.8% saved)

localize4.0ms (0.1%)

prune6.0ms (0.2%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New000
Fresh044
Picked011
Done022
Total077
Error
5.8b
Counts
7 → 7
Alt Table
StatusErrorProgram
48.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (pow.f64 (/.f64 (cbrt.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2))) (cbrt.f64 (-.f64 re (hypot.f64 re im)))) 2)))))
13.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2)))))
12.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
44.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
49.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
56.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (*.f64 (/.f64 im re) im) -1/2 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3)))))))
52.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (/.f64 im re) im) -1/2))))
Compiler

Compiled 200 to 145 computations (27.5% saved)

localize22.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(cbrt.f64 (-.f64 re (hypot.f64 re im)))
1.1b
(+.f64 re (hypot.f64 re im))
17.3b
(-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2))
18.1b
(cbrt.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)))

series45.0ms (1.1%)

Counts
3 → 40
Calls

18 calls:

TimeVariablePointExpression
8.0ms
re
@0
(cbrt.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)))
6.0ms
re
@inf
(cbrt.f64 (-.f64 re (hypot.f64 re im)))
6.0ms
im
@0
(-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2))
5.0ms
re
@inf
(cbrt.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)))
4.0ms
im
@inf
(cbrt.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)))

rewrite76.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
828×prod-diff_binary64
200×log1p-udef_binary64
121×add-sqr-sqrt_binary64
118×pow1_binary64
116×*-un-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify80.0ms (1.9%)

Algorithm
egg-herbie
Rules
698×times-frac_binary64
337×fma-def_binary64
191×associate-*r*_binary64
190×*-commutative_binary64
166×associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02733316
19182742
238602734
Stop Event
node limit
Counts
194 → 198
Calls
Call 1
Inputs
(*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3))
(*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3))
(+.f64 (*.f64 -1/3 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 1/64 (/.f64 1 (pow.f64 im 6))))) (pow.f64 re 8)) (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)))
(+.f64 (*.f64 -1/3 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 1/64 (/.f64 1 (pow.f64 im 6))))) (pow.f64 re 8)) (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (*.f64 -1/3 (*.f64 (/.f64 (*.f64 (pow.f64 re 12) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 im 8))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 2)))) (pow.f64 im 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)))))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 im 8))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 2)))) (pow.f64 im 2))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 im 10))) (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4))))))) (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3)))))
(*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3))
(+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 2))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))))
(+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (+.f64 (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (+.f64 (*.f64 -1/8 (pow.f64 im 6)) (*.f64 -1/3 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 2) (pow.f64 im 2))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 2))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3)))))
(+.f64 (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -2/3 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (+.f64 (*.f64 -1/8 (pow.f64 im 6)) (*.f64 -1/3 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 2) (pow.f64 im 2))))) (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4)))) (pow.f64 im 2))) (+.f64 (*.f64 1/64 (pow.f64 im 8)) (+.f64 (*.f64 -1/27 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 3) (*.f64 (pow.f64 (cbrt.f64 -1) 6) (pow.f64 im 4)))) (+.f64 (*.f64 1/16 (pow.f64 im 8)) (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8)))))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 6))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (+.f64 (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (+.f64 (*.f64 -1/8 (pow.f64 im 6)) (*.f64 -1/3 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 2) (pow.f64 im 2))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 2))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))))))
(*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3))
(+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 2))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))))
(+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (+.f64 (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (+.f64 (*.f64 -1/8 (pow.f64 im 6)) (*.f64 -1/3 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 2) (pow.f64 im 2))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 2))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3)))))
(+.f64 (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -2/3 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (+.f64 (*.f64 -1/8 (pow.f64 im 6)) (*.f64 -1/3 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 2) (pow.f64 im 2))))) (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4)))) (pow.f64 im 2))) (+.f64 (*.f64 1/64 (pow.f64 im 8)) (+.f64 (*.f64 -1/27 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 3) (*.f64 (pow.f64 (cbrt.f64 -1) 6) (pow.f64 im 4)))) (+.f64 (*.f64 1/16 (pow.f64 im 8)) (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8)))))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 6))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (+.f64 (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (+.f64 (*.f64 -1/8 (pow.f64 im 6)) (*.f64 -1/3 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 2) (pow.f64 im 2))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 2))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))))))
(*.f64 -1 (pow.f64 im 2))
(*.f64 -1 (pow.f64 im 2))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 1/64 (/.f64 1 (pow.f64 im 6))))) (pow.f64 re 8))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 re 12) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 im 8))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 2)))) (pow.f64 im 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)))))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 im 8))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 2)))) (pow.f64 im 2))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 im 10))) (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)))))))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 1/64 (/.f64 1 (pow.f64 im 6))))) (pow.f64 re 8)))))
(*.f64 -1 (pow.f64 im 2))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 2))))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 re 4))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 2)))))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/64 (pow.f64 im 8)) (+.f64 (*.f64 1/16 (pow.f64 im 8)) (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8)))))) (pow.f64 re 6))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 re 4))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 2))))))
(*.f64 -1 (pow.f64 im 2))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 2))))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 re 4))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 2)))))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/64 (pow.f64 im 8)) (+.f64 (*.f64 1/16 (pow.f64 im 8)) (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8)))))) (pow.f64 re 6))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 re 4))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 2))))))
(*.f64 -1 (pow.f64 im 2))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 6))) (*.f64 1/64 (/.f64 1 (pow.f64 re 6))))) (pow.f64 im 8))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 re 10))) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))))))) (pow.f64 im 12))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 6))) (*.f64 1/64 (/.f64 1 (pow.f64 re 6))))) (pow.f64 im 8)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 re 10))) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))))))) (pow.f64 im 12))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 6))) (*.f64 1/64 (/.f64 1 (pow.f64 re 6))))) (pow.f64 im 8))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 4))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))) (pow.f64 re 2))) (+.f64 (*.f64 -1 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 4))) (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 6)))))) (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 6)))))) (pow.f64 im 14))))))
(*.f64 -1 (pow.f64 im 2))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re 4)) (*.f64 -1/4 (pow.f64 re 4))) (pow.f64 im 2))) (*.f64 -1 (pow.f64 im 2)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re 4)) (*.f64 -1/4 (pow.f64 re 4))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 re 6)) (*.f64 1/8 (pow.f64 re 6))) (pow.f64 im 4)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re 4)) (*.f64 -1/4 (pow.f64 re 4))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/64 (pow.f64 re 8)) (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 re 4)) 2) (*.f64 1/16 (pow.f64 re 8)))) (*.f64 1/16 (pow.f64 re 8)))) (pow.f64 im 6))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 re 6)) (*.f64 1/8 (pow.f64 re 6))) (pow.f64 im 4))))))
(*.f64 -1 (pow.f64 im 2))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re 4)) (*.f64 -1/4 (pow.f64 re 4))) (pow.f64 im 2))) (*.f64 -1 (pow.f64 im 2)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re 4)) (*.f64 -1/4 (pow.f64 re 4))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 re 6)) (*.f64 1/8 (pow.f64 re 6))) (pow.f64 im 4)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re 4)) (*.f64 -1/4 (pow.f64 re 4))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/64 (pow.f64 re 8)) (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 re 4)) 2) (*.f64 1/16 (pow.f64 re 8)))) (*.f64 1/16 (pow.f64 re 8)))) (pow.f64 im 6))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 re 6)) (*.f64 1/8 (pow.f64 re 6))) (pow.f64 im 4))))))
(*.f64 (cbrt.f64 -1) (pow.f64 im 1/3))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9)))) (*.f64 (cbrt.f64 -1) (pow.f64 im 1/3)))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9)))) (+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 im 1/3)) (*.f64 -1/3 (*.f64 (/.f64 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (pow.f64 (/.f64 1 im) 1/9))) (*.f64 1/2 (/.f64 1 im)))) (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9)))) (+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 im 1/3)) (+.f64 (*.f64 -1/3 (*.f64 (/.f64 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/27 (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 5)) 1/3) (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (pow.f64 (/.f64 1 im) 1/9))) (*.f64 1/2 (/.f64 1 im))) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9)))))) (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))) (*.f64 -1/3 (*.f64 (/.f64 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (pow.f64 (/.f64 1 im) 1/9))) (*.f64 1/2 (/.f64 1 im)))) (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))))))
Outputs
(*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)))
(*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)))
(+.f64 (*.f64 -1/3 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 1/64 (/.f64 1 (pow.f64 im 6))))) (pow.f64 re 8)) (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)))
(fma.f64 -1/3 (*.f64 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (fma.f64 -1 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (/.f64 1/64 (pow.f64 im 6)))) (/.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 8))) (cbrt.f64 (/.f64 1 (pow.f64 im 4)))) (*.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im))))
(fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 -1/3 (/.f64 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (-.f64 (/.f64 1/64 (pow.f64 im 6)) (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)))) (pow.f64 re 8)) (/.f64 (pow.f64 (cbrt.f64 -1) 2) (cbrt.f64 (/.f64 1 (pow.f64 im 4)))))))
(+.f64 (*.f64 -1/3 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 1/64 (/.f64 1 (pow.f64 im 6))))) (pow.f64 re 8)) (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (*.f64 -1/3 (*.f64 (/.f64 (*.f64 (pow.f64 re 12) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 im 8))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 2)))) (pow.f64 im 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)))))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 im 8))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 2)))) (pow.f64 im 2))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 im 10))) (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4))))))) (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3)))))
(fma.f64 -1/3 (*.f64 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (fma.f64 -1 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (/.f64 1/64 (pow.f64 im 6)))) (/.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 8))) (cbrt.f64 (/.f64 1 (pow.f64 im 4)))) (fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 (*.f64 -1/3 (/.f64 (pow.f64 re 12) (/.f64 (pow.f64 (cbrt.f64 -1) 2) (fma.f64 -1 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 im 8)) (*.f64 1/2 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (*.f64 im im)))) (*.f64 im im)) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4))))) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 im 8)) (*.f64 1/2 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (*.f64 im im)))) (*.f64 im im)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4))) (/.f64 1/256 (pow.f64 im 10)))))))) (cbrt.f64 (/.f64 1 (pow.f64 im 4))))))
(fma.f64 -1/3 (/.f64 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (-.f64 (/.f64 1/64 (pow.f64 im 6)) (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)))) (pow.f64 re 8)) (/.f64 (pow.f64 (cbrt.f64 -1) 2) (cbrt.f64 (/.f64 1 (pow.f64 im 4))))) (fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (*.f64 (/.f64 (pow.f64 re 12) (pow.f64 (cbrt.f64 -1) 2)) (-.f64 (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 im im) (pow.f64 im 8))) (/.f64 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) -1/2) (pow.f64 im 4))) (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)) (/.f64 1/256 (pow.f64 im 10)))) (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 im im) (pow.f64 im 8))) (/.f64 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) -1/2) (pow.f64 im 4))) (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)) (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2)))))))))
(*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)))
(+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 2))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))))
(fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 (*.f64 -1/3 (/.f64 (/.f64 (*.f64 (pow.f64 im 4) 0) (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re))) (cbrt.f64 (/.f64 1 (pow.f64 im 4)))))
(fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (/.f64 (/.f64 0 (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re))))
(+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (+.f64 (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (+.f64 (*.f64 -1/8 (pow.f64 im 6)) (*.f64 -1/3 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 2) (pow.f64 im 2))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 2))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3)))))
(fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 -1/3 (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 6) 0) (*.f64 -1/3 (/.f64 (pow.f64 (*.f64 (pow.f64 im 4) 0) 2) (*.f64 im im)))) (cbrt.f64 (/.f64 1 (pow.f64 im 4)))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (/.f64 (/.f64 (*.f64 (pow.f64 im 4) 0) (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re))))))
(fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (+.f64 (/.f64 (/.f64 0 (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re)) (/.f64 (*.f64 -1/3 (+.f64 (/.f64 0 (*.f64 im im)) 0)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))))))
(fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (+.f64 (/.f64 (/.f64 0 (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re)) (*.f64 (/.f64 -1/3 (pow.f64 (cbrt.f64 -1) 2)) (/.f64 (+.f64 (/.f64 0 (*.f64 im im)) 0) (pow.f64 re 4))))))
(+.f64 (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -2/3 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (+.f64 (*.f64 -1/8 (pow.f64 im 6)) (*.f64 -1/3 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 2) (pow.f64 im 2))))) (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4)))) (pow.f64 im 2))) (+.f64 (*.f64 1/64 (pow.f64 im 8)) (+.f64 (*.f64 -1/27 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 3) (*.f64 (pow.f64 (cbrt.f64 -1) 6) (pow.f64 im 4)))) (+.f64 (*.f64 1/16 (pow.f64 im 8)) (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8)))))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 6))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (+.f64 (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (+.f64 (*.f64 -1/8 (pow.f64 im 6)) (*.f64 -1/3 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 2) (pow.f64 im 2))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 2))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))))))
(fma.f64 -1/3 (/.f64 (*.f64 (fma.f64 -2/3 (/.f64 (+.f64 (*.f64 (pow.f64 im 6) 0) (*.f64 -1/3 (/.f64 (pow.f64 (*.f64 (pow.f64 im 4) 0) 2) (*.f64 im im)))) (/.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 0))) (fma.f64 1/64 (pow.f64 im 8) (fma.f64 -1/27 (/.f64 (pow.f64 (*.f64 (pow.f64 im 4) 0) 3) (*.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 -1) 6))) (fma.f64 1/16 (pow.f64 im 8) (neg.f64 (+.f64 (*.f64 1/16 (pow.f64 im 8)) (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2))))))) (cbrt.f64 (/.f64 1 (pow.f64 im 4)))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 6))) (fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 -1/3 (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 6) 0) (*.f64 -1/3 (/.f64 (pow.f64 (*.f64 (pow.f64 im 4) 0) 2) (*.f64 im im)))) (cbrt.f64 (/.f64 1 (pow.f64 im 4)))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (/.f64 (/.f64 (*.f64 (pow.f64 im 4) 0) (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re)))))))
(fma.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 (/.f64 (+.f64 (/.f64 0 (*.f64 im im)) 0) (*.f64 im im)) 0) (+.f64 (-.f64 (*.f64 (pow.f64 im 8) 5/64) (*.f64 (pow.f64 im 8) 5/64)) (/.f64 0 (pow.f64 im 4)))) (pow.f64 (cbrt.f64 -1) 2)) (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (pow.f64 re 6))) (fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (+.f64 (/.f64 (/.f64 0 (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re)) (/.f64 (*.f64 -1/3 (+.f64 (/.f64 0 (*.f64 im im)) 0)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4)))))))
(fma.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 (/.f64 (+.f64 (/.f64 0 (*.f64 im im)) 0) (*.f64 im im)) 0) (+.f64 (-.f64 (*.f64 (pow.f64 im 8) 5/64) (*.f64 (pow.f64 im 8) 5/64)) (/.f64 0 (pow.f64 im 4)))) (pow.f64 (cbrt.f64 -1) 2)) (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (pow.f64 re 6))) (fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (+.f64 (/.f64 (/.f64 0 (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re)) (*.f64 (/.f64 -1/3 (pow.f64 (cbrt.f64 -1) 2)) (/.f64 (+.f64 (/.f64 0 (*.f64 im im)) 0) (pow.f64 re 4)))))))
(*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)))
(+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 2))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))))
(fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 (*.f64 -1/3 (/.f64 (/.f64 (*.f64 (pow.f64 im 4) 0) (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re))) (cbrt.f64 (/.f64 1 (pow.f64 im 4)))))
(fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (/.f64 (/.f64 0 (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re))))
(+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (+.f64 (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (+.f64 (*.f64 -1/8 (pow.f64 im 6)) (*.f64 -1/3 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 2) (pow.f64 im 2))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 2))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3)))))
(fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 -1/3 (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 6) 0) (*.f64 -1/3 (/.f64 (pow.f64 (*.f64 (pow.f64 im 4) 0) 2) (*.f64 im im)))) (cbrt.f64 (/.f64 1 (pow.f64 im 4)))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (/.f64 (/.f64 (*.f64 (pow.f64 im 4) 0) (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re))))))
(fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (+.f64 (/.f64 (/.f64 0 (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re)) (/.f64 (*.f64 -1/3 (+.f64 (/.f64 0 (*.f64 im im)) 0)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))))))
(fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (+.f64 (/.f64 (/.f64 0 (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re)) (*.f64 (/.f64 -1/3 (pow.f64 (cbrt.f64 -1) 2)) (/.f64 (+.f64 (/.f64 0 (*.f64 im im)) 0) (pow.f64 re 4))))))
(+.f64 (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -2/3 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (+.f64 (*.f64 -1/8 (pow.f64 im 6)) (*.f64 -1/3 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 2) (pow.f64 im 2))))) (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4)))) (pow.f64 im 2))) (+.f64 (*.f64 1/64 (pow.f64 im 8)) (+.f64 (*.f64 -1/27 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 3) (*.f64 (pow.f64 (cbrt.f64 -1) 6) (pow.f64 im 4)))) (+.f64 (*.f64 1/16 (pow.f64 im 8)) (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8)))))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 6))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (pow.f64 im 2) 1/3)) (+.f64 (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (+.f64 (*.f64 -1/8 (pow.f64 im 6)) (*.f64 -1/3 (/.f64 (pow.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) 2) (pow.f64 im 2))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))) (*.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 2))) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/3))))))
(fma.f64 -1/3 (/.f64 (*.f64 (fma.f64 -2/3 (/.f64 (+.f64 (*.f64 (pow.f64 im 6) 0) (*.f64 -1/3 (/.f64 (pow.f64 (*.f64 (pow.f64 im 4) 0) 2) (*.f64 im im)))) (/.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 0))) (fma.f64 1/64 (pow.f64 im 8) (fma.f64 -1/27 (/.f64 (pow.f64 (*.f64 (pow.f64 im 4) 0) 3) (*.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 -1) 6))) (fma.f64 1/16 (pow.f64 im 8) (neg.f64 (+.f64 (*.f64 1/16 (pow.f64 im 8)) (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2))))))) (cbrt.f64 (/.f64 1 (pow.f64 im 4)))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 6))) (fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 -1/3 (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 6) 0) (*.f64 -1/3 (/.f64 (pow.f64 (*.f64 (pow.f64 im 4) 0) 2) (*.f64 im im)))) (cbrt.f64 (/.f64 1 (pow.f64 im 4)))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (/.f64 (/.f64 (*.f64 (pow.f64 im 4) 0) (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re)))))))
(fma.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 (/.f64 (+.f64 (/.f64 0 (*.f64 im im)) 0) (*.f64 im im)) 0) (+.f64 (-.f64 (*.f64 (pow.f64 im 8) 5/64) (*.f64 (pow.f64 im 8) 5/64)) (/.f64 0 (pow.f64 im 4)))) (pow.f64 (cbrt.f64 -1) 2)) (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (pow.f64 re 6))) (fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (+.f64 (/.f64 (/.f64 0 (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re)) (/.f64 (*.f64 -1/3 (+.f64 (/.f64 0 (*.f64 im im)) 0)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 re 4)))))))
(fma.f64 -1/3 (*.f64 (/.f64 (+.f64 (*.f64 (/.f64 (+.f64 (/.f64 0 (*.f64 im im)) 0) (*.f64 im im)) 0) (+.f64 (-.f64 (*.f64 (pow.f64 im 8) 5/64) (*.f64 (pow.f64 im 8) 5/64)) (/.f64 0 (pow.f64 im 4)))) (pow.f64 (cbrt.f64 -1) 2)) (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (pow.f64 re 6))) (fma.f64 (cbrt.f64 -1) (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 4))) (+.f64 (/.f64 (/.f64 0 (pow.f64 (cbrt.f64 -1) 2)) (*.f64 re re)) (*.f64 (/.f64 -1/3 (pow.f64 (cbrt.f64 -1) 2)) (/.f64 (+.f64 (/.f64 0 (*.f64 im im)) 0) (pow.f64 re 4)))))))
(*.f64 -1 (pow.f64 im 2))
(neg.f64 (*.f64 im im))
(*.f64 im (neg.f64 im))
(*.f64 -1 (pow.f64 im 2))
(neg.f64 (*.f64 im im))
(*.f64 im (neg.f64 im))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 1/64 (/.f64 1 (pow.f64 im 6))))) (pow.f64 re 8))))
(*.f64 -1 (+.f64 (*.f64 im im) (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (fma.f64 -1 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (/.f64 1/64 (pow.f64 im 6)))) (pow.f64 re 8))))
(neg.f64 (fma.f64 im im (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (-.f64 (/.f64 1/64 (pow.f64 im 6)) (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)))) (pow.f64 re 8))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 re 12) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 im 8))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 2)))) (pow.f64 im 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)))))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 im 8))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 2)))) (pow.f64 im 2))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 im 10))) (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)))))))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 1/64 (/.f64 1 (pow.f64 im 6))))) (pow.f64 re 8)))))
(fma.f64 -1 (*.f64 (pow.f64 re 12) (fma.f64 -1 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 im 8)) (*.f64 1/2 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (*.f64 im im)))) (*.f64 im im)) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4))))) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 im 8)) (*.f64 1/2 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (*.f64 im im)))) (*.f64 im im)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4))) (/.f64 1/256 (pow.f64 im 10)))))) (*.f64 -1 (+.f64 (*.f64 im im) (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (fma.f64 -1 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (/.f64 1/64 (pow.f64 im 6)))) (pow.f64 re 8)))))
(fma.f64 (neg.f64 (pow.f64 re 12)) (-.f64 (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 im im) (pow.f64 im 8))) (/.f64 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) -1/2) (pow.f64 im 4))) (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)) (/.f64 1/256 (pow.f64 im 10)))) (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 im im) (pow.f64 im 8))) (/.f64 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) -1/2) (pow.f64 im 4))) (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)) (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2)))) (neg.f64 (fma.f64 im im (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (-.f64 (/.f64 1/64 (pow.f64 im 6)) (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)))) (pow.f64 re 8)))))
(-.f64 (neg.f64 (fma.f64 im im (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (-.f64 (/.f64 1/64 (pow.f64 im 6)) (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)))) (pow.f64 re 8)))) (*.f64 (pow.f64 re 12) (-.f64 (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 im im) (pow.f64 im 8))) (/.f64 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) -1/2) (pow.f64 im 4))) (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)) (/.f64 1/256 (pow.f64 im 10)))) (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 im im) (pow.f64 im 8))) (/.f64 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) -1/2) (pow.f64 im 4))) (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)) (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2))))))
(*.f64 -1 (pow.f64 im 2))
(neg.f64 (*.f64 im im))
(*.f64 im (neg.f64 im))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 2))))
(*.f64 -1 (+.f64 (*.f64 im im) (/.f64 (*.f64 (pow.f64 im 4) 0) (*.f64 re re))))
(-.f64 (/.f64 0 (*.f64 re re)) (*.f64 im im))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 re 4))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 2)))))
(fma.f64 -1 (*.f64 im im) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 im 6) 0) (pow.f64 re 4)) (neg.f64 (/.f64 (*.f64 (pow.f64 im 4) 0) (*.f64 re re)))))
(+.f64 (/.f64 0 (pow.f64 re 4)) (-.f64 (/.f64 0 (*.f64 re re)) (*.f64 im im)))
(+.f64 (/.f64 0 (*.f64 re re)) (fma.f64 im (neg.f64 im) (/.f64 0 (pow.f64 re 4))))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/64 (pow.f64 im 8)) (+.f64 (*.f64 1/16 (pow.f64 im 8)) (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8)))))) (pow.f64 re 6))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 re 4))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 2))))))
(fma.f64 -1 (*.f64 im im) (fma.f64 -1 (/.f64 (fma.f64 1/64 (pow.f64 im 8) (fma.f64 1/16 (pow.f64 im 8) (neg.f64 (+.f64 (*.f64 1/16 (pow.f64 im 8)) (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2))))) (pow.f64 re 6)) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 im 6) 0) (pow.f64 re 4)) (neg.f64 (/.f64 (*.f64 (pow.f64 im 4) 0) (*.f64 re re))))))
(-.f64 (-.f64 (+.f64 (/.f64 0 (*.f64 re re)) (/.f64 0 (pow.f64 re 4))) (/.f64 (-.f64 (*.f64 (pow.f64 im 8) 5/64) (*.f64 (pow.f64 im 8) 5/64)) (pow.f64 re 6))) (*.f64 im im))
(*.f64 -1 (pow.f64 im 2))
(neg.f64 (*.f64 im im))
(*.f64 im (neg.f64 im))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 2))))
(*.f64 -1 (+.f64 (*.f64 im im) (/.f64 (*.f64 (pow.f64 im 4) 0) (*.f64 re re))))
(-.f64 (/.f64 0 (*.f64 re re)) (*.f64 im im))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 re 4))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 2)))))
(fma.f64 -1 (*.f64 im im) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 im 6) 0) (pow.f64 re 4)) (neg.f64 (/.f64 (*.f64 (pow.f64 im 4) 0) (*.f64 re re)))))
(+.f64 (/.f64 0 (pow.f64 re 4)) (-.f64 (/.f64 0 (*.f64 re re)) (*.f64 im im)))
(+.f64 (/.f64 0 (*.f64 re re)) (fma.f64 im (neg.f64 im) (/.f64 0 (pow.f64 re 4))))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/64 (pow.f64 im 8)) (+.f64 (*.f64 1/16 (pow.f64 im 8)) (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8)))))) (pow.f64 re 6))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 re 4))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 2))))))
(fma.f64 -1 (*.f64 im im) (fma.f64 -1 (/.f64 (fma.f64 1/64 (pow.f64 im 8) (fma.f64 1/16 (pow.f64 im 8) (neg.f64 (+.f64 (*.f64 1/16 (pow.f64 im 8)) (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2))))) (pow.f64 re 6)) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 im 6) 0) (pow.f64 re 4)) (neg.f64 (/.f64 (*.f64 (pow.f64 im 4) 0) (*.f64 re re))))))
(-.f64 (-.f64 (+.f64 (/.f64 0 (*.f64 re re)) (/.f64 0 (pow.f64 re 4))) (/.f64 (-.f64 (*.f64 (pow.f64 im 8) 5/64) (*.f64 (pow.f64 im 8) 5/64)) (pow.f64 re 6))) (*.f64 im im))
(*.f64 -1 (pow.f64 im 2))
(neg.f64 (*.f64 im im))
(*.f64 im (neg.f64 im))
(+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 6))) (*.f64 1/64 (/.f64 1 (pow.f64 re 6))))) (pow.f64 im 8))))
(*.f64 -1 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 8) (fma.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 (/.f64 1 (pow.f64 re 6)) 5/64)))))
(neg.f64 (fma.f64 im im (*.f64 (pow.f64 im 8) (-.f64 (/.f64 5/64 (pow.f64 re 6)) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 re 10))) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))))))) (pow.f64 im 12))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 6))) (*.f64 1/64 (/.f64 1 (pow.f64 re 6))))) (pow.f64 im 8)))))
(fma.f64 -1 (*.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (*.f64 re re)) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (+.f64 (/.f64 1/256 (pow.f64 re 10)) (neg.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (*.f64 re re)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4))) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))))))) (pow.f64 im 12)) (*.f64 -1 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 8) (fma.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 (/.f64 1 (pow.f64 re 6)) 5/64))))))
(-.f64 (neg.f64 (fma.f64 im im (*.f64 (pow.f64 im 8) (-.f64 (/.f64 5/64 (pow.f64 re 6)) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))))))) (*.f64 (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (-.f64 (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (/.f64 1/256 (pow.f64 re 10))) (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))))) (pow.f64 im 12)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 re 10))) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))))))) (pow.f64 im 12))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 6))) (*.f64 1/64 (/.f64 1 (pow.f64 re 6))))) (pow.f64 im 8))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 4))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))) (pow.f64 re 2))) (+.f64 (*.f64 -1 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 4))) (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 6)))))) (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 6)))))) (pow.f64 im 14))))))
(fma.f64 -1 (*.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (*.f64 re re)) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (+.f64 (/.f64 1/256 (pow.f64 re 10)) (neg.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (*.f64 re re)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4))) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))))))) (pow.f64 im 12)) (fma.f64 -1 (*.f64 im im) (*.f64 -1 (+.f64 (*.f64 (pow.f64 im 8) (fma.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 (/.f64 1 (pow.f64 re 6)) 5/64))) (*.f64 (fma.f64 -1/8 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (pow.f64 re 4)) (fma.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (*.f64 re re)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4))) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))) (*.f64 re re)) (fma.f64 -1 (fma.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (*.f64 re re)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4))) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))) (*.f64 re re)) (fma.f64 -1/8 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (pow.f64 re 4)) (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 6))))) (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 6)))))) (pow.f64 im 14))))))
(-.f64 (-.f64 (neg.f64 (fma.f64 im im (*.f64 (pow.f64 im 8) (-.f64 (/.f64 5/64 (pow.f64 re 6)) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))))))) (*.f64 (fma.f64 -1/8 (-.f64 (/.f64 1/64 (*.f64 (pow.f64 re 4) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 6))) (fma.f64 -1/2 (/.f64 (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))) (*.f64 re re)) (-.f64 (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 6))) (fma.f64 -1/2 (/.f64 (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))) (*.f64 re re)) (fma.f64 -1/8 (-.f64 (/.f64 1/64 (*.f64 (pow.f64 re 4) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 6))) (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 6)))))))) (pow.f64 im 14))) (*.f64 (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (-.f64 (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (/.f64 1/256 (pow.f64 re 10))) (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))))) (pow.f64 im 12)))
(-.f64 (-.f64 (neg.f64 (fma.f64 im im (*.f64 (pow.f64 im 8) (-.f64 (/.f64 5/64 (pow.f64 re 6)) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))))))) (*.f64 (fma.f64 -1/8 (-.f64 (/.f64 1/64 (pow.f64 (pow.f64 re 4) 3)) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 6))) (fma.f64 -1/2 (/.f64 (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))) (*.f64 re re)) (-.f64 (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 6))) (fma.f64 -1/2 (/.f64 (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))) (*.f64 re re)) (fma.f64 -1/8 (-.f64 (/.f64 1/64 (pow.f64 (pow.f64 re 4) 3)) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 6))) (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 6)))))))) (pow.f64 im 14))) (*.f64 (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (-.f64 (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (/.f64 1/256 (pow.f64 re 10))) (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))))) (pow.f64 im 12)))
(*.f64 -1 (pow.f64 im 2))
(neg.f64 (*.f64 im im))
(*.f64 im (neg.f64 im))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re 4)) (*.f64 -1/4 (pow.f64 re 4))) (pow.f64 im 2))) (*.f64 -1 (pow.f64 im 2)))
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 re 4) 0) (*.f64 im im)) (neg.f64 (*.f64 im im)))
(-.f64 (/.f64 0 (*.f64 im im)) (*.f64 im im))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re 4)) (*.f64 -1/4 (pow.f64 re 4))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 re 6)) (*.f64 1/8 (pow.f64 re 6))) (pow.f64 im 4)))))
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 re 4) 0) (*.f64 im im)) (*.f64 -1 (+.f64 (*.f64 im im) (/.f64 (*.f64 (pow.f64 re 6) 0) (pow.f64 im 4)))))
(fma.f64 -1 (fma.f64 im im (/.f64 0 (pow.f64 im 4))) (/.f64 0 (*.f64 im im)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re 4)) (*.f64 -1/4 (pow.f64 re 4))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/64 (pow.f64 re 8)) (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 re 4)) 2) (*.f64 1/16 (pow.f64 re 8)))) (*.f64 1/16 (pow.f64 re 8)))) (pow.f64 im 6))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 re 6)) (*.f64 1/8 (pow.f64 re 6))) (pow.f64 im 4))))))
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 re 4) 0) (*.f64 im im)) (fma.f64 -1 (/.f64 (fma.f64 1/64 (pow.f64 re 8) (fma.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 re 4)) 2) (*.f64 1/16 (pow.f64 re 8))) (*.f64 1/16 (pow.f64 re 8)))) (pow.f64 im 6)) (*.f64 -1 (+.f64 (*.f64 im im) (/.f64 (*.f64 (pow.f64 re 6) 0) (pow.f64 im 4))))))
(+.f64 (/.f64 0 (*.f64 im im)) (-.f64 (-.f64 (/.f64 0 (pow.f64 im 4)) (*.f64 im im)) (/.f64 (fma.f64 1/64 (pow.f64 re 8) (-.f64 (*.f64 1/16 (pow.f64 re 8)) (fma.f64 1/16 (pow.f64 re 8) (*.f64 1/64 (pow.f64 re 8))))) (pow.f64 im 6))))
(fma.f64 -1 (+.f64 (fma.f64 im im (/.f64 0 (pow.f64 im 4))) (/.f64 (fma.f64 1/64 (pow.f64 re 8) (-.f64 (*.f64 1/16 (pow.f64 re 8)) (fma.f64 1/16 (pow.f64 re 8) (*.f64 1/64 (pow.f64 re 8))))) (pow.f64 im 6))) (/.f64 0 (*.f64 im im)))
(*.f64 -1 (pow.f64 im 2))
(neg.f64 (*.f64 im im))
(*.f64 im (neg.f64 im))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re 4)) (*.f64 -1/4 (pow.f64 re 4))) (pow.f64 im 2))) (*.f64 -1 (pow.f64 im 2)))
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 re 4) 0) (*.f64 im im)) (neg.f64 (*.f64 im im)))
(-.f64 (/.f64 0 (*.f64 im im)) (*.f64 im im))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re 4)) (*.f64 -1/4 (pow.f64 re 4))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 re 6)) (*.f64 1/8 (pow.f64 re 6))) (pow.f64 im 4)))))
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 re 4) 0) (*.f64 im im)) (*.f64 -1 (+.f64 (*.f64 im im) (/.f64 (*.f64 (pow.f64 re 6) 0) (pow.f64 im 4)))))
(fma.f64 -1 (fma.f64 im im (/.f64 0 (pow.f64 im 4))) (/.f64 0 (*.f64 im im)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re 4)) (*.f64 -1/4 (pow.f64 re 4))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/64 (pow.f64 re 8)) (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 re 4)) 2) (*.f64 1/16 (pow.f64 re 8)))) (*.f64 1/16 (pow.f64 re 8)))) (pow.f64 im 6))) (+.f64 (*.f64 -1 (pow.f64 im 2)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 re 6)) (*.f64 1/8 (pow.f64 re 6))) (pow.f64 im 4))))))
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 re 4) 0) (*.f64 im im)) (fma.f64 -1 (/.f64 (fma.f64 1/64 (pow.f64 re 8) (fma.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 re 4)) 2) (*.f64 1/16 (pow.f64 re 8))) (*.f64 1/16 (pow.f64 re 8)))) (pow.f64 im 6)) (*.f64 -1 (+.f64 (*.f64 im im) (/.f64 (*.f64 (pow.f64 re 6) 0) (pow.f64 im 4))))))
(+.f64 (/.f64 0 (*.f64 im im)) (-.f64 (-.f64 (/.f64 0 (pow.f64 im 4)) (*.f64 im im)) (/.f64 (fma.f64 1/64 (pow.f64 re 8) (-.f64 (*.f64 1/16 (pow.f64 re 8)) (fma.f64 1/16 (pow.f64 re 8) (*.f64 1/64 (pow.f64 re 8))))) (pow.f64 im 6))))
(fma.f64 -1 (+.f64 (fma.f64 im im (/.f64 0 (pow.f64 im 4))) (/.f64 (fma.f64 1/64 (pow.f64 re 8) (-.f64 (*.f64 1/16 (pow.f64 re 8)) (fma.f64 1/16 (pow.f64 re 8) (*.f64 1/64 (pow.f64 re 8))))) (pow.f64 im 6))) (/.f64 0 (*.f64 im im)))
(*.f64 (cbrt.f64 -1) (pow.f64 im 1/3))
(*.f64 (cbrt.f64 -1) (cbrt.f64 im))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9)))) (*.f64 (cbrt.f64 -1) (pow.f64 im 1/3)))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))) (*.f64 re (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)))) (*.f64 (cbrt.f64 -1) (cbrt.f64 im)))
(fma.f64 (cbrt.f64 -1) (cbrt.f64 im) (*.f64 1/3 (*.f64 (*.f64 (*.f64 re (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9)))) (+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 im 1/3)) (*.f64 -1/3 (*.f64 (/.f64 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (pow.f64 (/.f64 1 im) 1/9))) (*.f64 1/2 (/.f64 1 im)))) (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))) (*.f64 re (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)))) (fma.f64 (cbrt.f64 -1) (cbrt.f64 im) (*.f64 -1/3 (*.f64 (/.f64 (*.f64 re re) (/.f64 (pow.f64 (cbrt.f64 -1) 2) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18))) (/.f64 1/2 im)))) (cbrt.f64 (/.f64 1 (*.f64 im im)))))))
(fma.f64 1/3 (*.f64 (*.f64 (*.f64 re (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) (fma.f64 (cbrt.f64 -1) (cbrt.f64 im) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (/.f64 (*.f64 -1/3 (*.f64 re re)) (/.f64 (pow.f64 (cbrt.f64 -1) 2) (fma.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (cbrt.f64 -1)))) (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) (/.f64 1/2 im)))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9)))) (+.f64 (*.f64 (cbrt.f64 -1) (pow.f64 im 1/3)) (+.f64 (*.f64 -1/3 (*.f64 (/.f64 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/27 (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 5)) 1/3) (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (pow.f64 (/.f64 1 im) 1/9))) (*.f64 1/2 (/.f64 1 im))) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9)))))) (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))) (*.f64 -1/3 (*.f64 (/.f64 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (pow.f64 (/.f64 1 im) 1/9))) (*.f64 1/2 (/.f64 1 im)))) (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))) (*.f64 re (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)))) (fma.f64 (cbrt.f64 -1) (cbrt.f64 im) (*.f64 -1/3 (+.f64 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (/.f64 (pow.f64 re 3) (/.f64 (pow.f64 (cbrt.f64 -1) 2) (fma.f64 1/27 (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) (cbrt.f64 (/.f64 1 (*.f64 im im)))) (*.f64 (*.f64 -2/3 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 5)))) (*.f64 (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18))) (/.f64 1/2 im)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)))))))) (*.f64 (/.f64 (*.f64 re re) (/.f64 (pow.f64 (cbrt.f64 -1) 2) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18))) (/.f64 1/2 im)))) (cbrt.f64 (/.f64 1 (*.f64 im im))))))))
(fma.f64 1/3 (*.f64 (*.f64 (*.f64 re (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) (fma.f64 (cbrt.f64 -1) (cbrt.f64 im) (*.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (+.f64 (*.f64 (/.f64 (pow.f64 re 3) (pow.f64 (cbrt.f64 -1) 2)) (fma.f64 -2/3 (*.f64 (fma.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (cbrt.f64 -1)))) (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) (/.f64 1/2 im)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 5))))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (/.f64 1/27 (pow.f64 (cbrt.f64 -1) 2))))) (*.f64 (/.f64 (*.f64 re re) (pow.f64 (cbrt.f64 -1) 2)) (fma.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (cbrt.f64 -1)))) (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) (/.f64 1/2 im))))))))

prune296.0ms (7.1%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New2631264
Fresh033
Picked101
Done033
Total2647271
Error
5.8b
Counts
271 → 7
Alt Table
StatusErrorProgram
56.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (*.f64 (/.f64 im re) im) -1/2 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3)))))))
48.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (pow.f64 (/.f64 (cbrt.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2))) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 re (hypot.f64 re im)))) 3)) 2)))))
13.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2)))))
12.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
44.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
49.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
52.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (/.f64 im re) im) -1/2))))
Compiler

Compiled 14911 to 7887 computations (47.1% saved)

regimes216.0ms (5.2%)

Accuracy

Total 5.1b remaining (46.7%)

Threshold costs 0b (0%)

Counts
36 → 2
Compiler

Compiled 666 to 403 computations (39.5% saved)

bsearch23.0ms (0.6%)

Algorithm
binary-search
Calls

1 calls:

22.0ms
re
Steps
ItersPointRange
-9.2e+107
∈ [
-1.0337615470087041e+108
,
-8.615587689159213e+107
]
Compiler

Compiled 3 to 2 computations (33.3% saved)

simplify2.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02139
12839
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 re -920000000000000010419823978297461103959572892823833834729319906511658043471266565240457777493706898929614848) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (/.f64 im re) im) -1/2)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
Outputs
(if (<=.f64 re -920000000000000010419823978297461103959572892823833834729319906511658043471266565240457777493706898929614848) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (/.f64 im re) im) -1/2)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(if (<=.f64 re -920000000000000010419823978297461103959572892823833834729319906511658043471266565240457777493706898929614848) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (*.f64 im (/.f64 im re)) -1/2)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))

end115.0ms (2.8%)

Stop Event
fuel
Compiler

Compiled 180 to 132 computations (26.7% saved)

Profiling

Loading profile data...