Details

Time bar (total: 8.5s)

analyze150.0ms (1.8%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%50%50%0%0%0%0
0%0%50%50%0%0%0%1
0%0%50%50%0%0%0%2
0%0%50%50%0%0%0%3
12.5%6.2%43.7%50%0%0%0%4
25%12.5%37.5%50%0%0%0%5
37.5%18.7%31.2%50%0%0%0%6
46.9%23.4%26.5%50%0%0%0%7
54.7%27.3%22.6%50%0%0%0%8
60.2%30%19.9%50%0%0%0%9
64.5%32.2%17.8%50%0%0%0%10
67.4%33.7%16.3%50%0%0%0%11
69.6%34.8%15.2%50%0%0%0%12
Compiler

Compiled 20 to 14 computations (30% saved)

sample1.7s (20%)

Results
887.0ms6443×body256valid
361.0ms682×body2048valid
271.0ms512×body4096valid
115.0ms394×body1024valid
45.0ms225×body512valid
Bogosity

preprocess50.0ms (0.6%)

Algorithm
egg-herbie
Rules
544×fma-def
186×associate--r+
158×associate-+l-
158×distribute-lft-in
112×*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02158
13658
25458
39158
412858
518258
633058
750858
870258
986258
10105958
11124158
12126258
13126658
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 (hypot.f64 re im) re))))
(*.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 (hypot.f64 re im) im))))
Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify49.0ms (0.6%)

Algorithm
egg-herbie
Rules
364×fma-def
132×associate--r+
108×associate-+l-
100×distribute-lft-in
90×*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01529
12329
23629
35529
47729
510829
619429
730229
841329
950629
1060529
1167929
1271029
1376229
1481229
1587329
1693329
1794329
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 (hypot.f64 re im) re))))

eval1.0ms (0%)

Compiler

Compiled 27 to 19 computations (29.6% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
13.9b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
13.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
Compiler

Compiled 12 to 9 computations (25% saved)

localize11.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
0.7b
(-.f64 (hypot.f64 re im) re)
Compiler

Compiled 39 to 16 computations (59% saved)

series8.0ms (0.1%)

Counts
2 → 32
Calls

12 calls:

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

rewrite72.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
912×*-commutative
698×unswap-sqr
556×associate-*r/
536×swap-sqr
464×distribute-lft-in
Iterations

Useful iterations: 0 (0.0ms)

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

simplify110.0ms (1.3%)

Algorithm
egg-herbie
Rules
1170×+-commutative
1162×associate-/r/
728×fma-def
726×associate-+l-
572×associate-*r*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
05059329
114298885
257098885
Stop Event
node limit
Counts
177 → 295
Calls
Call 1
Inputs
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.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 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 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 -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 -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 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -2 re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -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 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 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 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.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 -1 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 -1 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 -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) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.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 (*.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 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 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(+.f64 (hypot.f64 re im) (neg.f64 re))
(+.f64 (hypot.f64 re im) (+.f64 (neg.f64 re) (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (hypot.f64 re im) (+.f64 (neg.f64 re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (hypot.f64 re im) (+.f64 (neg.f64 re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 re) 1 re) (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 re) 1 re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 re) 1 re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 1 (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 1 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 (fma.f64 (neg.f64 re) 1 re) 1))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) 1))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) 1))
(+.f64 (neg.f64 re) (hypot.f64 re im))
(+.f64 (neg.f64 re) (+.f64 (hypot.f64 re im) (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (neg.f64 re) (+.f64 (hypot.f64 re im) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (neg.f64 re) (+.f64 (hypot.f64 re im) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (fma.f64 (neg.f64 re) 1 re) (-.f64 (hypot.f64 re im) re))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (-.f64 (hypot.f64 re im) re))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (-.f64 (hypot.f64 re im) re))
(+.f64 (-.f64 (hypot.f64 re im) (exp.f64 (log1p.f64 re))) 1)
(*.f64 (-.f64 (hypot.f64 re im) re) 1)
(*.f64 1 (-.f64 (hypot.f64 re im) re))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(*.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))
(*.f64 (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))
(*.f64 (/.f64 1 (+.f64 re (hypot.f64 re im))) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))
(*.f64 (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (-.f64 (hypot.f64 re im) re))
(*.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) 2))) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) 3))) (+.f64 (pow.f64 (hypot.f64 re im) 4) (*.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) (-.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) (pow.f64 (hypot.f64 re im) 2)))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))))
(*.f64 (*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))) (*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2))
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/6) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/6))
(/.f64 1 (/.f64 1 (-.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(/.f64 (+.f64 re (hypot.f64 re im)) (/.f64 (+.f64 re (hypot.f64 re im)) (-.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (-.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (+.f64 re (hypot.f64 re im)) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (/.f64 (+.f64 re (hypot.f64 re im)) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 re 4)) (*.f64 (+.f64 re (hypot.f64 re im)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (neg.f64 re) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 (*.f64 re re) 3)) (*.f64 (+.f64 re (hypot.f64 re im)) (+.f64 (+.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 re 4)) (pow.f64 (*.f64 re (hypot.f64 re im)) 2))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3) 3) (pow.f64 (pow.f64 re 3) 3)) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (+.f64 (+.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(/.f64 (+.f64 (neg.f64 (pow.f64 (hypot.f64 re im) 2)) (*.f64 re re)) (neg.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (neg.f64 re) 3))) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 re im)))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (neg.f64 re) 3)) 1) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 re im)))))
(/.f64 (*.f64 (+.f64 (neg.f64 (pow.f64 (hypot.f64 re im) 2)) (*.f64 re re)) 1) (neg.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) 1) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 re 4)) (/.f64 1 (+.f64 re (hypot.f64 re im)))) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 (*.f64 re re) 3)) (/.f64 1 (+.f64 re (hypot.f64 re im)))) (+.f64 (+.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 re 4)) (pow.f64 (*.f64 re (hypot.f64 re im)) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))) (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3) 3) (pow.f64 (pow.f64 re 3) 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))) (+.f64 (+.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) 1) (+.f64 re (hypot.f64 re im)))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) 1) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) (*.f64 (fma.f64 (neg.f64 re) 1 re) (fma.f64 (neg.f64 re) 1 re))) (-.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re)))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re))) (-.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))) (-.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (neg.f64 re) (hypot.f64 re im)))
(pow.f64 (-.f64 (hypot.f64 re im) re) 1)
(pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 2)
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/3)
(neg.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (neg.f64 (+.f64 re (hypot.f64 re im)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))))
(sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2))
(log.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))
(log.f64 (+.f64 1 (expm1.f64 (-.f64 (hypot.f64 re im) re))))
(cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3))
(expm1.f64 (log1p.f64 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re)))
(log1p.f64 (expm1.f64 (-.f64 (hypot.f64 re im) re)))
(fma.f64 1 (hypot.f64 re im) (neg.f64 re))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)) (neg.f64 re))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 1)
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) (pow.f64 1 1/2))
(*.f64 1 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2))
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))
(*.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/2))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3/2) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3/2))
(*.f64 (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2) 1/6) (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2) 1/6))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 2)) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 2)) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/2)
(pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3)
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2) 1/3)
(fabs.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
Outputs
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 re re) im) im) re)
(+.f64 (*.f64 -1 re) (+.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 re (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)))
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)) re)
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(/.f64 1/2 (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.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)) (/.f64 1/2 (/.f64 re (*.f64 im im))))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.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 -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 -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)) (*.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)) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))
(+.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 -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 -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 -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 -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)) (/.f64 -1/2 (/.f64 (pow.f64 re 7) (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)))))))
(fma.f64 1/2 (*.f64 (/.f64 im 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)) (*.f64 (/.f64 -1/2 (pow.f64 re 7)) (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64))))))
(*.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 (/.f64 im (/.f64 re im)) -1/2))
(fma.f64 re -2 (*.f64 (*.f64 (/.f64 im re) im) -1/2))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re)))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2)))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 re -2 (*.f64 (/.f64 im (/.f64 re im)) -1/2)))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 re -2 (*.f64 (*.f64 (/.f64 im re) im) -1/2)))
(+.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 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -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)) (fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -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 (fma.f64 re -2 (*.f64 (/.f64 im (/.f64 re im)) -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 (fma.f64 re -2 (*.f64 (*.f64 (/.f64 im re) im) -1/2))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(/.f64 1/2 (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.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)) (/.f64 1/2 (/.f64 re (*.f64 im im))))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.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 -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 -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)) (*.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)) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 re (pow.f64 im 8))) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/2 (/.f64 (pow.f64 im 8) (/.f64 re (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))))) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 im 8) re) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 re re) im) im) re)
(+.f64 (*.f64 -1 re) (+.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 re (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)))
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)) re)
(*.f64 -1 im)
(neg.f64 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(*.f64 -1 (+.f64 re im))
(-.f64 (neg.f64 im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 -1 re (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im)))
(-.f64 (-.f64 (*.f64 (/.f64 (*.f64 re re) im) -1/2) im) re)
(-.f64 (*.f64 (/.f64 (*.f64 re re) im) -1/2) (+.f64 im re))
(+.f64 (*.f64 -1 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 -1 im))))
(fma.f64 -1 re (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))))
(-.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (*.f64 (/.f64 (*.f64 re re) im) -1/2)) im) re)
(*.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)))
(fma.f64 -1/2 (*.f64 re (*.f64 (sqrt.f64 2) (sqrt.f64 (/.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 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.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))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re)))) (sqrt.f64 (/.f64 1 im)))))
(fma.f64 -1/2 (*.f64 re (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 (/.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 (*.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 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))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re)) (sqrt.f64 (/.f64 1 im)))) (*.f64 (*.f64 1/4 (*.f64 (sqrt.f64 2) (*.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 re (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im))))) (*.f64 (*.f64 1/4 (sqrt.f64 2)) (*.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)))))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (*.f64 -1/16 (/.f64 1 (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) 2)) (pow.f64 im 5)))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re)) (*.f64 1/16 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (*.f64 -1/16 (/.f64 1 (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (*.f64 re re))))) (pow.f64 im 7))) (sqrt.f64 re)) (sqrt.f64 1/2)) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (*.f64 -1/16 (/.f64 1 (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) 2)) (pow.f64 im 5)))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 (sqrt.f64 re) (+.f64 (/.f64 (*.f64 1/2 (sqrt.f64 2)) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 7)) (-.f64 (/.f64 -1/2 (/.f64 re (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))))) (*.f64 -1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re)))))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5)))))) (fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))) (*.f64 (sqrt.f64 re) (+.f64 (*.f64 (/.f64 (*.f64 1/2 (sqrt.f64 2)) (sqrt.f64 1/2)) (*.f64 (-.f64 (*.f64 (/.f64 -1/2 re) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (*.f64 -1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re)))) (pow.f64 im 7))) (*.f64 (/.f64 (*.f64 1/2 (sqrt.f64 2)) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5))))))
(+.f64 (hypot.f64 re im) (neg.f64 re))
(-.f64 (hypot.f64 re im) re)
(+.f64 (hypot.f64 re im) (+.f64 (neg.f64 re) (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (fma.f64 (neg.f64 re) 1 re) (-.f64 (hypot.f64 re im) re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (-.f64 re re))
(+.f64 (hypot.f64 re im) (+.f64 (neg.f64 re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (-.f64 (hypot.f64 re im) re))
(+.f64 (hypot.f64 re im) (+.f64 (neg.f64 re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(-.f64 (hypot.f64 re im) (-.f64 re (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (hypot.f64 re im) (-.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(+.f64 (fma.f64 (neg.f64 re) 1 re) (-.f64 (hypot.f64 re im) re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (-.f64 re re))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (-.f64 (hypot.f64 re im) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (hypot.f64 re im) (-.f64 re (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (hypot.f64 re im) (-.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 re) 1 re) (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 2 (fma.f64 (neg.f64 re) 1 re)))
(fma.f64 2 (+.f64 re (neg.f64 re)) (-.f64 (hypot.f64 re im) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 re) 1 re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (+.f64 (-.f64 (hypot.f64 re im) re) (-.f64 re re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 re) 1 re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (+.f64 (-.f64 (hypot.f64 re im) re) (-.f64 re re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 re) 1 re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (+.f64 (-.f64 (hypot.f64 re im) re) (-.f64 re re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 2 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(fma.f64 2 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (-.f64 (hypot.f64 re im) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (hypot.f64 re im) (+.f64 (-.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (hypot.f64 re im) (-.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (-.f64 re (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 re) 1 re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (+.f64 (-.f64 (hypot.f64 re im) re) (-.f64 re re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (hypot.f64 re im) (+.f64 (-.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (hypot.f64 re im) (-.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (-.f64 re (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))))
(+.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 2 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(fma.f64 2 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (-.f64 (hypot.f64 re im) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 1 (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (fma.f64 (neg.f64 re) 1 re) (-.f64 (hypot.f64 re im) re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (-.f64 re re))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 1 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (-.f64 (hypot.f64 re im) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(-.f64 (hypot.f64 re im) (-.f64 re (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (hypot.f64 re im) (-.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 (fma.f64 (neg.f64 re) 1 re) 1))
(+.f64 (fma.f64 (neg.f64 re) 1 re) (-.f64 (hypot.f64 re im) re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (-.f64 re re))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) 1))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (-.f64 (hypot.f64 re im) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) 1))
(-.f64 (hypot.f64 re im) (-.f64 re (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (hypot.f64 re im) (-.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) re))
(+.f64 (neg.f64 re) (hypot.f64 re im))
(-.f64 (hypot.f64 re im) re)
(+.f64 (neg.f64 re) (+.f64 (hypot.f64 re im) (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (fma.f64 (neg.f64 re) 1 re) (-.f64 (hypot.f64 re im) re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (-.f64 re re))
(+.f64 (neg.f64 re) (+.f64 (hypot.f64 re im) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (-.f64 (hypot.f64 re im) re))
(+.f64 (neg.f64 re) (+.f64 (hypot.f64 re im) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(-.f64 (hypot.f64 re im) (-.f64 re (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (hypot.f64 re im) (-.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) re))
(+.f64 (fma.f64 (neg.f64 re) 1 re) (-.f64 (hypot.f64 re im) re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (-.f64 re re))
(+.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (-.f64 (hypot.f64 re im) re))
(+.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (-.f64 (hypot.f64 re im) re))
(-.f64 (hypot.f64 re im) (-.f64 re (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (hypot.f64 re im) (-.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) re))
(+.f64 (-.f64 (hypot.f64 re im) (exp.f64 (log1p.f64 re))) 1)
(+.f64 1 (-.f64 (hypot.f64 re im) (exp.f64 (log1p.f64 re))))
(-.f64 (hypot.f64 re im) (expm1.f64 (log1p.f64 re)))
(*.f64 (-.f64 (hypot.f64 re im) re) 1)
(-.f64 (hypot.f64 re im) re)
(*.f64 1 (-.f64 (hypot.f64 re im) re))
(-.f64 (hypot.f64 re im) re)
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))
(-.f64 (hypot.f64 re im) re)
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(-.f64 (hypot.f64 re im) re)
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(*.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))
(*.f64 (+.f64 (sqrt.f64 re) (sqrt.f64 (hypot.f64 re im))) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))
(*.f64 (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))
(*.f64 (+.f64 (sqrt.f64 re) (sqrt.f64 (hypot.f64 re im))) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))
(*.f64 (/.f64 1 (+.f64 re (hypot.f64 re im))) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(*.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (-.f64 (hypot.f64 re im) re))
(-.f64 (hypot.f64 re im) re)
(*.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)))
(*.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) 2))) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) 3))) (+.f64 (pow.f64 (hypot.f64 re im) 4) (*.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) (-.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) (pow.f64 (hypot.f64 re im) 2)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) 3))) (+.f64 (pow.f64 (hypot.f64 re im) 4) (*.f64 re (*.f64 (+.f64 re (hypot.f64 re im)) (-.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) (pow.f64 (hypot.f64 re im) 2))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) 3)) (fma.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) (-.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) (pow.f64 (hypot.f64 re im) 2)) (pow.f64 (hypot.f64 re im) 4))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(-.f64 (hypot.f64 re im) re)
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))) (*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))))
(-.f64 (hypot.f64 re im) re)
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2))
(-.f64 (hypot.f64 re im) re)
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/6) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/6))
(-.f64 (hypot.f64 re im) re)
(/.f64 1 (/.f64 1 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(-.f64 (hypot.f64 re im) re)
(/.f64 (+.f64 re (hypot.f64 re im)) (/.f64 (+.f64 re (hypot.f64 re im)) (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (+.f64 re (hypot.f64 re im)) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (+.f64 re (hypot.f64 re im))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (/.f64 (+.f64 re (hypot.f64 re im)) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(*.f64 (/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (+.f64 re (hypot.f64 re im))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (+.f64 re (hypot.f64 re im)) (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))))
(*.f64 (/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (+.f64 re (hypot.f64 re im))) (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 re 4)) (*.f64 (+.f64 re (hypot.f64 re im)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 re 4)) (*.f64 (+.f64 re (hypot.f64 re im)) (fma.f64 re re (pow.f64 (hypot.f64 re im) 2))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (neg.f64 re) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (neg.f64 (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 (*.f64 re re) 3)) (*.f64 (+.f64 re (hypot.f64 re im)) (+.f64 (+.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 re 4)) (pow.f64 (*.f64 re (hypot.f64 re im)) 2))))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (+.f64 re (hypot.f64 re im))) (+.f64 (pow.f64 (hypot.f64 re im) 4) (+.f64 (pow.f64 re 4) (pow.f64 (*.f64 re (hypot.f64 re im)) 2))))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (+.f64 re (hypot.f64 re im))) (+.f64 (pow.f64 re 4) (+.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 (*.f64 re (hypot.f64 re im)) 2))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3) 3) (pow.f64 (pow.f64 re 3) 3)) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (+.f64 (+.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3) 3) (pow.f64 (pow.f64 re 3) 3)) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (+.f64 (pow.f64 (hypot.f64 re im) 6) (+.f64 (pow.f64 re 6) (*.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3) 3) (pow.f64 (pow.f64 re 3) 3)) (*.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (fma.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3) (+.f64 (pow.f64 re 6) (pow.f64 (hypot.f64 re im) 6)))))
(/.f64 (+.f64 (neg.f64 (pow.f64 (hypot.f64 re im) 2)) (*.f64 re re)) (neg.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (neg.f64 re) (hypot.f64 re im)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (neg.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (*.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (neg.f64 re) 3))) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (neg.f64 (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (/.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (/.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (/.f64 (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (neg.f64 re) 3)) 1) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (neg.f64 (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (+.f64 (neg.f64 (pow.f64 (hypot.f64 re im) 2)) (*.f64 re re)) 1) (neg.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (neg.f64 re) (hypot.f64 re im)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (neg.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) 1) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (/.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (/.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (/.f64 (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 re 4)) (/.f64 1 (+.f64 re (hypot.f64 re im)))) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 re 4)) (*.f64 (+.f64 re (hypot.f64 re im)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 re 4)) (*.f64 (+.f64 re (hypot.f64 re im)) (fma.f64 re re (pow.f64 (hypot.f64 re im) 2))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 (*.f64 re re) 3)) (/.f64 1 (+.f64 re (hypot.f64 re im)))) (+.f64 (+.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 re 4)) (pow.f64 (*.f64 re (hypot.f64 re im)) 2)))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (+.f64 re (hypot.f64 re im))) (+.f64 (pow.f64 (hypot.f64 re im) 4) (+.f64 (pow.f64 re 4) (pow.f64 (*.f64 re (hypot.f64 re im)) 2))))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (+.f64 re (hypot.f64 re im))) (+.f64 (pow.f64 re 4) (+.f64 (pow.f64 (hypot.f64 re im) 4) (pow.f64 (*.f64 re (hypot.f64 re im)) 2))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))) (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3) 3) (pow.f64 (pow.f64 re 3) 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))) (+.f64 (+.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3) 3) (pow.f64 (pow.f64 re 3) 3)) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (+.f64 (pow.f64 (hypot.f64 re im) 6) (+.f64 (pow.f64 re 6) (*.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3) 3) (pow.f64 (pow.f64 re 3) 3)) (*.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (fma.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3) (+.f64 (pow.f64 re 6) (pow.f64 (hypot.f64 re im) 6)))))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) 1) (+.f64 re (hypot.f64 re im)))
(-.f64 (hypot.f64 re im) re)
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(-.f64 (hypot.f64 re im) re)
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(-.f64 (hypot.f64 re im) re)
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) 1) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) (*.f64 (fma.f64 (neg.f64 re) 1 re) (fma.f64 (neg.f64 re) 1 re))) (-.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re)))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) (*.f64 (fma.f64 (neg.f64 re) 1 re) (fma.f64 (neg.f64 re) 1 re))) (-.f64 (hypot.f64 re im) (+.f64 re (fma.f64 (neg.f64 re) 1 re))))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) (*.f64 (+.f64 re (neg.f64 re)) (+.f64 re (neg.f64 re)))) (-.f64 (-.f64 (hypot.f64 re im) re) (+.f64 re (neg.f64 re))))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) (*.f64 (+.f64 re (neg.f64 re)) (+.f64 re (neg.f64 re)))) (-.f64 (-.f64 (-.f64 (hypot.f64 re im) re) re) (neg.f64 re)))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re))) (-.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) (*.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re))) (-.f64 (hypot.f64 re im) (+.f64 re (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re))))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))) (-.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) (*.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))) (-.f64 (hypot.f64 re im) (+.f64 re (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (neg.f64 re) (hypot.f64 re im)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (neg.f64 (+.f64 re (hypot.f64 re im))))
(pow.f64 (-.f64 (hypot.f64 re im) re) 1)
(-.f64 (hypot.f64 re im) re)
(pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 2)
(-.f64 (hypot.f64 re im) re)
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)
(-.f64 (hypot.f64 re im) re)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/3)
(-.f64 (hypot.f64 re im) re)
(neg.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (neg.f64 (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (neg.f64 re) (hypot.f64 re im)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (neg.f64 (+.f64 re (hypot.f64 re im))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2))
(fabs.f64 (-.f64 (hypot.f64 re im) re))
(log.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(log.f64 (+.f64 1 (expm1.f64 (-.f64 (hypot.f64 re im) re))))
(-.f64 (hypot.f64 re im) re)
(cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3))
(-.f64 (hypot.f64 re im) re)
(expm1.f64 (log1p.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(log1p.f64 (expm1.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(fma.f64 1 (hypot.f64 re im) (neg.f64 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)) (neg.f64 re))
(-.f64 (hypot.f64 re im) re)
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 1)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) (pow.f64 1 1/2))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 1 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4))))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3/2) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3/2))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2) 1/6) (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2) 1/6))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2)))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 2)) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2)))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 2)) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/2)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2))
(fabs.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))

