Details

Time bar (total: 7.3s)

analyze188.0ms (2.6%)

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.6s (22.3%)

Results
833.0ms6422×body256valid
315.0ms518×body4096valid
300.0ms642×body2048valid
128.0ms435×body1024valid
50.0ms239×body512valid
Bogosity

preprocess41.0ms (0.6%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02158
13658
25458
39158
412858
518258
633058
750858
870258
986258
10105958
11124158
12126258
13126658
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) im))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) im))))
Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify66.0ms (0.9%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01529
12329
23629
35529
47729
510829
619429
730229
841329
950629
1060529
1167929
1271029
1376229
1481229
1587329
1693329
1794329
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))

eval1.0ms (0%)

Compiler

Compiled 27 to 19 computations (29.6% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 12 to 9 computations (25% saved)

localize11.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
0.2b
(-.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
1.0ms
im
@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)))
1.0ms
re
@0
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
1.0ms
re
@inf
(-.f64 (hypot.f64 re im) re)

rewrite109.0ms (1.5%)

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

Useful iterations: 0 (0.0ms)

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

simplify155.0ms (2.1%)

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

Useful iterations: 1 (0.0ms)

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

eval139.0ms (1.9%)

Compiler

Compiled 8373 to 4818 computations (42.5% saved)

prune171.0ms (2.3%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New2869295
Fresh000
Picked011
Done000
Total28610296
Error
0.1b
Counts
296 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
47.9b
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
13.4b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2)))
47.9b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))
47.9b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))))
54.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 1/2 (/.f64 re (*.f64 im im))))))
13.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
27.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
54.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (/.f64 1/2 re) (*.f64 im im)))))
47.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
29.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 246 to 205 computations (16.7% saved)

localize13.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

Compiled 42 to 17 computations (59.5% saved)

series4.0ms (0.1%)

Counts
2 → 16
Calls

12 calls:

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

rewrite67.0ms (0.9%)

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

simplify98.0ms (1.3%)

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

localize7.0ms (0.1%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 28 to 15 computations (46.4% saved)

series7.0ms (0.1%)

Counts
1 → 8
Calls

6 calls:

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

rewrite57.0ms (0.8%)

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

simplify52.0ms (0.7%)

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 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (/.f64 1/2 (/.f64 re (*.f64 im im))))
0.5b
(/.f64 1/2 (/.f64 re (*.f64 im im)))
7.0b
(/.f64 re (*.f64 im im))
17.8b
(sqrt.f64 (*.f64 2 (/.f64 1/2 (/.f64 re (*.f64 im im)))))
Compiler

Compiled 52 to 24 computations (53.8% saved)

series8.0ms (0.1%)

Counts
4 → 84
Calls

24 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
@0
(/.f64 re (*.f64 im im))
0.0ms
re
@-inf
(sqrt.f64 (*.f64 2 (/.f64 1/2 (/.f64 re (*.f64 im im)))))
0.0ms
im
@inf
(sqrt.f64 (*.f64 2 (/.f64 1/2 (/.f64 re (*.f64 im im)))))

