Details

Time bar (total: 9.1s)

analyze179.0ms (2%)

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 (18.6%)

Results
909.0ms6387×body256valid
304.0ms643×body2048valid
263.0ms549×body4096valid
154.0ms440×body1024valid
48.0ms237×body512valid
Bogosity

preprocess43.0ms (0.5%)

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)

simplify52.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
12.2b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
12.2b
(*.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
(-.f64 (hypot.f64 re im) re)
0.2b
(sqrt.f64 (*.f64 2 (-.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
re
@0
(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
@-inf
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))

rewrite153.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
916×*-commutative
698×unswap-sqr
556×associate-*r/
536×swap-sqr
462×associate-*l/
Iterations

Useful iterations: 0 (0.0ms)

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

simplify166.0ms (1.8%)

Algorithm
egg-herbie
Rules
1160×+-commutative
1152×associate-/r/
726×fma-def
726×associate-+l-
570×associate-*r*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
05059321
114308885
257228885
Stop Event
node limit
Counts
177 → 293
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))))))
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 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) 1)
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1)
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) (pow.f64 1 1/2))
(*.f64 1 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2))
(*.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.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 2 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.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 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2) 1/2))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))))
(*.f64 (*.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 (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 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.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 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(*.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 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) 3/2) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) 3/2))
(*.f64 (pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2) 1/6) (pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 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 2 (-.f64 (hypot.f64 re im) re)) 1/2)
(pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1)
(pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) 3)
(pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2) 1/3)
(fabs.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) 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 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 re) (sqrt.f64 (hypot.f64 re im))))
(*.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 (*.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 (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 (pow.f64 (hypot.f64 re im) 4) (+.f64 (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 (*.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 (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 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))
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 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (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 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 (/.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 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 1/2 (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/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 1/4 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (/.f64 1/2 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/4 (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (*.f64 1/2 (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 (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 -1/16 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))))))
(+.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 (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) (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))))))
(+.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 (*.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 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 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 -1/16 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3)))))))
(+.f64 (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 -1/16 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3)))))) (*.f64 (sqrt.f64 re) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 7))) (-.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)))))) (*.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)))))))
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 (fma.f64 1/2 (*.f64 (/.f64 re im) re) 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 re (/.f64 im re)) im)) re)
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) 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 1/2 (*.f64 (/.f64 im re) 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/2 (*.f64 (/.f64 im re) im) (*.f64 (/.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 -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/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 re) im) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.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 -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/2 (/.f64 (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)) (pow.f64 re 7)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(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/2 (/.f64 (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)) (pow.f64 re 7)) (*.f64 (/.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 4)))))
(*.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 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(fma.f64 -1/2 (*.f64 (/.f64 im re) im) (*.f64 re -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 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2)))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 -1/2 (*.f64 (/.f64 im re) im) (*.f64 re -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 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (*.f64 (/.f64 im re) im) (*.f64 re -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 1/2 (*.f64 (/.f64 im re) 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/2 (*.f64 (/.f64 im re) im) (*.f64 (/.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 -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/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 re) im) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 4))))
(+.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 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) 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 (/.f64 im re) im) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re) (pow.f64 im 8)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 4)))))
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 (fma.f64 1/2 (*.f64 (/.f64 re im) re) 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 re (/.f64 im re)) im)) re)
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) im)) re)
(*.f64 -1 im)
(neg.f64 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(fma.f64 -1 re (neg.f64 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 -1/2 (/.f64 im (*.f64 re re))) im) re)
(-.f64 (*.f64 (/.f64 -1/2 im) (*.f64 re re)) (+.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 -1/2 (/.f64 im (*.f64 re re)))) im) re)
(-.f64 (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (*.f64 (/.f64 -1/2 im) (*.f64 re re))) (+.f64 im re))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) 1)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) (pow.f64 1 1/2))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 1 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(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 2 (-.f64 (hypot.f64 re im) re)) 1/4) (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4))
(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 (*.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 2 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.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 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 2 (-.f64 (hypot.f64 re im) re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(*.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 2 (-.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 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 2 (-.f64 (hypot.f64 re im) re))) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.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 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (*.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 (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 (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)))) (*.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 2 (-.f64 (hypot.f64 re im) re))))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.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 (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (*.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 2 (-.f64 (hypot.f64 re im) re)))) 3/2) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) 3/2))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2) 1/6) (pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 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 (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 (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))) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (sqrt.f64 2)))
(*.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 (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) 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 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (sqrt.f64 2)))
(*.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 2 (-.f64 (hypot.f64 re im) re)) 1/2)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 1)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 1/4) 2)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) 3)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2))
(fabs.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(+.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 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 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 (-.f64 (hypot.f64 re im) 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 (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 (+.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 (-.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 (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 (-.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) re) (+.f64 (-.f64 (hypot.f64 re im) re) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) 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 (-.f64 (hypot.f64 re im) re) (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 (-.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re) re) (+.f64 (-.f64 (hypot.f64 re im) re) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) 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 (-.f64 (hypot.f64 re im) re) (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 (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 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (-.f64 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 (-.f64 (hypot.f64 re im) re) (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 (+.f64 (-.f64 (hypot.f64 re im) re) (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 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) (-.f64 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 (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 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 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 (-.f64 (hypot.f64 re im) re) (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) (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 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 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 (-.f64 (hypot.f64 re im) 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) 1))
(+.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 (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 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 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 (-.f64 (hypot.f64 re im) re) (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 (-.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 (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 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 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 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) 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) 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 (hypot.f64 re im) (-.f64 (exp.f64 (log1p.f64 re)) 1))
(-.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 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 re) (sqrt.f64 (hypot.f64 re im))))
(*.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)) (+.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 (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 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.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))) (pow.f64 (hypot.f64 re im) 4))) (+.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) 3)))
(*.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 (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))) (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 (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))) (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 (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))) (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 (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 (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))) (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 (*.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 (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 (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 (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 (cbrt.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 (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) 4) (pow.f64 re 4)) (*.f64 (+.f64 re (hypot.f64 re im)) (+.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2))))
(/.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 (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 re 3) (pow.f64 (hypot.f64 re im) 3))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.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 (+.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 (-.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 (pow.f64 (hypot.f64 re im) 4) (+.f64 (pow.f64 re 4) (pow.f64 (*.f64 re (hypot.f64 re im)) 2)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.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 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.f64 (+.f64 re (hypot.f64 re im)) (+.f64 (pow.f64 re 4) (+.f64 (pow.f64 (*.f64 re (hypot.f64 re im)) 2) (pow.f64 (hypot.f64 re im) 4)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.f64 (+.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 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3) 3) (pow.f64 (pow.f64 re 3) 3)) (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 (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 (-.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 (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 (-.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 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (neg.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 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)))
(/.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 (pow.f64 (hypot.f64 re im) 4) (+.f64 (pow.f64 re 4) (pow.f64 (*.f64 re (hypot.f64 re im)) 2))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.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 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.f64 (+.f64 re (hypot.f64 re im)) (+.f64 (pow.f64 re 4) (+.f64 (pow.f64 (*.f64 re (hypot.f64 re im)) 2) (pow.f64 (hypot.f64 re im) 4)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.f64 (+.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 (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 re 3) (pow.f64 (hypot.f64 re im) 3))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (*.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 (*.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 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3) 3) (pow.f64 (pow.f64 re 3) 3)) (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 (hypot.f64 re im) (+.f64 re (+.f64 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)))
(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)))
(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)

eval214.0ms (2.4%)

Compiler

Compiled 8388 to 4843 computations (42.3% saved)

prune120.0ms (1.3%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New28310293
Fresh000
Picked011
Done000
Total28311294
Error
0.3b
Counts
294 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
49.5b
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
12.6b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2)))
49.5b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))
29.1b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
13.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))))
55.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 1/2 (/.f64 re (*.f64 im im))))))
12.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
27.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
47.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
53.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (*.f64 (/.f64 im re) im)))))
28.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 268 to 215 computations (19.8% saved)

localize13.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 42 to 17 computations (59.5% saved)

series8.0ms (0.1%)

Counts
2 → 16
Calls

12 calls:

TimeVariablePointExpression
5.0ms
im
@0
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
0.0ms
im
@inf
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
0.0ms
re
@inf
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
0.0ms
re
@0
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
0.0ms
im
@-inf
(sqrt.f64 (-.f64 (hypot.f64 re im) re))

rewrite66.0ms (0.7%)

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

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

localize39.0ms (0.4%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 28 to 15 computations (46.4% saved)

series5.0ms (0.1%)

Counts
1 → 8
Calls

6 calls:

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

rewrite54.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1928×add-sqr-sqrt
1906×*-un-lft-identity
1780×add-cube-cbrt
1764×add-cbrt-cube
188×pow1
Iterations

Useful iterations: 0 (0.0ms)

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

simplify74.0ms (0.8%)

Algorithm
egg-herbie
Rules
1408×associate-*r/
1292×associate-/r*
1108×associate-*l/
886×associate-/r/
532×associate-*r*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01231287
12881275
28441235
329931147
Stop Event
node limit
Counts
33 → 63
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 2 (-.f64 im re))))) 1)
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(*.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) (pow.f64 (*.f64 2 (-.f64 im re)) 1/4))
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (cbrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 1/2))
(pow.f64 (*.f64 2 (-.f64 im re)) 1/2)
(pow.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 3)
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2) 1/3)
(fabs.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 2 (-.f64 im re))) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 1))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 2) (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 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (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 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 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 (*.f64 1/2 im) (sqrt.f64 -1)) (sqrt.f64 2))))
(+.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 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (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 -1/8 (*.f64 (*.f64 (/.f64 (*.f64 im im) -1) (/.f64 (sqrt.f64 2) (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(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 (sqrt.f64 -1) (*.f64 im im)))) (*.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 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (+.f64 (*.f64 im (*.f64 1/2 (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (/.f64 im -1) im) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(+.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 (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) im) (sqrt.f64 -1)) (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 (/.f64 (sqrt.f64 2) (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 -1/8 (*.f64 (*.f64 (/.f64 (*.f64 im im) -1) (/.f64 (sqrt.f64 2) (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(fma.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)) (*.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 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)) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (+.f64 (*.f64 im (*.f64 1/2 (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (/.f64 im -1) im) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))))
(*.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 (*.f64 (sqrt.f64 2) re) (*.f64 (sqrt.f64 (/.f64 1 im)) -1/2)))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 re (*.f64 -1/2 (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 -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 (*.f64 (sqrt.f64 2) (*.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 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))
(fma.f64 (sqrt.f64 2) (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (*.f64 re re) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (+.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) -1/8) (*.f64 -1/2 (sqrt.f64 (/.f64 1 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 (*.f64 (sqrt.f64 2) (*.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 -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 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 re re) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (pow.f64 re 3) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))) (sqrt.f64 im)) (*.f64 (*.f64 re re) (+.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) -1/16) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))) 1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) (pow.f64 (*.f64 2 (-.f64 im re)) 1/4))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (cbrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 3/2)
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 2 (-.f64 im re))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 3/2)
(pow.f64 (*.f64 2 (-.f64 im re)) 1/2)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) 2)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 3)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2))
(fabs.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(exp.f64 (*.f64 (log.f64 (*.f64 2 (-.f64 im re))) 1/2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 1))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))

localize16.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(/.f64 1/2 (/.f64 re (*.f64 im im)))
8.1b
(/.f64 re (*.f64 im im))
18.3b
(sqrt.f64 (*.f64 2 (/.f64 1/2 (/.f64 re (*.f64 im im)))))
Compiler

Compiled 52 to 24 computations (53.8% saved)

series7.0ms (0.1%)

Counts
3 → 60
Calls

18 calls:

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

rewrite83.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1244×associate-/l*
1136×*-commutative
724×unswap-sqr
692×swap-sqr
570×associate-/r/
Iterations

Useful iterations: 2 (0.0ms)

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

simplify108.0ms (1.2%)