eval117.0ms (1.4%)

Compiler

Compiled 8373 to 4818 computations (42.5% saved)

prune55.0ms (0.7%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New28510295
Fresh000
Picked011
Done000
Total28511296
Error
0.2b
Counts
296 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
14.2b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2))
46.9b
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
14.2b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2)))
46.9b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))))
16.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))))
13.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
29.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
54.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (*.f64 im im) re)))))
17.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))))
31.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 280 to 223 computations (20.4% saved)

localize13.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
0.3b
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2))
0.7b
(-.f64 (hypot.f64 re im) re)
Compiler

Compiled 42 to 17 computations (59.5% saved)

series39.0ms (0.5%)

Counts
2 → 16
Calls

12 calls:

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

rewrite65.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
966×*-commutative
770×unswap-sqr
562×swap-sqr
514×associate-*r/
464×associate-*l/
Iterations

Useful iterations: 0 (0.0ms)

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

simplify130.0ms (1.5%)

Algorithm
egg-herbie
Rules
1752×distribute-lft-in
1222×fma-def
952×*-commutative
632×associate-/l*
616×associate-+r+
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02644690
16684466
220634264
366244264
Stop Event
node limit
Counts
78 → 146
Calls
Call 1
Inputs
(*.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) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.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 (*.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 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 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (*.f64 (*.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 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (*.f64 (*.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 re (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.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 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (+.f64 (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 re)))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (+.f64 (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (pow.f64 im 7) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 1)
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 2)) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 2)) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3) 1/3)
(pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/2)
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2) (*.f64 2 (sqrt.f64 2))))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) 1)
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1)
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 1 1/2))
(*.f64 1 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 1/2))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))) (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2) (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2))
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2) 1/6) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2) 1/6))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 1 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 1 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) 1) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) 1) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(pow.f64 (-.f64 (hypot.f64 re im) re) 1/2)
(pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 3)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2) 1/3)
(fabs.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(log.f64 (exp.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(exp.f64 (log.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(log1p.f64 (expm1.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
Outputs
(*.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)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 -1/2 re))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.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))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 1/2 (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (fma.f64 1/2 (*.f64 re (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)))) (*.f64 -1/2 re)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.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 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))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im))))) (*.f64 1/4 (*.f64 (sqrt.f64 2) (*.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))))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 1/4))))))
(+.f64 (*.f64 (sqrt.f64 2) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 1/2 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 im)))))))))
(+.f64 (*.f64 (sqrt.f64 2) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (+.f64 (*.f64 1/2 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 im))))) (*.f64 1/4 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 im 3))) (sqrt.f64 1/2))))
(fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (*.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 2) (sqrt.f64 1/2))) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 (*.f64 (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5)) (/.f64 (sqrt.f64 2) (sqrt.f64 1/2))) (*.f64 1/2 (sqrt.f64 re)) (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (*.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 2) (sqrt.f64 1/2))) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 re 5)))))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re)) (*.f64 -1/16 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 1/2) 2)))))) (pow.f64 im 7)) (sqrt.f64 1/2))) (fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re)) (*.f64 -1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re))))) (/.f64 (sqrt.f64 1/2) (pow.f64 im 7)))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5)))))) (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 2) (pow.f64 im 3))) (sqrt.f64 1/2)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 7))) (+.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -1/32 (pow.f64 re 6))) re) (*.f64 1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re))))) (*.f64 (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5)) (/.f64 (sqrt.f64 2) (sqrt.f64 1/2))))) (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (*.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 2) (sqrt.f64 1/2))) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 re 5)))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5)) (/.f64 (sqrt.f64 2) (sqrt.f64 1/2))) (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 7))) (+.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -1/32 (pow.f64 re 6))) re) (*.f64 1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re))))))) (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (*.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 2) (sqrt.f64 1/2))) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 re 5)))))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (*.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 1 im))))
(fma.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 1 im)) (sqrt.f64 im))
(fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (*.f64 (*.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 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (fma.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 (/.f64 1 im)))) (*.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 -1/2 re) (*.f64 (*.f64 re (*.f64 re 1/2)) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))))))
(fma.f64 (sqrt.f64 (/.f64 1 im)) (fma.f64 1/2 (*.f64 re (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)))) (*.f64 -1/2 re)) (sqrt.f64 im))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (*.f64 (*.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 re (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.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 (sqrt.f64 im) (fma.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 (/.f64 1 im)))) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 1/4 (*.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)))))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 -1/2 re) (*.f64 (*.f64 re (*.f64 re 1/2)) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))))) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 1/4))))
(+.f64 (sqrt.f64 im) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 1/2 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 im)))))))))
(+.f64 (sqrt.f64 im) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (+.f64 (*.f64 1/2 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 im))))) (*.f64 1/4 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)) (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)))))
(fma.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 -1/16 (pow.f64 im 3)) (sqrt.f64 1/2))))
(fma.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 im 3)))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (+.f64 (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 re)))))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)) (fma.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (sqrt.f64 1/2))) (*.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (/.f64 (sqrt.f64 1/2) (pow.f64 im 5)))))))
(fma.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))) (fma.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 -1/16 (pow.f64 im 3)) (sqrt.f64 1/2)))))
(fma.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (/.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)) (pow.f64 im 5))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (+.f64 (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (pow.f64 im 7) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 re))))))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)) (fma.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (sqrt.f64 1/2))) (*.f64 1/2 (+.f64 (*.f64 (sqrt.f64 re) (/.f64 (pow.f64 im 7) (/.f64 (sqrt.f64 1/2) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re)) (*.f64 -1/16 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 1/2) 2)))))))) (*.f64 (sqrt.f64 re) (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (/.f64 (sqrt.f64 1/2) (pow.f64 im 5))))))))
(fma.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 (/.f64 (pow.f64 im 7) (sqrt.f64 1/2)) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re)) (*.f64 -1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re))))) (*.f64 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (sqrt.f64 1/2)) (pow.f64 im 5)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 -1/16 (pow.f64 im 3)) (sqrt.f64 1/2)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 re) (fma.f64 (/.f64 (pow.f64 im 7) (sqrt.f64 1/2)) (+.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -1/32 (pow.f64 re 6))) re) (*.f64 1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re)))) (*.f64 (pow.f64 im 5) (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (sqrt.f64 1/2))))) (fma.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 1)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 2))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2)))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 2)) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 2))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2)))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 2)) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))))
(*.f64 (/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))))
(*.f64 (/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (cbrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (cbrt.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))))
(pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 2)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3) 1/3)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/2)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2) (*.f64 2 (sqrt.f64 2))))
(cbrt.f64 (*.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2) (sqrt.f64 2)) 2))
(cbrt.f64 (*.f64 2 (*.f64 (sqrt.f64 2) (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2))))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) 1)
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1)
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 1 1/2))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 1 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (fabs.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (fabs.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (fabs.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (fabs.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))) (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2) (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2) 1/6) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2) 1/6))
(cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 1 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 1 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(/.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (/.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(/.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (cbrt.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))))
(/.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) 1) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) 1) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(/.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (/.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (/.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (cbrt.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))))
(pow.f64 (-.f64 (hypot.f64 re im) re) 1/2)
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1)
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) 2)
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 3)
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2) 1/3)
(cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2))
(fabs.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(log.f64 (exp.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(exp.f64 (log.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(log1p.f64 (expm1.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))

localize8.0ms (0.1%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

localize9.0ms (0.1%)

Compiler

Compiled 28 to 15 computations (46.4% saved)

localize81.0ms (1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)
0.3b
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2)
0.7b
(-.f64 (hypot.f64 re im) re)
Compiler

Compiled 55 to 27 computations (50.9% saved)

series18.0ms (0.2%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
3.0ms
im
@inf
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2)
3.0ms
re
@-inf
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2)
3.0ms
re
@inf
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2)
2.0ms
im
@0
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2)
2.0ms
re
@0
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2)

rewrite71.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
960×*-commutative
856×unswap-sqr
576×swap-sqr
548×associate-*r/
472×distribute-lft-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01150
124748
2302248
Stop Event
node limit
Counts
2 → 87
Calls
Call 1
Inputs
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2)
(pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) (pow.f64 1 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 2 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 2 1/4) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 2 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 2 1/4)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (sqrt.f64 2))) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (sqrt.f64 2)) (sqrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (*.f64 (sqrt.f64 (sqrt.f64 2)) (sqrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3/2) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3) 1/6) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 2)) (sqrt.f64 (+.f64 re (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 2)) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 1 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 2 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 2 1/4) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/4) (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/4) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16) (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16) (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8) (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))) (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8) (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16) (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8)) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16) (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8) (sqrt.f64 (pow.f64 2 1/4))) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8) (sqrt.f64 (pow.f64 2 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (sqrt.f64 (pow.f64 2 1/4))) (*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (sqrt.f64 (pow.f64 2 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 2 1/8)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 2 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (pow.f64 2 1/8)) (*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (pow.f64 2 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 2 1/8) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (pow.f64 2 1/8) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8)) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 2 1/8) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (pow.f64 2 1/8) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) 3/2) (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) 4) 1/16) (pow.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) 4) 1/16))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/4) 1/6) (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/4) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 1/4 (log.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))))))

simplify186.0ms (2.2%)