rewrite90.0ms (1.2%)

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
01274
125462
2321556
Stop Event
node limit
Counts
4 → 256
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)))
(*.f64 2 (/.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)))))))))
((#(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 2 (*.f64 2 (*.f64 re (pow.f64 im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 1 (*.f64 2 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im im) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im im) (/.f64 re 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (/.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (sqrt.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (/.f64 (sqrt.f64 re) im) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 re (pow.f64 im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 1 (*.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 (sqrt.f64 re))) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) (/.f64 1 (*.f64 2 (*.f64 im (sqrt.f64 (/.f64 1/2 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 im) (/.f64 re (*.f64 im (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 2) (/.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (*.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 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (/.f64 (sqrt.f64 re) im) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 re (pow.f64 im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 re (cbrt.f64 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (/.f64 re im) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 re (*.f64 im (cbrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (pow.f64 (cbrt.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 re (pow.f64 (cbrt.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (neg.f64 re) (neg.f64 (pow.f64 (cbrt.f64 im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 1 (/.f64 re (pow.f64 (cbrt.f64 im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (/.f64 (sqrt.f64 re) im) (cbrt.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4))) (/.f64 1 (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 im) (/.f64 (/.f64 re im) (pow.f64 (cbrt.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 re) (/.f64 1 (*.f64 2 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re im) (sqrt.f64 (pow.f64 (cbrt.f64 im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (neg.f64 re) (sqrt.f64 (*.f64 im (neg.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))) (/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (*.f64 im (neg.f64 im)))) (/.f64 (neg.f64 re) (cbrt.f64 (*.f64 im (neg.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (sqrt.f64 im)) (/.f64 re (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (/.f64 1 (sqrt.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (/.f64 1 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4)))) (/.f64 1 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 1/2 re)) (pow.f64 im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 2)) (/.f64 1 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 im (/.f64 im re)))) (/.f64 1 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (pow.f64 (cbrt.f64 im) 2)) (/.f64 re (cbrt.f64 im)))))) (#(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 1 re) (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)) (cbrt.f64 (*.f64 re (pow.f64 im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (pow.f64 im -2)) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (/.f64 (cbrt.f64 (*.f64 re re)) im)) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im re) (/.f64 1 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (neg.f64 re)) (neg.f64 (pow.f64 im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 im) (/.f64 re (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (neg.f64 re) (pow.f64 (cbrt.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im 1) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (cbrt.f64 (*.f64 re re))) (/.f64 (cbrt.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (sqrt.f64 re) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (cbrt.f64 (*.f64 re re))) (/.f64 (cbrt.f64 re) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 re (pow.f64 (cbrt.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 re re))) (cbrt.f64 (*.f64 re (pow.f64 im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 1 1/2) (*.f64 re (pow.f64 im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (/.f64 (/.f64 (sqrt.f64 re) im) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2)))))) (#(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 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 neg.f64 (*.f64 (neg.f64 (/.f64 im re)) im))))) (#(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 (exp.f64 (*.f64 im (/.f64 im re))))))) (#(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 cbrt.f64 (/.f64 (pow.f64 (*.f64 im im) 3) (pow.f64 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 (*.f64 2 (log.f64 im)) (log.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))))))

simplify243.0ms (3.3%)

Algorithm
egg-herbie
Rules
1094×associate-*r*
888×associate-*l*
824×distribute-lft-neg-in
692×distribute-rgt-neg-in
680×*-commutative
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
05317896
114057510
261777510
Stop Event
node limit
Counts
340 → 349
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 (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 (/.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)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(/.f64 2 (*.f64 2 (*.f64 re (pow.f64 im -2))))
(/.f64 1/2 (/.f64 1 (*.f64 2 (*.f64 im (/.f64 im re)))))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 im im) (/.f64 re 1))
(/.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1/2)
(/.f64 (*.f64 im (/.f64 im re)) 1)
(/.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (sqrt.f64 re) im))
(/.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (/.f64 (sqrt.f64 re) im) 1))
(/.f64 1 (*.f64 re (pow.f64 im -2)))
(/.f64 1 (/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (pow.f64 im 4))))
(/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) (/.f64 1 (*.f64 2 (*.f64 im (sqrt.f64 (/.f64 1/2 re))))))
(/.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 2)))
(/.f64 (sqrt.f64 im) (/.f64 re (*.f64 im (sqrt.f64 im))))
(/.f64 (sqrt.f64 2) (/.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))))
(/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (*.f64 im (sqrt.f64 (/.f64 1/2 re)))))
(/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))
(/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (/.f64 (sqrt.f64 re) im) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 re (cbrt.f64 (pow.f64 im 4))))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (/.f64 re im) (cbrt.f64 im)))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 re (*.f64 im (cbrt.f64 im))))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 re (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (neg.f64 re) (neg.f64 (pow.f64 (cbrt.f64 im) 2))))
(/.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 1 (/.f64 re (pow.f64 (cbrt.f64 im) 2))))
(/.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (/.f64 (sqrt.f64 re) im) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(/.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4))) (/.f64 1 (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))))
(/.f64 (cbrt.f64 im) (/.f64 (/.f64 re im) (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (/.f64 1/2 re) (/.f64 1 (*.f64 2 (*.f64 im im))))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re im) (sqrt.f64 (pow.f64 (cbrt.f64 im) 2))))
(/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 im 4)))))
(/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (neg.f64 re) (sqrt.f64 (*.f64 im (neg.f64 im)))))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))) (/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (*.f64 im (neg.f64 im)))) (/.f64 (neg.f64 re) (cbrt.f64 (*.f64 im (neg.f64 im)))))
(/.f64 (*.f64 im (sqrt.f64 im)) (/.f64 re (sqrt.f64 im)))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (/.f64 1 (sqrt.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 (*.f64 2 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (/.f64 1 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))))
(/.f64 (*.f64 2 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4)))) (/.f64 1 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(/.f64 (*.f64 2 (/.f64 1/2 re)) (pow.f64 im -2))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 2)) (/.f64 1 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 im (/.f64 im re)))) (/.f64 1 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 (*.f64 im (pow.f64 (cbrt.f64 im) 2)) (/.f64 re (cbrt.f64 im)))
(/.f64 -1 (*.f64 re (neg.f64 (pow.f64 im -2))))
(/.f64 (/.f64 1 re) (pow.f64 im -2))
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(/.f64 (/.f64 1 (pow.f64 im -2)) re)
(/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (sqrt.f64 re))
(/.f64 (/.f64 im (/.f64 (cbrt.f64 (*.f64 re re)) im)) (cbrt.f64 re))
(/.f64 (/.f64 im re) (/.f64 1 im))
(/.f64 (/.f64 1 (neg.f64 re)) (neg.f64 (pow.f64 im -2)))
(/.f64 (neg.f64 im) (/.f64 re (neg.f64 im)))
(/.f64 (neg.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (neg.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (/.f64 im 1) (/.f64 re im))
(/.f64 (/.f64 im (cbrt.f64 (*.f64 re re))) (/.f64 (cbrt.f64 re) im))
(/.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (sqrt.f64 re) (*.f64 im im)))
(/.f64 (/.f64 1 (cbrt.f64 (*.f64 re re))) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 re (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 re re))) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(/.f64 (pow.f64 1 1/2) (*.f64 re (pow.f64 im -2)))
(/.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (/.f64 (/.f64 (sqrt.f64 re) im) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2)))
(pow.f64 (*.f64 re (pow.f64 im -2)) -1)
(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)
(neg.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(log.f64 (exp.f64 (*.f64 im (/.f64 im re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im im) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))
(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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 1/2 (/.f64 (*.f64 im im) re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.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 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))
(*.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 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1/2 re)))
(*.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 (*.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 (*.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 (*.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 (*.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 (*.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 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.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)))) (sqrt.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 (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 (pow.f64 (cbrt.f64 im) 2) (/.f64 (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 (pow.f64 (cbrt.f64 im) 2) (/.f64 (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 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 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 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 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (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 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (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 re (/.f64 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)))
(cbrt.f64 (/.f64 (pow.f64 re 3) (pow.f64 im 6)))
(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 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 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.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 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 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 im (/.f64 im re)) 1/2)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.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 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 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 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 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 (*.f64 1/4 (pow.f64 im 4)) (*.f64 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 (*.f64 1/4 (pow.f64 im 4)) (*.f64 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 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 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 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 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 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 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/2 (cbrt.f64 (*.f64 re re))) (*.f64 im (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 1 re) (/.f64 1/2 (pow.f64 im -2)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.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 (*.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 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 im re) (*.f64 1/2 im))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.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 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 1/2 (/.f64 im re)) im)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.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 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 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 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 (sqrt.f64 im) (*.f64 (/.f64 1/2 re) (*.f64 im (sqrt.f64 im))))
(/.f64 1/2 (/.f64 (/.f64 (/.f64 re 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 re (*.f64 im (pow.f64 (cbrt.f64 im) 2))))
(*.f64 (*.f64 (cbrt.f64 im) (*.f64 im (/.f64 1/2 re))) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (/.f64 1/2 (/.f64 re (neg.f64 im))) (neg.f64 im))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.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 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 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 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 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 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 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 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 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 1/2 (/.f64 (sqrt.f64 (neg.f64 re)) (/.f64 im (sqrt.f64 re)))))
(*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 1/2 (*.f64 (sqrt.f64 (neg.f64 re)) (/.f64 (sqrt.f64 re) im))))
(*.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 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 im))) (sqrt.f64 (/.f64 re 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 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 (*.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 (*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 re))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 1/2 (*.f64 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2) (cbrt.f64 re))))
(*.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 (/.f64 1/2 (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 (/.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 1/2 (*.f64 (cbrt.f64 (/.f64 re im)) (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2))))
(/.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 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 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re)))) (*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re)))))))
(*.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)))) (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 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 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 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re)))) (*.f64 (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re)))))))
(*.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)))) (cbrt.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))))))
(pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.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 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 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 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 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 1/2 (/.f64 (*.f64 im im) re))
(sqrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4)))
(sqrt.f64 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re)))
(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 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 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 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 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 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 1/2 (/.f64 (*.f64 im im) re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 2 (*.f64 2 (*.f64 re (pow.f64 im -2))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 1/2 (/.f64 1 (*.f64 2 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) (/.f64 re 1))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1/2)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (sqrt.f64 re) im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (/.f64 (sqrt.f64 re) im) 1))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 1 (*.f64 re (pow.f64 im -2)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 1 (/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (pow.f64 im 4))))
(*.f64 (/.f64 1 (/.f64 re (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (/.f64 1 re) (*.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 im 4))))
(/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) (/.f64 1 (*.f64 2 (*.f64 im (sqrt.f64 (/.f64 1/2 re))))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 2)))
(/.f64 im (/.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 2) im)) (sqrt.f64 (/.f64 1/2 re))))
(*.f64 (*.f64 (sqrt.f64 2) (/.f64 im (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (/.f64 1/2 re)))
(/.f64 (sqrt.f64 im) (/.f64 re (*.f64 im (sqrt.f64 im))))
(*.f64 (/.f64 (sqrt.f64 im) re) (*.f64 im (sqrt.f64 im)))
(*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(/.f64 (sqrt.f64 2) (/.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 im (sqrt.f64 (/.f64 1/2 re))))))
(/.f64 im (/.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 2) im)) (sqrt.f64 (/.f64 1/2 re))))
(*.f64 (*.f64 (sqrt.f64 2) (/.f64 im (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (/.f64 1/2 re)))
(/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (*.f64 im (sqrt.f64 (/.f64 1/2 re)))))
(/.f64 im (/.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 2) im)) (sqrt.f64 (/.f64 1/2 re))))
(*.f64 (*.f64 (sqrt.f64 2) (/.f64 im (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (/.f64 1/2 re)))
(/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (/.f64 (sqrt.f64 re) im) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 2) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 re (cbrt.f64 (pow.f64 im 4))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (/.f64 re im) (cbrt.f64 im)))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 re (*.f64 im (cbrt.f64 im))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (/.f64 (cbrt.f64 im) re) im))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 re (*.f64 im (cbrt.f64 im))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (/.f64 (cbrt.f64 im) re) im))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 re (pow.f64 (cbrt.f64 im) 2))) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (pow.f64 (cbrt.f64 im) 4))
(/.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 re (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(/.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (neg.f64 re) (neg.f64 (pow.f64 (cbrt.f64 im) 2))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(/.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 1 (/.f64 re (pow.f64 (cbrt.f64 im) 2))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(/.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (/.f64 (sqrt.f64 re) im) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(/.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4))) (/.f64 1 (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))))
(/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re))) (/.f64 1/2 (cbrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) (*.f64 2 (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re)))))
(/.f64 (cbrt.f64 im) (/.f64 (/.f64 re im) (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 re (*.f64 im (cbrt.f64 im))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (/.f64 (cbrt.f64 im) re) im))
(/.f64 (/.f64 1/2 re) (/.f64 1 (*.f64 2 (*.f64 im im))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re im) (sqrt.f64 (pow.f64 (cbrt.f64 im) 2))))
(*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 re im)) (sqrt.f64 (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (fabs.f64 (cbrt.f64 im)) (/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 re im)))
(/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 im 4)))))
(*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (pow.f64 (cbrt.f64 im) 2))) (sqrt.f64 (cbrt.f64 (pow.f64 im 4))))
(/.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (sqrt.f64 (cbrt.f64 (pow.f64 im 4)))) (/.f64 re (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 (/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (/.f64 (fabs.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (neg.f64 re) (sqrt.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (neg.f64 re)) (sqrt.f64 (*.f64 im (neg.f64 im))))
(*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (neg.f64 re)))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))) (/.f64 (/.f64 re (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (*.f64 im (neg.f64 im)))) (/.f64 (neg.f64 re) (cbrt.f64 (*.f64 im (neg.f64 im)))))
(/.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (/.f64 (neg.f64 re) (cbrt.f64 (*.f64 im (neg.f64 im)))) (cbrt.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (neg.f64 re) (cbrt.f64 (*.f64 im (neg.f64 im))))))
(/.f64 (*.f64 im (sqrt.f64 im)) (/.f64 re (sqrt.f64 im)))
(*.f64 (/.f64 (sqrt.f64 im) re) (*.f64 im (sqrt.f64 im)))
(*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (/.f64 1 (sqrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 2 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))) (/.f64 1 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 2 (cbrt.f64 (*.f64 (/.f64 1/4 (*.f64 re re)) (pow.f64 im 4)))) (/.f64 1 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re))) (/.f64 1/2 (cbrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) (*.f64 2 (cbrt.f64 (*.f64 (pow.f64 im 4) (/.f64 (/.f64 1/4 re) re)))))
(/.f64 (*.f64 2 (/.f64 1/2 re)) (pow.f64 im -2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 2)) (/.f64 1 (*.f64 im (sqrt.f64 (/.f64 1/2 re)))))
(/.f64 im (/.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 2) im)) (sqrt.f64 (/.f64 1/2 re))))
(*.f64 (*.f64 (sqrt.f64 2) (/.f64 im (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (/.f64 1/2 re)))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 im (/.f64 im re)))) (/.f64 1 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(/.f64 (*.f64 im (pow.f64 (cbrt.f64 im) 2)) (/.f64 re (cbrt.f64 im)))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 re (*.f64 im (cbrt.f64 im))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (/.f64 (cbrt.f64 im) re) im))
(/.f64 -1 (*.f64 re (neg.f64 (pow.f64 im -2))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (/.f64 1 re) (pow.f64 im -2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (/.f64 1 (pow.f64 im -2)) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (/.f64 im (/.f64 (cbrt.f64 (*.f64 re re)) im)) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (*.f64 re re)) im)))
(*.f64 im (/.f64 im (*.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 re))))
(/.f64 (/.f64 im re) (/.f64 1 im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (/.f64 1 (neg.f64 re)) (neg.f64 (pow.f64 im -2)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (neg.f64 im) (/.f64 re (neg.f64 im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (neg.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (neg.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(/.f64 (/.f64 im 1) (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (/.f64 im (cbrt.f64 (*.f64 re re))) (/.f64 (cbrt.f64 re) im))
(/.f64 im (*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (*.f64 re re)) im)))
(*.f64 im (/.f64 im (*.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 re))))
(/.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (sqrt.f64 re) (*.f64 im im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (/.f64 1 (cbrt.f64 (*.f64 re re))) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(*.f64 (/.f64 (/.f64 1 (cbrt.f64 (*.f64 re re))) (cbrt.f64 re)) (*.f64 im im))
(/.f64 1 (*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (*.f64 re re)) (*.f64 im im))))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 re (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 re re))) (cbrt.f64 (*.f64 re (pow.f64 im -2))))
(/.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 re (pow.f64 im -2))) (cbrt.f64 (*.f64 re re))))
(/.f64 (pow.f64 1 1/2) (*.f64 re (pow.f64 im -2)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (/.f64 (/.f64 (sqrt.f64 re) im) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2)))
(*.f64 (/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (/.f64 (fabs.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (/.f64 (sqrt.f64 re) im)))
(pow.f64 (*.f64 re (pow.f64 im -2)) -1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(fabs.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(neg.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(fabs.f64 (/.f64 (*.f64 im im) re))
(log.f64 (exp.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im im) 3) (pow.f64 re 3)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)

localize56.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (/.f64 1 re))
0.1b
(*.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.5b
(*.f64 im (sqrt.f64 1/2))
Compiler

Compiled 57 to 46 computations (19.3% saved)

series12.0ms (0.2%)

Counts
4 → 36
Calls

18 calls:

TimeVariablePointExpression
3.0ms
re
@-inf
(*.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))))

rewrite97.0ms (1.3%)

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

simplify89.0ms (1.2%)

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)