Algorithm
egg-herbie
Rules
1506×associate-/r/
1478×distribute-rgt-in
1464×distribute-lft-in
758×associate-*r*
682×associate-*l*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03765294
19995000
239815000
Stop Event
node limit
Counts
232 → 239
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 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (pow.f64 im 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 1 1/2))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (/.f64 1 (sqrt.f64 re)) im)
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (sqrt.f64 im))
(*.f64 (/.f64 1 (sqrt.f64 (neg.f64 re))) (sqrt.f64 (*.f64 im (neg.f64 im))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))
(/.f64 im (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (sqrt.f64 re) (sqrt.f64 (pow.f64 (cbrt.f64 im) 2))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(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)
(fabs.f64 (/.f64 im (sqrt.f64 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))
(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 (*.f64 re (pow.f64 im -2)))) 1)
(*.f64 1/2 (*.f64 2 (*.f64 re (pow.f64 im -2))))
(*.f64 re (pow.f64 im -2))
(*.f64 re (neg.f64 (neg.f64 (pow.f64 im -2))))
(*.f64 (*.f64 re (pow.f64 im -2)) 1)
(*.f64 1 (*.f64 re (pow.f64 im -2)))
(*.f64 (/.f64 (sqrt.f64 re) im) (/.f64 (sqrt.f64 re) im))
(*.f64 (/.f64 (sqrt.f64 re) im) (neg.f64 (/.f64 (neg.f64 (sqrt.f64 re)) im)))
(*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (pow.f64 im -2)))
(*.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2))
(*.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) (/.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 (pow.f64 im 4))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2) (neg.f64 (neg.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))))))
(*.f64 (cbrt.f64 (*.f64 re re)) (*.f64 (cbrt.f64 re) (pow.f64 im -2)))
(*.f64 (/.f64 re im) (/.f64 1 im))
(*.f64 (pow.f64 im -2) re)
(*.f64 (neg.f64 re) (neg.f64 (pow.f64 im -2)))
(*.f64 (sqrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2)))) (neg.f64 (sqrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2))))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2)))) (cbrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2))))) (neg.f64 (cbrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2))))))
(*.f64 (*.f64 (sqrt.f64 re) (pow.f64 im -2)) (sqrt.f64 re))
(*.f64 (*.f64 (cbrt.f64 re) (pow.f64 im -2)) (cbrt.f64 (*.f64 re re)))
(*.f64 -1 (*.f64 re (neg.f64 (pow.f64 im -2))))
(*.f64 (/.f64 re 1) (pow.f64 im -2))
(*.f64 (/.f64 1 im) (/.f64 re im))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (/.f64 1 (cbrt.f64 (pow.f64 im 4))))
(*.f64 (/.f64 (neg.f64 (sqrt.f64 re)) im) (/.f64 (neg.f64 (sqrt.f64 re)) im))
(*.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (neg.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2)))))
(*.f64 (neg.f64 (pow.f64 im -2)) (neg.f64 re))
(*.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 (sqrt.f64 re) (*.f64 im im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) 1) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(*.f64 (/.f64 (cbrt.f64 re) im) (/.f64 (cbrt.f64 (*.f64 re re)) im))
(*.f64 (/.f64 (sqrt.f64 re) (*.f64 im im)) (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 re) (*.f64 im im)) (/.f64 (sqrt.f64 re) 1))
(*.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 (pow.f64 im 4))) (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (pow.f64 im 4))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) im) (/.f64 (cbrt.f64 re) im))
(*.f64 (/.f64 (cbrt.f64 re) (*.f64 im im)) (/.f64 (cbrt.f64 (*.f64 re re)) 1))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) (*.f64 im im)) (cbrt.f64 re))
(*.f64 (/.f64 1 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2))) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(*.f64 (/.f64 1 (/.f64 im (/.f64 (cbrt.f64 (*.f64 re re)) im))) (cbrt.f64 re))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2))))) (sqrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2)))))
(*.f64 (neg.f64 (*.f64 (cbrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2)))) (cbrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2)))))) (cbrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2)))))
(*.f64 (neg.f64 (/.f64 (neg.f64 (sqrt.f64 re)) im)) (/.f64 (sqrt.f64 re) im))
(*.f64 (neg.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2))) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2)))) (cbrt.f64 (*.f64 re (pow.f64 im -2)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2)))) (cbrt.f64 (*.f64 re (pow.f64 im -2)))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) (sqrt.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))))) (*.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) (sqrt.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(pow.f64 (*.f64 re (pow.f64 im -2)) 1)
(pow.f64 (*.f64 im (/.f64 im re)) -1)
(pow.f64 (/.f64 (sqrt.f64 re) im) 2)
(pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 3)
(pow.f64 (pow.f64 (*.f64 re (pow.f64 im -2)) 3) 1/3)
(neg.f64 (*.f64 re (neg.f64 (pow.f64 im -2))))
(neg.f64 (/.f64 (*.f64 re (neg.f64 (pow.f64 im -2))) 1))
(sqrt.f64 (/.f64 re (/.f64 (pow.f64 im 4) re)))
(log.f64 (pow.f64 (exp.f64 re) (pow.f64 im -2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (pow.f64 im -2)))))
(cbrt.f64 (pow.f64 (*.f64 re (pow.f64 im -2)) 3))
(cbrt.f64 (/.f64 (pow.f64 re 3) (pow.f64 (*.f64 im im) 3)))
(expm1.f64 (log1p.f64 (*.f64 re (pow.f64 im -2))))
(exp.f64 (log.f64 (*.f64 re (pow.f64 im -2))))
(log1p.f64 (expm1.f64 (*.f64 re (pow.f64 im -2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 1)
(*.f64 2 (*.f64 1/2 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(*.f64 (*.f64 im (/.f64 im re)) 1/2)
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 1/2 (/.f64 im (sqrt.f64 re))))
(*.f64 1 (*.f64 1/2 (*.f64 im (/.f64 im re))))
(*.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 1/2 re)))
(*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4))) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 1/2 (neg.f64 re)))
(*.f64 -1/2 (*.f64 (neg.f64 (/.f64 im re)) im))
(*.f64 (*.f64 1/2 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)
(*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 1/2 re)) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 im (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 1/2 (cbrt.f64 (*.f64 re re))) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 1 re) (/.f64 1/2 (pow.f64 im -2)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (*.f64 1/2 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 im re) (*.f64 1/2 im))
(*.f64 (/.f64 1 (neg.f64 re)) (*.f64 1/2 (*.f64 im (neg.f64 im))))
(*.f64 (*.f64 1/2 (/.f64 im re)) im)
(*.f64 (/.f64 1/2 (neg.f64 re)) (*.f64 im (neg.f64 im)))
(*.f64 (*.f64 (neg.f64 (/.f64 im re)) im) -1/2)
(*.f64 (/.f64 1/2 (/.f64 re 1)) (*.f64 im im))
(*.f64 (/.f64 1/2 (/.f64 re (cbrt.f64 (pow.f64 im 4)))) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (/.f64 1/2 (/.f64 re (*.f64 im (sqrt.f64 im)))) (sqrt.f64 im))
(*.f64 (/.f64 1/2 (/.f64 (/.f64 re im) (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))
(*.f64 (/.f64 1/2 (/.f64 re (neg.f64 im))) (neg.f64 im))
(*.f64 (/.f64 (/.f64 1/2 re) 1) (*.f64 im im))
(*.f64 (/.f64 (/.f64 1/2 re) 1) (/.f64 1 (pow.f64 im -2)))
(*.f64 (/.f64 (/.f64 1/2 re) -1) (*.f64 im (neg.f64 im)))
(*.f64 (/.f64 (/.f64 1/2 re) (/.f64 1 im)) im)
(*.f64 (/.f64 (/.f64 1/2 re) (/.f64 1 (cbrt.f64 (pow.f64 im 4)))) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (/.f64 -1/2 (/.f64 re (neg.f64 im))) im)
(*.f64 (/.f64 -1/2 re) (*.f64 im (neg.f64 im)))
(*.f64 (/.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (sqrt.f64 re)) im)
(*.f64 (/.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (*.f64 im (neg.f64 im))))
(*.f64 (/.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 re im))) (sqrt.f64 im))
(*.f64 (/.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) 1) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (/.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 re)) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (/.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 (neg.f64 re))) (cbrt.f64 (*.f64 im (neg.f64 im))))
(*.f64 (/.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 (/.f64 re im))) (cbrt.f64 im))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4))))) (*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4))))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))) (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4)))) (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4)))) (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))))))
(pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 2)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3) 1/3)
(pow.f64 (*.f64 2 (*.f64 re (pow.f64 im -2))) -1)
(neg.f64 (*.f64 (/.f64 1/2 (neg.f64 re)) (*.f64 im im)))
(sqrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4)))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 im (/.f64 im re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im 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 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(/.f64 re (pow.f64 im 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 1 1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) (sqrt.f64 2))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 2)))
(*.f64 (sqrt.f64 (/.f64 1/2 re)) (*.f64 im (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 2)))
(*.f64 (sqrt.f64 (/.f64 1/2 re)) (*.f64 im (sqrt.f64 2)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 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 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (fabs.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (fabs.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (/.f64 1 (sqrt.f64 re)) im)
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (fabs.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (fabs.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (sqrt.f64 im))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(*.f64 (/.f64 1 (sqrt.f64 (neg.f64 re))) (sqrt.f64 (*.f64 im (neg.f64 im))))
(/.f64 (sqrt.f64 (neg.f64 (*.f64 im im))) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re)))
(*.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))))
(/.f64 im (sqrt.f64 re))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 im (sqrt.f64 re))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(/.f64 im (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1))
(/.f64 im (sqrt.f64 re))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 im (sqrt.f64 re))
(/.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (sqrt.f64 im))
(/.f64 (*.f64 (sqrt.f64 im) (sqrt.f64 im)) (sqrt.f64 re))
(*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)) (cbrt.f64 im))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 im)) (sqrt.f64 re))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)) (cbrt.f64 im))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 im)) (sqrt.f64 re))
(/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (sqrt.f64 re) (sqrt.f64 (pow.f64 (cbrt.f64 im) 2))))
(*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (sqrt.f64 re)) (sqrt.f64 (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (fabs.f64 (cbrt.f64 im)) (/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (sqrt.f64 re)))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) 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))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(/.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))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (pow.f64 im -2)))) 1)
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 1/2 (*.f64 2 (*.f64 re (pow.f64 im -2))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 re (pow.f64 im -2))
(/.f64 re (*.f64 im im))
(*.f64 re (neg.f64 (neg.f64 (pow.f64 im -2))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (*.f64 re (pow.f64 im -2)) 1)
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 1 (*.f64 re (pow.f64 im -2)))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (/.f64 (sqrt.f64 re) im) (/.f64 (sqrt.f64 re) im))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (/.f64 (sqrt.f64 re) im) (neg.f64 (/.f64 (neg.f64 (sqrt.f64 re)) im)))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (pow.f64 im -2)))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) (/.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 (pow.f64 im 4))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2) (neg.f64 (neg.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (cbrt.f64 (*.f64 re re)) (*.f64 (cbrt.f64 re) (pow.f64 im -2)))
(*.f64 (cbrt.f64 (*.f64 re re)) (*.f64 (pow.f64 im -2) (cbrt.f64 re)))
(*.f64 (pow.f64 im -2) (*.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 re)))
(*.f64 (/.f64 re im) (/.f64 1 im))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (pow.f64 im -2) re)
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (neg.f64 re) (neg.f64 (pow.f64 im -2)))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (sqrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2)))) (neg.f64 (sqrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2))))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (*.f64 (cbrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2)))) (cbrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2))))) (neg.f64 (cbrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2))))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (*.f64 (sqrt.f64 re) (pow.f64 im -2)) (sqrt.f64 re))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (*.f64 (cbrt.f64 re) (pow.f64 im -2)) (cbrt.f64 (*.f64 re re)))
(*.f64 (cbrt.f64 (*.f64 re re)) (*.f64 (pow.f64 im -2) (cbrt.f64 re)))
(*.f64 (pow.f64 im -2) (*.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 re)))
(*.f64 -1 (*.f64 re (neg.f64 (pow.f64 im -2))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (/.f64 re 1) (pow.f64 im -2))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (/.f64 1 im) (/.f64 re im))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (/.f64 1 (cbrt.f64 (pow.f64 im 4))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (/.f64 (neg.f64 (sqrt.f64 re)) im) (/.f64 (neg.f64 (sqrt.f64 re)) im))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (neg.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2)))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (neg.f64 (pow.f64 im -2)) (neg.f64 re))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 (sqrt.f64 re) (*.f64 im im)))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) 1) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(*.f64 (cbrt.f64 (*.f64 re re)) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (*.f64 re re)) (*.f64 im im)))
(*.f64 (/.f64 (cbrt.f64 re) im) (/.f64 (cbrt.f64 (*.f64 re re)) im))
(*.f64 (cbrt.f64 (*.f64 re re)) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (*.f64 re re)) (*.f64 im im)))
(*.f64 (/.f64 (sqrt.f64 re) (*.f64 im im)) (sqrt.f64 re))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (/.f64 (sqrt.f64 re) (*.f64 im im)) (/.f64 (sqrt.f64 re) 1))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 (pow.f64 im 4))) (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (pow.f64 im 4))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) im) (/.f64 (cbrt.f64 re) im))
(*.f64 (cbrt.f64 (*.f64 re re)) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (*.f64 re re)) (*.f64 im im)))
(*.f64 (/.f64 (cbrt.f64 re) (*.f64 im im)) (/.f64 (cbrt.f64 (*.f64 re re)) 1))
(*.f64 (cbrt.f64 (*.f64 re re)) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (*.f64 re re)) (*.f64 im im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(*.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) (/.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 (pow.f64 im 4))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) (*.f64 im im)) (cbrt.f64 re))
(*.f64 (cbrt.f64 (*.f64 re re)) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (*.f64 re re)) (*.f64 im im)))
(*.f64 (/.f64 1 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2))) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (/.f64 1 (/.f64 im (/.f64 (cbrt.f64 (*.f64 re re)) im))) (cbrt.f64 re))
(*.f64 (cbrt.f64 (*.f64 re re)) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (*.f64 re re)) (*.f64 im im)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2))))) (sqrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2)))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (neg.f64 (*.f64 (cbrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2)))) (cbrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2)))))) (cbrt.f64 (*.f64 re (neg.f64 (pow.f64 im -2)))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (neg.f64 (/.f64 (neg.f64 (sqrt.f64 re)) im)) (/.f64 (sqrt.f64 re) im))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (neg.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2))) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2)))) (cbrt.f64 (*.f64 re (pow.f64 im -2)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2)))) (cbrt.f64 (*.f64 re (pow.f64 im -2)))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2))))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) (sqrt.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))))) (*.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) (sqrt.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(pow.f64 (*.f64 re (pow.f64 im -2)) 1)
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(pow.f64 (*.f64 im (/.f64 im re)) -1)
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(pow.f64 (/.f64 (sqrt.f64 re) im) 2)
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 3)
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(pow.f64 (pow.f64 (*.f64 re (pow.f64 im -2)) 3) 1/3)
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(neg.f64 (*.f64 re (neg.f64 (pow.f64 im -2))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(neg.f64 (/.f64 (*.f64 re (neg.f64 (pow.f64 im -2))) 1))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(sqrt.f64 (/.f64 re (/.f64 (pow.f64 im 4) re)))
(sqrt.f64 (*.f64 (/.f64 re (pow.f64 im 4)) re))
(sqrt.f64 (/.f64 (*.f64 re re) (pow.f64 im 4)))
(log.f64 (pow.f64 (exp.f64 re) (pow.f64 im -2)))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (pow.f64 im -2)))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(cbrt.f64 (pow.f64 (*.f64 re (pow.f64 im -2)) 3))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(cbrt.f64 (/.f64 (pow.f64 re 3) (pow.f64 (*.f64 im im) 3)))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(expm1.f64 (log1p.f64 (*.f64 re (pow.f64 im -2))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(exp.f64 (log.f64 (*.f64 re (pow.f64 im -2))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(log1p.f64 (expm1.f64 (*.f64 re (pow.f64 im -2))))
(/.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 1)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 2 (*.f64 1/2 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 im (/.f64 im re)) 1/2)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 1/2 (/.f64 im (sqrt.f64 re))))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1 (*.f64 1/2 (*.f64 im (/.f64 im re))))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 1/2 re)))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (/.f64 1/2 re) (cbrt.f64 (pow.f64 im 4))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (/.f64 1/2 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4))))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))) (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) (/.f64 re 1/2))) (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4))) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))) (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) (/.f64 re 1/2))) (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 1/2 (neg.f64 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (*.f64 (neg.f64 (/.f64 im re)) im))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 1/2 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 1/2 re)) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (/.f64 1/2 re) (cbrt.f64 (pow.f64 im 4))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (/.f64 1/2 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 im (/.f64 (sqrt.f64 re) im)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 1/2 (cbrt.f64 (*.f64 re re))) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 1/2 (cbrt.f64 (*.f64 re re))) (*.f64 (/.f64 im (cbrt.f64 re)) im))
(*.f64 (/.f64 1 re) (/.f64 1/2 (pow.f64 im -2)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (*.f64 1/2 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)))
(*.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 im re) (*.f64 1/2 im))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 1 (neg.f64 re)) (*.f64 1/2 (*.f64 im (neg.f64 im))))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 1/2 (/.f64 im re)) im)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 1/2 (neg.f64 re)) (*.f64 im (neg.f64 im)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 (neg.f64 (/.f64 im re)) im) -1/2)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 1/2 (/.f64 re 1)) (*.f64 im im))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 1/2 (/.f64 re (cbrt.f64 (pow.f64 im 4)))) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (/.f64 1/2 re) (cbrt.f64 (pow.f64 im 4))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (/.f64 1/2 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 1/2 (/.f64 re (*.f64 im (sqrt.f64 im)))) (sqrt.f64 im))
(/.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 (/.f64 re im) (sqrt.f64 im)))
(*.f64 (/.f64 1/2 re) (*.f64 (*.f64 im (sqrt.f64 im)) (sqrt.f64 im)))
(*.f64 (/.f64 1/2 (/.f64 (/.f64 re im) (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))
(/.f64 (*.f64 1/2 (cbrt.f64 im)) (/.f64 (/.f64 re im) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 im) (*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 im (/.f64 1/2 re))))
(*.f64 (*.f64 im (/.f64 1/2 re)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 im)))
(*.f64 (/.f64 1/2 (/.f64 re (neg.f64 im))) (neg.f64 im))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 (/.f64 1/2 re) 1) (*.f64 im im))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 (/.f64 1/2 re) 1) (/.f64 1 (pow.f64 im -2)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 (/.f64 1/2 re) -1) (*.f64 im (neg.f64 im)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 (/.f64 1/2 re) (/.f64 1 im)) im)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 (/.f64 1/2 re) (/.f64 1 (cbrt.f64 (pow.f64 im 4)))) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (/.f64 1/2 re) (cbrt.f64 (pow.f64 im 4))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (/.f64 1/2 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 -1/2 (/.f64 re (neg.f64 im))) im)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 -1/2 re) (*.f64 im (neg.f64 im)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1) (/.f64 im (sqrt.f64 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (sqrt.f64 re)) im)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (*.f64 im (neg.f64 im))))
(*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (neg.f64 re))))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 1/2 (sqrt.f64 (neg.f64 (*.f64 im im))))) (sqrt.f64 (neg.f64 re)))
(*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (*.f64 (/.f64 1/2 (sqrt.f64 (neg.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 re im))) (sqrt.f64 im))
(/.f64 (*.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (sqrt.f64 im)) (sqrt.f64 (/.f64 re im)))
(*.f64 (sqrt.f64 im) (*.f64 (/.f64 1/2 (sqrt.f64 (/.f64 re im))) (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (*.f64 1/2 (sqrt.f64 im)) (sqrt.f64 (/.f64 re im))) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) 1) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (*.f64 1/2 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)))
(*.f64 (/.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 re)) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 1/2 (*.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (/.f64 1/2 (cbrt.f64 re)) (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)))
(*.f64 (/.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 (neg.f64 re))) (cbrt.f64 (*.f64 im (neg.f64 im))))
(*.f64 (/.f64 1/2 (*.f64 (cbrt.f64 (neg.f64 re)) (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2))) (cbrt.f64 (*.f64 im (neg.f64 im))))
(*.f64 (/.f64 1/2 (*.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2) (cbrt.f64 (neg.f64 re)))) (cbrt.f64 (neg.f64 (*.f64 im im))))
(*.f64 (/.f64 1/2 (*.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2) (cbrt.f64 (neg.f64 re)))) (cbrt.f64 (*.f64 im (neg.f64 im))))
(*.f64 (/.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 (/.f64 re im))) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (/.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 (/.f64 re im))))
(*.f64 (cbrt.f64 im) (/.f64 1/2 (*.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2) (cbrt.f64 (/.f64 re im)))))
(/.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (/.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4))))) (*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4))))))
(*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re)))) (*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (sqrt.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re)))))))
(*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re)))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))) (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4)))) (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4)))) (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))))))
(*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re)))) (*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (sqrt.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re)))))))
(*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re)))))
(pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 2)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 3)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3) 1/3)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(pow.f64 (*.f64 2 (*.f64 re (pow.f64 im -2))) -1)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(neg.f64 (*.f64 (/.f64 1/2 (neg.f64 re)) (*.f64 im im)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(sqrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4)))
(sqrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re)))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 im (/.f64 im re))))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (/.f64 (*.f64 im im) re))

localize26.0ms (0.3%)

Local error

Found 4 expressions with local error:

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

Compiled 57 to 46 computations (19.3% saved)

series29.0ms (0.3%)

Counts
4 → 36
Calls

18 calls:

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

rewrite88.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1036×unswap-sqr
842×swap-sqr
636×associate-*r/
500×sqr-pow
462×pow-sqr
Iterations

Useful iterations: 2 (0.0ms)

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

simplify85.0ms (0.9%)