Algorithm
egg-herbie
Rules
990×associate-*r*
820×fma-def
818×associate-*l*
714×*-commutative
658×associate-*r/
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
058912655
1177111061
2634210369
Stop Event
node limit
Counts
135 → 277
Calls
Call 1
Inputs
(*.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) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 (+.f64 (*.f64 5/64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (*.f64 -1/64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))) (pow.f64 re 3)) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2)
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4))) (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 4)) (pow.f64 re 4))))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))))) (pow.f64 re 6))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (*.f64 (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (pow.f64 im 2))) (pow.f64 re 6))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4))) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 -1/24576 (pow.f64 im 6)) (+.f64 (*.f64 -1/1536 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 1/2880 (+.f64 (*.f64 45/2 (pow.f64 im 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (*.f64 -15/4 (pow.f64 im 6))))))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2)) (pow.f64 re 6))) (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 4)) (pow.f64 re 4)))))))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2))
(+.f64 (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 4)) (pow.f64 re 4))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (+.f64 (*.f64 1/96 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))) (*.f64 1/512 (pow.f64 im 4)))) (pow.f64 re 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 1/24576 (pow.f64 im 6)) (+.f64 (*.f64 1/1536 (*.f64 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 1/2880 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6))))))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)) (pow.f64 re 6))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (+.f64 (*.f64 1/96 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))) (*.f64 1/512 (pow.f64 im 4)))) (pow.f64 re 4))) (+.f64 (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 4)) (pow.f64 re 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/96 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))) (*.f64 1/512 (pow.f64 im 4))))) (pow.f64 re 6))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2))))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2)
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 (+.f64 (*.f64 13/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 re 4))) (*.f64 1/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 re 4)))) (pow.f64 im 4)) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2)))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 (+.f64 (*.f64 -13/4096 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 re 6))) (*.f64 2 (*.f64 (-.f64 (*.f64 1/2880 (+.f64 (*.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 75/4 (/.f64 1 (pow.f64 re 6))))) (*.f64 37/24576 (/.f64 1 (pow.f64 re 6)))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2)))) (pow.f64 im 6)) (+.f64 (*.f64 (+.f64 (*.f64 13/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 re 4))) (*.f64 1/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 re 4)))) (pow.f64 im 4)) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) re) im)) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) re) im)) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)) (pow.f64 im 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (pow.f64 im 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) re) im)) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)) (pow.f64 im 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 -1/384 (pow.f64 re 3)))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) (*.f64 re (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2))))) (pow.f64 im 3))) (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (pow.f64 im 2))))))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2) (*.f64 1/2 (/.f64 (*.f64 re (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) im)))
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (pow.f64 im 2))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) (pow.f64 im 2))) (*.f64 1/2 (/.f64 (*.f64 re (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) im)))))
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 re (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))))) (*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 -1/384 (pow.f64 re 3)))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)))) (pow.f64 im 3))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) (pow.f64 im 2))) (*.f64 1/2 (/.f64 (*.f64 re (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) im))))))
(pow.f64 (*.f64 2 im) 1/4)
(+.f64 (pow.f64 (*.f64 2 im) 1/4) (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 2 (pow.f64 im 3)) 1/4) re)))
(+.f64 (pow.f64 (*.f64 2 im) 1/4) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 2 (pow.f64 im 3)) 1/4) re)) (*.f64 1/32 (*.f64 (pow.f64 (/.f64 2 (pow.f64 im 7)) 1/4) (pow.f64 re 2)))))
(+.f64 (*.f64 5/128 (*.f64 (pow.f64 (/.f64 2 (pow.f64 im 11)) 1/4) (pow.f64 re 3))) (+.f64 (pow.f64 (*.f64 2 im) 1/4) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 2 (pow.f64 im 3)) 1/4) re)) (*.f64 1/32 (*.f64 (pow.f64 (/.f64 2 (pow.f64 im 7)) 1/4) (pow.f64 re 2))))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))))
(+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4)) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))))
(+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/24576 (pow.f64 im 6)) (+.f64 (*.f64 -1/1536 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 1/2880 (+.f64 (*.f64 45/2 (pow.f64 im 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (*.f64 -15/4 (pow.f64 im 6))))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (pow.f64 re 6)) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re))))))
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))))
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re))))))) (pow.f64 re 4)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re))))))))
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re))))))) (pow.f64 re 4)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/1536 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))) (pow.f64 im 2))) (+.f64 (*.f64 1/24576 (pow.f64 im 6)) (*.f64 1/2880 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6)))))))) (pow.f64 re 6)))))
(exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (*.f64 13/512 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)) (pow.f64 re 4)))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (+.f64 (*.f64 13/512 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)) (pow.f64 re 4))) (*.f64 (-.f64 (*.f64 1/2880 (+.f64 (*.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 75/4 (/.f64 1 (pow.f64 re 6))))) (*.f64 37/24576 (/.f64 1 (pow.f64 re 6)))) (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 6))))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))
(+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (*.f64 -1/4 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) re) im)))
(+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (pow.f64 im 2)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (*.f64 -1/4 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) re) im))))
(+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (*.f64 -1/384 (pow.f64 re 3))))) (pow.f64 im 3)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) (pow.f64 im 2)) (*.f64 -1/4 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) re) im)))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 re (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))) im)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 re (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))) im)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))) (pow.f64 im 2)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 re (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))) im)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (*.f64 -1/384 (pow.f64 re 3))))) (pow.f64 im 3))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))) (pow.f64 im 2)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 1)
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) (pow.f64 1 1/2))
(*.f64 1 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2))
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))
(*.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 2 1/4)))
(*.f64 (pow.f64 2 1/4) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2)))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 2 1/4))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 2 1/4)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/2))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (sqrt.f64 2))) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (sqrt.f64 2))))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 2)) (sqrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (*.f64 (sqrt.f64 (sqrt.f64 2)) (sqrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3/2) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3/2))
(*.f64 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3) 1/6) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3) 1/6))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 2)) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 2)) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))
(fabs.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) 1)
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 1)
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 1 1/4))
(*.f64 1 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 2 1/4))
(*.f64 (pow.f64 2 1/4) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (pow.f64 1 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/4) (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/4))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/4) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/4))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16) (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16) (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))))
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8) (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))) (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8) (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16)))
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16)))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8)))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16) (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8)) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16) (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8)))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))
(*.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8) (sqrt.f64 (pow.f64 2 1/4))) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8) (sqrt.f64 (pow.f64 2 1/4))))
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (sqrt.f64 (pow.f64 2 1/4))) (*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (sqrt.f64 (pow.f64 2 1/4))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 2 1/8)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 2 1/8)))
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (pow.f64 2 1/8)) (*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (pow.f64 2 1/8)))
(*.f64 (*.f64 (pow.f64 2 1/8) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (pow.f64 2 1/8) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8)) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8)))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4)))
(*.f64 (*.f64 (pow.f64 2 1/8) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (pow.f64 2 1/8) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4)))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) 3/2) (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) 3/2))
(*.f64 (pow.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) 4) 1/16) (pow.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) 4) 1/16))
(*.f64 (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/4) 1/6) (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/4) 1/6))
(sqrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(fabs.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))
(log.f64 (exp.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/4))
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))
(exp.f64 (*.f64 1/4 (log.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))
Outputs
(*.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)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 -1/2 re) (sqrt.f64 2))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 im))) -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (*.f64 re (*.f64 re 1/8)) (sqrt.f64 2)))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) 1/8))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 (+.f64 (*.f64 5/64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (*.f64 -1/64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))) (pow.f64 re 3)) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (fma.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) 1/16) (pow.f64 re 3) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 1/8 (*.f64 (sqrt.f64 2) (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) 1/16)) (pow.f64 re 3)))))
(+.f64 (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) 1/16)) (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 im))) -1/2) (*.f64 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) 1/8))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2)
(exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2))
(fma.f64 -1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2))
(fma.f64 -1/8 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) (*.f64 re re)) (*.f64 im im)) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2))
(fma.f64 -1/8 (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)) (*.f64 re re)) (*.f64 im im)) (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4))) (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 4)) (pow.f64 re 4))))))
(+.f64 (fma.f64 -1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2)) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) 9/4))))) (*.f64 1/256 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (/.f64 (pow.f64 re 4) (pow.f64 im 4))))))
(+.f64 (fma.f64 -1/8 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) (*.f64 re re)) (*.f64 im im)) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2)) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 3/128)))) (*.f64 1/256 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) (/.f64 (pow.f64 re 4) (pow.f64 im 4))))))
(+.f64 (fma.f64 -1/8 (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)) (*.f64 re re)) (*.f64 im im)) (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2))) (fma.f64 2 (*.f64 (/.f64 (*.f64 (pow.f64 im 4) 13/512) (pow.f64 re 4)) (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2))) (*.f64 1/256 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2))))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))))) (pow.f64 re 6))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (*.f64 (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (pow.f64 im 2))) (pow.f64 re 6))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4))) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 -1/24576 (pow.f64 im 6)) (+.f64 (*.f64 -1/1536 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 1/2880 (+.f64 (*.f64 45/2 (pow.f64 im 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (*.f64 -15/4 (pow.f64 im 6))))))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2)) (pow.f64 re 6))) (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 4)) (pow.f64 re 4)))))))))
(fma.f64 -1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (fma.f64 -1/16 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (/.f64 (pow.f64 re 6) (*.f64 (*.f64 im im) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) 9/4)))))) (+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (fma.f64 -1/16 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (/.f64 (pow.f64 re 6) (*.f64 (*.f64 im im) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) 9/4)))))) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) 9/4))))) (fma.f64 2 (/.f64 (fma.f64 -1/24576 (pow.f64 im 6) (fma.f64 -1/1536 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 9/4)) (*.f64 1/2880 (fma.f64 45/2 (pow.f64 im 6) (fma.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (*.f64 im im)) (*.f64 (pow.f64 im 6) -15/4)))))) (/.f64 (pow.f64 re 6) (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2))) (*.f64 1/256 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (/.f64 (pow.f64 re 4) (pow.f64 im 4))))))))))
(fma.f64 -1/8 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) (*.f64 re re)) (*.f64 im im)) (+.f64 (fma.f64 -1/16 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) (/.f64 (pow.f64 re 6) (+.f64 (*.f64 1/96 (*.f64 (pow.f64 im 6) 9/4)) (*.f64 1/512 (pow.f64 im 6))))) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 3/128)))) (fma.f64 2 (/.f64 (fma.f64 -1/24576 (pow.f64 im 6) (fma.f64 1/2880 (fma.f64 (pow.f64 im 6) 45/2 (fma.f64 -720 (/.f64 (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)) (*.f64 im im)) (*.f64 (pow.f64 im 6) -15/4))) (*.f64 -1/1536 (*.f64 (pow.f64 im 6) 9/4)))) (/.f64 (pow.f64 re 6) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2))) (*.f64 1/256 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) (/.f64 (pow.f64 re 4) (pow.f64 im 4))))))) (fma.f64 -1/16 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) (/.f64 (pow.f64 re 6) (+.f64 (*.f64 1/96 (*.f64 (pow.f64 im 6) 9/4)) (*.f64 1/512 (pow.f64 im 6))))) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2))))
(fma.f64 -1/8 (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)) (*.f64 re re)) (*.f64 im im)) (+.f64 (fma.f64 -1/16 (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)) (/.f64 (pow.f64 re 6) (*.f64 im im))) (*.f64 (pow.f64 im 4) 13/512)) (fma.f64 2 (*.f64 (/.f64 (*.f64 (pow.f64 im 4) 13/512) (pow.f64 re 4)) (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2))) (fma.f64 2 (/.f64 (fma.f64 -1/24576 (pow.f64 im 6) (fma.f64 1/2880 (+.f64 (*.f64 -720 (/.f64 (*.f64 (pow.f64 im 8) 5/64) (*.f64 im im))) (*.f64 (pow.f64 im 6) 75/4)) (*.f64 -1/1536 (*.f64 (pow.f64 im 6) 9/4)))) (/.f64 (pow.f64 re 6) (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)))) (*.f64 1/256 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2))))))) (fma.f64 -1/16 (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)) (/.f64 (pow.f64 re 6) (*.f64 im im))) (*.f64 (pow.f64 im 4) 13/512)) (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2)
(exp.f64 (*.f64 (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))) 1/2))
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2))
(fma.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2))
(fma.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2) (*.f64 (/.f64 re im) (/.f64 re im))) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2))
(fma.f64 1/8 (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) (exp.f64 (*.f64 (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))) 1/2))) (exp.f64 (*.f64 (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))) 1/2)))
(+.f64 (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 4)) (pow.f64 re 4))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (+.f64 (*.f64 1/96 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))) (*.f64 1/512 (pow.f64 im 4)))) (pow.f64 re 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2))))
(fma.f64 1/256 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) -9/4))))) (fma.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2))))
(fma.f64 1/256 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2) (pow.f64 re 4)) (pow.f64 im 4)) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -3/128)))) (fma.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2) (*.f64 (/.f64 re im) (/.f64 re im))) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2))))
(fma.f64 1/256 (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))) 1/2)) (pow.f64 re 4)) (pow.f64 im 4)) (fma.f64 2 (*.f64 (/.f64 (*.f64 (pow.f64 im 4) -11/512) (pow.f64 re 4)) (exp.f64 (*.f64 (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))) 1/2))) (fma.f64 1/8 (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) (exp.f64 (*.f64 (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))) 1/2))) (exp.f64 (*.f64 (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))) 1/2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 1/24576 (pow.f64 im 6)) (+.f64 (*.f64 1/1536 (*.f64 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 1/2880 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6))))))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)) (pow.f64 re 6))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (+.f64 (*.f64 1/96 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))) (*.f64 1/512 (pow.f64 im 4)))) (pow.f64 re 4))) (+.f64 (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 4)) (pow.f64 re 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/96 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))) (*.f64 1/512 (pow.f64 im 4))))) (pow.f64 re 6))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2))))))
(fma.f64 2 (/.f64 (fma.f64 1/24576 (pow.f64 im 6) (fma.f64 1/1536 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4)) (*.f64 1/2880 (fma.f64 15/4 (pow.f64 im 6) (*.f64 (pow.f64 im 6) 135/4))))) (/.f64 (pow.f64 re 6) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2))) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) -9/4))))) (fma.f64 1/256 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (fma.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (fma.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (pow.f64 re 6) (*.f64 (*.f64 im im) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) -9/4)))))) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2))))))
(fma.f64 2 (*.f64 (/.f64 (fma.f64 (pow.f64 im 6) 1/24576 (fma.f64 1/1536 (*.f64 (pow.f64 im 6) -9/4) (*.f64 1/2880 (*.f64 (pow.f64 im 6) 75/2)))) (pow.f64 re 6)) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2)) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -3/128)))) (fma.f64 1/256 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2) (pow.f64 re 4)) (pow.f64 im 4)) (fma.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2) (*.f64 (/.f64 re im) (/.f64 re im))) (fma.f64 1/8 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2) (pow.f64 re 6)) (+.f64 (*.f64 1/96 (*.f64 (pow.f64 im 6) -9/4)) (*.f64 1/512 (pow.f64 im 6)))) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2))))))
(fma.f64 2 (*.f64 (/.f64 (fma.f64 (pow.f64 im 6) 1/24576 (fma.f64 1/1536 (*.f64 (pow.f64 im 6) -9/4) (*.f64 (pow.f64 im 6) 5/384))) (pow.f64 re 6)) (exp.f64 (*.f64 (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))) 1/2))) (fma.f64 2 (*.f64 (/.f64 (*.f64 (pow.f64 im 4) -11/512) (pow.f64 re 4)) (exp.f64 (*.f64 (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))) 1/2))) (fma.f64 1/256 (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))) 1/2)) (pow.f64 re 4)) (pow.f64 im 4)) (fma.f64 1/8 (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) (exp.f64 (*.f64 (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))) 1/2))) (fma.f64 1/8 (*.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -11/512)) (pow.f64 re 6)) (exp.f64 (*.f64 (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))) 1/2))) (exp.f64 (*.f64 (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))) 1/2)))))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2)
(exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2))
(fma.f64 -1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2))
(fma.f64 -1/8 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) (*.f64 re re)) (*.f64 im im)) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2))
(fma.f64 -1/8 (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)) (*.f64 re re)) (*.f64 im im)) (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 (+.f64 (*.f64 13/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 re 4))) (*.f64 1/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 re 4)))) (pow.f64 im 4)) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2)))
(fma.f64 -1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (fma.f64 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (pow.f64 re 4)) 7/128) (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2)))
(fma.f64 -1/8 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) (*.f64 re re)) (*.f64 im im)) (fma.f64 (pow.f64 im 4) (/.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) 7/128) (pow.f64 re 4)) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2)))
(fma.f64 -1/8 (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)) (*.f64 re re)) (*.f64 im im)) (fma.f64 (pow.f64 im 4) (/.f64 (*.f64 (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)) 7/128) (pow.f64 re 4)) (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 (+.f64 (*.f64 -13/4096 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 re 6))) (*.f64 2 (*.f64 (-.f64 (*.f64 1/2880 (+.f64 (*.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 75/4 (/.f64 1 (pow.f64 re 6))))) (*.f64 37/24576 (/.f64 1 (pow.f64 re 6)))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2)))) (pow.f64 im 6)) (+.f64 (*.f64 (+.f64 (*.f64 13/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 re 4))) (*.f64 1/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2) (pow.f64 re 4)))) (pow.f64 im 4)) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2))))
(fma.f64 -1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (fma.f64 (fma.f64 -13/4096 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (pow.f64 re 6)) (*.f64 2 (*.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (fma.f64 1/2880 (fma.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 75/4 (pow.f64 re 6))) (neg.f64 (/.f64 37/24576 (pow.f64 re 6))))))) (pow.f64 im 6) (fma.f64 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2) (pow.f64 re 4)) 7/128) (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2))))
(fma.f64 -1/8 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) (*.f64 re re)) (*.f64 im im)) (fma.f64 (pow.f64 im 6) (fma.f64 2 (*.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) (+.f64 (fma.f64 1/2880 (fma.f64 -720 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -45 (pow.f64 re 6))) (/.f64 5/768 (pow.f64 re 6))) (/.f64 -37/24576 (pow.f64 re 6)))) (/.f64 -13/4096 (/.f64 (pow.f64 re 6) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2)))) (fma.f64 (pow.f64 im 4) (/.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2) 7/128) (pow.f64 re 4)) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2))))
(fma.f64 -1/8 (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)) (*.f64 re re)) (*.f64 im im)) (fma.f64 (pow.f64 im 6) (fma.f64 2 (*.f64 (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)) (+.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) -1/4) (*.f64 (/.f64 1 (pow.f64 re 6)) 41/8192))) (*.f64 (/.f64 -13/4096 (pow.f64 re 6)) (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)))) (fma.f64 (pow.f64 im 4) (/.f64 (*.f64 (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)) 7/128) (pow.f64 re 4)) (exp.f64 (*.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)) 1/2)))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) 2)
(exp.f64 (*.f64 (+.f64 (log.f64 im) (log.f64 2)) 1/2))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) re) im)) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2))
(fma.f64 -1/2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2) (/.f64 im re)) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2))
(fma.f64 -1/2 (/.f64 re (/.f64 im (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) 2))) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) 2))
(fma.f64 -1/2 (*.f64 (/.f64 re im) (exp.f64 (*.f64 (+.f64 (log.f64 im) (log.f64 2)) 1/2))) (exp.f64 (*.f64 (+.f64 (log.f64 im) (log.f64 2)) 1/2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) re) im)) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)) (pow.f64 im 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (pow.f64 im 2))))))
(fma.f64 -1/2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2) (/.f64 im re)) (fma.f64 1/16 (/.f64 (*.f64 (*.f64 re re) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2)) (*.f64 im im)) (+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2) (*.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2) (/.f64 (*.f64 im im) (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32))))))))
(fma.f64 -1/2 (/.f64 re (/.f64 im (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) 2))) (fma.f64 1/16 (*.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) 2)) (fma.f64 2 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) 2) im) (/.f64 (fma.f64 (*.f64 re re) 1/32 0) im)) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) 2))))
(fma.f64 -1/2 (*.f64 (/.f64 re im) (exp.f64 (*.f64 (+.f64 (log.f64 im) (log.f64 2)) 1/2))) (fma.f64 1/16 (*.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (exp.f64 (*.f64 (+.f64 (log.f64 im) (log.f64 2)) 1/2))) (fma.f64 2 (*.f64 (/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 im) (log.f64 2)) 1/2)) im) (/.f64 (fma.f64 (*.f64 re re) 1/32 0) im)) (exp.f64 (*.f64 (+.f64 (log.f64 im) (log.f64 2)) 1/2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) re) im)) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)) (pow.f64 im 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 -1/384 (pow.f64 re 3)))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) (*.f64 re (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2))))) (pow.f64 im 3))) (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (pow.f64 im 2))))))))
(fma.f64 -1/2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2) (/.f64 im re)) (fma.f64 1/16 (/.f64 (*.f64 (*.f64 re re) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2)) (*.f64 im im)) (+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2) (fma.f64 2 (/.f64 (fma.f64 1/24 (*.f64 (pow.f64 re 3) 1) (fma.f64 -1/32 (*.f64 re (*.f64 0 (*.f64 re re))) (*.f64 (pow.f64 re 3) -1/384))) (/.f64 (pow.f64 im 3) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2))) (fma.f64 -1/2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2) (/.f64 (pow.f64 im 3) (*.f64 re (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32))))) (*.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2) (/.f64 (*.f64 im im) (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32))))))))))
(fma.f64 -1/2 (/.f64 re (/.f64 im (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) 2))) (+.f64 (fma.f64 2 (*.f64 (/.f64 (fma.f64 (pow.f64 re 3) 1/24 (fma.f64 (pow.f64 re 3) -1/384 (*.f64 re 0))) (pow.f64 im 3)) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) 2)) (fma.f64 2 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) 2) im) (/.f64 (fma.f64 (*.f64 re re) 1/32 0) im)) (*.f64 -1/2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) 2) (/.f64 (pow.f64 im 3) (fma.f64 re 0 (*.f64 (pow.f64 re 3) 1/32))))))) (fma.f64 1/16 (*.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) 2)) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) 2))))
(fma.f64 -1/2 (*.f64 (/.f64 re im) (exp.f64 (*.f64 (+.f64 (log.f64 im) (log.f64 2)) 1/2))) (+.f64 (fma.f64 2 (*.f64 (/.f64 (+.f64 (*.f64 re 0) (*.f64 (pow.f64 re 3) 5/128)) (pow.f64 im 3)) (exp.f64 (*.f64 (+.f64 (log.f64 im) (log.f64 2)) 1/2))) (fma.f64 2 (*.f64 (/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 im) (log.f64 2)) 1/2)) im) (/.f64 (fma.f64 (*.f64 re re) 1/32 0) im)) (*.f64 -1/2 (*.f64 (/.f64 (fma.f64 re 0 (*.f64 (pow.f64 re 3) 1/32)) (pow.f64 im 3)) (exp.f64 (*.f64 (+.f64 (log.f64 im) (log.f64 2)) 1/2)))))) (fma.f64 1/16 (*.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (exp.f64 (*.f64 (+.f64 (log.f64 im) (log.f64 2)) 1/2))) (exp.f64 (*.f64 (+.f64 (log.f64 im) (log.f64 2)) 1/2)))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 2)
(exp.f64 (*.f64 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))) 1/2))
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2) (*.f64 1/2 (/.f64 (*.f64 re (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) im)))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2) (*.f64 1/2 (/.f64 re (/.f64 im (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2)))))
(fma.f64 1/2 (*.f64 (/.f64 re im) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 2)) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 2))
(fma.f64 1/2 (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))) 1/2)) im) re) (exp.f64 (*.f64 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))) 1/2)))
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (pow.f64 im 2))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) (pow.f64 im 2))) (*.f64 1/2 (/.f64 (*.f64 re (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) im)))))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2) (/.f64 (*.f64 im im) (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32)))) (fma.f64 1/16 (/.f64 (*.f64 re re) (/.f64 (*.f64 im im) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2))) (*.f64 1/2 (/.f64 re (/.f64 im (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2)))))))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 2) (fma.f64 2 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 2) im) (/.f64 (fma.f64 (*.f64 re re) 1/32 0) im)) (fma.f64 1/16 (*.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 2)) (/.f64 1/2 (/.f64 im (*.f64 re (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 2)))))))
(+.f64 (exp.f64 (*.f64 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))) 1/2)) (fma.f64 2 (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))) 1/2)) im) (/.f64 (fma.f64 (*.f64 re re) 1/32 0) im)) (fma.f64 1/16 (*.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (exp.f64 (*.f64 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))) 1/2))) (*.f64 (/.f64 1/2 im) (*.f64 re (exp.f64 (*.f64 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))) 1/2)))))))
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 re (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))))) (*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 -1/384 (pow.f64 re 3)))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)))) (pow.f64 im 3))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) (pow.f64 im 2))) (*.f64 1/2 (/.f64 (*.f64 re (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) im))))))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2) (/.f64 (*.f64 im im) (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32)))) (fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 re (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2)) (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32))) (*.f64 2 (*.f64 (fma.f64 1/24 (*.f64 (pow.f64 re 3) 1) (fma.f64 -1/32 (*.f64 re (*.f64 0 (*.f64 re re))) (*.f64 (pow.f64 re 3) -1/384))) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2)))) (pow.f64 im 3)) (fma.f64 1/16 (/.f64 (*.f64 re re) (/.f64 (*.f64 im im) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2))) (*.f64 1/2 (/.f64 re (/.f64 im (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2))))))))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 2) (fma.f64 2 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 2) im) (/.f64 (fma.f64 (*.f64 re re) 1/32 0) im)) (-.f64 (fma.f64 1/16 (*.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 2)) (/.f64 1/2 (/.f64 im (*.f64 re (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 2))))) (/.f64 (fma.f64 2 (*.f64 (fma.f64 (pow.f64 re 3) 1/24 (fma.f64 (pow.f64 re 3) -1/384 (*.f64 re 0))) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 2)) (*.f64 (*.f64 re (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 2)) (*.f64 (fma.f64 (*.f64 re re) 1/32 0) -1/2))) (pow.f64 im 3)))))
(-.f64 (+.f64 (exp.f64 (*.f64 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))) 1/2)) (fma.f64 2 (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))) 1/2)) im) (/.f64 (fma.f64 (*.f64 re re) 1/32 0) im)) (fma.f64 1/16 (*.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (exp.f64 (*.f64 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))) 1/2))) (*.f64 (/.f64 1/2 im) (*.f64 re (exp.f64 (*.f64 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))) 1/2))))))) (/.f64 (fma.f64 2 (*.f64 (+.f64 (*.f64 re 0) (*.f64 (pow.f64 re 3) 5/128)) (exp.f64 (*.f64 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))) 1/2))) (*.f64 (*.f64 re (exp.f64 (*.f64 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))) 1/2))) (*.f64 (fma.f64 (*.f64 re re) 1/32 0) -1/2))) (pow.f64 im 3)))
(pow.f64 (*.f64 2 im) 1/4)
(+.f64 (pow.f64 (*.f64 2 im) 1/4) (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 2 (pow.f64 im 3)) 1/4) re)))
(+.f64 (pow.f64 (*.f64 2 im) 1/4) (*.f64 -1/4 (*.f64 re (pow.f64 (/.f64 2 (pow.f64 im 3)) 1/4))))
(fma.f64 -1/4 (*.f64 re (pow.f64 (/.f64 2 (pow.f64 im 3)) 1/4)) (pow.f64 (*.f64 2 im) 1/4))
(+.f64 (pow.f64 (*.f64 2 im) 1/4) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 2 (pow.f64 im 3)) 1/4) re)) (*.f64 1/32 (*.f64 (pow.f64 (/.f64 2 (pow.f64 im 7)) 1/4) (pow.f64 re 2)))))
(+.f64 (pow.f64 (*.f64 2 im) 1/4) (fma.f64 -1/4 (*.f64 re (pow.f64 (/.f64 2 (pow.f64 im 3)) 1/4)) (*.f64 1/32 (*.f64 (*.f64 re re) (pow.f64 (/.f64 2 (pow.f64 im 7)) 1/4)))))
(+.f64 (pow.f64 (*.f64 2 im) 1/4) (fma.f64 1/32 (*.f64 (*.f64 re re) (pow.f64 (/.f64 2 (pow.f64 im 7)) 1/4)) (*.f64 re (*.f64 -1/4 (pow.f64 (/.f64 2 (pow.f64 im 3)) 1/4)))))
(+.f64 (*.f64 5/128 (*.f64 (pow.f64 (/.f64 2 (pow.f64 im 11)) 1/4) (pow.f64 re 3))) (+.f64 (pow.f64 (*.f64 2 im) 1/4) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 2 (pow.f64 im 3)) 1/4) re)) (*.f64 1/32 (*.f64 (pow.f64 (/.f64 2 (pow.f64 im 7)) 1/4) (pow.f64 re 2))))))
(fma.f64 5/128 (*.f64 (pow.f64 re 3) (pow.f64 (/.f64 2 (pow.f64 im 11)) 1/4)) (+.f64 (pow.f64 (*.f64 2 im) 1/4) (fma.f64 -1/4 (*.f64 re (pow.f64 (/.f64 2 (pow.f64 im 3)) 1/4)) (*.f64 1/32 (*.f64 (*.f64 re re) (pow.f64 (/.f64 2 (pow.f64 im 7)) 1/4))))))
(fma.f64 5/128 (*.f64 (pow.f64 re 3) (pow.f64 (/.f64 2 (pow.f64 im 11)) 1/4)) (+.f64 (pow.f64 (*.f64 2 im) 1/4) (fma.f64 1/32 (*.f64 (*.f64 re re) (pow.f64 (/.f64 2 (pow.f64 im 7)) 1/4)) (*.f64 re (*.f64 -1/4 (pow.f64 (/.f64 2 (pow.f64 im 3)) 1/4))))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))))
(fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) re)) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))
(+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4)) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))))
(+.f64 (fma.f64 -1/16 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) 9/4))))))
(+.f64 (fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) re)) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (pow.f64 re 4)) (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 3/128))))
(fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) re)) (fma.f64 13/512 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))))
(+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/24576 (pow.f64 im 6)) (+.f64 (*.f64 -1/1536 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 1/2880 (+.f64 (*.f64 45/2 (pow.f64 im 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (*.f64 -15/4 (pow.f64 im 6))))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (pow.f64 re 6)) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))))))
(+.f64 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) 9/4))))) (+.f64 (fma.f64 -1/16 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (/.f64 (fma.f64 -1/24576 (pow.f64 im 6) (fma.f64 -1/1536 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 9/4)) (*.f64 1/2880 (fma.f64 45/2 (pow.f64 im 6) (fma.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (*.f64 im im)) (*.f64 (pow.f64 im 6) -15/4)))))) (/.f64 (pow.f64 re 6) (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))))))
(+.f64 (fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) re)) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (+.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (pow.f64 re 4)) (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 3/128))) (*.f64 (/.f64 (fma.f64 -1/24576 (pow.f64 im 6) (fma.f64 1/2880 (fma.f64 (pow.f64 im 6) 45/2 (fma.f64 -720 (/.f64 (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)) (*.f64 im im)) (*.f64 (pow.f64 im 6) -15/4))) (*.f64 -1/1536 (*.f64 (pow.f64 im 6) 9/4)))) (pow.f64 re 6)) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))))
(+.f64 (fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) re)) (fma.f64 13/512 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))) (*.f64 (/.f64 (fma.f64 -1/24576 (pow.f64 im 6) (fma.f64 1/2880 (+.f64 (*.f64 -720 (/.f64 (*.f64 (pow.f64 im 8) 5/64) (*.f64 im im))) (*.f64 (pow.f64 im 6) 75/4)) (*.f64 -1/1536 (*.f64 (pow.f64 im 6) 9/4)))) (pow.f64 re 6)) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))))
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))))
(fma.f64 1/16 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))))
(fma.f64 1/16 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (*.f64 (/.f64 re im) (/.f64 re im))) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))))
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re))))))) (pow.f64 re 4)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re))))))))
(fma.f64 1/16 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) -9/4))) (/.f64 (pow.f64 re 4) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re)))))))))
(+.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (fma.f64 1/16 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (*.f64 (/.f64 re im) (/.f64 re im))) (*.f64 (/.f64 (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -3/128)) (pow.f64 re 4)) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))))))
(+.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (fma.f64 1/16 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (*.f64 (/.f64 re im) (/.f64 re im))) (*.f64 (/.f64 (*.f64 (pow.f64 im 4) -11/512) (pow.f64 re 4)) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))))))
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re))))))) (pow.f64 re 4)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/1536 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))) (pow.f64 im 2))) (+.f64 (*.f64 1/24576 (pow.f64 im 6)) (*.f64 1/2880 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6)))))))) (pow.f64 re 6)))))
(fma.f64 1/16 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (/.f64 (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) -9/4))) (/.f64 (pow.f64 re 4) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))))) (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (*.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (fma.f64 1/1536 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4)) (fma.f64 1/24576 (pow.f64 im 6) (*.f64 1/2880 (fma.f64 15/4 (pow.f64 im 6) (*.f64 (pow.f64 im 6) 135/4)))))) (pow.f64 re 6)))))
(+.f64 (+.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (fma.f64 1/16 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (*.f64 (/.f64 re im) (/.f64 re im))) (*.f64 (/.f64 (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -3/128)) (pow.f64 re 4)) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))))))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (pow.f64 re 6)) (fma.f64 (pow.f64 im 6) 1/24576 (fma.f64 1/1536 (*.f64 (pow.f64 im 6) -9/4) (*.f64 1/2880 (*.f64 (pow.f64 im 6) 75/2))))))
(+.f64 (+.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (fma.f64 1/16 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (*.f64 (/.f64 re im) (/.f64 re im))) (*.f64 (/.f64 (*.f64 (pow.f64 im 4) -11/512) (pow.f64 re 4)) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))))))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (pow.f64 re 6)) (fma.f64 (pow.f64 im 6) 1/24576 (fma.f64 1/1536 (*.f64 (pow.f64 im 6) -9/4) (*.f64 (pow.f64 im 6) 5/384)))))
(exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))))
(fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) re)) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (*.f64 13/512 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)) (pow.f64 re 4)))))
(+.f64 (fma.f64 -1/16 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) 9/4))))))
(+.f64 (fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) re)) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (pow.f64 re 4)) (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 3/128))))
(fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) re)) (fma.f64 13/512 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (+.f64 (*.f64 13/512 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)) (pow.f64 re 4))) (*.f64 (-.f64 (*.f64 1/2880 (+.f64 (*.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 75/4 (/.f64 1 (pow.f64 re 6))))) (*.f64 37/24576 (/.f64 1 (pow.f64 re 6)))) (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 6))))))
(+.f64 (fma.f64 -1/16 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (fma.f64 13/512 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (*.f64 (fma.f64 1/2880 (fma.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 75/4 (pow.f64 re 6))) (neg.f64 (/.f64 37/24576 (pow.f64 re 6)))) (*.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (pow.f64 im 6)))))
(+.f64 (fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) re)) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (fma.f64 (+.f64 (fma.f64 1/2880 (fma.f64 -720 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -45 (pow.f64 re 6))) (/.f64 5/768 (pow.f64 re 6))) (/.f64 -37/24576 (pow.f64 re 6))) (*.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (pow.f64 im 6)) (*.f64 13/512 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (/.f64 (pow.f64 re 4) (pow.f64 im 4))))))
(+.f64 (fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) re)) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (fma.f64 (+.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) -1/4) (*.f64 (/.f64 1 (pow.f64 re 6)) 41/8192)) (*.f64 (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (pow.f64 im 6)) (*.f64 13/512 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (pow.f64 (exp.f64 1/4) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))
(pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im)))))
(pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2)))
(+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (*.f64 -1/4 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) re) im)))
(+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (*.f64 -1/4 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (/.f64 im re))))
(fma.f64 -1/4 (/.f64 re (/.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))))) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))))
(fma.f64 -1/4 (*.f64 (/.f64 re im) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2)))) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))))
(+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (pow.f64 im 2)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (*.f64 -1/4 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) re) im))))
(+.f64 (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (*.f64 -1/4 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (/.f64 im re)))) (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (/.f64 (*.f64 im im) (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32)))))
(+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) (fma.f64 -1/4 (/.f64 re (/.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))))) (*.f64 (/.f64 (fma.f64 (*.f64 re re) 1/32 0) (*.f64 im im)) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))))))
(+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) (fma.f64 -1/4 (*.f64 (/.f64 re im) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2)))) (*.f64 (/.f64 (fma.f64 (*.f64 re re) 1/32 0) (*.f64 im im)) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))))))
(+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (*.f64 -1/384 (pow.f64 re 3))))) (pow.f64 im 3)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) (pow.f64 im 2)) (*.f64 -1/4 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) re) im)))))
(+.f64 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (/.f64 (pow.f64 im 3) (fma.f64 -1/32 (*.f64 re (*.f64 0 (*.f64 re re))) (fma.f64 1/24 (*.f64 (pow.f64 re 3) 1) (*.f64 (pow.f64 re 3) -1/384))))) (+.f64 (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (/.f64 (*.f64 im im) (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32))))) (*.f64 -1/4 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (/.f64 im re)))))
(+.f64 (fma.f64 -1/4 (/.f64 re (/.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))))) (*.f64 (/.f64 (fma.f64 (*.f64 re re) 1/32 0) (*.f64 im im)) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))))) (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) (pow.f64 im 3)) (fma.f64 (pow.f64 re 3) 1/24 (fma.f64 (pow.f64 re 3) -1/384 (*.f64 re 0))))))
(+.f64 (fma.f64 -1/4 (*.f64 (/.f64 re im) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2)))) (*.f64 (/.f64 (fma.f64 (*.f64 re re) 1/32 0) (*.f64 im im)) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))))) (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))) (*.f64 (/.f64 (+.f64 (*.f64 re 0) (*.f64 (pow.f64 re 3) 5/128)) (pow.f64 im 3)) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 im) (log.f64 2))))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))
(pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im)))))
(pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 re (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))) im)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))))
(fma.f64 1/4 (/.f64 re (/.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))))) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))))
(fma.f64 1/4 (*.f64 (/.f64 re im) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))))
(fma.f64 1/4 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) im) re) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 re (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))) im)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))) (pow.f64 im 2)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))))
(fma.f64 1/4 (/.f64 re (/.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))))) (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) (/.f64 (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32)) (/.f64 (*.f64 im im) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im)))))))))
(+.f64 (fma.f64 1/4 (*.f64 (/.f64 re im) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) im) (/.f64 (fma.f64 (*.f64 re re) 1/32 0) im)))
(+.f64 (fma.f64 1/4 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) im) re) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) im) (/.f64 (fma.f64 (*.f64 re re) 1/32 0) im)))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 re (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))) im)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (*.f64 -1/384 (pow.f64 re 3))))) (pow.f64 im 3))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))) (pow.f64 im 2)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))))))
(fma.f64 1/4 (/.f64 re (/.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))))) (fma.f64 -1 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) (/.f64 (pow.f64 im 3) (fma.f64 -1/32 (*.f64 re (*.f64 0 (*.f64 re re))) (fma.f64 1/24 (*.f64 (pow.f64 re 3) 1) (*.f64 (pow.f64 re 3) -1/384))))) (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) (/.f64 (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32)) (/.f64 (*.f64 im im) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))))))))
(fma.f64 1/4 (*.f64 (/.f64 re im) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))) (-.f64 (+.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) im) (/.f64 (fma.f64 (*.f64 re re) 1/32 0) im))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) (pow.f64 im 3)) (fma.f64 (pow.f64 re 3) 1/24 (fma.f64 (pow.f64 re 3) -1/384 (*.f64 re 0))))))
(-.f64 (+.f64 (fma.f64 1/4 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) im) re) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) im) (/.f64 (fma.f64 (*.f64 re re) 1/32 0) im))) (*.f64 (/.f64 (+.f64 (*.f64 re 0) (*.f64 (pow.f64 re 3) 5/128)) (pow.f64 im 3)) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 1)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) (pow.f64 1 1/2))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 1 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4))))
(*.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4))))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 2 1/4)))
(*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 2 1/4)))
(*.f64 (pow.f64 2 1/4) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)))
(*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 2 1/4)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 2 1/4))
(*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 2 1/4)))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4))))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 2 1/4)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))
(*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 2 1/4)))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (sqrt.f64 2))) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (sqrt.f64 2))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 2)) (sqrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) (*.f64 (sqrt.f64 (sqrt.f64 2)) (sqrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3/2) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 3/2))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3) 1/6) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3) 1/6))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 2)) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (sqrt.f64 2)) (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(fabs.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(fabs.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) 1)
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 1)
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 1 1/4))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(*.f64 1 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 2 1/4))
(*.f64 (pow.f64 2 1/4) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 2 1/4))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (sqrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(*.f64 (pow.f64 1 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/4) (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/4))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2) 1/4) (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/4))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/4) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 2) 1/4))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2) 1/4) (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/4))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16) (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16) (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8) (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))) (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8) (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/8) (*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8)) (pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/8))))
(*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8) (pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/4))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16)))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/8) (*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8)) (pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/8))))
(*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8) (pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/4))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/8) (*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8)) (pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/8))))
(*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8) (pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/4))
(*.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16) (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8)) (*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/16) (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/8) (*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8)) (pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/8))))
(*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8) (pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/4))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8)) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/8)) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8)) (cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/8))))
(*.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8) (sqrt.f64 (pow.f64 2 1/4))) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8) (sqrt.f64 (pow.f64 2 1/4))))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 2 1/4))
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (sqrt.f64 (pow.f64 2 1/4))) (*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (sqrt.f64 (pow.f64 2 1/4))))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4))))
(*.f64 (pow.f64 2 1/4) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/2))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 2 1/8)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 2 1/8)))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 2 1/4))
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (pow.f64 2 1/8)) (*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (pow.f64 2 1/8)))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4))))
(*.f64 (pow.f64 2 1/4) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/2))
(*.f64 (*.f64 (pow.f64 2 1/8) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (pow.f64 2 1/8) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 2 1/4))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8)) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8)))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 2 1/4))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4)))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4))))
(*.f64 (pow.f64 2 1/4) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/2))
(*.f64 (*.f64 (pow.f64 2 1/8) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4)) (*.f64 (pow.f64 2 1/8) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4)))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (*.f64 (sqrt.f64 (pow.f64 2 1/4)) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/4))))
(*.f64 (pow.f64 2 1/4) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1/2))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) 3/2) (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) 3/2))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(*.f64 (pow.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) 4) 1/16) (pow.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) 4) 1/16))
(pow.f64 (*.f64 4 (pow.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/8)
(*.f64 (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/4) 1/6) (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/4) 1/6))
(*.f64 (pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/4) 1/6) (pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/4) 1/6))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/4))
(sqrt.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(fabs.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(log.f64 (exp.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/4))
(*.f64 (pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/4) 1/6) (pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/4) 1/6))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/4))
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(exp.f64 (*.f64 1/4 (log.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)))
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4)