eval534.0ms (7.3%)

Compiler

Compiled 22968 to 14838 computations (35.4% saved)

prune352.0ms (4.8%)

Pruning

11 alts after pruning (8 fresh and 3 done)

PrunedKeptTotal
New102271029
Fresh314
Picked101
Done235
Total1028111039
Error
0b
Counts
1039 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
48.2b
(*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (/.f64 (sqrt.f64 re) im)))
48.6b
(*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
47.8b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
47.8b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
47.8b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2)))
54.4b
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
53.3b
(*.f64 1/2 (sqrt.f64 (/.f64 im (/.f64 re im))))
13.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
27.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
47.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
29.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 198 to 158 computations (20.2% saved)

localize12.0ms (0.2%)

Compiler

Compiled 28 to 23 computations (17.9% saved)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 17 to 7 computations (58.8% saved)

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

rewrite57.0ms (0.8%)

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

simplify50.0ms (0.7%)

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

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
7.1b
(/.f64 (*.f64 im im) re)
17.8b
(sqrt.f64 (/.f64 (*.f64 im im) re))
Compiler

Compiled 27 to 8 computations (70.4% saved)

series1.0ms (0%)

Counts
2 → 36
Calls

12 calls:

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

rewrite73.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1664×add-sqr-sqrt
1646×*-un-lft-identity
1534×add-cube-cbrt
1516×add-cbrt-cube
164×pow1
Iterations

Useful iterations: 1 (0.0ms)

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

simplify70.0ms (1%)

Algorithm
egg-herbie
Rules
1358×associate-*r/
824×associate-/l*
704×associate-*l/
702×unswap-sqr
674×associate-+l-
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01601857
13701795
216141775
370931775
Stop Event
node limit
Counts
107 → 102
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 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (/.f64 1 (sqrt.f64 re)))
(*.f64 im (pow.f64 (/.f64 1 re) 1/2))
(*.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 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 im re) im))))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 1/2))
(/.f64 im (sqrt.f64 re))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re)))
(/.f64 (neg.f64 im) (neg.f64 (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 im re) im) 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 (/.f64 im re) im)) 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 (/.f64 im re) im))) 1)
(*.f64 im (*.f64 im (/.f64 1 re)))
(*.f64 im (/.f64 1 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1 re))
(*.f64 (*.f64 (/.f64 im re) im) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 1 (*.f64 (/.f64 im re) im))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 1 re)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (/.f64 1 re) (*.f64 im im))
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 1 (neg.f64 re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 (/.f64 im re) im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(*.f64 (/.f64 im re) im)
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(pow.f64 (*.f64 (/.f64 im re) im) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 3)
(pow.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) 1/2)
(pow.f64 (pow.f64 (*.f64 (/.f64 im re) im) 3) 1/3)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(neg.f64 (/.f64 (*.f64 im im) (neg.f64 re)))
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(log.f64 (exp.f64 (*.f64 (/.f64 im re) im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im re) im))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) im) 3))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im re) im)))
(exp.f64 (log.f64 (*.f64 (/.f64 im re) im)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im re) im)) 1))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im re) im)))
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 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) 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 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (/.f64 1 (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 im (pow.f64 (/.f64 1 re) 1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.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 (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 (*.f64 im im) 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 (cbrt.f64 (*.f64 (/.f64 im re) im)) (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 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 (/.f64 im re) im)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 im re) im))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.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 (/.f64 im re) im)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.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))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (sqrt.f64 (/.f64 (/.f64 re im) im)))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 im (sqrt.f64 re))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re)))
(/.f64 (neg.f64 im) (neg.f64 (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 (/.f64 im re) im) 1/2)
(sqrt.f64 (/.f64 (*.f64 im im) re))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 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))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im re) im)) 1/2))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im 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 (/.f64 im re) im))) 1)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 1 re)))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 im (/.f64 1 (/.f64 re im)))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 im im) (/.f64 1 re))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (/.f64 im re) im) 1)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 1 (*.f64 (/.f64 im re) im))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 1 re)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (/.f64 1 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) re) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 1 re) (*.f64 im im))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 1 (neg.f64 re)))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 (/.f64 im re) im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 im re) im)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im 1) (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (/.f64 1 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) re) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (/.f64 1 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) re) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (/.f64 (*.f64 im im) re))) (pow.f64 (cbrt.f64 re) 2))
(/.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)))
(pow.f64 (*.f64 (/.f64 im re) im) 1)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 3)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) 1/2)
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(sqrt.f64 (pow.f64 (/.f64 im (/.f64 re im)) 2))
(fabs.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 im re) im) 3) 1/3)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(neg.f64 (/.f64 (*.f64 im im) (neg.f64 re)))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(sqrt.f64 (pow.f64 (/.f64 im (/.f64 re im)) 2))
(fabs.f64 (*.f64 im (/.f64 im re)))
(log.f64 (exp.f64 (*.f64 (/.f64 im re) im)))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im re) im))))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) im) 3))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im re) im)))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (log.f64 (*.f64 (/.f64 im re) im)))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im re) im)) 1))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im re) im)))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))