Algorithm
egg-herbie
Rules
1846×unswap-sqr
1028×distribute-rgt-in
1028×distribute-lft-in
720×associate-/l*
526×associate-*r*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03805127
18775079
237815079
Stop Event
node limit
Counts
199 → 246
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.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)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (sqrt.f64 1/2)))) 1)
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 1)
(pow.f64 (sqrt.f64 (*.f64 im (sqrt.f64 1/2))) 2)
(pow.f64 (cbrt.f64 (*.f64 im (sqrt.f64 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3) 1/3)
(sqrt.f64 (*.f64 1/2 (*.f64 im im)))
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 1/2)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (sqrt.f64 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 im 3) (*.f64 1/2 (sqrt.f64 1/2))))
(cbrt.f64 (*.f64 (*.f64 1/2 (sqrt.f64 1/2)) (pow.f64 im 3)))
(expm1.f64 (log1p.f64 (*.f64 im (sqrt.f64 1/2))))
(exp.f64 (log.f64 (*.f64 im (sqrt.f64 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 im (sqrt.f64 1/2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re))))) 1)
(/.f64 (*.f64 im (sqrt.f64 1/2)) (/.f64 (sqrt.f64 re) (sqrt.f64 2)))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 1/2))))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2))))
(/.f64 (pow.f64 2 1/4) (/.f64 (sqrt.f64 re) (*.f64 (pow.f64 2 1/4) (*.f64 im (sqrt.f64 1/2)))))
(/.f64 (cbrt.f64 2) (/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 im (sqrt.f64 1/2)))))
(/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 re))
(/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (/.f64 (sqrt.f64 re) 1))
(/.f64 (sqrt.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2))) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2))) (cbrt.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)))))
(/.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2)))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 im (sqrt.f64 1/2)))))
(/.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im (sqrt.f64 1/2)))))
(/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) (sqrt.f64 re))
(/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) (/.f64 (sqrt.f64 re) 1))
(/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (/.f64 1 (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (pow.f64 2 1/4) (sqrt.f64 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 re) (*.f64 (pow.f64 2 1/4) (sqrt.f64 (*.f64 im (sqrt.f64 1/2))))))
(/.f64 (*.f64 1 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1)) (sqrt.f64 re))
(/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) -1) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) 1) (sqrt.f64 re))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) 1) (/.f64 (sqrt.f64 re) 1))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) -1) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 (pow.f64 re -1/2))) 1) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (/.f64 1 (cbrt.f64 re))) 1) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 -1 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2))) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 -1) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2))) (sqrt.f64 (neg.f64 re)))
(/.f64 (/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 (cbrt.f64 (*.f64 re re)))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 (/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) 1) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) (sqrt.f64 (cbrt.f64 (*.f64 re re)))) (sqrt.f64 (cbrt.f64 re)))
(pow.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re))) 1)
(pow.f64 (sqrt.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))) 2)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))) 3)
(pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re))) 3) 1/3)
(sqrt.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 1/2 re))))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) (sqrt.f64 (/.f64 1/2 re))) (sqrt.f64 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re))))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re))) 3))
(cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 3) (*.f64 2 (sqrt.f64 2))))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))))
(exp.f64 (log.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))) 1))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))))) 1)
(/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 1/2)))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re))
(/.f64 (*.f64 im (sqrt.f64 1/2)) (/.f64 (sqrt.f64 re) 1))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 1/2))))
(/.f64 (pow.f64 1/2 1/4) (/.f64 (sqrt.f64 re) (*.f64 (pow.f64 1/2 1/4) im)))
(/.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 im) (sqrt.f64 1/2))))
(/.f64 (sqrt.f64 (*.f64 im (sqrt.f64 1/2))) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 im (sqrt.f64 1/2)))))
(/.f64 (cbrt.f64 1/2) (/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 1/2)) im)))
(/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 im) (sqrt.f64 1/2))))
(/.f64 (cbrt.f64 (*.f64 im (sqrt.f64 1/2))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im (sqrt.f64 1/2)))))
(/.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im (pow.f64 1/2 1/4)) (/.f64 (sqrt.f64 re) (pow.f64 1/2 1/4)))
(/.f64 (*.f64 im (cbrt.f64 1/2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (sqrt.f64 1/2))))
(/.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (*.f64 (sqrt.f64 1/2) (cbrt.f64 (*.f64 im im))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) -1) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (sqrt.f64 re))) 1) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 re)) 1) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 -1 (*.f64 im (sqrt.f64 1/2))) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 1 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (sqrt.f64 re)))) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1 (/.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 (sqrt.f64 re)))) (cbrt.f64 re))
(/.f64 (*.f64 -1 (/.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 (sqrt.f64 re)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) 1) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (cbrt.f64 (*.f64 re re)))) (sqrt.f64 (cbrt.f64 re)))
(pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 1)
(pow.f64 (sqrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) 2)
(pow.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 3) 1/3)
(sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/2 re)))
(log.f64 (pow.f64 (exp.f64 im) (sqrt.f64 (/.f64 1/2 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3) (/.f64 (pow.f64 re -1/2) re)))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3) (*.f64 re (sqrt.f64 re))))
(expm1.f64 (log1p.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))))
(exp.f64 (log.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) 1))
(log1p.f64 (expm1.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 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 (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 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 (*.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 (/.f64 (pow.f64 re -1/2) re) 1/6) (pow.f64 (/.f64 (pow.f64 re -1/2) re) 1/6))
(/.f64 1 (sqrt.f64 re))
(/.f64 1 (/.f64 (sqrt.f64 re) 1))
(/.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 (/.f64 1 (cbrt.f64 re)) 1) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/2)) 1) (cbrt.f64 re))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/2)) -1) (cbrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 (pow.f64 re -1/2)) 1) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1 (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (pow.f64 1 1/2) 1) (sqrt.f64 re))
(/.f64 (*.f64 (pow.f64 1 1/2) 1) (/.f64 (sqrt.f64 re) 1))
(/.f64 (*.f64 (pow.f64 1 1/2) -1) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 -1)) (sqrt.f64 (neg.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 (cbrt.f64 (*.f64 re re)))) (sqrt.f64 (cbrt.f64 re)))
(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 (/.f64 (pow.f64 re -1/2) re) 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 (/.f64 (pow.f64 re -1/2) re))
(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)))
Outputs
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.f64 (sqrt.f64 1/2) im)
(*.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)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (sqrt.f64 1/2)))) 1)
(*.f64 (sqrt.f64 1/2) im)
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 1)
(*.f64 (sqrt.f64 1/2) im)
(pow.f64 (sqrt.f64 (*.f64 im (sqrt.f64 1/2))) 2)
(*.f64 (sqrt.f64 1/2) im)
(pow.f64 (cbrt.f64 (*.f64 im (sqrt.f64 1/2))) 3)
(*.f64 (sqrt.f64 1/2) im)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3) 1/3)
(*.f64 (sqrt.f64 1/2) im)
(sqrt.f64 (*.f64 1/2 (*.f64 im im)))
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 1/2)) im))
(*.f64 (sqrt.f64 1/2) im)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (sqrt.f64 1/2)))))
(*.f64 (sqrt.f64 1/2) im)
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3))
(*.f64 (sqrt.f64 1/2) im)
(cbrt.f64 (*.f64 (pow.f64 im 3) (*.f64 1/2 (sqrt.f64 1/2))))
(cbrt.f64 (*.f64 1/2 (*.f64 (sqrt.f64 1/2) (pow.f64 im 3))))
(cbrt.f64 (*.f64 (sqrt.f64 1/2) (*.f64 1/2 (pow.f64 im 3))))
(cbrt.f64 (*.f64 (*.f64 1/2 (sqrt.f64 1/2)) (pow.f64 im 3)))
(cbrt.f64 (*.f64 1/2 (*.f64 (sqrt.f64 1/2) (pow.f64 im 3))))
(cbrt.f64 (*.f64 (sqrt.f64 1/2) (*.f64 1/2 (pow.f64 im 3))))
(expm1.f64 (log1p.f64 (*.f64 im (sqrt.f64 1/2))))
(*.f64 (sqrt.f64 1/2) im)
(exp.f64 (log.f64 (*.f64 im (sqrt.f64 1/2))))
(*.f64 (sqrt.f64 1/2) im)
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 1/2))) 1))
(*.f64 (sqrt.f64 1/2) im)
(log1p.f64 (expm1.f64 (*.f64 im (sqrt.f64 1/2))))
(*.f64 (sqrt.f64 1/2) im)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re))))) 1)
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(/.f64 (*.f64 im (sqrt.f64 1/2)) (/.f64 (sqrt.f64 re) (sqrt.f64 2)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 1/2))))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2))))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (pow.f64 2 1/4) (/.f64 (sqrt.f64 re) (*.f64 (pow.f64 2 1/4) (*.f64 im (sqrt.f64 1/2)))))
(*.f64 (/.f64 (pow.f64 2 1/4) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 2 1/4) im) (sqrt.f64 1/2)))
(*.f64 (*.f64 (/.f64 (pow.f64 2 1/4) (sqrt.f64 re)) (*.f64 im (pow.f64 2 1/4))) (sqrt.f64 1/2))
(/.f64 (cbrt.f64 2) (/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 im (sqrt.f64 1/2)))))
(*.f64 (/.f64 (cbrt.f64 2) (sqrt.f64 re)) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) im) (sqrt.f64 1/2)))
(*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (cbrt.f64 (sqrt.f64 2)))) (/.f64 (cbrt.f64 2) (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (/.f64 (sqrt.f64 re) 1))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (sqrt.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2))) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) (sqrt.f64 re)) (sqrt.f64 (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))))
(*.f64 (sqrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im))) (/.f64 (sqrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im))) (sqrt.f64 re)))
(/.f64 (sqrt.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 2)))) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 2))))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2))) (cbrt.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)))))
(/.f64 (cbrt.f64 (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) (/.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))))) (cbrt.f64 (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))))))
(*.f64 (cbrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im))) (/.f64 (cbrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im))))))
(*.f64 (cbrt.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 2)))) (/.f64 (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 2)))) (cbrt.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 2))))) (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (/.f64 (sqrt.f64 re) im))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 im (sqrt.f64 1/2)))))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im (sqrt.f64 1/2)))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 re)) (cbrt.f64 (*.f64 (sqrt.f64 1/2) im)))
(*.f64 (cbrt.f64 (*.f64 (sqrt.f64 1/2) im)) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 1/2 (*.f64 im im))))))
(/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) (sqrt.f64 re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) (/.f64 (sqrt.f64 re) 1))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (/.f64 (sqrt.f64 (sqrt.f64 re)) (sqrt.f64 (pow.f64 re -1/2))))
(*.f64 (*.f64 (*.f64 (/.f64 im (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 (pow.f64 re -1/2)))
(/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (/.f64 1 (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (/.f64 (cbrt.f64 re) (sqrt.f64 2))) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (sqrt.f64 1/2)) (/.f64 (sqrt.f64 2) (cbrt.f64 re)))
(/.f64 (*.f64 (pow.f64 2 1/4) (sqrt.f64 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 re) (*.f64 (pow.f64 2 1/4) (sqrt.f64 (*.f64 im (sqrt.f64 1/2))))))
(*.f64 (/.f64 (pow.f64 2 1/4) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 2 1/4) im) (sqrt.f64 1/2)))
(*.f64 (*.f64 (/.f64 (pow.f64 2 1/4) (sqrt.f64 re)) (*.f64 im (pow.f64 2 1/4))) (sqrt.f64 1/2))
(/.f64 (*.f64 1 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1)) (sqrt.f64 re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) -1) (neg.f64 (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (/.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 -1)))
(*.f64 (/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)))
(/.f64 (*.f64 (sqrt.f64 1/2) im) (/.f64 (sqrt.f64 (neg.f64 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1))))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) 1) (sqrt.f64 re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) 1) (/.f64 (sqrt.f64 re) 1))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) -1) (neg.f64 (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (/.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 -1)))
(*.f64 (/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)))
(/.f64 (*.f64 (sqrt.f64 1/2) im) (/.f64 (sqrt.f64 (neg.f64 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1))))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 (pow.f64 re -1/2))) 1) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (/.f64 (sqrt.f64 (sqrt.f64 re)) (sqrt.f64 (pow.f64 re -1/2))))
(*.f64 (*.f64 (*.f64 (/.f64 im (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 (pow.f64 re -1/2)))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (/.f64 1 (cbrt.f64 re))) 1) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (/.f64 (cbrt.f64 re) (sqrt.f64 2))) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (sqrt.f64 1/2)) (/.f64 (sqrt.f64 2) (cbrt.f64 re)))
(/.f64 (*.f64 -1 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2))) (neg.f64 (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (*.f64 (sqrt.f64 -1) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (/.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 -1)))
(*.f64 (/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)))
(/.f64 (*.f64 (sqrt.f64 1/2) im) (/.f64 (sqrt.f64 (neg.f64 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1))))
(/.f64 (/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) (sqrt.f64 re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (/.f64 (cbrt.f64 re) (sqrt.f64 2))) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (sqrt.f64 1/2)) (/.f64 (sqrt.f64 2) (cbrt.f64 re)))
(/.f64 (/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 (cbrt.f64 (*.f64 re re)))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (*.f64 (sqrt.f64 (cbrt.f64 re)) (sqrt.f64 (cbrt.f64 (*.f64 re re)))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (cbrt.f64 re))) (/.f64 (sqrt.f64 2) (sqrt.f64 (cbrt.f64 (*.f64 re re)))))
(/.f64 (/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) 1) (sqrt.f64 re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (/.f64 (*.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 2)) 1) (sqrt.f64 (cbrt.f64 (*.f64 re re)))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (*.f64 (sqrt.f64 (cbrt.f64 re)) (sqrt.f64 (cbrt.f64 (*.f64 re re)))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (cbrt.f64 re))) (/.f64 (sqrt.f64 2) (sqrt.f64 (cbrt.f64 (*.f64 re re)))))
(pow.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re))) 1)
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(pow.f64 (sqrt.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))) 2)
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))) 3)
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re))) 3) 1/3)
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(sqrt.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 1/2 re))))
(sqrt.f64 (*.f64 2 (*.f64 im (*.f64 im (/.f64 1/2 re)))))
(sqrt.f64 (*.f64 im (*.f64 (*.f64 im (/.f64 1/2 re)) 2)))
(sqrt.f64 (*.f64 (/.f64 1/2 re) (*.f64 (*.f64 2 im) im)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) (sqrt.f64 (/.f64 1/2 re))) (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re))))))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re))) 3))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 3) (*.f64 2 (sqrt.f64 2))))
(cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 3)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(exp.f64 (log.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))) 1))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))))) 1)
(*.f64 im (sqrt.f64 (/.f64 1/2 re)))
(/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 1/2)))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 im (sqrt.f64 1/2)) (/.f64 (sqrt.f64 re) 1))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 1/2))))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im))
(/.f64 (pow.f64 1/2 1/4) (/.f64 (sqrt.f64 re) (*.f64 (pow.f64 1/2 1/4) im)))
(*.f64 (/.f64 (pow.f64 1/2 1/4) (sqrt.f64 re)) (*.f64 im (pow.f64 1/2 1/4)))
(/.f64 (pow.f64 1/2 1/4) (/.f64 (/.f64 (sqrt.f64 re) im) (pow.f64 1/2 1/4)))
(*.f64 (pow.f64 1/2 1/4) (/.f64 (pow.f64 1/2 1/4) (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 im) (sqrt.f64 1/2))))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (*.f64 (sqrt.f64 1/2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 im) (sqrt.f64 im))))
(/.f64 (sqrt.f64 (*.f64 im (sqrt.f64 1/2))) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 im (sqrt.f64 1/2)))))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im))
(/.f64 (cbrt.f64 1/2) (/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 1/2)) im)))
(*.f64 (/.f64 (cbrt.f64 1/2) (sqrt.f64 re)) (*.f64 im (cbrt.f64 (sqrt.f64 1/2))))
(*.f64 (cbrt.f64 (sqrt.f64 1/2)) (/.f64 (cbrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 im) (sqrt.f64 1/2))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)) (*.f64 (sqrt.f64 1/2) (cbrt.f64 im)))
(*.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(*.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im)))))
(/.f64 (cbrt.f64 (*.f64 im (sqrt.f64 1/2))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 re)) (cbrt.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 (cbrt.f64 (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 re)))
(/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im (sqrt.f64 1/2)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 re)) (cbrt.f64 (*.f64 (sqrt.f64 1/2) im)))
(*.f64 (cbrt.f64 (*.f64 (sqrt.f64 1/2) im)) (/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 1/2) im) (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 im (/.f64 (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))) (sqrt.f64 1/2)))
(*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 (sqrt.f64 1/2) (cbrt.f64 re)))
(/.f64 (*.f64 im (pow.f64 1/2 1/4)) (/.f64 (sqrt.f64 re) (pow.f64 1/2 1/4)))
(*.f64 (/.f64 (pow.f64 1/2 1/4) (sqrt.f64 re)) (*.f64 im (pow.f64 1/2 1/4)))
(/.f64 (pow.f64 1/2 1/4) (/.f64 (/.f64 (sqrt.f64 re) im) (pow.f64 1/2 1/4)))
(*.f64 (pow.f64 1/2 1/4) (/.f64 (pow.f64 1/2 1/4) (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 im (cbrt.f64 1/2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (sqrt.f64 1/2))))
(*.f64 (/.f64 (cbrt.f64 1/2) (sqrt.f64 re)) (*.f64 im (cbrt.f64 (sqrt.f64 1/2))))
(*.f64 (cbrt.f64 (sqrt.f64 1/2)) (/.f64 (cbrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (*.f64 (sqrt.f64 1/2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 im) (sqrt.f64 im))))
(/.f64 (*.f64 (sqrt.f64 1/2) (cbrt.f64 (*.f64 im im))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)) (*.f64 (sqrt.f64 1/2) (cbrt.f64 im)))
(*.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))))
(*.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im)))))
(/.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) -1) (neg.f64 (sqrt.f64 re)))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 1/2) im) (/.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 -1)))
(/.f64 (sqrt.f64 -1) (/.f64 (/.f64 (sqrt.f64 (neg.f64 re)) im) (sqrt.f64 1/2)))
(/.f64 (*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (sqrt.f64 re))) 1) (sqrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 re)) 1) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 1/2) im) (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 im (/.f64 (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))) (sqrt.f64 1/2)))
(*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 (sqrt.f64 1/2) (cbrt.f64 re)))
(/.f64 (*.f64 -1 (*.f64 im (sqrt.f64 1/2))) (neg.f64 (sqrt.f64 re)))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 1/2) im) (/.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 -1)))
(/.f64 (sqrt.f64 -1) (/.f64 (/.f64 (sqrt.f64 (neg.f64 re)) im) (sqrt.f64 1/2)))
(/.f64 (*.f64 1 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (sqrt.f64 re)))) (sqrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 1 (/.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 (sqrt.f64 re)))) (cbrt.f64 re))
(/.f64 (*.f64 (sqrt.f64 1/2) im) (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 im (/.f64 (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))) (sqrt.f64 1/2)))
(*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 (sqrt.f64 1/2) (cbrt.f64 re)))
(/.f64 (*.f64 -1 (/.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 (sqrt.f64 re)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (neg.f64 (/.f64 im (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 1/2)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 1/2) (neg.f64 im)) (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) 1) (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im))
(/.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (cbrt.f64 (*.f64 re re)))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 1/2) im) (*.f64 (sqrt.f64 (cbrt.f64 re)) (sqrt.f64 (cbrt.f64 (*.f64 re re)))))
(*.f64 (/.f64 im (sqrt.f64 (cbrt.f64 re))) (/.f64 (sqrt.f64 1/2) (sqrt.f64 (cbrt.f64 (*.f64 re re)))))
(*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 (cbrt.f64 re))) (/.f64 im (sqrt.f64 (cbrt.f64 (*.f64 re re)))))
(pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 1)
(*.f64 im (sqrt.f64 (/.f64 1/2 re)))
(pow.f64 (sqrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) 2)
(*.f64 im (sqrt.f64 (/.f64 1/2 re)))
(pow.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) 3)
(*.f64 im (sqrt.f64 (/.f64 1/2 re)))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 3) 1/3)
(*.f64 im (sqrt.f64 (/.f64 1/2 re)))
(sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/2 re)))
(sqrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))
(log.f64 (pow.f64 (exp.f64 im) (sqrt.f64 (/.f64 1/2 re))))
(*.f64 im (sqrt.f64 (/.f64 1/2 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))))))
(*.f64 im (sqrt.f64 (/.f64 1/2 re)))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 3))
(*.f64 im (sqrt.f64 (/.f64 1/2 re)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3) (/.f64 (pow.f64 re -1/2) re)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 1/2) im) 3) (/.f64 (pow.f64 re -1/2) re)))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3) (*.f64 re (sqrt.f64 re))))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 (sqrt.f64 1/2) im) 3) (*.f64 re (sqrt.f64 re))))
(expm1.f64 (log1p.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))))
(*.f64 im (sqrt.f64 (/.f64 1/2 re)))
(exp.f64 (log.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))))
(*.f64 im (sqrt.f64 (/.f64 1/2 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) 1))
(*.f64 im (sqrt.f64 (/.f64 1/2 re)))
(log1p.f64 (expm1.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))))
(*.f64 im (sqrt.f64 (/.f64 1/2 re)))
(-.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 1 1/2) (pow.f64 re -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 (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 (sqrt.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 (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 (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)) (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 (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 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (*.f64 (sqrt.f64 (/.f64 1 (cbrt.f64 re))) (*.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 (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 (cbrt.f64 (sqrt.f64 (pow.f64 re -1/2))) (*.f64 (sqrt.f64 (/.f64 1 (cbrt.f64 re))) (*.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 (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 (/.f64 (pow.f64 re -1/2) re) 1/6) (pow.f64 (/.f64 (pow.f64 re -1/2) re) 1/6))
(cbrt.f64 (/.f64 (pow.f64 re -1/2) re))
(/.f64 1 (sqrt.f64 re))
(/.f64 1 (/.f64 (sqrt.f64 re) 1))
(/.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 (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 1 (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (cbrt.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 (/.f64 1 (cbrt.f64 re)) 1) (cbrt.f64 (sqrt.f64 re)))
(/.f64 1 (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 1 (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (cbrt.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 (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 (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 (*.f64 1 (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (pow.f64 1 1/2) 1) (sqrt.f64 re))
(/.f64 1 (sqrt.f64 re))
(/.f64 (*.f64 (pow.f64 1 1/2) 1) (/.f64 (sqrt.f64 re) 1))
(/.f64 1 (sqrt.f64 re))
(/.f64 (*.f64 (pow.f64 1 1/2) -1) (neg.f64 (sqrt.f64 re)))
(/.f64 1 (sqrt.f64 re))
(/.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 -1)) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.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 (cbrt.f64 (*.f64 re re)))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 1 (*.f64 (sqrt.f64 (cbrt.f64 re)) (sqrt.f64 (cbrt.f64 (*.f64 re re)))))
(/.f64 1 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 re re))) (sqrt.f64 (cbrt.f64 re))))
(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 (/.f64 (pow.f64 re -1/2) re) 1/3)
(cbrt.f64 (/.f64 (pow.f64 re -1/2) re))
(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 (/.f64 (pow.f64 re -1/2) re))
(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)
(exp.f64 (*.f64 (log.f64 (pow.f64 re -1/2)) 1))
(pow.f64 re -1/2)
(log1p.f64 (expm1.f64 (pow.f64 re -1/2)))
(pow.f64 re -1/2)

eval625.0ms (6.9%)

Compiler

Compiled 21367 to 14005 computations (34.5% saved)

prune308.0ms (3.4%)

Pruning

14 alts after pruning (11 fresh and 3 done)

PrunedKeptTotal
New91110921
Fresh415
Picked101
Done235
Total91814932
Error
0.2b
Counts
932 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
49.7b
(*.f64 1/2 (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3))
50.7b
(*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
49.4b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
49.4b
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
12.9b
(*.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)) (sqrt.f64 2)))
49.4b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
27.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
47.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2)))
29.1b
(*.f64 1/2 (*.f64 (sqrt.f64 im) (sqrt.f64 2)))
53.9b
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
12.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
27.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
47.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
28.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 264 to 214 computations (18.9% saved)

localize27.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3))
0.4b
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)) (sqrt.f64 2))
0.6b
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)
0.7b
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
Compiler