localize23.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (/.f64 1 re))
0.1b
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
0.4b
(*.f64 (sqrt.f64 1/2) im)
0.5b
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im))
Compiler

Compiled 55 to 45 computations (18.2% saved)

series50.0ms (0.6%)

Counts
4 → 0
Calls

15 calls:

TimeVariablePointExpression
44.0ms
im
@0
(*.f64 (sqrt.f64 1/2) im)
1.0ms
im
@0
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im))
1.0ms
re
@-inf
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
1.0ms
im
@0
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
1.0ms
re
@0
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))

rewrite70.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
930×unswap-sqr
750×swap-sqr
518×associate-*r/
458×sqr-pow
422×pow-sqr
Iterations

Useful iterations: 1 (0.0ms)

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

simplify91.0ms (1.1%)

Algorithm
egg-herbie
Rules
1818×distribute-lft-in
1540×associate-*r/
1390×associate-*l/
1070×associate-/r/
1008×associate-/l/
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02952419
16532309
227932309
Stop Event
node limit
Counts
127 → 176
Calls
Call 1
Inputs
(+.f64 (exp.f64 (log1p.f64 im)) -1)
(-.f64 (exp.f64 (log1p.f64 im)) 1)
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 im)) (exp.f64 (log1p.f64 im))) 1) (+.f64 (exp.f64 (log1p.f64 im)) 1))
(pow.f64 im 1)
(pow.f64 (sqrt.f64 im) 2)
(pow.f64 (cbrt.f64 im) 3)
(pow.f64 (pow.f64 im 3) 1/3)
(sqrt.f64 (*.f64 im im))
(log.f64 (exp.f64 im))
(log.f64 (+.f64 1 (expm1.f64 im)))
(cbrt.f64 (pow.f64 im 3))
(cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (*.f64 (sqrt.f64 1/2) im) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 1/2) im) 3) (*.f64 2 (sqrt.f64 2))))
(expm1.f64 (log1p.f64 im))
(exp.f64 (log.f64 im))
(log1p.f64 (expm1.f64 im))
(+.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 1/2) im))) -1)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 1/2) im))) 1)
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 1/2) im))) (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 1/2) im)))) 1) (+.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 1/2) im))) 1))
(pow.f64 (*.f64 (sqrt.f64 1/2) im) 1)
(pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 1/2) im)) 2)
(pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 1/2) im)) 3)
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 1/2) im) 3) 1/3)
(sqrt.f64 (*.f64 1/2 (*.f64 im im)))
(log.f64 (pow.f64 (exp.f64 im) (sqrt.f64 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 1/2) im))))
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 1/2) im) 3))
(cbrt.f64 (*.f64 (*.f64 1/2 (sqrt.f64 1/2)) (pow.f64 im 3)))
(cbrt.f64 (*.f64 (pow.f64 im 3) (*.f64 1/2 (sqrt.f64 1/2))))
(expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 1/2) im)))
(exp.f64 (log.f64 (*.f64 (sqrt.f64 1/2) im)))
(log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 1/2) im)))
(+.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) -1)
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im)))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 2))))
(/.f64 im (sqrt.f64 re))
(/.f64 (*.f64 (sqrt.f64 1/2) im) (/.f64 (sqrt.f64 re) (sqrt.f64 2)))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 (sqrt.f64 (*.f64 (sqrt.f64 1/2) im)) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 2))))
(/.f64 (pow.f64 2 1/4) (/.f64 (sqrt.f64 re) (*.f64 (pow.f64 2 1/4) (*.f64 (sqrt.f64 1/2) im))))
(/.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 2))))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (cbrt.f64 2) (/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (sqrt.f64 1/2) im))))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2)))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (sqrt.f64 1/2) im))) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 (sqrt.f64 1/2) im))))
(/.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 (sqrt.f64 1/2) im))))
(/.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (pow.f64 2 1/4)) (/.f64 (sqrt.f64 re) (pow.f64 2 1/4)))
(/.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (cbrt.f64 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (sqrt.f64 2))))
(/.f64 (/.f64 im (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im -1) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 (sqrt.f64 re))) 1) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (/.f64 im (cbrt.f64 re)) 1) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 -1 im) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 1 (/.f64 im (sqrt.f64 (sqrt.f64 re)))) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1 (/.f64 im (cbrt.f64 (sqrt.f64 re)))) (cbrt.f64 re))
(/.f64 (*.f64 -1 (/.f64 im (cbrt.f64 (sqrt.f64 re)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (/.f64 im 1) (sqrt.f64 re))
(/.f64 (/.f64 im (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))) 1) (+.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(sqrt.f64 (/.f64 (*.f64 im im) re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))
(cbrt.f64 (/.f64 (pow.f64 im 3) (*.f64 re (sqrt.f64 re))))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/2))) -1)
(-.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/2))) 1)
(*.f64 1 (pow.f64 re -1/2))
(*.f64 (pow.f64 re -1/2) 1)
(*.f64 (sqrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (/.f64 1 (cbrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (cbrt.f64 (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re))))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 re -2)) 1/2) (pow.f64 (/.f64 1 (cbrt.f64 re)) 1/2))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/2))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/2))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/2))) (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/2))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re)))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re)))) (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re)))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))) (*.f64 (cbrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2)))) (*.f64 (sqrt.f64 (/.f64 1 (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2)))))
(*.f64 (pow.f64 re -1/4) (pow.f64 re -1/4))
(*.f64 (pow.f64 (sqrt.f64 re) -1/2) (pow.f64 (sqrt.f64 re) -1/2))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3/2) (pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3/2))
(*.f64 (pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/6) (pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/6))
(/.f64 1 (sqrt.f64 re))
(/.f64 (sqrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re))
(/.f64 (/.f64 1 (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 -1 (neg.f64 (sqrt.f64 re)))
(/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/2)) 1) (cbrt.f64 re))
(/.f64 (*.f64 1 (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 (pow.f64 re -1/2)) 1) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/2)) -1) (cbrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (/.f64 1 (cbrt.f64 re)) 1) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 -1) 1) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 -1 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (neg.f64 re)))
(/.f64 (/.f64 1 (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/2))) (exp.f64 (log1p.f64 (pow.f64 re -1/2)))) 1) (+.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/2))) 1))
(pow.f64 re -1/2)
(pow.f64 (/.f64 1 re) 1/2)
(pow.f64 (pow.f64 re -1/2) 1)
(pow.f64 (sqrt.f64 re) -1)
(pow.f64 (sqrt.f64 (pow.f64 re -1/2)) 2)
(pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3)
(pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/3)
(fabs.f64 (pow.f64 re -1/2))
(log.f64 (exp.f64 (pow.f64 re -1/2)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 re -1/2))))
(cbrt.f64 (pow.f64 (/.f64 1 re) 3/2))
(expm1.f64 (log1p.f64 (pow.f64 re -1/2)))
(exp.f64 (log.f64 (pow.f64 re -1/2)))
(exp.f64 (*.f64 (neg.f64 (log.f64 re)) 1/2))
(log1p.f64 (expm1.f64 (pow.f64 re -1/2)))
Outputs
(+.f64 (exp.f64 (log1p.f64 im)) -1)
im
(-.f64 (exp.f64 (log1p.f64 im)) 1)
im
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 im)) (exp.f64 (log1p.f64 im))) 1) (+.f64 (exp.f64 (log1p.f64 im)) 1))
(/.f64 (*.f64 (+.f64 (exp.f64 (log1p.f64 im)) 1) im) (+.f64 (exp.f64 (log1p.f64 im)) 1))
(/.f64 (expm1.f64 (*.f64 2 (log1p.f64 im))) (+.f64 (exp.f64 (log1p.f64 im)) 1))
(pow.f64 im 1)
im
(pow.f64 (sqrt.f64 im) 2)
im
(pow.f64 (cbrt.f64 im) 3)
im
(pow.f64 (pow.f64 im 3) 1/3)
im
(sqrt.f64 (*.f64 im im))
im
(log.f64 (exp.f64 im))
im
(log.f64 (+.f64 1 (expm1.f64 im)))
im
(cbrt.f64 (pow.f64 im 3))
im
(cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (*.f64 (sqrt.f64 1/2) im) 3)))
(cbrt.f64 (*.f64 2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3))))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 1/2) im) 3) (*.f64 2 (sqrt.f64 2))))
(cbrt.f64 (*.f64 2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3))))
(expm1.f64 (log1p.f64 im))
im
(exp.f64 (log.f64 im))
im
(log1p.f64 (expm1.f64 im))
im
(+.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 1/2) im))) -1)
(*.f64 im (sqrt.f64 1/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 1/2) im))) 1)
(*.f64 im (sqrt.f64 1/2))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 1/2) im))) (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 1/2) im)))) 1) (+.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 1/2) im))) 1))
(/.f64 (*.f64 (+.f64 1 (exp.f64 (log1p.f64 (*.f64 im (sqrt.f64 1/2))))) (*.f64 im (sqrt.f64 1/2))) (+.f64 1 (exp.f64 (log1p.f64 (*.f64 im (sqrt.f64 1/2))))))
(/.f64 (expm1.f64 (*.f64 2 (log1p.f64 (*.f64 im (sqrt.f64 1/2))))) (+.f64 1 (exp.f64 (log1p.f64 (*.f64 im (sqrt.f64 1/2))))))
(pow.f64 (*.f64 (sqrt.f64 1/2) im) 1)
(*.f64 im (sqrt.f64 1/2))
(pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 1/2) im)) 2)
(*.f64 im (sqrt.f64 1/2))
(pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 1/2) im)) 3)
(*.f64 im (sqrt.f64 1/2))
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 1/2) im) 3) 1/3)
(*.f64 im (sqrt.f64 1/2))
(sqrt.f64 (*.f64 1/2 (*.f64 im im)))
(sqrt.f64 (*.f64 (*.f64 im im) 1/2))
(sqrt.f64 (*.f64 im (*.f64 im 1/2)))
(log.f64 (pow.f64 (exp.f64 im) (sqrt.f64 1/2)))
(*.f64 im (sqrt.f64 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 1/2) im))))
(*.f64 im (sqrt.f64 1/2))
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 1/2) im) 3))
(*.f64 im (sqrt.f64 1/2))
(cbrt.f64 (*.f64 (*.f64 1/2 (sqrt.f64 1/2)) (pow.f64 im 3)))
(cbrt.f64 (*.f64 (pow.f64 im 3) (*.f64 1/2 (sqrt.f64 1/2))))
(cbrt.f64 (*.f64 (pow.f64 im 3) (*.f64 1/2 (sqrt.f64 1/2))))
(expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 1/2) im)))
(*.f64 im (sqrt.f64 1/2))
(exp.f64 (log.f64 (*.f64 (sqrt.f64 1/2) im)))
(*.f64 im (sqrt.f64 1/2))
(log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 1/2) im)))
(*.f64 im (sqrt.f64 1/2))
(+.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) -1)
(/.f64 im (sqrt.f64 re))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im)))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 im (sqrt.f64 1/2)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (sqrt.f64 1/2)) im)
(*.f64 (sqrt.f64 1/2) (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 2))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 im (sqrt.f64 1/2)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (sqrt.f64 1/2)) im)
(*.f64 (sqrt.f64 1/2) (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))))
(/.f64 im (sqrt.f64 re))
(/.f64 (*.f64 (sqrt.f64 1/2) im) (/.f64 (sqrt.f64 re) (sqrt.f64 2)))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 im (sqrt.f64 1/2)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (sqrt.f64 1/2)) im)
(*.f64 (sqrt.f64 1/2) (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 im (sqrt.f64 re))
(/.f64 (sqrt.f64 (*.f64 (sqrt.f64 1/2) im)) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 2))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 im (sqrt.f64 1/2)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (sqrt.f64 1/2)) im)
(*.f64 (sqrt.f64 1/2) (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))))
(/.f64 (pow.f64 2 1/4) (/.f64 (sqrt.f64 re) (*.f64 (pow.f64 2 1/4) (*.f64 (sqrt.f64 1/2) im))))
(*.f64 (/.f64 (pow.f64 2 1/4) (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (pow.f64 2 1/4)))
(*.f64 (pow.f64 2 1/4) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) (*.f64 im (pow.f64 2 1/4)))))
(*.f64 (pow.f64 2 1/4) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)) (*.f64 im (pow.f64 2 1/4))))
(/.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 im (sqrt.f64 re))
(/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 2))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 (*.f64 im im) 1/2)) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (cbrt.f64 (*.f64 im (sqrt.f64 1/2)))))
(*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 1/2))) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im (*.f64 im 1/2))))))
(*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 1/2))) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (cbrt.f64 (*.f64 im (*.f64 im 1/2)))))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(/.f64 im (sqrt.f64 re))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 im (sqrt.f64 re))
(/.f64 (cbrt.f64 2) (/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (sqrt.f64 1/2) im))))
(*.f64 (/.f64 (cbrt.f64 2) (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 (sqrt.f64 2))))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) (*.f64 im (cbrt.f64 2)))))
(/.f64 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (cbrt.f64 2))) (cbrt.f64 (sqrt.f64 2))) (sqrt.f64 re))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2)))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 im (sqrt.f64 1/2)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (sqrt.f64 1/2)) im)
(*.f64 (sqrt.f64 1/2) (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (sqrt.f64 1/2) im))) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 (sqrt.f64 1/2) im))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 im (sqrt.f64 1/2)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (sqrt.f64 1/2)) im)
(*.f64 (sqrt.f64 1/2) (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))))
(/.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 (sqrt.f64 1/2) im))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 (*.f64 im im) 1/2)) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (cbrt.f64 (*.f64 im (sqrt.f64 1/2)))))
(*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 1/2))) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im (*.f64 im 1/2))))))
(*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 1/2))) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (cbrt.f64 (*.f64 im (*.f64 im 1/2)))))
(/.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (pow.f64 2 1/4)) (/.f64 (sqrt.f64 re) (pow.f64 2 1/4)))
(*.f64 (/.f64 (pow.f64 2 1/4) (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (pow.f64 2 1/4)))
(*.f64 (pow.f64 2 1/4) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) (*.f64 im (pow.f64 2 1/4)))))
(*.f64 (pow.f64 2 1/4) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)) (*.f64 im (pow.f64 2 1/4))))
(/.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (cbrt.f64 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (sqrt.f64 2))))
(*.f64 (/.f64 (cbrt.f64 2) (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 (sqrt.f64 2))))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) (*.f64 im (cbrt.f64 2)))))
(/.f64 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (cbrt.f64 2))) (cbrt.f64 (sqrt.f64 2))) (sqrt.f64 re))
(/.f64 (/.f64 im (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(/.f64 (*.f64 im -1) (neg.f64 (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(/.f64 (*.f64 im (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re))) im)
(/.f64 (*.f64 (/.f64 im (sqrt.f64 (sqrt.f64 re))) 1) (sqrt.f64 (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(/.f64 (*.f64 (/.f64 im (cbrt.f64 re)) 1) (cbrt.f64 (sqrt.f64 re)))
(/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 -1 im) (neg.f64 (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(/.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 im (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re))) im)
(/.f64 (*.f64 1 (/.f64 im (sqrt.f64 (sqrt.f64 re)))) (sqrt.f64 (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(/.f64 (*.f64 1 (/.f64 im (cbrt.f64 (sqrt.f64 re)))) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 -1 (/.f64 im (cbrt.f64 (sqrt.f64 re)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (/.f64 (neg.f64 im) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (neg.f64 re)))
(/.f64 (neg.f64 im) (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im 1) (sqrt.f64 re))
(/.f64 im (sqrt.f64 re))
(/.f64 (/.f64 im (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 im (*.f64 (sqrt.f64 (cbrt.f64 re)) (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))))
(/.f64 im (*.f64 (fabs.f64 (cbrt.f64 re)) (sqrt.f64 (cbrt.f64 re))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))) 1) (+.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1))
(/.f64 (*.f64 (+.f64 1 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))) (/.f64 im (sqrt.f64 re))) (+.f64 1 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))))
(/.f64 (expm1.f64 (*.f64 2 (log1p.f64 (/.f64 im (sqrt.f64 re))))) (+.f64 1 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(/.f64 im (sqrt.f64 re))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 (/.f64 im re) im))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))
(cbrt.f64 (/.f64 (pow.f64 im 3) (*.f64 re (sqrt.f64 re))))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(+.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/2))) -1)
(pow.f64 re -1/2)
(-.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/2))) 1)
(pow.f64 re -1/2)
(*.f64 1 (pow.f64 re -1/2))
(pow.f64 re -1/2)
(*.f64 (pow.f64 re -1/2) 1)
(pow.f64 re -1/2)
(*.f64 (sqrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (pow.f64 re -1/2)))
(pow.f64 re -1/2)
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (/.f64 1 (cbrt.f64 re)))
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re))
(*.f64 (/.f64 1 (cbrt.f64 re)) (cbrt.f64 (pow.f64 re -1/2)))
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re))))
(*.f64 (sqrt.f64 (/.f64 1 (cbrt.f64 re))) (sqrt.f64 (cbrt.f64 (pow.f64 re -2))))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 re -2)) 1/2) (pow.f64 (/.f64 1 (cbrt.f64 re)) 1/2))
(*.f64 (sqrt.f64 (/.f64 1 (cbrt.f64 re))) (sqrt.f64 (cbrt.f64 (pow.f64 re -2))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/2))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/2))))
(pow.f64 re -1/2)
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/2))) (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/2))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2)))) (*.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2)))))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (*.f64 (cbrt.f64 (pow.f64 re -1/2)) (*.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))))))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (*.f64 (cbrt.f64 (pow.f64 re -1/2)) (*.f64 (cbrt.f64 (fabs.f64 (pow.f64 re -1/4))) (cbrt.f64 (fabs.f64 (pow.f64 re -1/4))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re)))))
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re)))) (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re)))))
(*.f64 (sqrt.f64 (/.f64 1 (cbrt.f64 re))) (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (*.f64 (sqrt.f64 (/.f64 1 (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))))))
(*.f64 (/.f64 1 (cbrt.f64 re)) (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2)))))
(*.f64 (/.f64 1 (cbrt.f64 re)) (*.f64 (cbrt.f64 (fabs.f64 (pow.f64 re -1/4))) (cbrt.f64 (fabs.f64 (pow.f64 re -1/4)))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))) (*.f64 (cbrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))))
(pow.f64 re -1/2)
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2)))) (*.f64 (sqrt.f64 (/.f64 1 (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2)))))
(*.f64 (sqrt.f64 (/.f64 1 (cbrt.f64 re))) (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (*.f64 (sqrt.f64 (/.f64 1 (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))))))
(*.f64 (/.f64 1 (cbrt.f64 re)) (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2)))))
(*.f64 (/.f64 1 (cbrt.f64 re)) (*.f64 (cbrt.f64 (fabs.f64 (pow.f64 re -1/4))) (cbrt.f64 (fabs.f64 (pow.f64 re -1/4)))))
(*.f64 (pow.f64 re -1/4) (pow.f64 re -1/4))
(pow.f64 re -1/2)
(*.f64 (pow.f64 (sqrt.f64 re) -1/2) (pow.f64 (sqrt.f64 re) -1/2))
(/.f64 1 (sqrt.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3/2) (pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3/2))
(pow.f64 re -1/2)
(*.f64 (pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/6) (pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/6))
(cbrt.f64 (pow.f64 (/.f64 1 re) 3/2))
(/.f64 1 (sqrt.f64 re))
(/.f64 (sqrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (fabs.f64 (pow.f64 re -1/4)) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re))
(/.f64 (/.f64 1 (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 1 (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 1 (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(/.f64 -1 (neg.f64 (sqrt.f64 re)))
(/.f64 1 (sqrt.f64 re))
(/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/2)) 1) (cbrt.f64 re))
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re))
(/.f64 (*.f64 1 (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 (pow.f64 re -1/2)) 1) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (sqrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (fabs.f64 (pow.f64 re -1/4)) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/2)) -1) (cbrt.f64 (neg.f64 re)))
(/.f64 (neg.f64 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (/.f64 1 (cbrt.f64 re)) 1) (cbrt.f64 (sqrt.f64 re)))
(/.f64 1 (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 1 (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 (sqrt.f64 -1) 1) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 -1 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (neg.f64 re)))
(/.f64 (neg.f64 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (neg.f64 re)))
(/.f64 (/.f64 1 (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 1 (*.f64 (sqrt.f64 (cbrt.f64 re)) (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))))
(/.f64 1 (*.f64 (fabs.f64 (cbrt.f64 re)) (sqrt.f64 (cbrt.f64 re))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/2))) (exp.f64 (log1p.f64 (pow.f64 re -1/2)))) 1) (+.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/2))) 1))
(/.f64 (*.f64 (+.f64 1 (exp.f64 (log1p.f64 (pow.f64 re -1/2)))) (pow.f64 re -1/2)) (+.f64 1 (exp.f64 (log1p.f64 (pow.f64 re -1/2)))))
(/.f64 (expm1.f64 (*.f64 2 (log1p.f64 (pow.f64 re -1/2)))) (+.f64 1 (exp.f64 (log1p.f64 (pow.f64 re -1/2)))))
(pow.f64 re -1/2)
(pow.f64 (/.f64 1 re) 1/2)
(sqrt.f64 (/.f64 1 re))
(pow.f64 (pow.f64 re -1/2) 1)
(pow.f64 re -1/2)
(pow.f64 (sqrt.f64 re) -1)
(/.f64 1 (sqrt.f64 re))
(pow.f64 (sqrt.f64 (pow.f64 re -1/2)) 2)
(pow.f64 re -1/2)
(pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3)
(pow.f64 re -1/2)
(pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/3)
(cbrt.f64 (pow.f64 (/.f64 1 re) 3/2))
(fabs.f64 (pow.f64 re -1/2))
(pow.f64 re -1/2)
(log.f64 (exp.f64 (pow.f64 re -1/2)))
(pow.f64 re -1/2)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 re -1/2))))
(pow.f64 re -1/2)
(cbrt.f64 (pow.f64 (/.f64 1 re) 3/2))
(expm1.f64 (log1p.f64 (pow.f64 re -1/2)))
(pow.f64 re -1/2)
(exp.f64 (log.f64 (pow.f64 re -1/2)))
(pow.f64 re -1/2)
(exp.f64 (*.f64 (neg.f64 (log.f64 re)) 1/2))
(pow.f64 re -1/2)
(log1p.f64 (expm1.f64 (pow.f64 re -1/2)))
(pow.f64 re -1/2)