localize46.0ms (0.6%)

Local error

Found 1 expressions with local error:

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

Compiled 31 to 26 computations (16.1% saved)

series1.0ms (0%)

Counts
1 → 0
Calls

3 calls:

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

rewrite97.0ms (1.3%)

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

Useful iterations: 1 (0.0ms)

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

simplify57.0ms (0.8%)

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

Useful iterations: 0 (0.0ms)

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

localize17.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

Compiled 43 to 29 computations (32.6% saved)

series4.0ms (0.1%)

Counts
3 → 24
Calls

12 calls:

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

rewrite67.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1482×associate-/r*
1230×associate-*r/
1212×associate-/l*
1010×*-commutative
902×associate-*l/
Iterations

Useful iterations: 1 (0.0ms)

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

simplify128.0ms (1.7%)

Algorithm
egg-herbie
Rules
1012×unswap-sqr
910×distribute-rgt-in
898×distribute-lft-in
506×distribute-rgt-neg-out
458×distribute-lft-neg-out
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02833432
16993242
230793242
Stop Event
node limit
Counts
148 → 171
Calls
Call 1
Inputs
(*.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 (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))
1
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 im (sqrt.f64 re))))
(*.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) (sqrt.f64 re)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 im) (/.f64 (pow.f64 (cbrt.f64 im) 2) (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))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 -1 (/.f64 im (neg.f64 (sqrt.f64 re))))
(*.f64 -1 (neg.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (neg.f64 im) (/.f64 -1 (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (sqrt.f64 im))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 (sqrt.f64 im) 1))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)) (cbrt.f64 im))
(*.f64 (*.f64 (sqrt.f64 2) (/.f64 im (sqrt.f64 re))) (sqrt.f64 1/2))
(*.f64 (/.f64 im (neg.f64 (sqrt.f64 re))) -1)
(*.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 im (pow.f64 re 1/4)) (/.f64 1 (pow.f64 re 1/4)))
(*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 1 (cbrt.f64 re)))
(*.f64 (/.f64 -1 (sqrt.f64 re)) (neg.f64 im))
(*.f64 (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)) (sqrt.f64 2))
(*.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 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))) (/.f64 (sqrt.f64 im) (cbrt.f64 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 re)) (/.f64 (pow.f64 (cbrt.f64 im) 2) 1))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 2) 1) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 1) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 (/.f64 (sqrt.f64 1/2) 1) im))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 (sqrt.f64 1/2) im))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (/.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (/.f64 (sqrt.f64 2) (cbrt.f64 (/.f64 re (*.f64 im im)))) (/.f64 (sqrt.f64 1/2) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (/.f64 (sqrt.f64 2) (neg.f64 (sqrt.f64 re))) (*.f64 (sqrt.f64 1/2) (neg.f64 im)))
(*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (*.f64 (pow.f64 1/2 1/4) im))) (pow.f64 1/2 1/4))
(*.f64 (/.f64 (pow.f64 2 1/4) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im))) (pow.f64 2 1/4))
(*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (neg.f64 im))) (neg.f64 (sqrt.f64 1/2)))
(*.f64 (/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (cbrt.f64 1/2))) (cbrt.f64 (sqrt.f64 1/2)))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))
(*.f64 (/.f64 1 (neg.f64 (neg.f64 (sqrt.f64 re)))) (neg.f64 (neg.f64 im)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (neg.f64 (sqrt.f64 re)))) (sqrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (cbrt.f64 2) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im))) (cbrt.f64 (sqrt.f64 2)))
(*.f64 (/.f64 (pow.f64 re -1/2) -1) (neg.f64 im))
(*.f64 (/.f64 (pow.f64 re -1/2) (/.f64 1 (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 (/.f64 (pow.f64 re -1/2) (/.f64 1 (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))
(*.f64 (/.f64 -1 (neg.f64 (neg.f64 (sqrt.f64 re)))) (neg.f64 im))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 1) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (neg.f64 (sqrt.f64 re)))) (cbrt.f64 (neg.f64 im)))
(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 (/.f64 im (/.f64 re im)))
(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))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(-.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 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (pow.f64 re 1/4) (/.f64 (pow.f64 re 1/4) im))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (/.f64 1 im) (sqrt.f64 re))
(*.f64 -1 (/.f64 (sqrt.f64 re) (neg.f64 im)))
(*.f64 (neg.f64 (sqrt.f64 re)) (/.f64 -1 im))
(*.f64 (/.f64 (pow.f64 re 1/4) im) (pow.f64 re 1/4))
(*.f64 (/.f64 (pow.f64 re 1/4) im) (/.f64 (pow.f64 re 1/4) 1))
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) im) (cbrt.f64 re))
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) im) (/.f64 (cbrt.f64 re) 1))
(*.f64 (/.f64 1 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 1 im))
(*.f64 (/.f64 (sqrt.f64 re) (sqrt.f64 im)) (/.f64 1 (sqrt.f64 im)))
(*.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 im)) (/.f64 1 (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 -1 im) (neg.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (pow.f64 re 1/4) 1) (/.f64 (pow.f64 re 1/4) im))
(*.f64 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(*.f64 (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)) (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)))
(*.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 (sqrt.f64 re)) (sqrt.f64 im)) (/.f64 (cbrt.f64 re) (sqrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im)))
(*.f64 (/.f64 (cbrt.f64 re) im) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 1 (pow.f64 2 1/4)) (/.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im)) (pow.f64 2 1/4)))
(*.f64 (/.f64 1 (cbrt.f64 2)) (/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (sqrt.f64 1/2) im))))
(*.f64 (/.f64 1 (/.f64 im (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 1 (neg.f64 (sqrt.f64 2))) (neg.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im))))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (pow.f64 2 1/4)) (sqrt.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im))))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (sqrt.f64 2))) (cbrt.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 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)))
(log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 re) im)))
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.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 (sqrt.f64 2) (*.f64 (*.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 (sqrt.f64 2) (*.f64 (*.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 (sqrt.f64 2) (*.f64 (*.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 (sqrt.f64 2) (*.f64 (*.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 (sqrt.f64 2) (*.f64 (*.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 (sqrt.f64 2) (*.f64 (*.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 (sqrt.f64 2) (*.f64 (*.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 (sqrt.f64 2) (*.f64 (*.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 (sqrt.f64 2) (*.f64 (*.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 (sqrt.f64 2) (*.f64 (*.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 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.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)
1
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 2) (*.f64 im (/.f64 (sqrt.f64 1/2) (sqrt.f64 re))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 2) (*.f64 im (/.f64 (sqrt.f64 1/2) (sqrt.f64 re))))
(*.f64 im (pow.f64 re -1/2))
(*.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 im) (/.f64 (sqrt.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 (cbrt.f64 im) (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)))
(/.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 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (cbrt.f64 re) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (/.f64 im (sqrt.f64 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 -1 (/.f64 im (neg.f64 (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 -1 (neg.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (neg.f64 im) (/.f64 -1 (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (sqrt.f64 im))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 (sqrt.f64 im) 1))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)) (cbrt.f64 im))
(/.f64 im (sqrt.f64 re))
(*.f64 (*.f64 (sqrt.f64 2) (/.f64 im (sqrt.f64 re))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 2) (*.f64 im (/.f64 (sqrt.f64 1/2) (sqrt.f64 re))))
(*.f64 (/.f64 im (neg.f64 (sqrt.f64 re))) -1)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 1 (/.f64 (pow.f64 re 1/2) im))
(*.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 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 im (pow.f64 re 1/4)) (/.f64 1 (pow.f64 re 1/4)))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 1 (/.f64 (pow.f64 re 1/2) im))
(*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 1 (cbrt.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 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 -1 (sqrt.f64 re)) (neg.f64 im))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 2) (*.f64 im (/.f64 (sqrt.f64 1/2) (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 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))) (/.f64 (sqrt.f64 im) (cbrt.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 (/.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 (cbrt.f64 im) (sqrt.f64 re)) (/.f64 (pow.f64 (cbrt.f64 im) 2) 1))
(/.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 1 (/.f64 (pow.f64 re 1/2) im))
(*.f64 (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 1 (/.f64 (pow.f64 re 1/2) im))
(*.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)))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (cbrt.f64 re) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (/.f64 (sqrt.f64 2) 1) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 2) (*.f64 im (/.f64 (sqrt.f64 1/2) (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 1) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 (/.f64 (sqrt.f64 1/2) 1) im))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 2) (*.f64 im (/.f64 (sqrt.f64 1/2) (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 (sqrt.f64 1/2) im))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 2) (*.f64 im (/.f64 (sqrt.f64 1/2) (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (/.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 2) (*.f64 im (/.f64 (sqrt.f64 1/2) (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 2) (cbrt.f64 (/.f64 re (*.f64 im im)))) (/.f64 (sqrt.f64 1/2) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (sqrt.f64 2) (/.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (/.f64 (sqrt.f64 1/2) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))
(*.f64 (/.f64 (sqrt.f64 2) (neg.f64 (sqrt.f64 re))) (*.f64 (sqrt.f64 1/2) (neg.f64 im)))
(/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (neg.f64 im))) (neg.f64 (sqrt.f64 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (neg.f64 (/.f64 (sqrt.f64 2) (neg.f64 (sqrt.f64 re)))))
(*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (*.f64 (pow.f64 1/2 1/4) im))) (pow.f64 1/2 1/4))
(*.f64 (pow.f64 1/2 1/4) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 im (pow.f64 1/2 1/4))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 (*.f64 im (pow.f64 1/2 1/4)) (pow.f64 1/2 1/4)))
(*.f64 (/.f64 (pow.f64 2 1/4) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im))) (pow.f64 2 1/4))
(*.f64 (pow.f64 2 1/4) (/.f64 (pow.f64 2 1/4) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im))))
(*.f64 (/.f64 (pow.f64 2 1/2) (sqrt.f64 re)) (*.f64 (sqrt.f64 1/2) im))
(*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (neg.f64 im))) (neg.f64 (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 2) (*.f64 im (/.f64 (sqrt.f64 1/2) (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 re) im) (cbrt.f64 1/2))) (cbrt.f64 (sqrt.f64 1/2)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)) (cbrt.f64 1/2)) (cbrt.f64 (sqrt.f64 1/2)))
(*.f64 (*.f64 (sqrt.f64 2) (/.f64 im (sqrt.f64 re))) (*.f64 (cbrt.f64 1/2) (cbrt.f64 (sqrt.f64 1/2))))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 1 (neg.f64 (neg.f64 (sqrt.f64 re)))) (neg.f64 (neg.f64 im)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (neg.f64 (sqrt.f64 re)))) (sqrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (cbrt.f64 2) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im))) (cbrt.f64 (sqrt.f64 2)))
(*.f64 (*.f64 (/.f64 (cbrt.f64 2) (sqrt.f64 re)) (*.f64 (sqrt.f64 1/2) im)) (cbrt.f64 (sqrt.f64 2)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (/.f64 (cbrt.f64 2) (sqrt.f64 re))) (cbrt.f64 (sqrt.f64 2)))
(*.f64 (/.f64 (pow.f64 re -1/2) -1) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 (pow.f64 re -1/2) -1))
(/.f64 (pow.f64 re -1/2) (/.f64 1 im))
(*.f64 (/.f64 (pow.f64 re -1/2) (/.f64 1 (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 (pow.f64 re -1/2) (/.f64 1 (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 -1 (neg.f64 (neg.f64 (sqrt.f64 re)))) (neg.f64 im))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 1) (cbrt.f64 (/.f64 im (sqrt.f64 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 im (/.f64 re im))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 im))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (cbrt.f64 im)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (neg.f64 (sqrt.f64 re)))) (cbrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (cbrt.f64 (neg.f64 (sqrt.f64 re)))) (cbrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (neg.f64 (sqrt.f64 re)))) (cbrt.f64 (neg.f64 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 (/.f64 im (/.f64 re im)))
(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 im) (log.f64 (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 (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 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (pow.f64 re 1/4) (/.f64 (pow.f64 re 1/4) im))
(/.f64 (pow.f64 re 1/2) 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 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (cbrt.f64 re) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (cbrt.f64 re) im))
(*.f64 (/.f64 1 im) (sqrt.f64 re))
(/.f64 (sqrt.f64 re) im)
(*.f64 -1 (/.f64 (sqrt.f64 re) (neg.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (neg.f64 (sqrt.f64 re)) (/.f64 -1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (pow.f64 re 1/4) im) (pow.f64 re 1/4))
(*.f64 (pow.f64 re 1/4) (/.f64 (pow.f64 re 1/4) im))
(/.f64 (pow.f64 re 1/2) im)
(*.f64 (/.f64 (pow.f64 re 1/4) im) (/.f64 (pow.f64 re 1/4) 1))
(*.f64 (pow.f64 re 1/4) (/.f64 (pow.f64 re 1/4) im))
(/.f64 (pow.f64 re 1/2) im)
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) im) (cbrt.f64 re))
(*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (cbrt.f64 re) im))
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) im) (/.f64 (cbrt.f64 re) 1))
(*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (cbrt.f64 re) im))
(*.f64 (/.f64 1 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (sqrt.f64 re) (sqrt.f64 im)) (/.f64 1 (sqrt.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 im)) (/.f64 1 (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 -1 im) (neg.f64 (sqrt.f64 re)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (pow.f64 re 1/4) 1) (/.f64 (pow.f64 re 1/4) im))
(*.f64 (pow.f64 re 1/4) (/.f64 (pow.f64 re 1/4) im))
(/.f64 (pow.f64 re 1/2) im)
(*.f64 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(/.f64 (/.f64 (pow.f64 re 1/2) (cbrt.f64 im)) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)) (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(/.f64 (/.f64 (pow.f64 re 1/2) (cbrt.f64 im)) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (/.f64 (cbrt.f64 re) 1) (/.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 (*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (cbrt.f64 re) (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)) (/.f64 (cbrt.f64 re) (sqrt.f64 im)))
(/.f64 (*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (cbrt.f64 re) (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 re) (sqrt.f64 im)) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (cbrt.f64 re) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im)))
(*.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im)) (/.f64 1 (sqrt.f64 2)))
(/.f64 (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 1/2)) (sqrt.f64 2))
(/.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 2))
(*.f64 (/.f64 (cbrt.f64 re) im) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (cbrt.f64 re) im))
(*.f64 (/.f64 1 (pow.f64 2 1/4)) (/.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im)) (pow.f64 2 1/4)))
(/.f64 1 (*.f64 (/.f64 (pow.f64 2 1/2) (sqrt.f64 re)) (*.f64 (sqrt.f64 1/2) im)))
(*.f64 (/.f64 1 (cbrt.f64 2)) (/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (sqrt.f64 1/2) im))))
(*.f64 (/.f64 1 (cbrt.f64 2)) (/.f64 (sqrt.f64 re) (*.f64 (*.f64 (sqrt.f64 1/2) im) (cbrt.f64 (sqrt.f64 2)))))
(/.f64 (/.f64 (sqrt.f64 re) (*.f64 im (*.f64 (sqrt.f64 1/2) (cbrt.f64 (sqrt.f64 2))))) (cbrt.f64 2))
(/.f64 (/.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im)) (cbrt.f64 (sqrt.f64 2))) (cbrt.f64 2))
(*.f64 (/.f64 1 (/.f64 im (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (cbrt.f64 re) im))
(*.f64 (/.f64 1 (neg.f64 (sqrt.f64 2))) (neg.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im))))
(*.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im)) (/.f64 1 (sqrt.f64 2)))
(/.f64 (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 1/2)) (sqrt.f64 2))
(/.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 2))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (pow.f64 2 1/4)) (sqrt.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im))))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (pow.f64 2 1/4)) (sqrt.f64 (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 1/2))))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (sqrt.f64 2))) (cbrt.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (sqrt.f64 2))) (cbrt.f64 (/.f64 (/.f64 (sqrt.f64 re) im) (sqrt.f64 1/2))))
(/.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (/.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 1/2) im)))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 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)))
(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)
(log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)