Compiled 66 to 29 computations (56.1% saved)

series20.0ms (0.2%)

Counts
4 → 24
Calls

24 calls:

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

rewrite102.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1060×*-commutative
862×unswap-sqr
646×swap-sqr
554×associate-*r/
490×associate-*l/
Iterations

Useful iterations: 0 (0.0ms)

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

simplify154.0ms (1.7%)

Algorithm
egg-herbie
Rules
1194×associate-*r*
1046×associate-*l*
810×fma-def
750×*-commutative
538×associate-/l*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
071114425
1196113705
Stop Event
node limit
Counts
257 → 374
Calls
Call 1
Inputs
(pow.f64 im 1/3)
(+.f64 (pow.f64 im 1/3) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) re)))
(+.f64 (pow.f64 im 1/3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2)))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) re))))
(+.f64 (pow.f64 im 1/3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2)))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (pow.f64 re 3) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 -1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)))))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) re)))))
(*.f64 (pow.f64 1 1/3) im)
(+.f64 (*.f64 (+.f64 (*.f64 -1/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 -2/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9))) re) (*.f64 (pow.f64 1 1/3) im))
(+.f64 (*.f64 (+.f64 (*.f64 -1/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 -2/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9))) re) (+.f64 (*.f64 (pow.f64 1 1/3) im) (*.f64 (+.f64 (*.f64 2/9 (pow.f64 (/.f64 1 im) 1/9)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 (pow.f64 (*.f64 1 im) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9)))))) (pow.f64 re 2))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 -2/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9))) re) (+.f64 (*.f64 (pow.f64 1 1/3) im) (+.f64 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 1 1/3) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 -1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 im) 1/3) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 -1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9))))) (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))))))) (*.f64 (+.f64 (*.f64 2/9 (pow.f64 (/.f64 1 im) 1/9)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 (pow.f64 (*.f64 1 im) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9)))))) (pow.f64 re 2)))))
(*.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 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))) 1)
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 1)
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 1 1/3))
(*.f64 1 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2))
(*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/3))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/3) (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))) (*.f64 (sqrt.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2))) (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2))))
(*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))) (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))
(/.f64 (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) 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 1 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 1 (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/3) (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 1 1/3) (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 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) 1) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) 1) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 1)
(pow.f64 (-.f64 (hypot.f64 re im) re) 1/3)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 2)
(pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3)
(sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))
(log.f64 (exp.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))))
(expm1.f64 (log1p.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(exp.f64 (log.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(log1p.f64 (expm1.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) 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 (hypot.f64 re im) re)
(-.f64 (hypot.f64 re im) (-.f64 re (fma.f64 (neg.f64 re) 1 re)))
(-.f64 (hypot.f64 re im) (-.f64 re (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(-.f64 (hypot.f64 re im) (-.f64 re (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) 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 (-.f64 (hypot.f64 re im) re))) (-.f64 1 (fma.f64 (neg.f64 re) 1 re)))
(-.f64 (exp.f64 (log1p.f64 (-.f64 (hypot.f64 re im) re))) (-.f64 1 (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(-.f64 (exp.f64 (log1p.f64 (-.f64 (hypot.f64 re im) re))) (-.f64 1 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 re im))) (+.f64 re 1))
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 re im))) (-.f64 1 (neg.f64 re)))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) 2) (+.f64 re (hypot.f64 re im))) (/.f64 re (/.f64 (+.f64 re (hypot.f64 re im)) re)))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) 2) (+.f64 re (hypot.f64 re im))) (-.f64 (/.f64 re (/.f64 (+.f64 re (hypot.f64 re im)) re)) (fma.f64 (neg.f64 re) 1 re)))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) 2) (+.f64 re (hypot.f64 re im))) (-.f64 (/.f64 re (/.f64 (+.f64 re (hypot.f64 re im)) re)) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) 2) (+.f64 re (hypot.f64 re im))) (-.f64 (/.f64 re (/.f64 (+.f64 re (hypot.f64 re im)) re)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) 3) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (/.f64 (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) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (-.f64 (/.f64 (pow.f64 re 3) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (fma.f64 (neg.f64 re) 1 re)))
(-.f64 (/.f64 (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) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(-.f64 (/.f64 (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) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(-.f64 (+.f64 (hypot.f64 re im) 0) re)
(-.f64 (+.f64 (neg.f64 re) (exp.f64 (log1p.f64 (hypot.f64 re im)))) 1)
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3))
(*.f64 (cbrt.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 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2)))
(*.f64 (-.f64 (hypot.f64 re im) re) 1)
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 1 (-.f64 (hypot.f64 re im) re))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (*.f64 (cbrt.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/6) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) (*.f64 (cbrt.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 (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))
(*.f64 (*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(*.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 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 (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 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3) (cbrt.f64 (-.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) 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 (*.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (*.f64 re re) (*.f64 (+.f64 re (hypot.f64 re im)) (+.f64 re (hypot.f64 re im)))))) (-.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 (pow.f64 (hypot.f64 re im) 2) 3) (pow.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) 3))) (+.f64 (*.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.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 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2)) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (*.f64 (pow.f64 1 3/2) (pow.f64 1 3/2)) (-.f64 (hypot.f64 re im) re))
(*.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2)) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2)))
(*.f64 (*.f64 (pow.f64 1 1/2) (pow.f64 1 1/2)) (-.f64 (hypot.f64 re im) re))
(*.f64 (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)))
(*.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2)) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2)))
(/.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 (*.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (pow.f64 re 3) (pow.f64 re 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) 3) (pow.f64 re 3))))
(/.f64 (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.f64 re (pow.f64 re 3))) (*.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) 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 (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) 3) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (pow.f64 re 3) (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 2) 3) (pow.f64 (*.f64 re re) 3)) (*.f64 (+.f64 re (hypot.f64 re im)) (+.f64 (*.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (*.f64 re re) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))))
(/.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 (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 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 (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 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3) (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 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3) (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 (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) 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 (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.f64 re (pow.f64 re 3))) (/.f64 1 (+.f64 re (hypot.f64 re im)))) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 2) 3) (pow.f64 (*.f64 re re) 3)) (/.f64 1 (+.f64 re (hypot.f64 re im)))) (+.f64 (*.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (*.f64 re re) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (pow.f64 re 3) (pow.f64 re 3))) (/.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) 3) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (pow.f64 re 3) (+.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))))))
(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 (cbrt.f64 (pow.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 (*.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 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (*.f64 (sqrt.f64 2) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (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) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (cbrt.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 (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 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3) 1/3)
(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 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1)
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 1 3/2))
(*.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 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2))
(*.f64 (pow.f64 1 3/2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.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 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (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 (-.f64 (hypot.f64 re im) re) 1/6) (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 3/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 3/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 (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 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (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 (-.f64 (hypot.f64 re im) re) 1/6)) (cbrt.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))))))
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2)
(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 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 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
(pow.f64 im 1/3)
(cbrt.f64 im)
(+.f64 (pow.f64 im 1/3) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) re)))
(+.f64 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) re)) (cbrt.f64 im))
(fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) re) (cbrt.f64 im))
(+.f64 (pow.f64 im 1/3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2)))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) re))))
(+.f64 (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 re re))) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) re))) (cbrt.f64 im))
(+.f64 (fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) re) (cbrt.f64 im)) (*.f64 (*.f64 re (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))))) (*.f64 1/3 (cbrt.f64 (/.f64 1 (*.f64 im im))))))
(+.f64 (pow.f64 im 1/3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2)))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (pow.f64 re 3) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 -1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)))))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) re)))))
(+.f64 (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 re re))) (*.f64 -1/3 (+.f64 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 (pow.f64 re 3) (fma.f64 -2/3 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) -1/27)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) re)))) (cbrt.f64 im))
(+.f64 (fma.f64 -1/3 (fma.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 (pow.f64 re 3) (fma.f64 -2/3 (*.f64 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) -1/27))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) re)) (*.f64 (*.f64 re (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))))) (*.f64 1/3 (cbrt.f64 (/.f64 1 (*.f64 im im)))))) (cbrt.f64 im))
(*.f64 (pow.f64 1 1/3) im)
im
(+.f64 (*.f64 (+.f64 (*.f64 -1/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 -2/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9))) re) (*.f64 (pow.f64 1 1/3) im))
(fma.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 1/18) (pow.f64 (pow.f64 im 4) 1/18)) -1) re im)
(fma.f64 re (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 1/18) (pow.f64 (pow.f64 im 4) 1/18)) -1) im)
(+.f64 (*.f64 (+.f64 (*.f64 -1/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 -2/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9))) re) (+.f64 (*.f64 (pow.f64 1 1/3) im) (*.f64 (+.f64 (*.f64 2/9 (pow.f64 (/.f64 1 im) 1/9)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 (pow.f64 (*.f64 1 im) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9)))))) (pow.f64 re 2))))
(+.f64 (fma.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 1/18) (pow.f64 (pow.f64 im 4) 1/18)) -1) re im) (*.f64 (fma.f64 2/9 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) (+.f64 (*.f64 1/3 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18))))) (*.f64 (cbrt.f64 im) (fma.f64 2/3 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (cbrt.f64 (/.f64 1 im))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18))))))) (*.f64 re re)))
(fma.f64 re (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 1/18) (pow.f64 (pow.f64 im 4) 1/18)) -1) (fma.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) 2/9 (fma.f64 (cbrt.f64 im) (fma.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18)) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 im))))) (*.f64 1/3 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18))))))) (*.f64 re re) im))
(+.f64 (*.f64 (+.f64 (*.f64 -1/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 -2/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9))) re) (+.f64 (*.f64 (pow.f64 1 1/3) im) (+.f64 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 1 1/3) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 -1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 im) 1/3) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 -1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9))))) (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))))))) (*.f64 (+.f64 (*.f64 2/9 (pow.f64 (/.f64 1 im) 1/9)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 (pow.f64 (*.f64 1 im) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9)))))) (pow.f64 re 2)))))
(+.f64 (fma.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 1/18) (pow.f64 (pow.f64 im 4) 1/18)) -1) re im) (fma.f64 (pow.f64 re 3) (+.f64 (*.f64 -1/3 (fma.f64 -2/3 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) -1/27))) (fma.f64 (cbrt.f64 im) (fma.f64 -2/9 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18))) (*.f64 -2/3 (*.f64 (fma.f64 -2/3 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) -1/27)) (cbrt.f64 (/.f64 1 im))))) (fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) (fma.f64 2/3 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (cbrt.f64 (/.f64 1 im))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18))))) (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) -2/9)))) (*.f64 (fma.f64 2/9 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) (+.f64 (*.f64 1/3 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18))))) (*.f64 (cbrt.f64 im) (fma.f64 2/3 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (cbrt.f64 (/.f64 1 im))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18))))))) (*.f64 re re))))
(+.f64 (fma.f64 re (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 1/18) (pow.f64 (pow.f64 im 4) 1/18)) -1) im) (fma.f64 (pow.f64 re 3) (fma.f64 -1/3 (fma.f64 -2/3 (*.f64 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) -1/27)) (fma.f64 (cbrt.f64 im) (fma.f64 -2/3 (*.f64 (fma.f64 -2/3 (*.f64 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) -1/27)) (cbrt.f64 (/.f64 1 im))) (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18) (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))))))) (fma.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))) (fma.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18)) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 im))))) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) -2/9))))) (*.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) 2/9 (fma.f64 (cbrt.f64 im) (fma.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18)) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 im))))) (*.f64 1/3 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18))))))) (*.f64 re 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 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2))))
(+.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 (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) (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 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/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)))))) (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.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 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (sqrt.f64 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 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))))
(fma.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 -1/16 (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3)))))
(+.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 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 im 5) (-.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))))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (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 (pow.f64 im 5) (-.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 re)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (sqrt.f64 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 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (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 (pow.f64 (sqrt.f64 1/2) 2) (*.f64 re re)))))) (pow.f64 im 7)) (sqrt.f64 1/2))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 im 5) (-.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))))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))))))
(+.f64 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 2) (/.f64 (/.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/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 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (pow.f64 im 5) (-.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))))))) (fma.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 -1/16 (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 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 re -1/2) (*.f64 1/2 (*.f64 re (*.f64 re (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))))))))
(+.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 re -1/2) (*.f64 1/2 (*.f64 re (*.f64 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 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (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 -1/16 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)))))
(+.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 (sqrt.f64 re) (/.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 (sqrt.f64 1/2) (pow.f64 im 5)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/16 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2))))))
(+.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 (pow.f64 (sqrt.f64 1/2) 2) (*.f64 re re)))))))) (*.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 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 (sqrt.f64 1/2) (pow.f64 im 5))))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/16 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2))))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))) 1)
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 1)
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 1 1/3))
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 1 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2))
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/3))
(*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/3) (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (*.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 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (*.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 (sqrt.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))) (*.f64 (sqrt.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))) (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))))
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2))) (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2))))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))
(*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))) (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))))
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2))) (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2))))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) (*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))
(/.f64 (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) 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))) (cbrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))))
(/.f64 (*.f64 1 (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))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 1 (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))) (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))) (cbrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))))
(/.f64 (*.f64 (pow.f64 1 1/3) (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))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (*.f64 (pow.f64 1 1/3) (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))) (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))) (cbrt.f64 (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))) 1) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (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 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) 1) (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))) (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))) (cbrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))))
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 1)
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(pow.f64 (-.f64 (hypot.f64 re im) re) 1/3)
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 2)
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3)
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))
(fabs.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(log.f64 (exp.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)))))
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(expm1.f64 (log1p.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(exp.f64 (log.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(log1p.f64 (expm1.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
(+.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 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re)
(+.f64 (hypot.f64 re im) (+.f64 (neg.f64 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 (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 (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 (-.f64 (hypot.f64 re im) re) re) 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 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 (+.f64 (-.f64 (hypot.f64 re im) re) re) (-.f64 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 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 (-.f64 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) re) (+.f64 (-.f64 (hypot.f64 re im) 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 (+.f64 (-.f64 (hypot.f64 re im) re) re) (-.f64 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 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 (-.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 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re) re) (+.f64 (-.f64 (hypot.f64 re im) 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 (-.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 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) 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) (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) (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) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re)
(+.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) (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) 1))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) 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 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re)
(+.f64 (neg.f64 re) (+.f64 (hypot.f64 re im) (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 (neg.f64 re) (+.f64 (hypot.f64 re im) (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 (fma.f64 (neg.f64 re) 1 re) (-.f64 (hypot.f64 re im) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) 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 (sqrt.f64 re)) (sqrt.f64 re) 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) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) 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 (hypot.f64 re im) re)
(-.f64 (hypot.f64 re im) (-.f64 re (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re)
(-.f64 (hypot.f64 re im) (-.f64 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 (hypot.f64 re im) (-.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 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) 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 (hypot.f64 re im) re)
(-.f64 (exp.f64 (log1p.f64 (-.f64 (hypot.f64 re im) re))) (-.f64 1 (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re)
(-.f64 (exp.f64 (log1p.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) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re))
(-.f64 (exp.f64 (log1p.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) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 re im))) (+.f64 re 1))
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 re im))) (+.f64 1 re))
(-.f64 (expm1.f64 (log1p.f64 (hypot.f64 re im))) re)
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 re im))) (-.f64 1 (neg.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 re im))) (+.f64 1 re))
(-.f64 (expm1.f64 (log1p.f64 (hypot.f64 re im))) re)
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) 2) (+.f64 re (hypot.f64 re im))) (/.f64 re (/.f64 (+.f64 re (hypot.f64 re im)) 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 (/.f64 (+.f64 re (hypot.f64 re im)) re)) (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (+.f64 (-.f64 (hypot.f64 re im) re) re) re)
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) 2) (+.f64 re (hypot.f64 re im))) (-.f64 (/.f64 re (/.f64 (+.f64 re (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 (sqrt.f64 re)) (sqrt.f64 re) re))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) 2) (+.f64 re (hypot.f64 re im))) (-.f64 (/.f64 re (/.f64 (+.f64 re (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) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) 3) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (/.f64 (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)) (+.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) 3) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (-.f64 (/.f64 (pow.f64 re 3) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (fma.f64 (neg.f64 re) 1 re)))
(+.f64 (/.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))))) (fma.f64 (neg.f64 re) 1 re))
(+.f64 (+.f64 re (neg.f64 re)) (/.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) 3) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (-.f64 (/.f64 (pow.f64 re 3) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re)))
(+.f64 (/.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))))) (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 (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) 3) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (-.f64 (/.f64 (pow.f64 re 3) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re)))
(+.f64 (/.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))))) (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 (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 (hypot.f64 re im) 0) re)
(-.f64 (hypot.f64 re im) re)
(-.f64 (+.f64 (neg.f64 re) (exp.f64 (log1p.f64 (hypot.f64 re im)))) 1)
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 re im))) (+.f64 1 re))
(-.f64 (expm1.f64 (log1p.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 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3))
(-.f64 (hypot.f64 re im) re)
(*.f64 (cbrt.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 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (-.f64 (hypot.f64 re im) re) 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 (hypot.f64 re im) re)
(*.f64 1 (-.f64 (hypot.f64 re im) re))
(-.f64 (hypot.f64 re im) re)
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) (*.f64 (cbrt.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 (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))
(-.f64 (hypot.f64 re im) re)
(*.f64 (*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3))
(*.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(-.f64 (hypot.f64 re im) re)
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(-.f64 (hypot.f64 re im) re)
(*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2))
(-.f64 (hypot.f64 re im) 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 (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 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3) (cbrt.f64 (-.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) 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)) (+.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 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (*.f64 re re) (*.f64 (+.f64 re (hypot.f64 re im)) (+.f64 re (hypot.f64 re im)))))) (-.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 (*.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.f64 re (*.f64 re (*.f64 (+.f64 re (hypot.f64 re im)) (+.f64 re (hypot.f64 re im))))))) (-.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) (*.f64 (+.f64 re (hypot.f64 re im)) (*.f64 (*.f64 re re) (+.f64 re (hypot.f64 re im)))))) (-.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 (pow.f64 (hypot.f64 re im) 2) 3) (pow.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) 3))) (+.f64 (*.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.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 (pow.f64 (hypot.f64 re im) 2) 3) (pow.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) 3))) (fma.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3) (*.f64 re (*.f64 (+.f64 re (hypot.f64 re im)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (neg.f64 (pow.f64 (hypot.f64 re im) 2)))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 (+.f64 (pow.f64 (*.f64 re (+.f64 re (hypot.f64 re im))) 3) (pow.f64 (hypot.f64 re im) 6)) (fma.f64 re (*.f64 (+.f64 re (hypot.f64 re im)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (neg.f64 (pow.f64 (hypot.f64 re im) 2)))) (pow.f64 (hypot.f64 re im) 4))))
(*.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2)) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (*.f64 (pow.f64 1 3/2) (pow.f64 1 3/2)) (-.f64 (hypot.f64 re im) re))
(-.f64 (hypot.f64 re im) re)
(*.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2)) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (*.f64 (pow.f64 1 1/2) (pow.f64 1 1/2)) (-.f64 (hypot.f64 re im) re))
(-.f64 (hypot.f64 re im) re)
(*.f64 (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3))
(*.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2)) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3))
(/.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 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (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 (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))) (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 (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))))
(/.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 (*.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 (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 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (*.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 (*.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (pow.f64 re 3) (pow.f64 re 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) 3) (pow.f64 re 3))))
(/.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 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 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.f64 re (pow.f64 re 3))) (*.f64 (+.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) 4) (pow.f64 re 4)) (+.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) 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 (-.f64 (neg.f64 re) (hypot.f64 re im)))))
(/.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) 3) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (pow.f64 re 3) (+.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 (*.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (pow.f64 re 6)))))
(/.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) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (pow.f64 (hypot.f64 re im) 6))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 2) 3) (pow.f64 (*.f64 re re) 3)) (*.f64 (+.f64 re (hypot.f64 re im)) (+.f64 (*.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (*.f64 re re) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 2) 3) (pow.f64 re 6)) (*.f64 (+.f64 re (hypot.f64 re im)) (fma.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3) (*.f64 re (*.f64 re (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (+.f64 re (hypot.f64 re im))) (fma.f64 (*.f64 re re) (fma.f64 re re (pow.f64 (hypot.f64 re im) 2)) (pow.f64 (hypot.f64 re im) 4)))
(/.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) (neg.f64 (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)) (-.f64 (neg.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 (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 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 (-.f64 (neg.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 (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 (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 (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)))) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))
(/.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3) (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 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3) (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 (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 (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)))) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))
(/.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 (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 (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 (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)))) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))
(/.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 (-.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 (*.f64 re re) (neg.f64 (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)) (-.f64 (neg.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 (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.f64 re (pow.f64 re 3))) (/.f64 1 (+.f64 re (hypot.f64 re im)))) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))
(/.f64 (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.f64 re (pow.f64 re 3))) (*.f64 (+.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) 4) (pow.f64 re 4)) (+.f64 re (hypot.f64 re im))) (fma.f64 re re (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 2) 3) (pow.f64 (*.f64 re re) 3)) (/.f64 1 (+.f64 re (hypot.f64 re im)))) (+.f64 (*.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (*.f64 re re) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 2) 3) (pow.f64 re 6)) (*.f64 (+.f64 re (hypot.f64 re im)) (fma.f64 (hypot.f64 re im) (pow.f64 (hypot.f64 re im) 3) (*.f64 re (*.f64 re (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))))))
(/.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 6) (pow.f64 re 6)) (+.f64 re (hypot.f64 re im))) (fma.f64 (*.f64 re re) (fma.f64 re re (pow.f64 (hypot.f64 re im) 2)) (pow.f64 (hypot.f64 re im) 4)))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (pow.f64 re 3) (pow.f64 re 3))) (/.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) 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 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) 3) (pow.f64 (hypot.f64 re im) 3)) (*.f64 (pow.f64 re 3) (+.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 (*.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (pow.f64 re 6)))))
(/.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) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (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)))
(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) (neg.f64 (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)) (-.f64 (neg.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 (cbrt.f64 (pow.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)
(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 (*.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) 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 2))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (*.f64 (sqrt.f64 2) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (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) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))
(*.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) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (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) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))
(*.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) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)))
(/.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 (*.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 (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) 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 2))
(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 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/2)
(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)))
(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))))
(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 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3)
(*.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 3/2))
(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 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3)
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (fabs.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (pow.f64 1 3/2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) 1/2) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (fabs.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 (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 (*.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 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (/.f64 (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) 2) (*.f64 re re))) (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(/.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (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 (-.f64 (hypot.f64 re im) re) 1/6) (/.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 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (/.f64 (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 (pow.f64 1 3/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 3/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 (*.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 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (/.f64 (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) 2) (*.f64 re re))) (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (cbrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (/.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 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (/.f64 (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 (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))))
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2)
(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 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3)
(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%)

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)

series1.0ms (0%)

Counts
1 → 12
Calls

6 calls:

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

rewrite53.0ms (0.6%)

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.5%)

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

localize32.0ms (0.4%)

Local error

Found 2 expressions with local error:

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

Compiled 27 to 8 computations (70.4% saved)

series2.0ms (0%)

Counts
2 → 36
Calls

12 calls:

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

rewrite104.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1658×add-sqr-sqrt
1642×*-un-lft-identity
1526×add-cube-cbrt
1504×add-cbrt-cube
164×pow1
Iterations

Useful iterations: 1 (0.0ms)

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

simplify58.0ms (0.6%)

Algorithm
egg-herbie
Rules
908×unswap-sqr
804×associate-*r/
572×distribute-lft-neg-out
530×associate-*l/
500×distribute-lft-neg-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01121273
12411261
29861253
352921253
Stop Event
node limit
Counts
85 → 59
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 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(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)
(fabs.f64 (/.f64 im (sqrt.f64 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))
(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 (/.f64 im re))) 1/2))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(/.f64 im (/.f64 re im))
(/.f64 1 (/.f64 re (*.f64 im im)))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(log.f64 (pow.f64 (exp.f64 (/.f64 im re)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im 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 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))) (sqrt.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))) (sqrt.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(/.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))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(/.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 (/.f64 im re))) 1/2))
(/.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))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 1 (/.f64 re (*.f64 im im)))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(log.f64 (pow.f64 (exp.f64 (/.f64 im re)) im))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))