eval930.0ms (11%)

Compiler

Compiled 34215 to 22452 computations (34.4% saved)

prune369.0ms (4.4%)

Pruning

19 alts after pruning (14 fresh and 5 done)

PrunedKeptTotal
New1038111049
Fresh235
Picked101
Done055
Total1041191060
Error
0.1b
Counts
1060 → 19
Alt Table
Click to see full alt table
StatusErrorProgram
14.2b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2))
17.4b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re))) 2) 1/4) 2))
46.8b
(*.f64 1/2 (pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2))
46.8b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
47.3b
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
16.2b
(*.f64 1/2 (*.f64 (sqrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))) (sqrt.f64 2)))
14.2b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2)))
30.0b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
46.7b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2)))
47.9b
(*.f64 1/2 (*.f64 (exp.f64 (log.f64 im)) (sqrt.f64 (/.f64 1 re))))
46.8b
(*.f64 1/2 (*.f64 im (sqrt.f64 (/.f64 1 re))))
51.8b
(*.f64 1/2 (sqrt.f64 (*.f64 (/.f64 im re) im)))
16.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))))
13.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
29.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
17.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))))
31.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
47.9b
(*.f64 1/2 (exp.f64 (log.f64 (/.f64 im (sqrt.f64 re)))))
Compiler

Compiled 400 to 310 computations (22.5% saved)

localize59.0ms (0.7%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (hypot.f64 re im))
0.0b
(sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))
15.8b
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))
Compiler

Compiled 69 to 18 computations (73.9% saved)

series14.0ms (0.2%)

Counts
3 → 26
Calls

18 calls:

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

rewrite82.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
966×*-commutative
836×sqrt-prod
648×unswap-sqr
560×swap-sqr
424×sqr-pow
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01355
125847
2299747
Stop Event
node limit
Counts
3 → 145
Calls
Call 1
Inputs
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))
(sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))
(sqrt.f64 (hypot.f64 re im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 re im) re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 re (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 re im) 0) re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 re im) (exp.f64 (log1p.f64 re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (hypot.f64 re im) re)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 re (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 re im))) (+.f64 re 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 re)) (-.f64 1 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (hypot.f64 re im) (exp.f64 (log1p.f64 re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 re (exp.f64 (log1p.f64 (hypot.f64 re im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (hypot.f64 re im) 0) re)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (hypot.f64 re im) 2) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))) (sqrt.f64 (sqrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3/2) (pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/6) (pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (cbrt.f64 re) 2) (-.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (*.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (+.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))) (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 4)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))) (sqrt.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (hypot.f64 re im) re) (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (+.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 re (-.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 (*.f64 re re) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) 1) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) 1) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (sqrt.f64 (+.f64 (hypot.f64 re im) re))) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (cbrt.f64 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (+.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 re (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re)))) 1) (+.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) 3) 1) (+.f64 (*.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re)))) (+.f64 1 (*.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (neg.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (hypot.f64 re im) re)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (pow.f64 1 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (fabs.f64 (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (*.f64 2 (cbrt.f64 (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (sqrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))) (sqrt.f64 (*.f64 2 (sqrt.f64 (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 2)) (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3/2) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2) 1/6) (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 1 1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (sqrt.f64 2)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2)) (fabs.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) (sqrt.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (sqrt.f64 (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))) (sqrt.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (sqrt.f64 2))) (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 3) 1) (+.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))) (+.f64 1 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 re im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 re im)) (pow.f64 1 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 re im) 1/4) (pow.f64 (hypot.f64 re im) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) (cbrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) (sqrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (cbrt.f64 (hypot.f64 re im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 re im)) (sqrt.f64 (cbrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 1/4)) (sqrt.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) 1/2) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 1/2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) 3/2) (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/6) (pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 2) 1/8) (pow.f64 (pow.f64 (hypot.f64 re im) 2) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 1 1/2)) (sqrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) 1/2)) (fabs.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))) (sqrt.f64 (pow.f64 (hypot.f64 re im) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (cbrt.f64 (hypot.f64 re im)))) (sqrt.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 3) 1) (+.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))) (+.f64 1 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 re im) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 re im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 re im) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 re im) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (hypot.f64 re im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 re im) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (hypot.f64 re im))))))))

simplify118.0ms (1.4%)