eval88.0ms (1.2%)

Compiler

Compiled 4364 to 2478 computations (43.2% saved)

prune65.0ms (0.9%)

Pruning

11 alts after pruning (5 fresh and 6 done)

PrunedKeptTotal
New3293332
Fresh123
Picked101
Done167
Total33211343
Error
0b
Counts
343 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
47.9b
(*.f64 1/2 (/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4)))
47.8b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
47.8b
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
47.8b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
47.8b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2)))
54.4b
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
53.3b
(*.f64 1/2 (sqrt.f64 (/.f64 im (/.f64 re im))))
47.8b
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
13.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
27.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
29.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 159 to 125 computations (21.4% saved)

localize8.0ms (0.1%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

localize11.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

Compiled 21 to 14 computations (33.3% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

6 calls:

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

rewrite79.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1320×add-sqr-sqrt
1296×*-un-lft-identity
1210×add-cube-cbrt
1194×add-cbrt-cube
1180×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

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

simplify44.0ms (0.6%)

Algorithm
egg-herbie
Rules
1344×distribute-rgt-in
1316×distribute-lft-in
1096×log-prod
692×associate-*r*
654×associate-+r+
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
042391
199391
2340299
31930299
Stop Event
node limit
Counts
23 → 13
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 (pow.f64 re -1/2) im)) 1)
(pow.f64 (*.f64 (pow.f64 re -1/2) im) 1)
(pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 re -1/4)) 2)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) im)) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3) 1/3)
(sqrt.f64 (*.f64 (*.f64 im im) (pow.f64 re -1)))
(log.f64 (pow.f64 (exp.f64 im) (pow.f64 re -1/2)))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im)))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) im)))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(-.f64 (+.f64 1 (*.f64 (pow.f64 re -1/2) im)) 1)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (*.f64 (pow.f64 re -1/2) im) 1)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 re -1/4)) 2)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) im)) 3)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3) 1/3)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(sqrt.f64 (*.f64 (*.f64 im im) (pow.f64 re -1)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(log.f64 (pow.f64 (exp.f64 im) (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 27 to 8 computations (70.4% saved)

series1.0ms (0%)

Counts
2 → 36
Calls

12 calls:

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

rewrite68.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1804×add-sqr-sqrt
1788×*-un-lft-identity
1668×add-cube-cbrt
1646×add-cbrt-cube
170×pow1
Iterations

Useful iterations: 0 (0.0ms)

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

simplify71.0ms (1%)

Algorithm
egg-herbie
Rules
1246×associate-*r/
900×associate-/l*
772×associate-*l/
660×associate-+l-
596×associate-+r-
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01792150
14052058
215482050
368392050
Stop Event
node limit
Counts
114 → 100
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 (sqrt.f64 (*.f64 im (/.f64 im re))))) 1)
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(*.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 im re) 1/2))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (sqrt.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 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (pow.f64 (/.f64 im re) 1/2) (sqrt.f64 im))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 im (/.f64 im 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 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 (neg.f64 re) im)))
(/.f64 (neg.f64 (sqrt.f64 im)) (neg.f64 (sqrt.f64 (/.f64 re im))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) 1/3)
(fabs.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (sqrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 (/.f64 im re) im)
(*.f64 (neg.f64 im) (/.f64 1 (/.f64 (neg.f64 re) im)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (*.f64 im (/.f64 im re)) 1/4)) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(*.f64 (*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (*.f64 (/.f64 im re) 1) im)
(*.f64 (*.f64 (/.f64 im re) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 (*.f64 (/.f64 im re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 (/.f64 1 re) (/.f64 im (/.f64 1 im)))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (/.f64 im (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 im (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(*.f64 (/.f64 (sqrt.f64 im) re) (/.f64 (sqrt.f64 im) (/.f64 1 im)))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (/.f64 (cbrt.f64 im) (/.f64 1 im)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im 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)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(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 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))) 1)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(*.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 im re) 1/2))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im im) re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im im) re))) (cbrt.f64 (/.f64 (*.f64 im 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 (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (pow.f64 (/.f64 im re) 1/2) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) 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 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 (neg.f64 re) im)))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 re (neg.f64 im))))
(/.f64 (neg.f64 (sqrt.f64 im)) (neg.f64 (sqrt.f64 (/.f64 re im))))
(*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(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 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2))
(cbrt.f64 (pow.f64 (/.f64 (*.f64 im im) re) 3/2))
(fabs.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2))
(cbrt.f64 (pow.f64 (/.f64 (*.f64 im im) re) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (sqrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 4))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im im) re))) 4))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (neg.f64 im) (/.f64 1 (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (*.f64 im (/.f64 im re)) 1/4)) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 4))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im im) re))) 4))
(*.f64 (*.f64 (/.f64 im re) 1) im)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 (/.f64 im re) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 (/.f64 im re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 1 re) (/.f64 im (/.f64 1 im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (/.f64 im (sqrt.f64 (/.f64 re im))))
(/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(/.f64 im (*.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 im (cbrt.f64 (/.f64 re im))))
(/.f64 (/.f64 im (cbrt.f64 (/.f64 re im))) (pow.f64 (cbrt.f64 (/.f64 re im)) 2))
(/.f64 im (*.f64 (cbrt.f64 (/.f64 re im)) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 (sqrt.f64 im) re) (/.f64 (sqrt.f64 im) (/.f64 1 im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 im (cbrt.f64 (/.f64 re im))))
(/.f64 (/.f64 im (cbrt.f64 (/.f64 re im))) (pow.f64 (cbrt.f64 (/.f64 re im)) 2))
(/.f64 im (*.f64 (cbrt.f64 (/.f64 re im)) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (/.f64 (cbrt.f64 im) (/.f64 1 im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (/.f64 im (sqrt.f64 (/.f64 re im))))
(/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(/.f64 im (*.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(/.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (cbrt.f64 im) 2)) (pow.f64 (cbrt.f64 (/.f64 re im)) 2))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)

localize15.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (/.f64 1 re))
0.1b
(*.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)

rewrite58.0ms (0.8%)

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

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

localize16.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(/.f64 im (pow.f64 re 1/4))
0.2b
(/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4))
Compiler

Compiled 34 to 23 computations (32.4% saved)

series105.0ms (1.4%)

Counts
2 → 36
Calls

12 calls:

TimeVariablePointExpression
34.0ms
im
@0
(/.f64 im (pow.f64 re 1/4))
30.0ms
re
@inf
(/.f64 im (pow.f64 re 1/4))
28.0ms
re
@-inf
(/.f64 im (pow.f64 re 1/4))
10.0ms
re
@0
(/.f64 im (pow.f64 re 1/4))
0.0ms
im
@-inf
(/.f64 im (pow.f64 re 1/4))

rewrite64.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1836×add-sqr-sqrt
1814×*-un-lft-identity
1708×add-cube-cbrt
1688×add-cbrt-cube
168×add-exp-log
Iterations

Useful iterations: 1 (0.0ms)

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

simplify104.0ms (1.4%)

Algorithm
egg-herbie
Rules
1188×associate-/r*
976×associate-*r/
790×*-commutative
790×unswap-sqr
742×associate-/l/
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01742394
14412164
219312116
371522116
Stop Event
node limit
Counts
106 → 107
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 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 im (*.f64 (pow.f64 re -1/4) (pow.f64 re -1/4)))
(*.f64 im (/.f64 1 (sqrt.f64 re)))
(*.f64 (*.f64 im (pow.f64 re -1/4)) (pow.f64 re -1/4))
(*.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 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (pow.f64 re -1/4)))
(*.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 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re -1/4)))
(*.f64 (pow.f64 re -1/4) (*.f64 im (pow.f64 re -1/4)))
(*.f64 (*.f64 (neg.f64 im) (pow.f64 re -1/4)) (/.f64 1 (neg.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 1 (pow.f64 re 1/8)) (/.f64 (*.f64 im (pow.f64 re -1/4)) (pow.f64 re 1/8)))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 (*.f64 im (pow.f64 re -1/4)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 im 1) (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)))
(*.f64 (/.f64 im (pow.f64 re 1/8)) (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/8)))
(*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 (pow.f64 re -1/4) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 1) (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (pow.f64 re 1/4)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (cbrt.f64 (sqrt.f64 re))) (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) 1) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/4)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (pow.f64 re 1/8)) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/8)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.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 1 (/.f64 im (sqrt.f64 re))) -1)
(neg.f64 (/.f64 (*.f64 im (pow.f64 re -1/4)) (neg.f64 (pow.f64 re 1/4))))
(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))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (pow.f64 re -1/4)))) 1)
(*.f64 im (pow.f64 re -1/4))
(*.f64 (*.f64 im (pow.f64 re -1/4)) 1)
(*.f64 1 (*.f64 im (pow.f64 re -1/4)))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/4)))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/4)))
(*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 (pow.f64 re -1/4) im)
(*.f64 (neg.f64 im) (/.f64 1 (neg.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 1 (pow.f64 re 1/8)) (/.f64 im (pow.f64 re 1/8)))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 im (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 (sqrt.f64 im) 1) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))) (/.f64 (sqrt.f64 im) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/8)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/8)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (*.f64 im (pow.f64 re -1/4))))
(pow.f64 (*.f64 im (pow.f64 re -1/4)) 1)
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(pow.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) 3)
(pow.f64 (pow.f64 (*.f64 im (pow.f64 re -1/4)) 3) 1/3)
(pow.f64 (/.f64 (pow.f64 re 1/4) im) -1)
(neg.f64 (/.f64 im (neg.f64 (pow.f64 re 1/4))))
(sqrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re))))
(log.f64 (pow.f64 (exp.f64 im) (pow.f64 re -1/4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (pow.f64 re -1/4)))))
(cbrt.f64 (pow.f64 (*.f64 im (pow.f64 re -1/4)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (pow.f64 re -1/4))))
(exp.f64 (log.f64 (*.f64 im (pow.f64 re -1/4))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (pow.f64 re -1/4))) 1))
(log1p.f64 (expm1.f64 (*.f64 im (pow.f64 re -1/4))))
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 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/4))
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(*.f64 im (*.f64 (pow.f64 -1 1/4) (pow.f64 (/.f64 -1 re) 1/4)))
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(*.f64 im (*.f64 (pow.f64 -1 1/4) (pow.f64 (/.f64 -1 re) 1/4)))
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(*.f64 im (*.f64 (pow.f64 -1 1/4) (pow.f64 (/.f64 -1 re) 1/4)))
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(*.f64 im (*.f64 (pow.f64 -1 1/4) (pow.f64 (/.f64 -1 re) 1/4)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 im (*.f64 (pow.f64 re -1/4) (pow.f64 re -1/4)))
(*.f64 im (pow.f64 re -1/2))
(*.f64 im (/.f64 1 (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (*.f64 im (pow.f64 re -1/4)) (pow.f64 re -1/4))
(*.f64 im (pow.f64 re -1/2))
(*.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 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (pow.f64 re -1/4)))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2) (pow.f64 re -1/4))
(*.f64 im (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)))
(/.f64 im (/.f64 (pow.f64 re 1/4) (pow.f64 re -1/4)))
(*.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 im (/.f64 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 im (/.f64 re im))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re -1/4)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (*.f64 (pow.f64 re -1/4) (cbrt.f64 (*.f64 im (pow.f64 re -1/4)))))
(*.f64 (pow.f64 re -1/4) (*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (pow.f64 re -1/4)))))
(*.f64 (pow.f64 re -1/4) (*.f64 (cbrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re))) (cbrt.f64 (*.f64 im (pow.f64 re -1/4)))))
(*.f64 (pow.f64 re -1/4) (*.f64 im (pow.f64 re -1/4)))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (*.f64 (neg.f64 im) (pow.f64 re -1/4)) (/.f64 1 (neg.f64 (pow.f64 re 1/4))))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2) (pow.f64 re -1/4))
(*.f64 im (/.f64 (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 (pow.f64 re 1/8)) (/.f64 (*.f64 im (pow.f64 re -1/4)) (pow.f64 re 1/8)))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2) (pow.f64 re -1/4))
(*.f64 im (/.f64 (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 (sqrt.f64 re))) (/.f64 (*.f64 im (pow.f64 re -1/4)) (cbrt.f64 (pow.f64 re 1/4))))
(/.f64 (*.f64 (pow.f64 re -1/4) (/.f64 im (cbrt.f64 (sqrt.f64 re)))) (cbrt.f64 (pow.f64 re 1/4)))
(/.f64 im (*.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) (pow.f64 re -1/4)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 im 1) (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2) (pow.f64 re -1/4))
(*.f64 im (/.f64 (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 im (pow.f64 re 1/8)) (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/8)))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2) (pow.f64 re -1/4))
(*.f64 im (/.f64 (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 im (cbrt.f64 (sqrt.f64 re))) (/.f64 (pow.f64 re -1/4) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 (*.f64 im (pow.f64 re -1/4)) (cbrt.f64 (pow.f64 re 1/4))))
(/.f64 (*.f64 (pow.f64 re -1/4) (/.f64 im (cbrt.f64 (sqrt.f64 re)))) (cbrt.f64 (pow.f64 re 1/4)))
(/.f64 im (*.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) (pow.f64 re -1/4)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(/.f64 (/.f64 (*.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 im)) (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 im (pow.f64 re 1/2))
(*.f64 (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 1) (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (pow.f64 re 1/4)))
(/.f64 (/.f64 (*.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 im)) (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 im (pow.f64 re 1/2))
(*.f64 (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (cbrt.f64 (sqrt.f64 re))) (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (cbrt.f64 (pow.f64 re 1/4))))
(/.f64 (/.f64 (/.f64 im (pow.f64 re 1/4)) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (pow.f64 re 1/4)))
(/.f64 (/.f64 im (pow.f64 re 1/4)) (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) 1) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/4)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/4)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re))) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/4)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (pow.f64 re 1/8)) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/8)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/4)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re))) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/4)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (/.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re))) (cbrt.f64 (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))
(pow.f64 (/.f64 1 (/.f64 im (sqrt.f64 re))) -1)
(/.f64 im (sqrt.f64 re))
(neg.f64 (/.f64 (*.f64 im (pow.f64 re -1/4)) (neg.f64 (pow.f64 re 1/4))))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2) (pow.f64 re -1/4))
(*.f64 im (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)))
(/.f64 im (/.f64 (pow.f64 re 1/4) (pow.f64 re -1/4)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(sqrt.f64 (/.f64 im (/.f64 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))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (pow.f64 re -1/4)))) 1)
(*.f64 im (pow.f64 re -1/4))
(*.f64 im (pow.f64 re -1/4))
(*.f64 (*.f64 im (pow.f64 re -1/4)) 1)
(*.f64 im (pow.f64 re -1/4))
(*.f64 1 (*.f64 im (pow.f64 re -1/4)))
(*.f64 im (pow.f64 re -1/4))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/4)))
(*.f64 im (pow.f64 re -1/4))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/4)))
(*.f64 im (pow.f64 re -1/4))
(*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re))) (cbrt.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re))) (cbrt.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 (pow.f64 re -1/4) im)
(*.f64 im (pow.f64 re -1/4))
(*.f64 (neg.f64 im) (/.f64 1 (neg.f64 (pow.f64 re 1/4))))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(*.f64 (/.f64 1 (pow.f64 re 1/8)) (/.f64 im (pow.f64 re 1/8)))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 im (cbrt.f64 (pow.f64 re 1/4))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (pow.f64 re 1/4)))
(/.f64 im (*.f64 (cbrt.f64 (pow.f64 re 1/4)) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 im) 1) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 im))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))) (/.f64 (sqrt.f64 im) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 im (cbrt.f64 (pow.f64 re 1/4))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (pow.f64 re 1/4)))
(/.f64 im (*.f64 (cbrt.f64 (pow.f64 re 1/4)) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/8)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/8)))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (sqrt.f64 re))))
(pow.f64 (*.f64 im (pow.f64 re -1/4)) 1)
(*.f64 im (pow.f64 re -1/4))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(pow.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) 3)
(*.f64 im (pow.f64 re -1/4))
(pow.f64 (pow.f64 (*.f64 im (pow.f64 re -1/4)) 3) 1/3)
(*.f64 im (pow.f64 re -1/4))
(pow.f64 (/.f64 (pow.f64 re 1/4) im) -1)
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(neg.f64 (/.f64 im (neg.f64 (pow.f64 re 1/4))))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(sqrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re))))
(sqrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)))
(log.f64 (pow.f64 (exp.f64 im) (pow.f64 re -1/4)))
(*.f64 im (pow.f64 re -1/4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (pow.f64 re -1/4)))))
(*.f64 im (pow.f64 re -1/4))
(cbrt.f64 (pow.f64 (*.f64 im (pow.f64 re -1/4)) 3))
(*.f64 im (pow.f64 re -1/4))
(expm1.f64 (log1p.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 im (pow.f64 re -1/4))
(exp.f64 (log.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 im (pow.f64 re -1/4))
(exp.f64 (*.f64 (log.f64 (*.f64 im (pow.f64 re -1/4))) 1))
(*.f64 im (pow.f64 re -1/4))
(log1p.f64 (expm1.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 im (pow.f64 re -1/4))

eval88.0ms (1.2%)

Compiler

Compiled 4026 to 2320 computations (42.4% saved)

prune316.0ms (4.3%)

Pruning

11 alts after pruning (0 fresh and 11 done)

PrunedKeptTotal
New3020302
Fresh000
Picked011
Done01010
Total30211313
Error
0b
Counts
313 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
47.9b
(*.f64 1/2 (/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4)))
47.8b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
47.8b
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
47.8b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
47.8b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re -2)) (sqrt.f64 2)))
54.4b
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
53.3b
(*.f64 1/2 (sqrt.f64 (/.f64 im (/.f64 re im))))
47.8b
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
13.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
27.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
29.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 109 to 86 computations (21.1% saved)