localize42.0ms (0.5%)

Local error

Found 2 expressions with local error:

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

Compiled 26 to 12 computations (53.8% saved)

series3.0ms (0%)

Counts
2 → 24
Calls

12 calls:

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

rewrite60.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1750×add-sqr-sqrt
1730×*-un-lft-identity
1610×add-cube-cbrt
1592×add-cbrt-cube
176×pow1
Iterations

Useful iterations: 1 (0.0ms)

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

simplify70.0ms (0.8%)

Algorithm
egg-herbie
Rules
1074×associate-*r/
846×associate-*l/
734×unswap-sqr
666×associate-+r-
584×associate-/l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01701561
13981519
215191505
368041505
Stop Event
node limit
Counts
95 → 97
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 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 (/.f64 (sqrt.f64 re) im))) 1)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (/.f64 (sqrt.f64 re) im) 1)
(*.f64 1 (/.f64 (sqrt.f64 re) im))
(*.f64 (pow.f64 re 1/4) (*.f64 (pow.f64 re 1/4) (/.f64 1 im)))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 1 im)))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 1 im) (sqrt.f64 re))
(*.f64 (neg.f64 (sqrt.f64 re)) (/.f64 1 (neg.f64 im)))
(*.f64 (/.f64 1 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 im im))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 (/.f64 (pow.f64 re 1/4) 1) (/.f64 (pow.f64 re 1/4) im))
(*.f64 (/.f64 (pow.f64 re 1/4) (cbrt.f64 (*.f64 im im))) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 re) 1) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (/.f64 (cbrt.f64 re) (sqrt.f64 im)) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(pow.f64 (/.f64 (sqrt.f64 re) im) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) -1)
(pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) 2)
(pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) 3)
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3) 1/3)
(neg.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))
(sqrt.f64 (/.f64 re (*.f64 im im)))
(log.f64 (exp.f64 (/.f64 (sqrt.f64 re) im)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (sqrt.f64 re) im))))
(cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3))
(expm1.f64 (log1p.f64 (/.f64 (sqrt.f64 re) im)))
(exp.f64 (log.f64 (/.f64 (sqrt.f64 re) im)))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 re) im)) 1))
(log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 re) im)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 im (pow.f64 re -1/2))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 (pow.f64 re -1/2) (pow.f64 (/.f64 1 im) -1))
(*.f64 -1 (/.f64 1 (/.f64 (neg.f64 (sqrt.f64 re)) im)))
(*.f64 (*.f64 (pow.f64 re -1/2) 1) im)
(*.f64 (*.f64 (pow.f64 re -1/2) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 (*.f64 (pow.f64 re -1/2) (cbrt.f64 (*.f64 im im))) (cbrt.f64 im))
(*.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 1 (neg.f64 (sqrt.f64 re))) (neg.f64 im))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/4)) (/.f64 (sqrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 re)) (/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1) (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(pow.f64 (/.f64 (sqrt.f64 re) im) -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 (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 im) (log.f64 (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 re) im)) -1))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
Outputs
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) 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 (/.f64 (sqrt.f64 re) im))) 1)
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (sqrt.f64 re) im) 1)
(/.f64 (sqrt.f64 re) im)
(*.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (pow.f64 re 1/4) (*.f64 (pow.f64 re 1/4) (/.f64 1 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 1 im)))
(*.f64 (cbrt.f64 re) (*.f64 (/.f64 1 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (cbrt.f64 re) im))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 (/.f64 re im) im)))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 (/.f64 re im) im)))
(*.f64 (/.f64 1 im) (sqrt.f64 re))
(/.f64 (sqrt.f64 re) im)
(*.f64 (neg.f64 (sqrt.f64 re)) (/.f64 1 (neg.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 1 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 im im))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 im)) (cbrt.f64 (*.f64 im im)))
(/.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))) (cbrt.f64 im))
(*.f64 (/.f64 (pow.f64 re 1/4) 1) (/.f64 (pow.f64 re 1/4) im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (pow.f64 re 1/4) (cbrt.f64 (*.f64 im im))) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 im im))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 im)) (cbrt.f64 (*.f64 im im)))
(/.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))) (cbrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 re) 1) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (cbrt.f64 re) (*.f64 (/.f64 1 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (cbrt.f64 re) im))
(*.f64 (/.f64 (cbrt.f64 re) (sqrt.f64 im)) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(*.f64 (cbrt.f64 re) (*.f64 (/.f64 1 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (cbrt.f64 re) im))
(*.f64 (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))))
(/.f64 (*.f64 (cbrt.f64 re) (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (*.f64 im im)))
(pow.f64 (/.f64 (sqrt.f64 re) im) 1)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (/.f64 im (sqrt.f64 re)) -1)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) 2)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) 3)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3) 1/3)
(/.f64 (sqrt.f64 re) im)
(neg.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))
(/.f64 (sqrt.f64 re) im)
(sqrt.f64 (/.f64 re (*.f64 im im)))
(sqrt.f64 (/.f64 (/.f64 re im) im))
(log.f64 (exp.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (sqrt.f64 re) im)
(cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3))
(/.f64 (sqrt.f64 re) im)
(expm1.f64 (log1p.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(exp.f64 (log.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 re) im)) 1))
(/.f64 (sqrt.f64 re) im)
(log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 im (pow.f64 re -1/2))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (pow.f64 re -1/2) (pow.f64 (/.f64 1 im) -1))
(*.f64 im (pow.f64 re -1/2))
(*.f64 -1 (/.f64 1 (/.f64 (neg.f64 (sqrt.f64 re)) im)))
(/.f64 im (sqrt.f64 re))
(*.f64 (*.f64 (pow.f64 re -1/2) 1) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (*.f64 (pow.f64 re -1/2) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (*.f64 (pow.f64 re -1/2) (cbrt.f64 (*.f64 im im))) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (*.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (pow.f64 re -1/2) (cbrt.f64 im)))
(*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 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 1 (neg.f64 (sqrt.f64 re))) (neg.f64 im))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/4)) (/.f64 (sqrt.f64 im) (pow.f64 re 1/4)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 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 (cbrt.f64 (*.f64 im im)) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)) (cbrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)) (cbrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 re)) (/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 im)) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 re))))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1) (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 re (*.f64 im im)))) (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 (/.f64 re im) im))) (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(/.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 im) (log.f64 (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 re) im)) -1))
(/.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))