Algorithm
egg-herbie
Rules
1632×associate-*r/
790×associate-+l+
786×associate-+r+
768×+-commutative
654×associate-*r*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
05148549
113068027
251408027
Stop Event
node limit
Counts
171 → 273
Calls
Call 1
Inputs
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3))))) (*.f64 1/16 (/.f64 1 (pow.f64 im 3))))) im)))
(*.f64 -1 re)
(*.f64 -1 re)
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 4)))
(+.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 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 4))))
(+.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 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 4)) (*.f64 (-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) 2) re)) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) 2)) (pow.f64 im 8)))))
(*.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) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.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 (*.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 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 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) 2) re)) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re))) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) 2) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (*.f64 re (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)))) (pow.f64 (sqrt.f64 1/2) 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 1/4 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 re 4) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3))))) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 5))) (*.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3)))) (pow.f64 im 2)))) (pow.f64 re 6)) (sqrt.f64 (/.f64 1 im)))) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 re 4) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3))))) (sqrt.f64 (/.f64 1 im)))))))
(sqrt.f64 re)
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 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 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (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 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (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 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (pow.f64 re 2)))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (sqrt.f64 re))))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
(+.f64 0 (+.f64 (hypot.f64 re im) re))
(+.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) -1)
(+.f64 (-.f64 (hypot.f64 re im) 0) re)
(+.f64 (-.f64 (hypot.f64 re im) (exp.f64 (log1p.f64 re))) 1)
(-.f64 (hypot.f64 re im) re)
(-.f64 0 (-.f64 re (hypot.f64 re im)))
(-.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) 1)
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 re im))) (+.f64 re 1))
(-.f64 (exp.f64 (log1p.f64 re)) (-.f64 1 (hypot.f64 re im)))
(-.f64 (+.f64 (hypot.f64 re im) (exp.f64 (log1p.f64 re))) 1)
(-.f64 (+.f64 re (exp.f64 (log1p.f64 (hypot.f64 re im)))) 1)
(-.f64 (-.f64 (hypot.f64 re im) 0) re)
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) 2) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)))
(*.f64 (+.f64 (hypot.f64 re im) re) 1)
(*.f64 1 (+.f64 (hypot.f64 re im) re))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))) (sqrt.f64 (sqrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))))
(*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im))))))
(*.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (+.f64 (hypot.f64 re im) re))
(*.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(*.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3/2) (pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3/2))
(*.f64 (pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/6) (pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/6))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))
(*.f64 (+.f64 (pow.f64 (cbrt.f64 re) 2) (-.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (*.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (+.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))
(*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))) (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 4)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))) (sqrt.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (+.f64 (hypot.f64 re im) re) 1)
(/.f64 1 (/.f64 (+.f64 (hypot.f64 re im) re) (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))))
(/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (+.f64 (hypot.f64 re im) re))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (+.f64 (*.f64 re re) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (hypot.f64 re im) re))))
(/.f64 (*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) 1) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(/.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) 1) (+.f64 (hypot.f64 re im) re))
(/.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (sqrt.f64 (+.f64 (hypot.f64 re im) re))) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (cbrt.f64 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(/.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im)))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re)))) 1) (+.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) 1))
(/.f64 (-.f64 (pow.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) 3) 1) (+.f64 (*.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re)))) (+.f64 1 (*.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) 1))))
(/.f64 (neg.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (neg.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (neg.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im))))))
(pow.f64 (+.f64 (hypot.f64 re im) re) 1)
(pow.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) 2)
(pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3)
(pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/3)
(sqrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))
(fabs.f64 (+.f64 (hypot.f64 re im) re))
(log.f64 (exp.f64 (+.f64 (hypot.f64 re im) re)))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 (hypot.f64 re im) re))))
(cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))
(expm1.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re)))
(exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re)))
(log1p.f64 (expm1.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) -1)
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 1)
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (pow.f64 1 1/2))
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (fabs.f64 (sqrt.f64 2)))
(*.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))
(*.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (*.f64 2 (cbrt.f64 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (sqrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2))))
(*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))) (sqrt.f64 (*.f64 2 (sqrt.f64 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (sqrt.f64 (sqrt.f64 2)) (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3/2) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3/2))
(*.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2) 1/6) (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2) 1/6))
(*.f64 (fabs.f64 (pow.f64 1 1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (fabs.f64 (sqrt.f64 2)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (fabs.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2)) (fabs.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2)))
(*.f64 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) (sqrt.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))
(*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4)))
(*.f64 (sqrt.f64 (*.f64 2 (sqrt.f64 (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (*.f64 2 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))) (sqrt.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (sqrt.f64 2))) (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 1))
(/.f64 (-.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 3) 1) (+.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))) (+.f64 1 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 1))))
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/2)
(pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4) 2)
(pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3)
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2) 1/3)
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(fabs.f64 (-.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) -1)
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 1)
(*.f64 (sqrt.f64 (hypot.f64 re im)) 1)
(*.f64 (sqrt.f64 (hypot.f64 re im)) (pow.f64 1 1/2))
(*.f64 1 (sqrt.f64 (hypot.f64 re im)))
(*.f64 (pow.f64 (hypot.f64 re im) 1/4) (pow.f64 (hypot.f64 re im) 1/4))
(*.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) (cbrt.f64 (hypot.f64 re im)))
(*.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) (sqrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (cbrt.f64 (hypot.f64 re im))))))
(*.f64 (cbrt.f64 (hypot.f64 re im)) (sqrt.f64 (cbrt.f64 (hypot.f64 re im))))
(*.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 1/4)) (sqrt.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (hypot.f64 re im)))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) 1/2) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 1/2))
(*.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 1/2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) 1/2))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) 3/2) (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) 3/2))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/6) (pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/6))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 2) 1/8) (pow.f64 (pow.f64 (hypot.f64 re im) 2) 1/8))
(*.f64 (fabs.f64 (pow.f64 1 1/2)) (sqrt.f64 (hypot.f64 re im)))
(*.f64 (fabs.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) 1/2)) (fabs.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 1/2)))
(*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))) (sqrt.f64 (pow.f64 (hypot.f64 re im) 1/4)))
(*.f64 (sqrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (cbrt.f64 (hypot.f64 re im)))) (sqrt.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 1))
(/.f64 (-.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 3) 1) (+.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))) (+.f64 1 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 1))))
(pow.f64 (hypot.f64 re im) 1/2)
(pow.f64 (sqrt.f64 (hypot.f64 re im)) 1)
(pow.f64 (pow.f64 (hypot.f64 re im) 1/4) 2)
(pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) 3)
(pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/3)
(pow.f64 (pow.f64 (hypot.f64 re im) 2) 1/4)
(fabs.f64 (sqrt.f64 (hypot.f64 re im)))
(fabs.f64 (-.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))))
(fabs.f64 (neg.f64 (sqrt.f64 (hypot.f64 re im))))
(log.f64 (exp.f64 (sqrt.f64 (hypot.f64 re im))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (hypot.f64 re im)))))
(cbrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))
(exp.f64 (log.f64 (sqrt.f64 (hypot.f64 re im))))
(log1p.f64 (expm1.f64 (sqrt.f64 (hypot.f64 re im))))
Outputs
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(-.f64 (fma.f64 1/2 (/.f64 re (/.f64 im re)) im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3))))) (*.f64 1/16 (/.f64 1 (pow.f64 im 3))))) im)))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) (fma.f64 (pow.f64 re 4) (fma.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3))) (/.f64 1/16 (pow.f64 im 3))) im)))
(-.f64 (fma.f64 1/2 (/.f64 re (/.f64 im re)) (fma.f64 (pow.f64 re 4) (-.f64 (/.f64 1/16 (pow.f64 im 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3)))) im)) re)
(-.f64 (fma.f64 1/2 (/.f64 re (/.f64 im re)) (fma.f64 (pow.f64 re 4) (-.f64 (-.f64 (/.f64 1/16 (pow.f64 im 3)) (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2)) (/.f64 1/8 (pow.f64 im 3))) im)) re)
(*.f64 -1 re)
(neg.f64 re)
(*.f64 -1 re)
(neg.f64 re)
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 4)))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (pow.f64 im 4)))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (pow.f64 im 4)))
(+.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 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 4))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (pow.f64 im 4))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (pow.f64 im 4))))
(+.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 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 4)) (*.f64 (-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) 2) re)) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) 2)) (pow.f64 im 8)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (pow.f64 im 4) (*.f64 (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) 2) re) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re))) (pow.f64 (*.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 re))) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) 2)) (pow.f64 im 8)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 (-.f64 (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re) (/.f64 1/4 (/.f64 re (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) 2)))) (pow.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 re)))) 2)) (pow.f64 im 8) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (pow.f64 im 4)))))
(*.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)))
(fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (sqrt.f64 2)) re) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.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))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.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 (*.f64 (sqrt.f64 (/.f64 1 im)) (sqrt.f64 2)) re) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 (/.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 (*.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 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))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.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)))) (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)))))))))
(fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (sqrt.f64 2)) re) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im))))) (*.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (pow.f64 re 3) (*.f64 (sqrt.f64 2) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))))) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2)))))
(fma.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 3)) (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))))) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))))) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 re)) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (sqrt.f64 1/2)))) 2)) (pow.f64 im 5))))) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))) (*.f64 (sqrt.f64 re) (+.f64 (/.f64 (*.f64 1/2 (sqrt.f64 2)) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 3)) (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)))) 2)) (pow.f64 im 5)))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))) (*.f64 (sqrt.f64 re) (+.f64 (/.f64 (*.f64 1/2 (sqrt.f64 2)) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 3)) (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (/.f64 (*.f64 (*.f64 1/2 (sqrt.f64 re)) (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (sqrt.f64 1/2)) 2)) (pow.f64 im 5)))))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) 2) re)) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re))) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) 2) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (*.f64 re (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)))) (pow.f64 (sqrt.f64 1/2) 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))))) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 re)) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (sqrt.f64 1/2)))) 2)) (pow.f64 im 5))))) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) 2) re) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re))) (pow.f64 (*.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 re))) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) 2)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) re) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (sqrt.f64 1/2)))) 2))) (pow.f64 (sqrt.f64 1/2) 2))))) (pow.f64 im 7)) (sqrt.f64 1/2))) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2)))))))
(+.f64 (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 7)) (-.f64 (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re) (/.f64 1/4 (/.f64 re (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) 2)))) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (/.f64 1/2 re) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)))) 2)))) (pow.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 re)))) 2)))))) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))) (*.f64 (sqrt.f64 re) (+.f64 (/.f64 (*.f64 1/2 (sqrt.f64 2)) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 3)) (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)))) 2)) (pow.f64 im 5)))))))
(+.f64 (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 7)) (-.f64 (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re) (/.f64 1/4 (/.f64 re (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) 2)))) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (/.f64 1/2 re) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (/.f64 (*.f64 (*.f64 1/2 (sqrt.f64 re)) (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (sqrt.f64 1/2)) 2)))) (pow.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 re)))) 2)))))) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))) (*.f64 (sqrt.f64 re) (+.f64 (/.f64 (*.f64 1/2 (sqrt.f64 2)) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 3)) (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (/.f64 (*.f64 (*.f64 1/2 (sqrt.f64 re)) (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (sqrt.f64 1/2)) 2)) (pow.f64 im 5)))))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 1/4 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))
(+.f64 (sqrt.f64 im) (*.f64 (*.f64 1/4 (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))
(fma.f64 (*.f64 (*.f64 re re) 1/4) (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (sqrt.f64 im))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 re 4) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3))))) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (fma.f64 1/4 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 -1/2 (*.f64 (pow.f64 re 4) (*.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3))) (sqrt.f64 (/.f64 1 im)))))))
(+.f64 (sqrt.f64 im) (fma.f64 -1/2 (*.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3))) (*.f64 (pow.f64 re 4) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (*.f64 re re) 1/4))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 5))) (*.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3)))) (pow.f64 im 2)))) (pow.f64 re 6)) (sqrt.f64 (/.f64 1 im)))) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 re 4) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3))))) (sqrt.f64 (/.f64 1 im)))))))
(+.f64 (sqrt.f64 im) (fma.f64 1/4 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 5)) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3))) (*.f64 im im)))) (*.f64 (pow.f64 re 6) (sqrt.f64 (/.f64 1 im)))) (*.f64 -1/2 (*.f64 (pow.f64 re 4) (*.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3))) (sqrt.f64 (/.f64 1 im))))))))
(+.f64 (fma.f64 (*.f64 (*.f64 re re) 1/4) (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (*.f64 -1/2 (pow.f64 re 4)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3)))) (*.f64 (*.f64 1/2 (pow.f64 re 6)) (+.f64 (/.f64 1/16 (pow.f64 im 5)) (/.f64 (*.f64 1/4 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3)))) (*.f64 im im)))))))
(+.f64 (fma.f64 (*.f64 (*.f64 re re) 1/4) (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (*.f64 -1/2 (pow.f64 re 4)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3)))) (*.f64 (*.f64 1/2 (pow.f64 re 6)) (-.f64 (/.f64 1/16 (pow.f64 im 5)) (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2)) (/.f64 -1/32 (pow.f64 im 3))) (*.f64 im im)))))))
(sqrt.f64 re)
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (sqrt.f64 re))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (sqrt.f64 re))
(fma.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (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 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (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 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (fma.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 4)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (sqrt.f64 (/.f64 1 re)) (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 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (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 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (pow.f64 re 2)))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (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 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) (*.f64 re re)))) (*.f64 (pow.f64 im 6) (sqrt.f64 (/.f64 1 re)))) (sqrt.f64 re))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 4)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (*.f64 (*.f64 1/2 (pow.f64 im 6)) (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) (*.f64 re re))))))) (fma.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (sqrt.f64 re)))
(+.f64 (fma.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 6)) (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) (*.f64 re re))))) (*.f64 (*.f64 -1/2 (pow.f64 im 4)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))))))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(+.f64 0 (+.f64 (hypot.f64 re im) re))
(+.f64 re (hypot.f64 re im))
(+.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) -1)
(+.f64 re (hypot.f64 re im))
(+.f64 (-.f64 (hypot.f64 re im) 0) re)
(+.f64 re (hypot.f64 re im))
(+.f64 (-.f64 (hypot.f64 re im) (exp.f64 (log1p.f64 re))) 1)
(+.f64 1 (-.f64 (hypot.f64 re im) (exp.f64 (log1p.f64 re))))
(-.f64 (hypot.f64 re im) (expm1.f64 (log1p.f64 re)))
(-.f64 (hypot.f64 re im) re)
(-.f64 0 (-.f64 re (hypot.f64 re im)))
(-.f64 (hypot.f64 re im) re)
(-.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) 1)
(+.f64 re (hypot.f64 re im))
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 re im))) (+.f64 re 1))
(-.f64 (expm1.f64 (log1p.f64 (hypot.f64 re im))) re)
(-.f64 (exp.f64 (log1p.f64 re)) (-.f64 1 (hypot.f64 re im)))
(+.f64 (hypot.f64 re im) (expm1.f64 (log1p.f64 re)))
(-.f64 (+.f64 (hypot.f64 re im) (exp.f64 (log1p.f64 re))) 1)
(-.f64 (exp.f64 (log1p.f64 re)) (-.f64 1 (hypot.f64 re im)))
(+.f64 (hypot.f64 re im) (expm1.f64 (log1p.f64 re)))
(-.f64 (+.f64 re (exp.f64 (log1p.f64 (hypot.f64 re im)))) 1)
(+.f64 re (-.f64 (exp.f64 (log1p.f64 (hypot.f64 re im))) 1))
(+.f64 re (expm1.f64 (log1p.f64 (hypot.f64 re im))))
(-.f64 (-.f64 (hypot.f64 re im) 0) re)
(-.f64 (hypot.f64 re im) re)
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) 2) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) 2) (+.f64 re (hypot.f64 re im))) (/.f64 (*.f64 re re) (+.f64 re (hypot.f64 re im))))
(*.f64 (+.f64 (hypot.f64 re im) re) 1)
(+.f64 re (hypot.f64 re im))
(*.f64 1 (+.f64 (hypot.f64 re im) re))
(+.f64 re (hypot.f64 re im))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 re (hypot.f64 re im))
(*.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) (cbrt.f64 (+.f64 re (hypot.f64 re im))))))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 4)))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (+.f64 re (hypot.f64 re im)))
(*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))) (sqrt.f64 (sqrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))))
(*.f64 (sqrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (sqrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3))))
(*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im))))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.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))))
(*.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (+.f64 (hypot.f64 re im) re))
(+.f64 re (hypot.f64 re im))
(*.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))) (/.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (/.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (/.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))))
(*.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))
(*.f64 (+.f64 (sqrt.f64 re) (sqrt.f64 (hypot.f64 re im))) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3/2) (pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3/2))
(+.f64 re (hypot.f64 re im))
(*.f64 (pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/6) (pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/6))
(+.f64 re (hypot.f64 re im))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (+.f64 (pow.f64 (cbrt.f64 re) 2) (-.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (*.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (+.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (+.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) (*.f64 (cbrt.f64 re) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))
(*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))) (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (sqrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 4)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) (cbrt.f64 (+.f64 re (hypot.f64 re im))))))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 4)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))) (sqrt.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2)))) (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(/.f64 (+.f64 (hypot.f64 re im) re) 1)
(+.f64 re (hypot.f64 re im))
(/.f64 1 (/.f64 (+.f64 (hypot.f64 re im) re) (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (+.f64 re (hypot.f64 re im)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.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))))
(/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (+.f64 (hypot.f64 re im) re))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (+.f64 re (hypot.f64 re im)))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.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))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (+.f64 (*.f64 re re) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (hypot.f64 re im) re))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.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))))
(/.f64 (*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) 1) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.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))))
(/.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) 1) (+.f64 (hypot.f64 re im) re))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (+.f64 re (hypot.f64 re im)))
(/.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (sqrt.f64 (+.f64 (hypot.f64 re im) re))) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (+.f64 re (hypot.f64 re im)))
(/.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (cbrt.f64 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(/.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2))))
(/.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im)))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re)))) 1) (+.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) 1))
(/.f64 (*.f64 (+.f64 1 (exp.f64 (log1p.f64 (+.f64 re (hypot.f64 re im))))) (+.f64 re (hypot.f64 re im))) (+.f64 1 (exp.f64 (log1p.f64 (+.f64 re (hypot.f64 re im))))))
(/.f64 (expm1.f64 (*.f64 2 (log1p.f64 (+.f64 re (hypot.f64 re im))))) (+.f64 1 (exp.f64 (log1p.f64 (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) 3) 1) (+.f64 (*.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re)))) (+.f64 1 (*.f64 (exp.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re))) 1))))
(/.f64 (+.f64 (pow.f64 (exp.f64 (log1p.f64 (+.f64 re (hypot.f64 re im)))) 3) -1) (+.f64 (exp.f64 (+.f64 (log1p.f64 (+.f64 re (hypot.f64 re im))) (log1p.f64 (+.f64 re (hypot.f64 re im))))) (+.f64 1 (exp.f64 (log1p.f64 (+.f64 re (hypot.f64 re im)))))))
(/.f64 (+.f64 -1 (pow.f64 (exp.f64 (log1p.f64 (+.f64 re (hypot.f64 re im)))) 3)) (+.f64 1 (+.f64 (exp.f64 (log1p.f64 (+.f64 re (hypot.f64 re im)))) (exp.f64 (*.f64 2 (log1p.f64 (+.f64 re (hypot.f64 re im))))))))
(/.f64 (neg.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (neg.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) (+.f64 re (hypot.f64 re im)))
(/.f64 (neg.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im))))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.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))))
(pow.f64 (+.f64 (hypot.f64 re im) re) 1)
(+.f64 re (hypot.f64 re im))
(pow.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) 2)
(+.f64 re (hypot.f64 re im))
(pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3)
(+.f64 re (hypot.f64 re im))
(pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/3)
(+.f64 re (hypot.f64 re im))
(sqrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))
(+.f64 re (hypot.f64 re im))
(fabs.f64 (+.f64 (hypot.f64 re im) re))
(+.f64 re (hypot.f64 re im))
(log.f64 (exp.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 re (hypot.f64 re im))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 (hypot.f64 re im) re))))
(+.f64 re (hypot.f64 re im))
(cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))
(+.f64 re (hypot.f64 re im))
(expm1.f64 (log1p.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 re (hypot.f64 re im))
(exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 re (hypot.f64 re im))
(log1p.f64 (expm1.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 re (hypot.f64 re im))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) -1)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 1)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (pow.f64 1 1/2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (fabs.f64 (sqrt.f64 2)))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (fabs.f64 (sqrt.f64 2)))
(*.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 3/2)
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 3/2)
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(*.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (*.f64 2 (cbrt.f64 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (*.f64 2 (cbrt.f64 (+.f64 re (hypot.f64 re im))))))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4)) (sqrt.f64 (sqrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2))))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 1/4)) (sqrt.f64 (sqrt.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 3/2))))
(*.f64 (fabs.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 1/8)) (sqrt.f64 (sqrt.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 3/2))))
(*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))) (sqrt.f64 (*.f64 2 (sqrt.f64 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (sqrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (*.f64 2 (sqrt.f64 (+.f64 re (hypot.f64 re im))))))
(*.f64 (sqrt.f64 (sqrt.f64 2)) (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (sqrt.f64 (sqrt.f64 2)) (sqrt.f64 (*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (fabs.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (fabs.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3/2) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3/2))
(*.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 3/2)
(*.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2) 1/6) (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2) 1/6))
(cbrt.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 3/2))
(*.f64 (fabs.f64 (pow.f64 1 1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (fabs.f64 (sqrt.f64 2)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (fabs.f64 (sqrt.f64 2)))
(*.f64 (fabs.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2)) (fabs.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (fabs.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(*.f64 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) (sqrt.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))
(*.f64 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))) (sqrt.f64 (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 1/4)) (sqrt.f64 (sqrt.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 3/2))))
(*.f64 (fabs.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 1/8)) (sqrt.f64 (sqrt.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 3/2))))
(*.f64 (sqrt.f64 (*.f64 2 (sqrt.f64 (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (*.f64 2 (sqrt.f64 (+.f64 re (hypot.f64 re im))))))
(*.f64 (sqrt.f64 (*.f64 2 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))) (sqrt.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (*.f64 2 (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(*.f64 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) (sqrt.f64 2))) (sqrt.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 1))
(/.f64 (*.f64 (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))) (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(/.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 3) 1) (+.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))) (+.f64 1 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 1))))
(/.f64 (+.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))) 3) -1) (+.f64 (exp.f64 (+.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))))
(/.f64 (+.f64 -1 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))) 3)) (+.f64 1 (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))) (exp.f64 (*.f64 2 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))))
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/2)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/4) 2)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3)
(*.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 3/2)
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 3/2))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(fabs.f64 (-.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 3/2))
(cbrt.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) -1)
(sqrt.f64 (hypot.f64 re im))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 1)
(sqrt.f64 (hypot.f64 re im))
(*.f64 (sqrt.f64 (hypot.f64 re im)) 1)
(sqrt.f64 (hypot.f64 re im))
(*.f64 (sqrt.f64 (hypot.f64 re im)) (pow.f64 1 1/2))
(sqrt.f64 (hypot.f64 re im))
(*.f64 1 (sqrt.f64 (hypot.f64 re im)))
(sqrt.f64 (hypot.f64 re im))
(*.f64 (pow.f64 (hypot.f64 re im) 1/4) (pow.f64 (hypot.f64 re im) 1/4))
(sqrt.f64 (hypot.f64 re im))
(*.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) (cbrt.f64 (hypot.f64 re im)))
(*.f64 (cbrt.f64 (hypot.f64 re im)) (sqrt.f64 (cbrt.f64 (hypot.f64 re im))))
(pow.f64 (cbrt.f64 (hypot.f64 re im)) 3/2)
(*.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) (sqrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (cbrt.f64 (hypot.f64 re im))))))
(*.f64 (cbrt.f64 (hypot.f64 re im)) (sqrt.f64 (cbrt.f64 (hypot.f64 re im))))
(pow.f64 (cbrt.f64 (hypot.f64 re im)) 3/2)
(*.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 1/4)) (sqrt.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (hypot.f64 re im)))
(sqrt.f64 (hypot.f64 re im))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) 1/2) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2))))
(*.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 1/2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2))))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) 3/2) (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) 3/2))
(*.f64 (cbrt.f64 (hypot.f64 re im)) (sqrt.f64 (cbrt.f64 (hypot.f64 re im))))
(pow.f64 (cbrt.f64 (hypot.f64 re im)) 3/2)
(*.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/6) (pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/6))
(cbrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 2) 1/8) (pow.f64 (pow.f64 (hypot.f64 re im) 2) 1/8))
(pow.f64 (pow.f64 (hypot.f64 re im) 2) 1/4)
(*.f64 (fabs.f64 (pow.f64 1 1/2)) (sqrt.f64 (hypot.f64 re im)))
(sqrt.f64 (hypot.f64 re im))
(*.f64 (fabs.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2)) 1/2)) (fabs.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 1/2)))
(*.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 re im) 2))))
(*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))) (sqrt.f64 (pow.f64 (hypot.f64 re im) 1/4)))
(*.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 1/4)) (sqrt.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))))
(*.f64 (sqrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (cbrt.f64 (hypot.f64 re im)))) (sqrt.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 1))
(/.f64 (*.f64 (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))) (sqrt.f64 (hypot.f64 re im))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))))
(/.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 3) 1) (+.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))) (+.f64 1 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 1))))
(/.f64 (+.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 3) -1) (+.f64 (exp.f64 (+.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))) (log1p.f64 (sqrt.f64 (hypot.f64 re im))))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))))))
(/.f64 (+.f64 -1 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))) 3)) (+.f64 (exp.f64 (*.f64 2 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im)))))))
(pow.f64 (hypot.f64 re im) 1/2)
(sqrt.f64 (hypot.f64 re im))
(pow.f64 (sqrt.f64 (hypot.f64 re im)) 1)
(sqrt.f64 (hypot.f64 re im))
(pow.f64 (pow.f64 (hypot.f64 re im) 1/4) 2)
(sqrt.f64 (hypot.f64 re im))
(pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 re im))) 3)
(*.f64 (cbrt.f64 (hypot.f64 re im)) (sqrt.f64 (cbrt.f64 (hypot.f64 re im))))
(pow.f64 (cbrt.f64 (hypot.f64 re im)) 3/2)
(pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/3)
(cbrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(pow.f64 (pow.f64 (hypot.f64 re im) 2) 1/4)
(fabs.f64 (sqrt.f64 (hypot.f64 re im)))
(sqrt.f64 (hypot.f64 re im))
(fabs.f64 (-.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))))
(sqrt.f64 (hypot.f64 re im))
(fabs.f64 (neg.f64 (sqrt.f64 (hypot.f64 re im))))
(sqrt.f64 (hypot.f64 re im))
(log.f64 (exp.f64 (sqrt.f64 (hypot.f64 re im))))
(sqrt.f64 (hypot.f64 re im))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (hypot.f64 re im)))))
(sqrt.f64 (hypot.f64 re im))
(cbrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (hypot.f64 re im))))
(sqrt.f64 (hypot.f64 re im))
(exp.f64 (log.f64 (sqrt.f64 (hypot.f64 re im))))
(sqrt.f64 (hypot.f64 re im))
(log1p.f64 (expm1.f64 (sqrt.f64 (hypot.f64 re im))))
(sqrt.f64 (hypot.f64 re im))

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(/.f64 im (sqrt.f64 re))
Compiler

Compiled 17 to 7 computations (58.8% saved)

series3.0ms (0%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
1.0ms
re
@inf
(/.f64 im (sqrt.f64 re))
1.0ms
re
@-inf
(/.f64 im (sqrt.f64 re))
0.0ms
im
@inf
(/.f64 im (sqrt.f64 re))
0.0ms
im
@0
(/.f64 im (sqrt.f64 re))
0.0ms
re
@0
(/.f64 im (sqrt.f64 re))

rewrite55.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1432×add-sqr-sqrt
1414×*-un-lft-identity
1316×add-cube-cbrt
1300×add-cbrt-cube
1288×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
114111
2178911
Stop Event
node limit
Counts
1 → 31
Calls
Call 1
Inputs
(/.f64 im (sqrt.f64 re))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 im (pow.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re -1/2) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 im) (/.f64 1 (neg.f64 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 re) im) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 im (neg.f64 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (*.f64 im im) re))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))))))

simplify48.0ms (0.6%)

Algorithm
egg-herbie
Rules
1228×associate-*r*
1122×distribute-rgt-in
1110×distribute-lft-in
1022×associate-*l*
752×associate-+r+
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
087949
1203811
2746697
34501697
Stop Event
node limit
Counts
43 → 45
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 (neg.f64 im) (/.f64 1 (neg.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(neg.f64 (/.f64 im (neg.f64 (sqrt.f64 re))))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/2)))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (neg.f64 im) (/.f64 1 (neg.f64 (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 im (*.f64 (pow.f64 re 1/4) (pow.f64 re 1/4)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 (/.f64 1 (cbrt.f64 re)) im) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 (/.f64 1 (cbrt.f64 re)) im) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 im (*.f64 (pow.f64 re 1/4) (pow.f64 re 1/4)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(neg.f64 (/.f64 im (neg.f64 (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(sqrt.f64 (*.f64 (/.f64 im re) im))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))

localize11.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (/.f64 1 re))
0.1b
(*.f64 im (sqrt.f64 (/.f64 1 re)))
Compiler

Compiled 27 to 19 computations (29.6% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
0.0ms
re
@-inf
(*.f64 im (sqrt.f64 (/.f64 1 re)))
0.0ms
re
@inf
(*.f64 im (sqrt.f64 (/.f64 1 re)))
0.0ms
re
@0
(*.f64 im (sqrt.f64 (/.f64 1 re)))
0.0ms
im
@0
(*.f64 im (sqrt.f64 (/.f64 1 re)))
0.0ms
im
@inf
(*.f64 im (sqrt.f64 (/.f64 1 re)))

rewrite53.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1548×add-sqr-sqrt
1528×*-un-lft-identity
1416×add-cube-cbrt
1398×add-cbrt-cube
1382×add-exp-log
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0917
117511
2201011
Stop Event
node limit
Counts
1 → 13
Calls
Call 1
Inputs
(*.f64 im (sqrt.f64 (/.f64 1 re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))))))

simplify46.0ms (0.5%)

Algorithm
egg-herbie
Rules
1320×associate-*r/
832×associate-/l*
774×associate-/r*
766×associate-*l/
706×*-commutative
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
036503
178425
2262347
31353347
44282347
Stop Event
node limit
Counts
25 → 16
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(/.f64 im (sqrt.f64 re))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))