regimes172.0ms (2.3%)

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

7 calls:

46.0ms
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
36.0ms
(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
30.0ms
re
17.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
14.0ms
(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
Results
ErrorSegmentsBranch
5.6b2re
13.0b1im
5.5b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
5.5b2(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
5.9b2(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
5.9b2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
13.0b1(*.f64 im im)
Compiler

Compiled 279 to 199 computations (28.7% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
4.007646812576528e-146
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes117.0ms (1.6%)

Counts
13 → 3
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 1/2 (*.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 re im))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (/.f64 1/2 re) (*.f64 im im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 1/2 (/.f64 re (*.f64 im im))))))
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re -2)) (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 (sqrt.f64 (/.f64 1 re)) im))
Calls

3 calls:

59.0ms
im
36.0ms
re
19.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
11.7b3re
20.1b8im
22.6b4(*.f64 im im)
Compiler

Compiled 120 to 86 computations (28.3% saved)

bsearch52.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
33.0ms
1.4068683230004343e-28
4.530175362460434e-20
19.0ms
-7.857908968691844e+59
-1.1279080098144099e+57
Results
28.0ms218×body256valid
13.0ms31×body2048valid
5.0ms13×body1024valid
2.0ms10×body512valid
Compiler

Compiled 380 to 314 computations (17.4% saved)