localize12.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 31 to 26 computations (16.1% saved)

series3.0ms (0%)

Counts
2 → 0
Calls

6 calls:

TimeVariablePointExpression
2.0ms
re
@0
(*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2))
0.0ms
re
@0
(sqrt.f64 (*.f64 re -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))
0.0ms
re
@-inf
(sqrt.f64 (*.f64 re -2))

rewrite60.0ms (0.7%)

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
01028
119822
2215022
Stop Event
node limit
Counts
2 → 39
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 re -2))
(*.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 -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 re -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 re -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -2) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 re -2) 1/4) (pow.f64 (*.f64 re -2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 re) (sqrt.f64 -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 re -2)) (cbrt.f64 (sqrt.f64 (*.f64 re -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -2))) (cbrt.f64 (*.f64 re -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re -2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 re -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 re -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 re -2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 re -2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 re -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 re -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 re -2) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 re -2) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 re -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 re -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 re -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 re -2) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 re -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 re -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 re -2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 re -2))))))))
((#(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.6%)

Algorithm
egg-herbie
Rules
1074×*-commutative
718×associate-*r*
672×distribute-lft-in
634×distribute-rgt-in
622×associate-*l*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
086549
1162537
2487529
32727501
46571501
Stop Event
node limit
Counts
39 → 43
Calls
Call 1
Inputs
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 re -2)))) 1)
(*.f64 (sqrt.f64 (*.f64 re -2)) 1)
(*.f64 1 (sqrt.f64 (*.f64 re -2)))
(*.f64 (sqrt.f64 -2) (sqrt.f64 re))
(*.f64 (pow.f64 (*.f64 re -2) 1/4) (pow.f64 (*.f64 re -2) 1/4))
(*.f64 (sqrt.f64 re) (sqrt.f64 -2))
(*.f64 (cbrt.f64 (*.f64 re -2)) (cbrt.f64 (sqrt.f64 (*.f64 re -2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -2))) (cbrt.f64 (*.f64 re -2)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re -2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 re -2))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 re -2)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 re -2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 re -2)) 1/2))
(pow.f64 (*.f64 re -2) 1/2)
(pow.f64 (sqrt.f64 (*.f64 re -2)) 1)
(pow.f64 (pow.f64 (*.f64 re -2) 1/4) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -2))) 3)
(pow.f64 (pow.f64 (*.f64 re -2) 3/2) 1/3)
(fabs.f64 (sqrt.f64 (*.f64 re -2)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 re -2))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 re -2)))))
(cbrt.f64 (pow.f64 (*.f64 re -2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 re -2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 re -2))))
(exp.f64 (*.f64 (log.f64 (*.f64 re -2)) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re -2))) 1))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 re -2))))
(-.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 -2)))) 1)
(sqrt.f64 (*.f64 re -2))
(*.f64 (sqrt.f64 (*.f64 re -2)) 1)
(sqrt.f64 (*.f64 re -2))
(*.f64 1 (sqrt.f64 (*.f64 re -2)))
(sqrt.f64 (*.f64 re -2))
(*.f64 (sqrt.f64 -2) (sqrt.f64 re))
(*.f64 (pow.f64 (*.f64 re -2) 1/4) (pow.f64 (*.f64 re -2) 1/4))
(sqrt.f64 (*.f64 re -2))
(*.f64 (sqrt.f64 re) (sqrt.f64 -2))
(*.f64 (sqrt.f64 -2) (sqrt.f64 re))
(*.f64 (cbrt.f64 (*.f64 re -2)) (cbrt.f64 (sqrt.f64 (*.f64 re -2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -2))) (cbrt.f64 (*.f64 re -2)))
(*.f64 (cbrt.f64 (*.f64 re -2)) (cbrt.f64 (sqrt.f64 (*.f64 re -2))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re -2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 re -2))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 re -2))) (sqrt.f64 (cbrt.f64 (*.f64 re -2))))
(*.f64 (cbrt.f64 (*.f64 re -2)) (sqrt.f64 (cbrt.f64 (*.f64 re -2))))
(pow.f64 (cbrt.f64 (*.f64 re -2)) 3/2)
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 re -2)))
(sqrt.f64 (*.f64 re -2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 re -2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 re -2)) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re -2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 re -2))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 re -2))) (sqrt.f64 (cbrt.f64 (*.f64 re -2))))
(*.f64 (cbrt.f64 (*.f64 re -2)) (sqrt.f64 (cbrt.f64 (*.f64 re -2))))
(pow.f64 (cbrt.f64 (*.f64 re -2)) 3/2)
(pow.f64 (*.f64 re -2) 1/2)
(sqrt.f64 (*.f64 re -2))
(pow.f64 (sqrt.f64 (*.f64 re -2)) 1)
(sqrt.f64 (*.f64 re -2))
(pow.f64 (pow.f64 (*.f64 re -2) 1/4) 2)
(sqrt.f64 (*.f64 re -2))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -2))) 3)
(sqrt.f64 (*.f64 re -2))
(pow.f64 (pow.f64 (*.f64 re -2) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 re -2) 3/2))
(fabs.f64 (sqrt.f64 (*.f64 re -2)))
(sqrt.f64 (*.f64 re -2))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 re -2))))
(sqrt.f64 (*.f64 re -2))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 re -2)))))
(sqrt.f64 (*.f64 re -2))
(cbrt.f64 (pow.f64 (*.f64 re -2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 re -2))))
(sqrt.f64 (*.f64 re -2))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 re -2))))
(sqrt.f64 (*.f64 re -2))
(exp.f64 (*.f64 (log.f64 (*.f64 re -2)) 1/2))
(sqrt.f64 (*.f64 re -2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re -2))) 1))
(sqrt.f64 (*.f64 re -2))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 re -2))))
(sqrt.f64 (*.f64 re -2))
(-.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))

eval314.0ms (3.5%)

Compiler

Compiled 15284 to 9146 computations (40.2% saved)

prune395.0ms (4.3%)

Pruning

15 alts after pruning (8 fresh and 7 done)

PrunedKeptTotal
New6153618
Fresh156
Picked011
Done167
Total61715632
Error
0.2b
Counts
632 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
49.7b
(*.f64 1/2 (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3))
50.7b
(*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
49.4b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
49.4b
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
12.9b
(*.f64 1/2 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2) (sqrt.f64 2)))
49.4b
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
49.4b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
27.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
47.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2)))
29.1b
(*.f64 1/2 (*.f64 (sqrt.f64 im) (sqrt.f64 2)))
47.2b
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
53.9b
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
12.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
27.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
28.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 237 to 191 computations (19.4% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (hypot.f64 re im) re)
0.3b
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2)
0.4b
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2) (sqrt.f64 2))
0.7b
(cbrt.f64 (-.f64 (hypot.f64 re im) re))
Compiler

Compiled 55 to 24 computations (56.4% saved)

series15.0ms (0.2%)

Counts
2 → 12
Calls

12 calls:

TimeVariablePointExpression
6.0ms
re
@0
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2)
1.0ms
im
@inf
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2)
1.0ms
re
@-inf
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2)
1.0ms
im
@0
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2)
1.0ms
re
@inf
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2)

rewrite70.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1032×*-commutative
894×unswap-sqr
620×swap-sqr
482×associate-*r/
428×distribute-lft-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01356
127240
2330740
Stop Event
node limit
Counts
2 → 58
Calls
Call 1
Inputs
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2) (sqrt.f64 2))
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2)
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) 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 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 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (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 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (*.f64 (sqrt.f64 2) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (cbrt.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 (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 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 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 (*.f64 2 (sqrt.f64 2)) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 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 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))) (#(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 3/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 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 3/2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 1 3/4) (pow.f64 1 3/4)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/4) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/4)) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/4) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4) (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 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)) (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4)) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4)))))) (#(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 (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 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 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (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 (-.f64 (hypot.f64 re im) re) 1/6) (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 1 3/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 (pow.f64 1 3/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 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (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 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (cbrt.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 (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 sqrt.f64 (-.f64 (hypot.f64 re im) re))))) (#(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 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 3))))) (#(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))))))))

simplify95.0ms (1%)

Algorithm
egg-herbie
Rules
1314×fma-def
740×distribute-lft-in
714×distribute-rgt-in
586×associate-/l*
582×times-frac
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03064878
17874546
224754336
Stop Event
node limit
Counts
70 → 124
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 (pow.f64 1 1/6) (*.f64 re (pow.f64 (/.f64 1 im) 1/18)))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (*.f64 re (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 3/4 (+.f64 (*.f64 -1/9 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) im))))) (pow.f64 re 2)) (sqrt.f64 im))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (*.f64 re (pow.f64 (/.f64 1 im) 1/18)))) (+.f64 (*.f64 (*.f64 (+.f64 (*.f64 -3/8 (*.f64 (+.f64 (*.f64 -1/9 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) im))) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9))) (+.f64 (*.f64 -1/48 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/3)) (*.f64 1/4 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (+.f64 (*.f64 -2/27 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/3)) (*.f64 -2 (/.f64 (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 -1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))) im))))))) (pow.f64 re 3)) (sqrt.f64 im)) (*.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 3/4 (+.f64 (*.f64 -1/9 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) im))))) (pow.f64 re 2)) (sqrt.f64 im)))))
(-.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) 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 2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.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) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (cbrt.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) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (cbrt.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 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 2)) (sqrt.f64 (+.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)
(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 (*.f64 2 (sqrt.f64 2)) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 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 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) 1)
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1)
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 1 3/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 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 1 3/2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2))
(*.f64 (*.f64 (pow.f64 1 3/4) (pow.f64 1 3/4)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/4) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/4)) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/4) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/4)))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))
(*.f64 (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)))
(*.f64 (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)) (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4)))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4)) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4)))
(/.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) 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 1 (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 (-.f64 (hypot.f64 re im) re) 1/6) (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 (-.f64 (hypot.f64 re im) re) 1/6) (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 1 3/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 (pow.f64 1 3/2) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (sqrt.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 (-.f64 (hypot.f64 re im) re) 1/6)) (cbrt.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 (-.f64 (hypot.f64 re im) re) 1/6)) (cbrt.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 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) 1) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(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 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 3))
(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 (*.f64 re (sqrt.f64 (/.f64 1 im))) -1/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 (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 (/.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 re re)))))))
(fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (sqrt.f64 2)) re) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (*.f64 re (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))))) 1/2))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (*.f64 1/2 (sqrt.f64 2)) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (*.f64 re re))) (*.f64 (*.f64 -1/2 re) (sqrt.f64 2)))))
(+.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 (/.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 re re)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 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 (*.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 (sqrt.f64 (/.f64 1 im)) (*.f64 re (*.f64 re (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)))))) (*.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 im) (*.f64 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) 1/4))) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (*.f64 1/2 (sqrt.f64 2)) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (*.f64 re re))) (*.f64 (*.f64 -1/2 re) (sqrt.f64 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 (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 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (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 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))) (*.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 (sqrt.f64 2) (*.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 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 2)))))
(+.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 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (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 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (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 -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 (sqrt.f64 2) (*.f64 im (*.f64 (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 5)) (pow.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (sqrt.f64 1/2))) 2))) (/.f64 (sqrt.f64 1/2) (pow.f64 im 5))) (sqrt.f64 re)))))
(fma.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))) (fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 re) (*.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 (*.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 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (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 (sqrt.f64 2) (/.f64 (sqrt.f64 1/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 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 (+.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 -1/16 (/.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (sqrt.f64 1/2))) 2)) (*.f64 re re)))))) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (sqrt.f64 1/2))) 2))) (/.f64 (sqrt.f64 1/2) (pow.f64 im 5)))))) (fma.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))) (*.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 (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 (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 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 2))))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (*.f64 re (pow.f64 (/.f64 1 im) 1/18)))))
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (pow.f64 (/.f64 1 im) 1/18))))
(fma.f64 -1/2 (*.f64 re (pow.f64 (/.f64 1 im) 1/18)) (sqrt.f64 im))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (*.f64 re (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 3/4 (+.f64 (*.f64 -1/9 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) im))))) (pow.f64 re 2)) (sqrt.f64 im))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 (/.f64 1 im) 1/18))) (*.f64 (sqrt.f64 im) (*.f64 (*.f64 re re) (fma.f64 1/8 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (*.f64 3/4 (fma.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (*.f64 2/3 (/.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) im)))))))))
(+.f64 (sqrt.f64 im) (fma.f64 (sqrt.f64 im) (*.f64 (*.f64 re re) (fma.f64 1/8 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) im)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) -1/12)))) (*.f64 -1/2 (*.f64 re (pow.f64 (/.f64 1 im) 1/18)))))
(fma.f64 -1/2 (*.f64 re (pow.f64 (/.f64 1 im) 1/18)) (fma.f64 (*.f64 re re) (*.f64 (+.f64 (*.f64 1/2 (/.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3 (/.f64 1/2 im)) im)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) 1/24)) (sqrt.f64 im)) (sqrt.f64 im)))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (*.f64 re (pow.f64 (/.f64 1 im) 1/18)))) (+.f64 (*.f64 (*.f64 (+.f64 (*.f64 -3/8 (*.f64 (+.f64 (*.f64 -1/9 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) im))) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9))) (+.f64 (*.f64 -1/48 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/3)) (*.f64 1/4 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (+.f64 (*.f64 -2/27 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/3)) (*.f64 -2 (/.f64 (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 -1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3))) im))))))) (pow.f64 re 3)) (sqrt.f64 im)) (*.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 3/4 (+.f64 (*.f64 -1/9 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) im))))) (pow.f64 re 2)) (sqrt.f64 im)))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 (/.f64 1 im) 1/18))) (*.f64 (sqrt.f64 im) (+.f64 (*.f64 (pow.f64 re 3) (fma.f64 -3/8 (*.f64 (fma.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (*.f64 2/3 (/.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) im))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (fma.f64 -1/48 (cbrt.f64 (/.f64 1 (pow.f64 im 5))) (*.f64 1/4 (fma.f64 2/3 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/18))) (fma.f64 -2/27 (cbrt.f64 (/.f64 1 (pow.f64 im 5))) (*.f64 -2 (/.f64 (fma.f64 -2/3 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (*.f64 -1/27 (cbrt.f64 (/.f64 1 (*.f64 im im))))) im)))))))) (*.f64 (*.f64 re re) (fma.f64 1/8 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (*.f64 3/4 (fma.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (*.f64 2/3 (/.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) im))))))))))
(+.f64 (sqrt.f64 im) (fma.f64 (sqrt.f64 im) (fma.f64 (pow.f64 re 3) (fma.f64 -3/8 (*.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) -1/9 (*.f64 2/3 (/.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) im))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (fma.f64 1/4 (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/18))) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 5))) -2/27 (*.f64 -2 (/.f64 (fma.f64 -2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (*.f64 -1/27 (cbrt.f64 (/.f64 1 (*.f64 im im))))) im)))) (*.f64 -1/48 (cbrt.f64 (/.f64 1 (pow.f64 im 5)))))) (*.f64 (*.f64 re re) (fma.f64 1/8 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) im)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) -1/12))))) (*.f64 -1/2 (*.f64 re (pow.f64 (/.f64 1 im) 1/18)))))
(fma.f64 (sqrt.f64 im) (*.f64 (*.f64 re re) (+.f64 (+.f64 (*.f64 1/2 (/.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3 (/.f64 1/2 im)) im)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) 1/24)) (*.f64 re (fma.f64 1/4 (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 5))) -2/27 (fma.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/18) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/18) (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3 (/.f64 1/2 im)))) (*.f64 (/.f64 -2 im) (fma.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) (*.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3 (/.f64 1/2 im)) -2/3) (*.f64 -1/27 (cbrt.f64 (/.f64 1 (*.f64 im im)))))))) (fma.f64 (fma.f64 2/3 (/.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3 (/.f64 1/2 im)) im) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) -1/9))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) -3/8) (*.f64 -1/48 (cbrt.f64 (/.f64 1 (pow.f64 im 5))))))))) (fma.f64 -1/2 (*.f64 re (pow.f64 (/.f64 1 im) 1/18)) (sqrt.f64 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 (*.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 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.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 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 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 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 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (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) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))
(*.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) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)))
(*.f64 (/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (cbrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (sqrt.f64 2))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (*.f64 (sqrt.f64 2) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))) (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) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))
(*.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) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)))
(*.f64 (/.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(/.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 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.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 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 2))
(/.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))
(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)))
(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 (*.f64 2 (sqrt.f64 2)) (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 3)))
(cbrt.f64 (*.f64 (sqrt.f64 2) (*.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 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (cbrt.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 3/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 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 1 3/2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2))
(*.f64 (*.f64 (pow.f64 1 3/4) (pow.f64 1 3/4)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/4) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/4)) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/4) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/4)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 2) 3/2) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3/2))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/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 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/4))
(*.f64 (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/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 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/4))
(*.f64 (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)) (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/4))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4)))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4)) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/4)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2) (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/8)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3/2) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/4))
(/.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) 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 (*.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 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (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))))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)))
(*.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)))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (cbrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)))
(/.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)))) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (/.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 (-.f64 (hypot.f64 re im) re) 1/6) (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) 2) (*.f64 re re))) (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(/.f64 (*.f64 (pow.f64 1 3/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 (*.f64 (pow.f64 1 3/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 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (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))))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)))
(*.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)))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (/.f64 (cbrt.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (/.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 (-.f64 (hypot.f64 re im) re) 1/6) (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) 2) (*.f64 re re))) (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(/.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 (*.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))))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(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 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 3))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(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))