localize11.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
Compiler

Compiled 31 to 16 computations (48.4% saved)

series9.0ms (0.1%)

Counts
1 → 8
Calls

6 calls:

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

rewrite59.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
886×*-commutative
714×unswap-sqr
516×swap-sqr
498×associate-*r/
436×associate-*l/
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01017
120817
2255117
Stop Event
node limit
Counts
1 → 22
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))) (sqrt.f64 (+.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (sqrt.f64 2)) (sqrt.f64 (+.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 2)) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (+.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 im re) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (-.f64 im re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (-.f64 im re) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))))))

simplify54.0ms (0.6%)

Algorithm
egg-herbie
Rules
1444×associate-/r*
1374×associate-*r/
1136×associate-*l/
1080×associate-*r*
918×associate-*l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01361454
13351432
210631400
348881400
Stop Event
node limit
Counts
30 → 75
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(*.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) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) -1)
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 1)
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))) (sqrt.f64 (+.f64 im re)))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (sqrt.f64 2)) (sqrt.f64 (+.f64 im re)))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 2)) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (+.f64 im re)))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 1))
(pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 1)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 3)
(pow.f64 (*.f64 (-.f64 im re) 2) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 3) 1/3)
(sqrt.f64 (*.f64 (-.f64 im re) 2))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 3))
(cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (-.f64 im re) 3/2)))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) im) (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2)))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 (*.f64 (sqrt.f64 2) 1/2) (/.f64 (sqrt.f64 -1) im))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 im im))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) im) (sqrt.f64 (/.f64 1 re))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 -1/8 (/.f64 (sqrt.f64 2) (/.f64 (*.f64 -1 (sqrt.f64 -1)) (*.f64 im im)))))))
(fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) (*.f64 im im)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (*.f64 (sqrt.f64 2) (/.f64 im (/.f64 (sqrt.f64 -1) im)))) (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 (*.f64 (sqrt.f64 2) 1/2) (/.f64 (sqrt.f64 -1) im)))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(fma.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 im im))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))))
(fma.f64 1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) im) (sqrt.f64 (/.f64 1 re))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 -1/8 (/.f64 (sqrt.f64 2) (/.f64 (*.f64 -1 (sqrt.f64 -1)) (*.f64 im im))))))))
(fma.f64 1/16 (*.f64 (/.f64 (pow.f64 im 3) (/.f64 (pow.f64 (sqrt.f64 -1) 5) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) (*.f64 im im)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 1/16 (*.f64 (*.f64 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (*.f64 (sqrt.f64 2) (/.f64 im (/.f64 (sqrt.f64 -1) im)))) (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 (*.f64 (sqrt.f64 2) 1/2) (/.f64 (sqrt.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)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 re (*.f64 (sqrt.f64 2) (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 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 re (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) -1/8))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)) (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(fma.f64 (sqrt.f64 2) (*.f64 re (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) -1/8)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (fma.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 -1/2 (*.f64 re (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) -1/8)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (*.f64 (pow.f64 re 3) -1/16)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)) (sqrt.f64 im))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (pow.f64 re 3) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (*.f64 re (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) -1/8)))))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) -1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))) (sqrt.f64 (+.f64 im re)))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 re im)) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re im))) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re im))))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (sqrt.f64 (+.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im))))) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re (+.f64 re im) (*.f64 im im)))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (sqrt.f64 2)) (sqrt.f64 (+.f64 im re)))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 re im)) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re im))) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re im))))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (sqrt.f64 (+.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 2)) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im))))) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re (+.f64 re im) (*.f64 im im)))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (+.f64 im re)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (+.f64 re im)))
(/.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (/.f64 (/.f64 (cbrt.f64 (+.f64 re im)) (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 (-.f64 im re)))))
(*.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re)))) (/.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (cbrt.f64 (+.f64 re im))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im)))) (cbrt.f64 (+.f64 re im))) (cbrt.f64 (sqrt.f64 (-.f64 im re))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (/.f64 (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))))
(/.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (/.f64 (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))) (cbrt.f64 (sqrt.f64 (-.f64 im re)))))
(*.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re)))) (/.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (cbrt.f64 (fma.f64 re (+.f64 re im) (*.f64 im im)))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (cbrt.f64 (fma.f64 re (+.f64 re im) (*.f64 im im)))) (cbrt.f64 (sqrt.f64 (-.f64 im re))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 1))
(/.f64 (*.f64 (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))) (sqrt.f64 (*.f64 2 (-.f64 im re)))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))))
(/.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))))
(pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 2)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 3)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (*.f64 (-.f64 im re) 2) 1/2)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 3) 1/3)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(sqrt.f64 (*.f64 (-.f64 im re) 2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 3))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (-.f64 im re) 3/2)))
(cbrt.f64 (*.f64 2 (*.f64 (sqrt.f64 2) (pow.f64 (-.f64 im re) 3/2))))
(cbrt.f64 (*.f64 (sqrt.f64 2) (*.f64 2 (pow.f64 (-.f64 im re) 3/2))))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))

localize64.0ms (0.8%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (/.f64 1 re))
0.1b
(*.f64 (exp.f64 (log.f64 im)) (sqrt.f64 (/.f64 1 re)))
5.7b
(exp.f64 (log.f64 im))
Compiler

Compiled 36 to 21 computations (41.7% saved)

series1.0ms (0%)

Counts
2 → 24
Calls

9 calls:

TimeVariablePointExpression
0.0ms
im
@-inf
(exp.f64 (log.f64 im))
0.0ms
re
@-inf
(*.f64 (exp.f64 (log.f64 im)) (sqrt.f64 (/.f64 1 re)))
0.0ms
re
@inf
(*.f64 (exp.f64 (log.f64 im)) (sqrt.f64 (/.f64 1 re)))
0.0ms
re
@0
(*.f64 (exp.f64 (log.f64 im)) (sqrt.f64 (/.f64 1 re)))
0.0ms
im
@0
(*.f64 (exp.f64 (log.f64 im)) (sqrt.f64 (/.f64 1 re)))

rewrite57.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1686×add-sqr-sqrt
1666×*-un-lft-identity
1542×add-cube-cbrt
1522×add-cbrt-cube
182×pow1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01118
120412
2220412
Stop Event
node limit
Counts
2 → 33
Calls
Call 1
Inputs
(exp.f64 (log.f64 im))
(*.f64 (exp.f64 (log.f64 im)) (sqrt.f64 (/.f64 1 re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 im 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 im) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 im) (pow.f64 (cbrt.f64 im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 im 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 im) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 im) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 im 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 im)) 2)) (cbrt.f64 (log.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 im))) (sqrt.f64 (log.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 im im))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 im 3))))) (#(struct:change #<rule egg-rr> (2) ((x . im)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 im))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))))))

simplify50.0ms (0.6%)

Algorithm
egg-herbie
Rules
1426×associate-*r*
1162×associate-*l*
774×associate-+l+
692×associate-+r+
684×associate-/r/
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
075447
1146447
2670447
35209447
Stop Event
node limit
Counts
57 → 36
Calls
Call 1
Inputs
im
im
im
im
im
im
im
im
im
im
im
im
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (exp.f64 (log1p.f64 im)) 1)
(*.f64 im 1)
(*.f64 1 im)
(*.f64 (sqrt.f64 im) (sqrt.f64 im))
(*.f64 (cbrt.f64 im) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 im))
(pow.f64 im 1)
(pow.f64 (sqrt.f64 im) 2)
(pow.f64 (cbrt.f64 im) 3)
(pow.f64 (pow.f64 im 3) 1/3)
(pow.f64 (E.f64) (log.f64 im))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 im)) 2)) (cbrt.f64 (log.f64 im)))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 im))) (sqrt.f64 (log.f64 im)))
(sqrt.f64 (*.f64 im im))
(log.f64 (exp.f64 im))
(log.f64 (+.f64 1 (expm1.f64 im)))
(cbrt.f64 (pow.f64 im 3))
(expm1.f64 (log1p.f64 im))
(log1p.f64 (expm1.f64 im))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
Outputs
im
im
im
im
im
im
im
im
im
im
im
im
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(-.f64 (exp.f64 (log1p.f64 im)) 1)
im
(*.f64 im 1)
im
(*.f64 1 im)
im
(*.f64 (sqrt.f64 im) (sqrt.f64 im))
im
(*.f64 (cbrt.f64 im) (pow.f64 (cbrt.f64 im) 2))
im
(*.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 im))
im
(pow.f64 im 1)
im
(pow.f64 (sqrt.f64 im) 2)
im
(pow.f64 (cbrt.f64 im) 3)
im
(pow.f64 (pow.f64 im 3) 1/3)
im
(pow.f64 (E.f64) (log.f64 im))
im
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 im)) 2)) (cbrt.f64 (log.f64 im)))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 im))) (sqrt.f64 (log.f64 im)))
(sqrt.f64 (*.f64 im im))
im
(log.f64 (exp.f64 im))
im
(log.f64 (+.f64 1 (expm1.f64 im)))
im
(cbrt.f64 (pow.f64 im 3))
im
(expm1.f64 (log1p.f64 im))
im
(log1p.f64 (expm1.f64 im))
im
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(/.f64 im (sqrt.f64 re))
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2))
(/.f64 im (sqrt.f64 re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))

eval441.0ms (5.2%)

Compiler

Compiled 15896 to 10213 computations (35.8% saved)

prune210.0ms (2.5%)

Pruning

20 alts after pruning (12 fresh and 8 done)

PrunedKeptTotal
New6376643
Fresh369
Picked101
Done189
Total64220662
Error
0.1b
Counts
662 → 20
Alt Table
Click to see full alt table
StatusErrorProgram
14.2b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2))
17.4b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re))) 2) 1/4) 2))
46.8b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
51.7b
(*.f64 1/2 (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
46.7b
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
16.2b
(*.f64 1/2 (*.f64 (sqrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))) (sqrt.f64 2)))
14.2b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2)))
30.0b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
46.7b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2)))
52.9b
(*.f64 1/2 (*.f64 (exp.f64 (log.f64 im)) (pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/3)))
52.8b
(*.f64 1/2 (*.f64 im (pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/3)))
47.8b
(*.f64 1/2 (*.f64 im (exp.f64 (*.f64 (neg.f64 (log.f64 re)) 1/2))))
51.8b
(*.f64 1/2 (sqrt.f64 (*.f64 (/.f64 im re) im)))
16.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))))
13.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
29.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
59.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 re))))
17.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))))
31.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 493 to 402 computations (18.5% saved)

localize18.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (hypot.f64 re im))
0.0b
(sqrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))
0.3b
(*.f64 (sqrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))) (sqrt.f64 2))
15.8b
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))
Compiler

Compiled 72 to 19 computations (73.6% saved)

series5.0ms (0.1%)

Counts
2 → 16
Calls

12 calls:

TimeVariablePointExpression
1.0ms
im
@0
(sqrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))
1.0ms
im
@inf
(sqrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))
1.0ms
im
@-inf
(sqrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))
0.0ms
im
@0
(*.f64 (sqrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))) (sqrt.f64 2))
0.0ms
im
@inf
(*.f64 (sqrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))) (sqrt.f64 2))

rewrite82.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1014×*-commutative
716×unswap-sqr
586×swap-sqr
456×sqr-pow
428×pow-sqr
Iterations

Useful iterations: 1 (0.0ms)

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

simplify384.0ms (4.5%)

Algorithm
egg-herbie
Rules
922×distribute-lft-in
918×distribute-rgt-in
754×unswap-sqr
692×associate-/l*
578×times-frac
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02564856
17014616
223564364
Stop Event
node limit
Counts
68 → 114
Calls
Call 1
Inputs
(*.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) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.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 (*.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 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 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) 2) re)) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re))) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) 2) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (*.f64 re (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)))) (pow.f64 (sqrt.f64 1/2) 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (*.f64 (*.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 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (*.f64 (*.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 re (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.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 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 re))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 re)))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) 2) re)) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re))) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) 2) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (*.f64 re (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)))) (pow.f64 (sqrt.f64 1/2) 2))))) (pow.f64 im 7)) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 re))))))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) -1)
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1)
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1))
(/.f64 (-.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 3) 1) (+.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (+.f64 1 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1))))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3) 1/3)
(pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/2)
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2) (*.f64 2 (sqrt.f64 2))))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) -1)
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) 1)
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) 1)
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (pow.f64 1 1/2))
(*.f64 1 (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4) (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4))
(*.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))
(*.f64 (fabs.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (fabs.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2) 1/2) (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 1/2))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2) 1/2))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4)) (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))) (*.f64 (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4)) (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))) (*.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4))))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) 3/2) (pow.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) 3/2))
(*.f64 (pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2) 1/6) (pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2) 1/6))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) 1))
(/.f64 (-.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) 3) 1) (+.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))) (+.f64 1 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) 1))))
(pow.f64 (+.f64 re (hypot.f64 re im)) 1/2)
(pow.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) 1)
(pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) 3)
(pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2) 1/3)
(fabs.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(log.f64 (exp.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))))
(cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))
(hypot.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re))
(exp.f64 (log.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))
(log1p.f64 (expm1.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))
Outputs
(*.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)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 -1/2 re))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.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))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 1/2 (*.f64 re re)) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)))))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 re re)) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))) (*.f64 -1/2 re)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.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 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))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im))))) (*.f64 1/4 (*.f64 (sqrt.f64 2) (*.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))))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re re)))) (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 1/4))))))
(+.f64 (*.f64 (sqrt.f64 2) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))) (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (+.f64 (*.f64 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 1/4) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re re)) 1/2)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 im 3) (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))))) (sqrt.f64 1/2)) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 1/2 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (*.f64 (pow.f64 im 3) (sqrt.f64 re))) (sqrt.f64 1/2))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 im 3) (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))))) (sqrt.f64 1/2)) (sqrt.f64 re)) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (sqrt.f64 1/2)))) 2)) (pow.f64 im 5))))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 re) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (pow.f64 im 3) (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))))) (*.f64 1/2 (/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 5)) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)))) 2))))))))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 1/2 (sqrt.f64 re)) (+.f64 (*.f64 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16))) (sqrt.f64 2)) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (/.f64 (*.f64 (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16)) (sqrt.f64 re)) (/.f64 (sqrt.f64 1/2) 1/2)) 2)) (pow.f64 im 5))))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) 2) re)) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re))) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) 2) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (*.f64 re (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)))) (pow.f64 (sqrt.f64 1/2) 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 im 3) (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))))) (sqrt.f64 1/2)) (sqrt.f64 re)) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (sqrt.f64 1/2)))) 2)) (pow.f64 im 5))))) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) 2) re) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re))) (+.f64 (pow.f64 (*.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 re))) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) 2) (*.f64 1/2 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (/.f64 (pow.f64 (sqrt.f64 1/2) 2) (*.f64 re (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (sqrt.f64 1/2)))) 2))))))))) (pow.f64 im 7)) (sqrt.f64 1/2))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 5)) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)))) 2))))) (*.f64 1/2 (/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 7)) (-.f64 (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re) (*.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) 2) re))) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) 1/2) (*.f64 re (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)))) 2)))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) 2)))))))) (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 1/2 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (*.f64 (pow.f64 im 3) (sqrt.f64 re))) (sqrt.f64 1/2)))))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 re) (+.f64 (*.f64 1/2 (+.f64 (*.f64 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16))) (sqrt.f64 2)) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (/.f64 (*.f64 (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16)) (sqrt.f64 re)) (/.f64 (sqrt.f64 1/2) 1/2)) 2)) (pow.f64 im 5))))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 7))) (-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re) (*.f64 (/.f64 1/4 re) (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) 2))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) 2)) (*.f64 1 (*.f64 re (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (/.f64 (*.f64 (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16)) (sqrt.f64 re)) (/.f64 (sqrt.f64 1/2) 1/2)) 2)) (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16)))))))))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(fma.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 1 im)) (sqrt.f64 im))
(fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (*.f64 (*.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 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (fma.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 (/.f64 1 im)))) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 -1/2 re) (*.f64 (*.f64 1/2 (*.f64 re re)) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))))))
(+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 re re)) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))) (*.f64 -1/2 re))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (*.f64 (*.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 re (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.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 (sqrt.f64 im) (fma.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 (/.f64 1 im)))) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 1/4 (*.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)))))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 -1/2 re) (*.f64 (*.f64 1/2 (*.f64 re re)) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))))) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 1/4))))
(+.f64 (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (+.f64 (*.f64 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 1/4) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re re)) 1/2))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 re))))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)) (*.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3)))) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
(fma.f64 1/2 (/.f64 (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16)) (/.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)) (pow.f64 im 3))) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 re)))))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)) (*.f64 1/2 (+.f64 (*.f64 (sqrt.f64 re) (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3)))) (*.f64 (sqrt.f64 re) (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (sqrt.f64 1/2)))) 2)) (/.f64 (sqrt.f64 1/2) (pow.f64 im 5)))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 re) (+.f64 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (*.f64 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)))) 2)) (sqrt.f64 1/2)) (pow.f64 im 5)))) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
(fma.f64 1/2 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16))) (*.f64 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (/.f64 (*.f64 (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16)) (sqrt.f64 re)) (/.f64 (sqrt.f64 1/2) 1/2)) 2)) (sqrt.f64 1/2)) (pow.f64 im 5)))) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) 2) re)) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re))) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) 2) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (*.f64 re (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)))) (pow.f64 (sqrt.f64 1/2) 2))))) (pow.f64 im 7)) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) 2)) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 re))))))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) 2) re) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re))) (+.f64 (pow.f64 (*.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 re))) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) 2) (*.f64 1/2 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (/.f64 (pow.f64 (sqrt.f64 1/2) 2) (*.f64 re (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (sqrt.f64 1/2)))) 2)))))))) (/.f64 (sqrt.f64 1/2) (pow.f64 im 7)))) (*.f64 1/2 (+.f64 (*.f64 (sqrt.f64 re) (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3)))) (*.f64 (sqrt.f64 re) (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (sqrt.f64 1/2)))) 2)) (/.f64 (sqrt.f64 1/2) (pow.f64 im 5))))))))
(fma.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))) (*.f64 1/2 (+.f64 (*.f64 (sqrt.f64 re) (+.f64 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (*.f64 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)))) 2)) (sqrt.f64 1/2)) (pow.f64 im 5)))) (*.f64 (sqrt.f64 re) (/.f64 (-.f64 (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re) (*.f64 1/4 (/.f64 (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) 2) re))) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) 1/2) (*.f64 re (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 3)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)))) 2)))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) 2))) (/.f64 (sqrt.f64 1/2) (pow.f64 im 7)))))))
(fma.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))) (*.f64 1/2 (*.f64 (sqrt.f64 re) (+.f64 (+.f64 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16))) (*.f64 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (/.f64 (*.f64 (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16)) (sqrt.f64 re)) (/.f64 (sqrt.f64 1/2) 1/2)) 2)) (sqrt.f64 1/2)) (pow.f64 im 5))) (*.f64 (/.f64 (pow.f64 im 7) (sqrt.f64 1/2)) (-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re) (*.f64 (/.f64 1/4 re) (pow.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) 2))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) 2)) (*.f64 1 (*.f64 re (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (/.f64 (*.f64 (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16)) (sqrt.f64 re)) (/.f64 (sqrt.f64 1/2) 1/2)) 2)) (+.f64 (neg.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16)))))))))))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) -1)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 3) 1) (+.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (+.f64 1 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1))))
(/.f64 (+.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))) 3) -1) (+.f64 (exp.f64 (+.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))))
(/.f64 (+.f64 -1 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))) 3)) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))) (+.f64 1 (exp.f64 (*.f64 2 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3) 1/3)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/2)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2) (*.f64 2 (sqrt.f64 2))))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) -1)
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) 1)
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) 1)
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (pow.f64 1 1/2))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 1 (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4) (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))
(*.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (fabs.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (fabs.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (fabs.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(*.f64 (fabs.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2) 1/2) (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 1/2))
(*.f64 (fabs.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (fabs.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2) 1/2))
(*.f64 (fabs.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (fabs.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4)) (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))) (*.f64 (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4)) (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))))
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (*.f64 (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4)) (*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4)))))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (*.f64 (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4)) (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))) (*.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4))))
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (*.f64 (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4)) (*.f64 (sqrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4)))))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (*.f64 (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4)) (cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4))))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) 3/2) (pow.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) 3/2))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 (pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2) 1/6) (pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2) 1/6))
(cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) 1))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) 3) 1) (+.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))) (+.f64 1 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) 1))))
(/.f64 (+.f64 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) 3) -1) (+.f64 (exp.f64 (+.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))))))
(/.f64 (+.f64 -1 (pow.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) 3)) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) (+.f64 1 (exp.f64 (*.f64 2 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))))))
(/.f64 (+.f64 -1 (exp.f64 (*.f64 3 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))))) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))) (+.f64 1 (exp.f64 (*.f64 2 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))))))
(pow.f64 (+.f64 re (hypot.f64 re im)) 1/2)
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(pow.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) 1)
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/4) 2)
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(pow.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) 3)
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2) 1/3)
(cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2))
(fabs.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(log.f64 (exp.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))))))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(hypot.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re))
(exp.f64 (log.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
(log1p.f64 (expm1.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))
(sqrt.f64 (+.f64 re (hypot.f64 re im)))

localize10.0ms (0.1%)

Compiler

Compiled 23 to 15 computations (34.8% saved)

localize11.0ms (0.1%)

Compiler

Compiled 28 to 23 computations (17.9% saved)

localize34.0ms (0.4%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2))
Compiler

Compiled 31 to 26 computations (16.1% saved)

series1.0ms (0%)

Counts
1 → 0
Calls

3 calls:

TimeVariablePointExpression
1.0ms
re
@0
(*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2))
0.0ms
re
@-inf
(*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2))
0.0ms
re
@inf
(*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2))