regimes73.0ms (1%)

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

3 calls:

38.0ms
im
20.0ms
re
13.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
11.7b3re
20.1b8im
22.6b4(*.f64 im im)
Compiler

Compiled 70 to 51 computations (27.1% saved)

bsearch51.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
33.0ms
1.4068683230004343e-28
4.530175362460434e-20
18.0ms
-7.857908968691844e+59
-1.1279080098144099e+57
Results
27.0ms221×body256valid
13.0ms33×body2048valid
4.0ms14×body1024valid
1.0msbody512valid
Compiler

Compiled 371 to 305 computations (17.8% saved)

regimes67.0ms (0.9%)

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

2 calls:

49.0ms
im
17.0ms
re
Results
ErrorSegmentsBranch
12.2b3re
20.7b8im
Compiler

Compiled 41 to 32 computations (22% saved)

bsearch51.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
33.0ms
1.4068683230004343e-28
4.530175362460434e-20
18.0ms
-7.857908968691844e+59
-1.1279080098144099e+57
Results
28.0ms218×body256valid
11.0ms26×body2048valid
6.0ms19×body1024valid
2.0msbody512valid
Compiler

Compiled 337 to 288 computations (14.5% saved)

regimes40.0ms (0.5%)

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

2 calls:

26.0ms
im
13.0ms
re
Results
ErrorSegmentsBranch
12.2b3re
20.8b8im
Compiler