localize7.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 18 to 14 computations (22.2% saved)

series1.0ms (0%)

Counts
1 → 0
Calls

3 calls:

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

rewrite78.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1216×add-sqr-sqrt
1194×*-un-lft-identity
1132×pow1
1116×add-cube-cbrt
1106×add-cbrt-cube
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
113811
2154411
Stop Event
node limit
Counts
1 → 22
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 re -4))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 re -4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 re -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -4) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 re -4) 1/4) (pow.f64 (*.f64 re -4) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 re) (sqrt.f64 -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 re -4)) (cbrt.f64 (sqrt.f64 (*.f64 re -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -4))) (cbrt.f64 (*.f64 re -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re -4)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 re -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 re -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 re -4)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 re -4)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 re -4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 re -4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 re -4) 1/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 (*.f64 re -4) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (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 cbrt.f64 (pow.f64 (*.f64 re -4) 3/2))))) (#(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 log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 re -4))))))))

simplify57.0ms (0.6%)

Algorithm
egg-herbie
Rules
880×associate--l+
814×*-commutative
768×associate-*r*
726×associate-*l*
618×fma-def
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
053530
1101434
2262342
3756314
43124314
56663314
Stop Event
node limit
Counts
22 → 28
Calls
Call 1
Inputs
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) 1)
(*.f64 (sqrt.f64 (*.f64 re -4)) 1)
(*.f64 1 (sqrt.f64 (*.f64 re -4)))
(*.f64 (sqrt.f64 -4) (sqrt.f64 re))
(*.f64 (pow.f64 (*.f64 re -4) 1/4) (pow.f64 (*.f64 re -4) 1/4))
(*.f64 (sqrt.f64 re) (sqrt.f64 -4))
(*.f64 (cbrt.f64 (*.f64 re -4)) (cbrt.f64 (sqrt.f64 (*.f64 re -4))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -4))) (cbrt.f64 (*.f64 re -4)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re -4)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 re -4))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 re -4)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 re -4)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 re -4)) 1/2))
(pow.f64 (*.f64 re -4) 1/2)
(pow.f64 (sqrt.f64 (*.f64 re -4)) 1)
(pow.f64 (pow.f64 (*.f64 re -4) 1/4) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -4))) 3)
(pow.f64 (pow.f64 (*.f64 re -4) 3/2) 1/3)
(fabs.f64 (sqrt.f64 (*.f64 re -4)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 re -4))))
(cbrt.f64 (pow.f64 (*.f64 re -4) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 re -4))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 re -4))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 re -4))))
Outputs
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) 1)
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))
(*.f64 (sqrt.f64 (*.f64 re -4)) 1)
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))
(*.f64 1 (sqrt.f64 (*.f64 re -4)))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))
(*.f64 (sqrt.f64 -4) (sqrt.f64 re))
(*.f64 (pow.f64 (*.f64 re -4) 1/4) (pow.f64 (*.f64 re -4) 1/4))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))
(*.f64 (sqrt.f64 re) (sqrt.f64 -4))
(*.f64 (sqrt.f64 -4) (sqrt.f64 re))
(*.f64 (cbrt.f64 (*.f64 re -4)) (cbrt.f64 (sqrt.f64 (*.f64 re -4))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -4))) (cbrt.f64 (*.f64 re -4)))
(*.f64 (cbrt.f64 (*.f64 re -4)) (cbrt.f64 (sqrt.f64 (*.f64 re -4))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re -4)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 re -4))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 re -4))) (sqrt.f64 (cbrt.f64 (*.f64 re -4))))
(*.f64 (cbrt.f64 (*.f64 re -4)) (sqrt.f64 (cbrt.f64 (*.f64 re -4))))
(pow.f64 (cbrt.f64 (*.f64 re -4)) 3/2)
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 re -4)))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 re -4)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 re -4)) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re -4)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 re -4))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 re -4))) (sqrt.f64 (cbrt.f64 (*.f64 re -4))))
(*.f64 (cbrt.f64 (*.f64 re -4)) (sqrt.f64 (cbrt.f64 (*.f64 re -4))))
(pow.f64 (cbrt.f64 (*.f64 re -4)) 3/2)
(pow.f64 (*.f64 re -4) 1/2)
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))
(pow.f64 (sqrt.f64 (*.f64 re -4)) 1)
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))
(pow.f64 (pow.f64 (*.f64 re -4) 1/4) 2)
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 re -4))) 3)
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))
(pow.f64 (pow.f64 (*.f64 re -4) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 re -4) 3/2))
(fabs.f64 (sqrt.f64 (*.f64 re -4)))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 re -4))))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))
(cbrt.f64 (pow.f64 (*.f64 re -4) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 re -4))))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 re -4))))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 re -4))))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) -1)
(+.f64 (sqrt.f64 (*.f64 re -4)) 0)
(sqrt.f64 (*.f64 re -4))

localize12.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 27 to 19 computations (29.6% saved)

series1.0ms (0%)

Counts
1 → 0
Calls

6 calls:

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

rewrite52.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
2201111
Stop Event
node limit
Counts
1 → 13
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
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))))))))

simplify67.0ms (0.7%)

Algorithm
egg-herbie
Rules
1318×associate-*r/
832×associate-/l*
766×associate-*l/
756×associate-/r*
700×*-commutative
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
033299
174221
2258143
31371143
44229143
Stop Event
node limit
Counts
13 → 15
Calls
Call 1
Inputs
(-.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 (+.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 2 expressions with local error:

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

Compiled 31 to 16 computations (48.4% saved)

series5.0ms (0.1%)

Counts
2 → 16
Calls

12 calls:

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

rewrite255.0ms (2.8%)

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

simplify152.0ms (1.7%)

Algorithm
egg-herbie
Rules
1808×associate-*r/
1468×associate-/r/
998×fma-def
716×*-commutative
596×associate-+r+
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02533526
15893412
217433332
350463332
Stop Event
node limit
Counts
86 → 162
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 (sqrt.f64 -1) (sqrt.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/16 (*.f64 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)) (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/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(+.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))))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re)))) -1)
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re)))) 1)
(*.f64 (sqrt.f64 (-.f64 im re)) 1)
(*.f64 (sqrt.f64 (-.f64 im re)) (pow.f64 1 1/2))
(*.f64 1 (sqrt.f64 (-.f64 im re)))
(*.f64 (pow.f64 (-.f64 im re) 1/4) (pow.f64 (-.f64 im re) 1/4))
(*.f64 (cbrt.f64 (-.f64 im re)) (cbrt.f64 (sqrt.f64 (-.f64 im re))))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (cbrt.f64 (-.f64 im re)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 im re)) 2)) (sqrt.f64 (cbrt.f64 (-.f64 im re))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (/.f64 1 (sqrt.f64 (+.f64 im re))))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 im re)) 2)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (/.f64 1 (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re))))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (-.f64 im re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 im re)) 2) 1/2) (pow.f64 (cbrt.f64 (-.f64 im re)) 1/2))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 im re)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (-.f64 im re)) 2) 1/2))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (cbrt.f64 (pow.f64 (-.f64 im re) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (cbrt.f64 (pow.f64 (-.f64 im re) 1/4))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re)))) (cbrt.f64 (sqrt.f64 (-.f64 im re)))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re)))) (cbrt.f64 (sqrt.f64 (-.f64 im re)))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 im re) 1/4)) (sqrt.f64 (cbrt.f64 (-.f64 im re)))) (*.f64 (cbrt.f64 (pow.f64 (-.f64 im re) 1/4)) (sqrt.f64 (cbrt.f64 (-.f64 im re)))))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) 3/2) (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) 3/2))
(*.f64 (pow.f64 (pow.f64 (-.f64 im re) 3/2) 1/6) (pow.f64 (pow.f64 (-.f64 im re) 3/2) 1/6))
(/.f64 1 (/.f64 (sqrt.f64 (+.f64 im re)) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))))
(/.f64 1 (/.f64 (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (*.f64 1 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))) (sqrt.f64 (+.f64 im re)))
(/.f64 (*.f64 1 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))) (cbrt.f64 (+.f64 im re)))
(/.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))) (sqrt.f64 (+.f64 im re)))
(/.f64 (*.f64 (pow.f64 1 1/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))) 1) (sqrt.f64 (+.f64 im re)))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) 1) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (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))) (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 im re)))) (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re)))) 1))
(pow.f64 (-.f64 im re) 1/2)
(pow.f64 (sqrt.f64 (-.f64 im re)) 1)
(pow.f64 (pow.f64 (-.f64 im re) 1/4) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) 3)
(pow.f64 (pow.f64 (-.f64 im re) 3/2) 1/3)
(fabs.f64 (sqrt.f64 (-.f64 im re)))
(log.f64 (exp.f64 (sqrt.f64 (-.f64 im re))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (-.f64 im re)))))
(cbrt.f64 (pow.f64 (-.f64 im re) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (-.f64 im re))))
(exp.f64 (log.f64 (sqrt.f64 (-.f64 im re))))
(log1p.f64 (expm1.f64 (sqrt.f64 (-.f64 im re))))
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 1/2 (sqrt.f64 (/.f64 1 re))) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (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 re)) (*.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 -1))) (sqrt.f64 2))))
(+.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 (sqrt.f64 2) (/.f64 (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 (sqrt.f64 -1) im) (/.f64 -1 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 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (*.f64 1/8 (*.f64 im (/.f64 im (sqrt.f64 -1)))) (sqrt.f64 2)))))
(+.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 (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 (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 (sqrt.f64 2) (/.f64 (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 (sqrt.f64 -1) im) (/.f64 -1 im))))))))
(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 (/.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 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (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 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (*.f64 1/8 (*.f64 im (/.f64 im (sqrt.f64 -1)))) (sqrt.f64 2))))))
(*.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 re -1/2) (sqrt.f64 2))))
(*.f64 (sqrt.f64 2) (fma.f64 re (*.f64 -1/2 (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 -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 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 re re))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)) (*.f64 (sqrt.f64 2) (fma.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (sqrt.f64 im))))
(fma.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (fma.f64 re (*.f64 -1/2 (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 -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 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) 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 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 re re)))))))
(+.f64 (*.f64 (sqrt.f64 2) (fma.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (sqrt.f64 im))) (*.f64 (sqrt.f64 2) (fma.f64 (pow.f64 re 3) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)))))
(+.f64 (*.f64 (sqrt.f64 2) (fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))) (*.f64 (sqrt.f64 2) (fma.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (pow.f64 re 3) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(fma.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1)))))
(fma.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 1/2 (/.f64 im (sqrt.f64 -1))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 (*.f64 im im) (pow.f64 (sqrt.f64 -1) 3))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 -1/8 (*.f64 (/.f64 im (sqrt.f64 -1)) (/.f64 im -1))))))
(fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 im (/.f64 (sqrt.f64 -1) im))))))
(fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (*.f64 im (/.f64 im (sqrt.f64 -1)))))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/16 (*.f64 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 (*.f64 im im) (pow.f64 (sqrt.f64 -1) 3))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (*.f64 (*.f64 1/16 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (/.f64 im (sqrt.f64 -1)) (/.f64 im -1))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 1/16 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 im (/.f64 (sqrt.f64 -1) im))) (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (*.f64 im (/.f64 im (sqrt.f64 -1)))) (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)))))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(fma.f64 (*.f64 re -1/2) (sqrt.f64 (/.f64 1 im)) (sqrt.f64 im))
(fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (fma.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (fma.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2))))
(fma.f64 (*.f64 re re) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(+.f64 (sqrt.f64 im) (fma.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(+.f64 (sqrt.f64 im) (fma.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)))))
(+.f64 (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 -1/8 (*.f64 re re)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2))) (fma.f64 (pow.f64 re 3) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (sqrt.f64 im)))
(+.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 (*.f64 (-.f64 im re) (+.f64 re im))) (sqrt.f64 (+.f64 re im))) (sqrt.f64 2))
(*.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 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im))))) (sqrt.f64 2))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (/.f64 (sqrt.f64 2) (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 (*.f64 (-.f64 im re) (+.f64 re im))) (sqrt.f64 (+.f64 re im))) (sqrt.f64 2))
(*.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 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im))))) (sqrt.f64 2))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (/.f64 (sqrt.f64 2) (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 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (/.f64 (cbrt.f64 (+.f64 re im)) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))))
(/.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 (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 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re)))) (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))))
(*.f64 (/.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (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 (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 (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)))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re)))) -1)
(sqrt.f64 (-.f64 im re))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re)))) 1)
(sqrt.f64 (-.f64 im re))
(*.f64 (sqrt.f64 (-.f64 im re)) 1)
(sqrt.f64 (-.f64 im re))
(*.f64 (sqrt.f64 (-.f64 im re)) (pow.f64 1 1/2))
(sqrt.f64 (-.f64 im re))
(*.f64 1 (sqrt.f64 (-.f64 im re)))
(sqrt.f64 (-.f64 im re))
(*.f64 (pow.f64 (-.f64 im re) 1/4) (pow.f64 (-.f64 im re) 1/4))
(sqrt.f64 (-.f64 im re))
(*.f64 (cbrt.f64 (-.f64 im re)) (cbrt.f64 (sqrt.f64 (-.f64 im re))))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (cbrt.f64 (-.f64 im re)))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (cbrt.f64 (-.f64 im re)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 im re)) 2)) (sqrt.f64 (cbrt.f64 (-.f64 im re))))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 im re)) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (fabs.f64 (cbrt.f64 (-.f64 im re))))
(*.f64 (cbrt.f64 (-.f64 im re)) (sqrt.f64 (cbrt.f64 (-.f64 im re))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (/.f64 1 (sqrt.f64 (+.f64 im re))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (sqrt.f64 (+.f64 re im)))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 im re)) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (fabs.f64 (cbrt.f64 (-.f64 im re))))
(*.f64 (cbrt.f64 (-.f64 im re)) (sqrt.f64 (cbrt.f64 (-.f64 im re))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (/.f64 1 (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re (+.f64 re im) (*.f64 im im))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (-.f64 im re)))
(sqrt.f64 (-.f64 im re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 im re)) 2) 1/2) (pow.f64 (cbrt.f64 (-.f64 im re)) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 im re)) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (fabs.f64 (cbrt.f64 (-.f64 im re))))
(*.f64 (cbrt.f64 (-.f64 im re)) (sqrt.f64 (cbrt.f64 (-.f64 im re))))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 im re)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (-.f64 im re)) 2) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 im re)) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (fabs.f64 (cbrt.f64 (-.f64 im re))))
(*.f64 (cbrt.f64 (-.f64 im re)) (sqrt.f64 (cbrt.f64 (-.f64 im re))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))))))
(sqrt.f64 (-.f64 im re))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (cbrt.f64 (pow.f64 (-.f64 im re) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (cbrt.f64 (pow.f64 (-.f64 im re) 1/4))))
(*.f64 (cbrt.f64 (-.f64 im re)) (*.f64 (cbrt.f64 (pow.f64 (-.f64 im re) 1/4)) (cbrt.f64 (pow.f64 (-.f64 im re) 1/4))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re)))) (cbrt.f64 (sqrt.f64 (-.f64 im re)))) (*.f64 (sqrt.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re)))) (cbrt.f64 (sqrt.f64 (-.f64 im re)))))
(sqrt.f64 (-.f64 im re))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 im re) 1/4)) (sqrt.f64 (cbrt.f64 (-.f64 im re)))) (*.f64 (cbrt.f64 (pow.f64 (-.f64 im re) 1/4)) (sqrt.f64 (cbrt.f64 (-.f64 im re)))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (cbrt.f64 (pow.f64 (-.f64 im re) 1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (-.f64 im re))) (cbrt.f64 (pow.f64 (-.f64 im re) 1/4))))
(*.f64 (cbrt.f64 (-.f64 im re)) (*.f64 (cbrt.f64 (pow.f64 (-.f64 im re) 1/4)) (cbrt.f64 (pow.f64 (-.f64 im re) 1/4))))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) 3/2) (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) 3/2))
(sqrt.f64 (-.f64 im re))
(*.f64 (pow.f64 (pow.f64 (-.f64 im re) 3/2) 1/6) (pow.f64 (pow.f64 (-.f64 im re) 3/2) 1/6))
(cbrt.f64 (pow.f64 (-.f64 im re) 3/2))
(/.f64 1 (/.f64 (sqrt.f64 (+.f64 im re)) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (sqrt.f64 (+.f64 re im)))
(/.f64 1 (/.f64 (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re (+.f64 re im) (*.f64 im im))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (sqrt.f64 (+.f64 re im)))
(/.f64 (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 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))))
(/.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 1 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))) (sqrt.f64 (+.f64 im re)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (sqrt.f64 (+.f64 re im)))
(/.f64 (*.f64 1 (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 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))))
(/.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 (sqrt.f64 (-.f64 im re))) (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))) (cbrt.f64 (+.f64 im re)))
(/.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (/.f64 (cbrt.f64 (+.f64 re im)) (cbrt.f64 (sqrt.f64 (-.f64 im re)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (cbrt.f64 (+.f64 re im))) (cbrt.f64 (sqrt.f64 (-.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (/.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (cbrt.f64 (+.f64 re im))))
(/.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (/.f64 (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))) (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im))))) (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (/.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (cbrt.f64 (fma.f64 re (+.f64 re im) (*.f64 im im)))))
(/.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))) (sqrt.f64 (+.f64 im re)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (sqrt.f64 (+.f64 re im)))
(/.f64 (*.f64 (pow.f64 1 1/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 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))))
(/.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))) 1) (sqrt.f64 (+.f64 im re)))
(/.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))) 1) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))))
(/.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))) (cbrt.f64 (sqrt.f64 (-.f64 im re)))) (cbrt.f64 (+.f64 im re)))
(/.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (/.f64 (cbrt.f64 (+.f64 re im)) (cbrt.f64 (sqrt.f64 (-.f64 im re)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (cbrt.f64 (+.f64 re im))) (cbrt.f64 (sqrt.f64 (-.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (/.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (cbrt.f64 (+.f64 re im))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (cbrt.f64 (sqrt.f64 (-.f64 im re)))) (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (/.f64 (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))) (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im))))) (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (/.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) (cbrt.f64 (fma.f64 re (+.f64 re im) (*.f64 im im)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re)))) (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re)))) 1))
(/.f64 (*.f64 (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re))))) (sqrt.f64 (-.f64 im re))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re))))))
(/.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sqrt.f64 (-.f64 im re))))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re))))))
(pow.f64 (-.f64 im re) 1/2)
(sqrt.f64 (-.f64 im re))
(pow.f64 (sqrt.f64 (-.f64 im re)) 1)
(sqrt.f64 (-.f64 im re))
(pow.f64 (pow.f64 (-.f64 im re) 1/4) 2)
(sqrt.f64 (-.f64 im re))
(pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 im re))) 3)
(sqrt.f64 (-.f64 im re))
(pow.f64 (pow.f64 (-.f64 im re) 3/2) 1/3)
(cbrt.f64 (pow.f64 (-.f64 im re) 3/2))
(fabs.f64 (sqrt.f64 (-.f64 im re)))
(sqrt.f64 (-.f64 im re))
(log.f64 (exp.f64 (sqrt.f64 (-.f64 im re))))
(sqrt.f64 (-.f64 im re))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (-.f64 im re)))))
(sqrt.f64 (-.f64 im re))
(cbrt.f64 (pow.f64 (-.f64 im re) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (-.f64 im re))))
(sqrt.f64 (-.f64 im re))
(exp.f64 (log.f64 (sqrt.f64 (-.f64 im re))))
(sqrt.f64 (-.f64 im re))
(log1p.f64 (expm1.f64 (sqrt.f64 (-.f64 im re))))
(sqrt.f64 (-.f64 im re))

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 im (sqrt.f64 re))
0.3b
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
3.4b
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
Compiler