rewrite52.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1672×add-sqr-sqrt
1648×*-un-lft-identity
1532×add-cube-cbrt
1514×add-cbrt-cube
180×pow1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01017
119811
2215011
Stop Event
node limit
Counts
1 → 14
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 re -4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 re -4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 re -4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 re -4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 re -4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 re -4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 re -4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 re -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 re -4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 re -4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 re -4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re -4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 re -4))))))))

simplify57.0ms (0.7%)

Algorithm
egg-herbie
Rules
776×*-commutative
592×associate-*r*
564×distribute-lft-in
540×log-prod
528×distribute-rgt-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035154
170154
2260154
32035154
44968154
57067154
Stop Event
node limit
Counts
14 → 14
Calls
Call 1
Inputs
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 re -4)))) 1)
(pow.f64 (sqrt.f64 (*.f64 re -4)) 1)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 re -4))) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -4))) 3)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 re -4)) 3) 1/3)
(pow.f64 (*.f64 re -4) 1/2)
(sqrt.f64 (*.f64 re -4))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 re -4))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 re -4)))))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 re -4)) 3))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 re -4))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 re -4))))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re -4))) 1))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 re -4))))
Outputs
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 re -4)))) 1)
(sqrt.f64 (*.f64 re -4))
(pow.f64 (sqrt.f64 (*.f64 re -4)) 1)
(sqrt.f64 (*.f64 re -4))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 re -4))) 2)
(sqrt.f64 (*.f64 re -4))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -4))) 3)
(sqrt.f64 (*.f64 re -4))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 re -4)) 3) 1/3)
(sqrt.f64 (*.f64 re -4))
(pow.f64 (*.f64 re -4) 1/2)
(sqrt.f64 (*.f64 re -4))
(sqrt.f64 (*.f64 re -4))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 re -4))))
(sqrt.f64 (*.f64 re -4))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 re -4)))))
(sqrt.f64 (*.f64 re -4))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 re -4)) 3))
(sqrt.f64 (*.f64 re -4))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 re -4))))
(sqrt.f64 (*.f64 re -4))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 re -4))))
(sqrt.f64 (*.f64 re -4))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re -4))) 1))
(sqrt.f64 (*.f64 re -4))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 re -4))))
(sqrt.f64 (*.f64 re -4))

localize22.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(pow.f64 (/.f64 1 re) 3/2)
0.1b
(*.f64 im (pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/3))
11.9b
(pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/3)
Compiler

Compiled 43 to 34 computations (20.9% saved)

series161.0ms (1.9%)

Counts
3 → 36
Calls

12 calls:

TimeVariablePointExpression
48.0ms
re
@0
(*.f64 im (pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/3))
39.0ms
im
@0
(*.f64 im (pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/3))
38.0ms
re
@inf
(pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/3)
25.0ms
re
@0
(pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/3)
11.0ms
re
@-inf
(pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/3)

rewrite63.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1894×add-sqr-sqrt
1842×*-un-lft-identity
1748×add-cube-cbrt
1730×add-cbrt-cube
206×add-exp-log
Iterations

Useful iterations: 1 (0.0ms)

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

simplify80.0ms (0.9%)

Algorithm
egg-herbie
Rules
878×*-commutative
872×associate-/r/
694×distribute-lft-in
634×distribute-rgt-in
544×associate-*r*
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01421623
12981593
27101263
323911149
46561945
Stop Event
node limit
Counts
91 → 77
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 1 re))
(sqrt.f64 (/.f64 1 re))
(sqrt.f64 (/.f64 1 re))
(sqrt.f64 (/.f64 1 re))
(sqrt.f64 (/.f64 1 re))
(sqrt.f64 (/.f64 1 re))
(sqrt.f64 (/.f64 1 re))
(sqrt.f64 (/.f64 1 re))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) 1/3)
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) 1/3)
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) 1/3)
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) 1/3)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/2))) 1)
(*.f64 1 (pow.f64 re -1/2))
(*.f64 (pow.f64 re -1/2) 1)
(*.f64 (sqrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (pow.f64 re -1/2)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (cbrt.f64 (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (/.f64 1 (cbrt.f64 re)))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re))))
(*.f64 (pow.f64 1 1/2) (pow.f64 re -1/2))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 re -2)) 1/2) (pow.f64 (/.f64 1 (cbrt.f64 re)) 1/2))
(*.f64 (pow.f64 1 1/3) (pow.f64 re -1/2))
(*.f64 (pow.f64 (pow.f64 re -3/4) 1/3) (pow.f64 (pow.f64 re -3/4) 1/3))
(/.f64 1 (sqrt.f64 re))
(/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re)))
(sqrt.f64 (/.f64 1 re))
(fabs.f64 (pow.f64 re -1/2))
(log.f64 (exp.f64 (pow.f64 re -1/2)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 re -1/2))))
(cbrt.f64 (pow.f64 re -3/2))
(expm1.f64 (log1p.f64 (pow.f64 re -1/2)))
(exp.f64 (log.f64 (pow.f64 re -1/2)))
(exp.f64 (*.f64 (neg.f64 (log.f64 re)) 1/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 re -1/2)) 1))
(log1p.f64 (expm1.f64 (pow.f64 re -1/2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im))) 1)
(pow.f64 (*.f64 (pow.f64 re -1/2) im) 1)
(pow.f64 (sqrt.f64 (*.f64 (pow.f64 re -1/2) im)) 2)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) im)) 3)
(pow.f64 (*.f64 (pow.f64 re -3/2) (pow.f64 im 3)) 1/3)
(sqrt.f64 (*.f64 (/.f64 1 re) (*.f64 im im)))
(log.f64 (pow.f64 (exp.f64 (pow.f64 re -1/2)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 re -1/2) im))))
(cbrt.f64 (*.f64 (pow.f64 re -3/2) (pow.f64 im 3)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im)))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) im)))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 re -3/2))) 1)
(*.f64 1 (pow.f64 re -3/2))
(*.f64 (/.f64 1 re) (pow.f64 re -1/2))
(*.f64 (pow.f64 re -3/2) 1)
(*.f64 (pow.f64 re -1/2) (/.f64 1 re))
(*.f64 (pow.f64 re -3/4) (pow.f64 re -3/4))
(*.f64 (*.f64 (/.f64 1 re) (/.f64 1 (cbrt.f64 re))) (cbrt.f64 (pow.f64 re -1/2)))
(*.f64 (*.f64 (/.f64 1 re) (sqrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (pow.f64 re -1/2)))
(*.f64 (pow.f64 1 3/2) (pow.f64 re -3/2))
(*.f64 (pow.f64 (pow.f64 re -1/2) 3/2) (pow.f64 (pow.f64 re -1/2) 3/2))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 re -2)) 3/2) (pow.f64 (/.f64 1 (cbrt.f64 re)) 3/2))
(sqrt.f64 (pow.f64 (/.f64 1 re) 3))
(log.f64 (exp.f64 (pow.f64 re -3/2)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 re -3/2))))
(cbrt.f64 (pow.f64 (pow.f64 re -3/2) 3))
(expm1.f64 (log1p.f64 (pow.f64 re -3/2)))
(exp.f64 (log.f64 (pow.f64 re -3/2)))
(exp.f64 (*.f64 (log.f64 (pow.f64 re -3/2)) 1))
(log1p.f64 (expm1.f64 (pow.f64 re -3/2)))
Outputs
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(cbrt.f64 (*.f64 (pow.f64 -1 3/2) (pow.f64 (/.f64 -1 re) 3/2)))
(cbrt.f64 (/.f64 (pow.f64 re -1/2) re))
(cbrt.f64 (pow.f64 re -3/2))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(cbrt.f64 (*.f64 (pow.f64 -1 3/2) (pow.f64 (/.f64 -1 re) 3/2)))
(cbrt.f64 (/.f64 (pow.f64 re -1/2) re))
(cbrt.f64 (pow.f64 re -3/2))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(cbrt.f64 (*.f64 (pow.f64 -1 3/2) (pow.f64 (/.f64 -1 re) 3/2)))
(cbrt.f64 (/.f64 (pow.f64 re -1/2) re))
(cbrt.f64 (pow.f64 re -3/2))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(cbrt.f64 (*.f64 (pow.f64 -1 3/2) (pow.f64 (/.f64 -1 re) 3/2)))
(cbrt.f64 (/.f64 (pow.f64 re -1/2) re))
(cbrt.f64 (pow.f64 re -3/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(-.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/2))) 1)
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(*.f64 1 (pow.f64 re -1/2))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(*.f64 (pow.f64 re -1/2) 1)
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(*.f64 (sqrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (pow.f64 re -1/2)))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(*.f64 (/.f64 1 (cbrt.f64 re)) (cbrt.f64 (pow.f64 re -1/2)))
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (/.f64 1 (cbrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (cbrt.f64 (pow.f64 re -1/2)))
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re))))
(*.f64 (pow.f64 1 1/2) (pow.f64 re -1/2))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 re -2)) 1/2) (pow.f64 (/.f64 1 (cbrt.f64 re)) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re))))
(*.f64 (pow.f64 1 1/3) (pow.f64 re -1/2))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(*.f64 (pow.f64 (pow.f64 re -3/4) 1/3) (pow.f64 (pow.f64 re -3/4) 1/3))
(*.f64 (cbrt.f64 (pow.f64 re -3/4)) (cbrt.f64 (pow.f64 re -3/4)))
(pow.f64 (pow.f64 (pow.f64 re -3/4) 1/6) 4)
(/.f64 1 (sqrt.f64 re))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re)))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(fabs.f64 (pow.f64 re -1/2))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(log.f64 (exp.f64 (pow.f64 re -1/2)))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 re -1/2))))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(cbrt.f64 (pow.f64 re -3/2))
(cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(cbrt.f64 (*.f64 (pow.f64 -1 3/2) (pow.f64 (/.f64 -1 re) 3/2)))
(cbrt.f64 (/.f64 (pow.f64 re -1/2) re))
(expm1.f64 (log1p.f64 (pow.f64 re -1/2)))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(exp.f64 (log.f64 (pow.f64 re -1/2)))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(exp.f64 (*.f64 (neg.f64 (log.f64 re)) 1/2))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(exp.f64 (*.f64 (log.f64 (pow.f64 re -1/2)) 1))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(log1p.f64 (expm1.f64 (pow.f64 re -1/2)))
(sqrt.f64 (/.f64 1 re))
(pow.f64 re -1/2)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im))) 1)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 (pow.f64 re -1/2) im) 1)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (*.f64 (pow.f64 re -1/2) im)) 2)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) im)) 3)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 (pow.f64 re -3/2) (pow.f64 im 3)) 1/3)
(cbrt.f64 (*.f64 (pow.f64 re -3/2) (pow.f64 im 3)))
(sqrt.f64 (*.f64 (/.f64 1 re) (*.f64 im im)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(log.f64 (pow.f64 (exp.f64 (pow.f64 re -1/2)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 re -1/2) im))))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (*.f64 (pow.f64 re -3/2) (pow.f64 im 3)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)) 1))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(/.f64 im (sqrt.f64 re))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 re -3/2))) 1)
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(*.f64 1 (pow.f64 re -3/2))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(*.f64 (/.f64 1 re) (pow.f64 re -1/2))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(*.f64 (pow.f64 re -3/2) 1)
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(*.f64 (pow.f64 re -1/2) (/.f64 1 re))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(*.f64 (pow.f64 re -3/4) (pow.f64 re -3/4))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(*.f64 (*.f64 (/.f64 1 re) (/.f64 1 (cbrt.f64 re))) (cbrt.f64 (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (*.f64 (/.f64 1 re) (/.f64 1 (cbrt.f64 re))))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re)) re)
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (*.f64 re (cbrt.f64 re)))
(*.f64 (*.f64 (/.f64 1 re) (sqrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (pow.f64 re -1/2)))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(*.f64 (pow.f64 1 3/2) (pow.f64 re -3/2))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(*.f64 (pow.f64 (pow.f64 re -1/2) 3/2) (pow.f64 (pow.f64 re -1/2) 3/2))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 re -2)) 3/2) (pow.f64 (/.f64 1 (cbrt.f64 re)) 3/2))
(sqrt.f64 (pow.f64 (/.f64 1 re) 3))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(log.f64 (exp.f64 (pow.f64 re -3/2)))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 re -3/2))))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(cbrt.f64 (pow.f64 (pow.f64 re -3/2) 3))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(expm1.f64 (log1p.f64 (pow.f64 re -3/2)))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(exp.f64 (log.f64 (pow.f64 re -3/2)))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(exp.f64 (*.f64 (log.f64 (pow.f64 re -3/2)) 1))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)
(log1p.f64 (expm1.f64 (pow.f64 re -3/2)))
(sqrt.f64 (/.f64 1 (pow.f64 re 3)))
(pow.f64 (/.f64 1 re) 3/2)
(/.f64 (pow.f64 re -1/2) re)
(pow.f64 re -3/2)

eval380.0ms (4.5%)

Compiler

Compiled 14332 to 9647 computations (32.7% saved)

prune134.0ms (1.6%)

Pruning

17 alts after pruning (7 fresh and 10 done)

PrunedKeptTotal
New4513454
Fresh347
Picked101
Done21012
Total45717474
Error
0.1b
Counts
474 → 17
Alt Table
Click to see full alt table
StatusErrorProgram
14.2b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2))
17.4b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re))) 2) 1/4) 2))
46.8b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
46.7b
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
16.2b
(*.f64 1/2 (*.f64 (sqrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))) (sqrt.f64 2)))
14.2b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2)))
30.0b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
46.7b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2)))
52.8b
(*.f64 1/2 (*.f64 im (pow.f64 (pow.f64 re -3/2) 1/3)))
52.8b
(*.f64 1/2 (*.f64 im (pow.f64 (expm1.f64 (log1p.f64 (pow.f64 re -3/2))) 1/3)))
51.8b
(*.f64 1/2 (sqrt.f64 (*.f64 (/.f64 im re) im)))
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
16.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))))
13.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
29.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
17.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))))
31.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 207 to 160 computations (22.7% saved)

regimes209.0ms (2.5%)

Counts
32 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (sqrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 1/2 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (*.f64 im im) re)))))
(*.f64 1/2 (*.f64 im (pow.f64 (pow.f64 re -3/2) 1/3)))
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.f64 1/2 (*.f64 im (exp.f64 (*.f64 (neg.f64 (log.f64 re)) 1/2))))
(*.f64 1/2 (*.f64 im (pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/3)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (exp.f64 (log.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 1/2 (pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2))
(*.f64 1/2 (*.f64 (exp.f64 (log.f64 im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2)))
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 1/2 (*.f64 im (pow.f64 (expm1.f64 (log1p.f64 (pow.f64 re -3/2))) 1/3)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))))
(*.f64 1/2 (*.f64 (exp.f64 (log.f64 im)) (pow.f64 (pow.f64 (/.f64 1 re) 3/2) 1/3)))
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re))) 2) 1/4) 2))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))))
(*.f64 1/2 (*.f64 (sqrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))) (sqrt.f64 2)))
(*.f64 1/2 (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 3))) (*.f64 -1 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 3))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
Calls

7 calls:

44.0ms
(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
42.0ms
im
30.0ms
re
22.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
19.0ms
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Results
ErrorSegmentsBranch
6.3b2re
12.6b3im
8.0b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
8.0b2(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
8.2b2(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
8.2b2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
13.9b1(*.f64 im im)
Compiler

Compiled 449 to 315 computations (29.8% saved)

bsearch8.0ms (0.1%)

Algorithm
binary-search
Steps
TimeLeftRight
7.0ms
1.9521893008531617e-35
2.2401074127817272e-35
Results
3.0msbody2048valid
2.0ms18×body256valid
1.0msbody1024valid
0.0msbody512valid
Compiler

Compiled 68 to 52 computations (23.5% saved)

regimes134.0ms (1.6%)

Counts
14 → 5
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (sqrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 1/2 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (*.f64 im im) re)))))
(*.f64 1/2 (*.f64 im (pow.f64 (pow.f64 re -3/2) 1/3)))
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
Calls

3 calls:

52.0ms
(*.f64 im im)
47.0ms
re
31.0ms
im
Results
ErrorSegmentsBranch
11.9b5re
22.1b4im
24.3b3(*.f64 im im)
Compiler

Compiled 124 to 93 computations (25% saved)

bsearch139.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
42.0ms
9.95044403312228e+47
7.427046363440637e+52
28.0ms
3.606114047203056e-89
1.2377061483480167e-84
52.0ms
8.224882721977182e-119
3.645585361201185e-109
15.0ms
-1.7260910837470777e+35
-2.3170416665297354e+33
Results
67.0ms371×body256valid
34.0ms88×body2048valid
15.0ms47×body1024valid
7.0ms12×body4096valid
5.0ms26×body512valid
Compiler

Compiled 695 to 577 computations (17% saved)

regimes42.0ms (0.5%)

Counts
6 → 3
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
Calls

2 calls:

21.0ms
im
19.0ms
re
Results
ErrorSegmentsBranch
13.3b3re
22.6b4im
Compiler

Compiled 48 to 38 computations (20.8% saved)

bsearch62.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
44.0ms
9.95044403312228e+47
7.427046363440637e+52
18.0ms
-7.21981742228352e+31
-2.088222909930701e+27
Results
23.0ms187×body256valid
21.0ms40×body2048valid
7.0ms25×body1024valid
5.0ms12×body4096valid
2.0msbody512valid
Compiler

Compiled 337 to 288 computations (14.5% saved)

regimes36.0ms (0.4%)

Counts
4 → 3
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 re))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
Calls

2 calls:

19.0ms
im
15.0ms
re
Results
ErrorSegmentsBranch
13.4b3re
22.6b4im
Compiler

Compiled 33 to 26 computations (21.2% saved)

bsearch77.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
49.0ms
9.95044403312228e+47
7.427046363440637e+52
28.0ms
-7.21981742228352e+31
-2.088222909930701e+27
Results
40.0ms191×body256valid
18.0ms33×body2048valid
7.0ms15×body4096valid
6.0ms22×body1024valid
2.0ms11×body512valid
Compiler

Compiled 328 to 279 computations (14.9% saved)

regimes20.0ms (0.2%)

Accuracy

Total -39.3b remaining (-174.3%)

Threshold costs -39.3b (-174.3%)

Counts
2 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Calls

2 calls:

10.0ms
im
10.0ms
re
Results
ErrorSegmentsBranch
22.6b2re
25.9b2im
Compiler

Compiled 20 to 16 computations (20% saved)

bsearch19.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
19.0ms
-7.21981742228352e+31
-2.088222909930701e+27
Results
17.0ms128×body256valid
Compiler

Compiled 166 to 144 computations (13.3% saved)

simplify13.0ms (0.1%)

Algorithm
egg-herbie
Rules
24×*-commutative
sub-neg
+-commutative
neg-mul-1
if-if-or-not
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
063376
182376
288376
390376
491376
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 re 7669960592712579/374144419156711147060143317175368453031918731001856) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im)))
(if (<=.f64 re -4799999999999999969345409659174912) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 475960297528979/1322111937580497197903830616065542079656809365928562438569297590548811582472622691650378420879430569695182424050046716608512) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 4658669063729833/8958978968711216842229769122273777112486581988938598139599956403855167484720643781523509973086428463104) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im)) (if (<=.f64 re 1000000000000000043845843045076197354634047651840) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))))
(if (<=.f64 re -2099999999999999945440493568) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 1020000000000000028496832223056384962568927576064) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))
(if (<=.f64 re -2199999999999999864305876992) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 4299999999999999782888933020794240145981379182592) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(if (<=.f64 re -32000000000000000425201762304) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Outputs
(if (<=.f64 re 7669960592712579/374144419156711147060143317175368453031918731001856) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im)))
(if (<=.f64 re 7669960592712579/374144419156711147060143317175368453031918731001856) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2))))
(if (<=.f64 re -4799999999999999969345409659174912) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 475960297528979/1322111937580497197903830616065542079656809365928562438569297590548811582472622691650378420879430569695182424050046716608512) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 4658669063729833/8958978968711216842229769122273777112486581988938598139599956403855167484720643781523509973086428463104) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im)) (if (<=.f64 re 1000000000000000043845843045076197354634047651840) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))))
(if (<=.f64 re -4799999999999999969345409659174912) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 475960297528979/1322111937580497197903830616065542079656809365928562438569297590548811582472622691650378420879430569695182424050046716608512) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (or (<=.f64 re 4658669063729833/8958978968711216842229769122273777112486581988938598139599956403855167484720643781523509973086428463104) (not (<=.f64 re 1000000000000000043845843045076197354634047651840))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))))))
(if (<=.f64 re -2099999999999999945440493568) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 1020000000000000028496832223056384962568927576064) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))
(if (<=.f64 re -2099999999999999945440493568) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 1020000000000000028496832223056384962568927576064) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))
(if (<=.f64 re -2199999999999999864305876992) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 4299999999999999782888933020794240145981379182592) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(if (<=.f64 re -32000000000000000425201762304) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 152 to 120 computations (21.1% saved)

soundness188.0ms (2.2%)

Algorithm
egg-herbie
Rules
1818×distribute-lft-in
1540×associate-*r/
1390×associate-*l/
1070×associate-/r/
1008×associate-/l/
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01529
12329
23629
35529
47729
510829
619429
730229
841329
950629
1060529
1167929
1271029
1376229
1481229
1587329
1693329
1794329
01529
12329
23629
35529
47729
510829
619429
730229
841329
950629
1060529
1167929
1271029
1376229
1481229
1587329
1693329
1794329
02952419
16532309
227932309
Stop Event
node limit
saturated
saturated
Compiler

Compiled 271 to 132 computations (51.3% saved)

end88.0ms (1%)

Compiler

Compiled 142 to 110 computations (22.5% saved)

Profiling

Loading profile data...