Compiled 26 to 20 computations (23.1% saved)

bsearch55.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
35.0ms
1.4068683230004343e-28
4.530175362460434e-20
20.0ms
-7.857908968691844e+59
-1.1279080098144099e+57
Results
28.0ms208×body256valid
12.0ms33×body2048valid
8.0ms21×body1024valid
2.0ms10×body512valid
Compiler

Compiled 328 to 279 computations (14.9% saved)

regimes22.0ms (0.3%)

Accuracy

Total -40.7b remaining (-193.2%)

Threshold costs -40.7b (-193.2%)

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:

12.0ms
im
9.0ms
re
Results
ErrorSegmentsBranch
21.1b2re
26.5b2im
Compiler

Compiled 20 to 16 computations (20% saved)

bsearch18.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
18.0ms
-7.857908968691844e+59
-1.1279080098144099e+57
Results
16.0ms128×body256valid
Compiler

Compiled 166 to 144 computations (13.3% saved)

simplify15.0ms (0.2%)

Algorithm
egg-herbie
Rules
30×*-commutative
10×+-commutative
sub-neg
1-exp
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
075457
195457
2101457
3103457
4104457
Stop Event
done
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 (sqrt.f64 (/.f64 1 re)) im)) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 re -380000000000000009312065267007324790611904493174998555426816) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 6911985578081563/2658455991569831745807614120560689152) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))))
(if (<=.f64 re -1600000000000000147044536130294051809344551355450952515584) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 2764794231232625/21267647932558653966460912964485513216) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))
(if (<=.f64 re -1149999999999999942352724221598387275546584719481630621696) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 4187068186722485/332306998946228968225951765070086144) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))
(if (<=.f64 re -1380000000000000000513097811326262047955021265404086452224) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 1786482426334927/85070591730234615865843651857942052864) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(if (<=.f64 re -69999999999999994673039854912731469364597688959069784637440) (*.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 (sqrt.f64 (/.f64 1 re)) im)) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) 0) (*.f64 1/2 (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 re -380000000000000009312065267007324790611904493174998555426816) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 6911985578081563/2658455991569831745807614120560689152) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))))
(if (<=.f64 re -380000000000000009312065267007324790611904493174998555426816) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 6911985578081563/2658455991569831745807614120560689152) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (*.f64 im (sqrt.f64 (/.f64 1 re))))))
(if (<=.f64 re -1600000000000000147044536130294051809344551355450952515584) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 2764794231232625/21267647932558653966460912964485513216) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))
(if (<=.f64 re -1600000000000000147044536130294051809344551355450952515584) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 2764794231232625/21267647932558653966460912964485513216) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))
(if (<=.f64 re -1149999999999999942352724221598387275546584719481630621696) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 4187068186722485/332306998946228968225951765070086144) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))
(if (<=.f64 re -1149999999999999942352724221598387275546584719481630621696) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 4187068186722485/332306998946228968225951765070086144) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))
(if (<=.f64 re -1380000000000000000513097811326262047955021265404086452224) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 1786482426334927/85070591730234615865843651857942052864) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(if (<=.f64 re -69999999999999994673039854912731469364597688959069784637440) (*.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 182 to 142 computations (22% saved)

soundness212.0ms (2.9%)

Algorithm
egg-herbie
Rules
1170×+-commutative
1162×associate-/r/
728×fma-def
726×associate-+l-
572×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
05059329
114298885
257098885
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)

end88.0ms (1.2%)

Compiler

Compiled 170 to 129 computations (24.1% saved)

Profiling

Loading profile data...