Compiled 33 to 13 computations (60.6% saved)

series50.0ms (0.6%)

Counts
2 → 24
Calls

12 calls:

TimeVariablePointExpression
34.0ms
re
@0
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
7.0ms
re
@inf
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
2.0ms
re
@-inf
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
1.0ms
im
@-inf
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
1.0ms
im
@0
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)

rewrite65.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1800×add-sqr-sqrt
1764×*-un-lft-identity
1666×add-cube-cbrt
1648×add-cbrt-cube
176×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

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

simplify78.0ms (0.9%)

Algorithm
egg-herbie
Rules
1694×associate-+r+
1104×associate-/l*
948×times-frac
890×associate-/r*
792×unswap-sqr
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01862174
14022028
215032028
369252028
Stop Event
node limit
Counts
100 → 98
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (/.f64 (*.f64 1 im) (sqrt.f64 -1)) 1/3))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (/.f64 (*.f64 1 im) (sqrt.f64 -1)) 1/3))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (/.f64 (*.f64 1 im) (sqrt.f64 -1)) 1/3))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (/.f64 (*.f64 1 im) (sqrt.f64 -1)) 1/3))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))) 1)
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 1 (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 1/3))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 im) (/.f64 1 (cbrt.f64 (sqrt.f64 re))))
(*.f64 (cbrt.f64 im) (pow.f64 (pow.f64 re -1/2) 1/3))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 1/3) (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 1/3) (pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 1/3))
(/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 1 (/.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 im)))
(/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (cbrt.f64 (neg.f64 im)) (cbrt.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 (neg.f64 (cbrt.f64 im)) (neg.f64 (cbrt.f64 (sqrt.f64 re))))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) 2)
(pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) 3)
(sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)))
(log.f64 (exp.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))))
(expm1.f64 (log1p.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (log.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) 1))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1/3))
(log1p.f64 (expm1.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (*.f64 (cbrt.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 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 (neg.f64 im) (/.f64 1 (neg.f64 (sqrt.f64 re))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 1) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)) (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))
(*.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)))) (cbrt.f64 (cbrt.f64 (/.f64 im (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 (pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) 3) (pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) 3))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) 3) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 1 (/.f64 (/.f64 (sqrt.f64 re) im) 1))
(/.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (neg.f64 im) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 im)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 (*.f64 im im) re))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 im 1) (sqrt.f64 re))
(/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 -1 (neg.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 (sqrt.f64 re))))
(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))))
(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
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (pow.f64 (/.f64 1 re) 1/6) (cbrt.f64 im))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (pow.f64 (/.f64 1 re) 1/6) (cbrt.f64 im))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (pow.f64 (/.f64 1 re) 1/6) (cbrt.f64 im))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (pow.f64 (/.f64 1 re) 1/6) (cbrt.f64 im))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (pow.f64 (/.f64 1 re) 1/6) (cbrt.f64 im))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (pow.f64 (/.f64 1 re) 1/6) (cbrt.f64 im))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (pow.f64 (/.f64 1 re) 1/6) (cbrt.f64 im))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 re) 1/6) (pow.f64 im 1/3)))
(*.f64 (pow.f64 (/.f64 1 re) 1/6) (cbrt.f64 im))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (/.f64 (*.f64 1 im) (sqrt.f64 -1)) 1/3))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 (/.f64 im (sqrt.f64 -1))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (/.f64 (*.f64 1 im) (sqrt.f64 -1)) 1/3))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 (/.f64 im (sqrt.f64 -1))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (/.f64 (*.f64 1 im) (sqrt.f64 -1)) 1/3))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 (/.f64 im (sqrt.f64 -1))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (/.f64 (*.f64 1 im) (sqrt.f64 -1)) 1/3))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 (/.f64 im (sqrt.f64 -1))))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))) 1)
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 1)
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(*.f64 1 (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 im re) im))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 1/3))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 im re) im))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 im re) im))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 im) (/.f64 1 (cbrt.f64 (sqrt.f64 re))))
(/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (cbrt.f64 im) (pow.f64 (pow.f64 re -1/2) 1/3))
(*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 re -1/2)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 1/3) (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 im re) im))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 1/3) (pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 1 (/.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 im)))
(*.f64 (cbrt.f64 im) (/.f64 1 (cbrt.f64 (sqrt.f64 re))))
(/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (cbrt.f64 im) (/.f64 1 (cbrt.f64 (sqrt.f64 re))))
(/.f64 (cbrt.f64 (neg.f64 im)) (cbrt.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 (neg.f64 (cbrt.f64 im)) (neg.f64 (cbrt.f64 (sqrt.f64 re))))
(*.f64 (cbrt.f64 im) (/.f64 1 (cbrt.f64 (sqrt.f64 re))))
(/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re)))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 1)
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/3)
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) 2)
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) 3)
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))
(log.f64 (exp.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))))
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(expm1.f64 (log1p.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(exp.f64 (log.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) 1))
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1/3))
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(log1p.f64 (expm1.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(*.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 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) (cbrt.f64 (/.f64 (*.f64 im im) 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 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.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 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 im re) im))) 4))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) 4))
(*.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 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))
(*.f64 im (pow.f64 re -1/2))
(*.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 im (sqrt.f64 re))
(*.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 1) (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 (*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)) (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))
(*.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 (*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)))) (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 im re) im))) 4))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) 4))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 (/.f64 im (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 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 im (sqrt.f64 re))
(*.f64 (pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) 3) (pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) 3))
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) 3) (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 im (sqrt.f64 re))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 im (sqrt.f64 re))
(/.f64 1 (/.f64 (/.f64 (sqrt.f64 re) im) 1))
(/.f64 im (sqrt.f64 re))
(/.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.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 (neg.f64 im) (neg.f64 (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(/.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 im)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 (*.f64 im im) re))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 im)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im 1) (sqrt.f64 re))
(/.f64 im (sqrt.f64 re))
(/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 im (sqrt.f64 re))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 -1 (neg.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 im (sqrt.f64 re))
(/.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(neg.f64 (/.f64 im (neg.f64 (sqrt.f64 re))))
(/.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 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))

eval402.0ms (4.4%)

Compiler

Compiled 20416 to 12768 computations (37.5% saved)

prune259.0ms (2.9%)

Pruning

17 alts after pruning (6 fresh and 11 done)

PrunedKeptTotal
New8143817
Fresh033
Picked011
Done11011
Total81517832
Error
0.2b
Counts
832 → 17
Alt Table
Click to see full alt table
StatusErrorProgram
49.7b
(*.f64 1/2 (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3))
50.7b
(*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
49.4b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
49.4b
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
49.9b
(*.f64 1/2 (-.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) 1))
12.9b
(*.f64 1/2 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2) (sqrt.f64 2)))
49.4b
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
29.3b
(*.f64 1/2 (*.f64 (/.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sqrt.f64 (-.f64 im re))))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re)))))) (sqrt.f64 2)))
49.4b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
27.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
29.1b
(*.f64 1/2 (*.f64 (sqrt.f64 im) (sqrt.f64 2)))
29.3b
(*.f64 1/2 (*.f64 (expm1.f64 (log1p.f64 (sqrt.f64 (-.f64 im re)))) (sqrt.f64 2)))
47.2b
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
53.9b
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
12.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
27.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
28.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 191 to 152 computations (20.4% saved)

regimes231.0ms (2.5%)

Counts
28 → 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 (*.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 im (/.f64 im re))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
(*.f64 1/2 (-.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) 1))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (*.f64 (/.f64 im re) im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 1/2 (/.f64 re (*.f64 im im))))))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 1/2 (*.f64 (sqrt.f64 im) (sqrt.f64 2)))
(*.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 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.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 re re) (*.f64 im im))) re))))
(*.f64 1/2 (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3))
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (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 (expm1.f64 (log1p.f64 (sqrt.f64 (-.f64 im re)))) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)) (sqrt.f64 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 (/.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sqrt.f64 (-.f64 im re))))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re)))))) (sqrt.f64 2)))
Outputs
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
Calls

7 calls:

58.0ms
re
52.0ms
(*.f64 im im)
36.0ms
im
26.0ms
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
17.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Results
ErrorSegmentsBranch
7.0b4re
10.3b3im
4.9b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
4.9b2(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
5.0b2(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
5.0b2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
10.3b3(*.f64 im im)
Compiler

Compiled 360 to 245 computations (31.9% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
5.1048513594848944e-145
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes163.0ms (1.8%)

Counts
17 → 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 (*.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 im (/.f64 im re))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
(*.f64 1/2 (-.f64 (+.f64 1 (sqrt.f64 (*.f64 re -4))) 1))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (*.f64 (/.f64 im re) im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 1/2 (/.f64 re (*.f64 im im))))))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 1/2 (*.f64 (sqrt.f64 im) (sqrt.f64 2)))
(*.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 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
Calls

3 calls:

83.0ms
im
55.0ms
re
19.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
14.1b5re
19.2b5im
20.5b3(*.f64 im im)
Compiler

Compiled 153 to 113 computations (26.1% saved)

bsearch124.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
40.0ms
8.562185932096328e+33
1.3069993103464598e+39
44.0ms
53867.12544943557
130276.48758501191
25.0ms
6.236812113554398e-76
1.0140707142441752e-72
15.0ms
-9.615256595143824e+51
-7.710133882111943e+49
Results
40.0ms326×body256valid
32.0ms20×body512valid
29.0ms71×body2048valid
10.0ms36×body1024valid
5.0ms11×body4096valid
Compiler

Compiled 628 to 513 computations (18.3% saved)

regimes55.0ms (0.6%)

Counts
8 → 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 (*.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 im (/.f64 im re))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
Calls

2 calls:

28.0ms
im
24.0ms
re
Results
ErrorSegmentsBranch
14.1b5re
19.2b5im
Compiler

Compiled 65 to 49 computations (24.6% saved)

bsearch98.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
39.0ms
8.562185932096328e+33
1.3069993103464598e+39
18.0ms
53867.12544943557
130276.48758501191
26.0ms
6.236812113554398e-76
1.0140707142441752e-72
15.0ms
-9.615256595143824e+51
-7.710133882111943e+49
Results
40.0ms320×body256valid
26.0ms66×body2048valid
12.0ms43×body1024valid
8.0ms14×body4096valid
4.0ms21×body512valid
Compiler

Compiled 602 to 487 computations (19.1% saved)

regimes53.0ms (0.6%)

Counts
5 → 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 (*.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 im (sqrt.f64 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
Calls

2 calls:

27.0ms
re
25.0ms
im
Results
ErrorSegmentsBranch
14.7b5re
19.1b6im
Compiler

Compiled 41 to 32 computations (22% saved)

bsearch160.0ms (1.8%)

Algorithm
binary-search
Steps
TimeLeftRight
36.0ms
8.562185932096328e+33
1.3069993103464598e+39
42.0ms
53867.12544943557
130276.48758501191
33.0ms
2.2522067926781673e-29
3.1301654591076166e-17
49.0ms
-9.615256595143824e+51
-7.710133882111943e+49
Results
53.0ms72×body2048valid
40.0ms344×body256valid
14.0ms46×body1024valid
6.0ms13×body4096valid
4.0ms21×body512valid
Compiler

Compiled 580 to 488 computations (15.9% saved)

regimes16.0ms (0.2%)

Accuracy

Total -40.9b remaining (-195.6%)

Threshold costs -40.9b (-195.6%)

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:

9.0ms
re
6.0ms
im
Results
ErrorSegmentsBranch
20.9b2re
22.6b2im
Compiler

Compiled 20 to 16 computations (20% saved)

bsearch16.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
16.0ms
-9.615256595143824e+51
-7.710133882111943e+49
Results
14.0ms112×body256valid
Compiler

Compiled 148 to 128 computations (13.5% saved)

simplify14.0ms (0.2%)

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

Useful iterations: 3 (0.0ms)

IterNodesCost
082532
1107506
2119506
3127498
4130498
5132498
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) 0) (*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 re -240000000000000018311447618620528807907915930271744) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 7559313193428757/7957171782556586274486115970349133441607298412757563479047423630290551952200534008528896) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 55000) (*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im))) (if (<=.f64 re 45000000000000000433189155934044160) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))
(if (<=.f64 re -6499999999999999955936166383350581847001104872636416) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 3978585891278293/3978585891278293137243057985174566720803649206378781739523711815145275976100267004264448) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 60000) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 112000000000000003127797907403571200) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))
(if (<=.f64 re -1800000000000000054259107403096724002821428209516544) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 4381000474388761/162259276829213363391578010288128) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 58000) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 490000000000000025213330890959093760) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))
(if (<=.f64 re -1600000000000000122076317457470192052719439535144960) (*.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 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) 0) (*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 re -240000000000000018311447618620528807907915930271744) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 7559313193428757/7957171782556586274486115970349133441607298412757563479047423630290551952200534008528896) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 55000) (*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im))) (if (<=.f64 re 45000000000000000433189155934044160) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))
(if (<=.f64 re -6499999999999999955936166383350581847001104872636416) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 3978585891278293/3978585891278293137243057985174566720803649206378781739523711815145275976100267004264448) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 60000) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 112000000000000003127797907403571200) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))
(if (<=.f64 re -6499999999999999955936166383350581847001104872636416) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 3978585891278293/3978585891278293137243057985174566720803649206378781739523711815145275976100267004264448) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (or (<=.f64 re 60000) (not (<=.f64 re 112000000000000003127797907403571200))) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))))))
(if (<=.f64 re -6499999999999999955936166383350581847001104872636416) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (or (<=.f64 re 3978585891278293/3978585891278293137243057985174566720803649206378781739523711815145275976100267004264448) (not (or (<=.f64 re 60000) (not (<=.f64 re 112000000000000003127797907403571200))))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(if (<=.f64 re -6499999999999999955936166383350581847001104872636416) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (or (<=.f64 re 3978585891278293/3978585891278293137243057985174566720803649206378781739523711815145275976100267004264448) (and (not (<=.f64 re 60000)) (<=.f64 re 112000000000000003127797907403571200))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(if (<=.f64 re -1800000000000000054259107403096724002821428209516544) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 4381000474388761/162259276829213363391578010288128) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 58000) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 490000000000000025213330890959093760) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))
(if (<=.f64 re -1800000000000000054259107403096724002821428209516544) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 4381000474388761/162259276829213363391578010288128) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (or (<=.f64 re 58000) (not (<=.f64 re 490000000000000025213330890959093760))) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))))))
(if (<=.f64 re -1800000000000000054259107403096724002821428209516544) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (or (<=.f64 re 4381000474388761/162259276829213363391578010288128) (not (or (<=.f64 re 58000) (not (<=.f64 re 490000000000000025213330890959093760))))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(if (<=.f64 re -1800000000000000054259107403096724002821428209516544) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (or (<=.f64 re 4381000474388761/162259276829213363391578010288128) (and (not (<=.f64 re 58000)) (<=.f64 re 490000000000000025213330890959093760))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(if (<=.f64 re -1600000000000000122076317457470192052719439535144960) (*.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 192 to 146 computations (24% saved)

soundness221.0ms (2.4%)

Algorithm
egg-herbie
Rules
1160×+-commutative
1152×associate-/r/
726×fma-def
726×associate-+l-
570×associate-*r*
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
05059321
114308885
257228885
01529
12329
23629
35529
47729
510829
619429
730229
841329
950629
1060529
1167929
1271029
1376229
1481229
1587329
1693329
1794329
Stop Event
saturated
node limit
saturated
Compiler

Compiled 274 to 149 computations (45.6% saved)

end117.0ms (1.3%)

Compiler

Compiled 182 to 129 computations (29.1% saved)

Profiling

Loading profile data...