Details

Time bar (total: 7.4s)

analyze210.0ms (2.8%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
12.5%12.5%87.4%0.1%0%0%0%5
18.8%18.7%81.2%0.1%0%0%0%6
37.5%37.5%62.4%0.1%0%0%0%7
42.2%42.1%57.8%0.1%0%0%0%8
54.7%54.6%45.3%0.1%0%0%0%9
57.4%57.4%42.5%0.1%0%0%0%10
64.5%64.4%35.5%0.1%0%0%0%11
65.9%65.9%34%0.1%0%0%0%12
Compiler

Compiled 18 to 13 computations (27.8% saved)

sample1.6s (21.6%)

Results
813.0ms6403×body256valid
310.0ms528×body4096valid
295.0ms679×body2048valid
114.0ms399×body1024valid
47.0ms247×body512valid
Bogosity

preprocess14.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

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

Compiled 19 to 14 computations (26.3% saved)

simplify7.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

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

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
10.4b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
10.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
Compiler

Compiled 12 to 9 computations (25% saved)

localize15.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 39 to 16 computations (59% saved)

series10.0ms (0.1%)

Counts
2 → 32
Calls

12 calls:

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

rewrite49.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
907×pow1_binary64
845×add-log-exp_binary64
844×log1p-expm1-u_binary64
844×expm1-log1p-u_binary64
827×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify66.0ms (0.9%)

Algorithm
egg-herbie
Rules
835×fma-def_binary64
462×fma-neg_binary64
455×times-frac_binary64
346×*-commutative_binary64
299×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

eval63.0ms (0.8%)

Compiler

Compiled 3390 to 2333 computations (31.2% saved)

prune49.0ms (0.7%)

Pruning

14 alts after pruning (13 fresh and 1 done)

PrunedKeptTotal
New13213145
Fresh000
Picked011
Done000
Total13214146
Error
4.6b
Counts
146 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
10.9b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) 2))
44.1b
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
56.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8)))))
44.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 re 2 (/.f64 (*.f64 1/2 (*.f64 im im)) re)))))
10.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) 2))))
11.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 3))))
55.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 (*.f64 -1/2 im) im) re))))
46.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
10.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
43.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
54.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (/.f64 im re) im) -1/2))))
48.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
46.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
14.2b
(*.f64 1/2 (exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
Compiler

Compiled 356 to 285 computations (19.9% saved)

localize19.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (+.f64 re (hypot.f64 re im)))
0.0b
(sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) 2)))
0.3b
(+.f64 re (hypot.f64 re im))
0.4b
(pow.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) 2)
Compiler

Compiled 62 to 25 computations (59.7% saved)

series13.0ms (0.2%)

Counts
3 → 24
Calls

18 calls:

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

rewrite55.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
935×pow1_binary64
869×add-log-exp_binary64
868×log1p-expm1-u_binary64
868×expm1-log1p-u_binary64
847×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify63.0ms (0.9%)

Algorithm
egg-herbie
Rules
531×times-frac_binary64
417×unswap-sqr_binary64
347×associate-/l*_binary64
322×associate-/r*_binary64
262×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

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 re im)))
Compiler

Compiled 28 to 15 computations (46.4% saved)

series4.0ms (0.1%)

Counts
1 → 8
Calls

6 calls:

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

rewrite44.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
812×pow1_binary64
759×add-log-exp_binary64
758×log1p-expm1-u_binary64
758×expm1-log1p-u_binary64
743×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify105.0ms (1.4%)

Algorithm
egg-herbie
Rules
965×distribute-lft-out_binary64
498×unswap-sqr_binary64
402×distribute-rgt-in_binary64
340×fma-def_binary64
280×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0107658
1255616
2695554
32516526
44583526
Stop Event
node limit
Counts
30 → 65
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/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.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/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 re))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re)))))))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 1)
(*.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 1)
(*.f64 1 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 (cbrt.f64 (*.f64 2 (+.f64 re im))) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (cbrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 (sqrt.f64 (+.f64 re im)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re im)))
(*.f64 (pow.f64 (*.f64 2 (+.f64 re im)) 1/4) (pow.f64 (*.f64 2 (+.f64 re im)) 1/4))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (pow.f64 (+.f64 re im) 2) 4))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re im)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (+.f64 re im) 2) 4)) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re im))) 1/2))
(pow.f64 (*.f64 2 (+.f64 re im)) 1/2)
(pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 1)
(pow.f64 (pow.f64 (*.f64 2 (+.f64 re im)) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 3)
(pow.f64 (pow.f64 (*.f64 2 (+.f64 re im)) 1/4) 2)
(fabs.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(cbrt.f64 (pow.f64 (*.f64 2 (+.f64 re im)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
Outputs
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 1/2 re))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 1 im))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 -1/8 (*.f64 re re))) (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 1/2 re)))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) -1/8)))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.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/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 1/16 (*.f64 (sqrt.f64 2) (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)))) (fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/16 (*.f64 (pow.f64 re 3) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (*.f64 1/16 (pow.f64 re 3))))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 1/2 re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 -1/8 (*.f64 re re))))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 (sqrt.f64 im) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 1 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 (sqrt.f64 2) (+.f64 (+.f64 (sqrt.f64 im) (*.f64 1/2 (*.f64 re (sqrt.f64 (/.f64 1 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 (sqrt.f64 2) (sqrt.f64 re))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1 re))))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 1/2 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 im (*.f64 1/2 (sqrt.f64 (/.f64 1 re))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 1/2 (*.f64 im (sqrt.f64 (/.f64 1 re))))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 1/2 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2)))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 im (+.f64 (*.f64 (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) -1/8) (*.f64 1/2 (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (fma.f64 1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 im 3) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1 re))))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (fma.f64 1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 im 3) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 1/2 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re))))))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2)))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (pow.f64 im 3) (*.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 (sqrt.f64 re) (*.f64 im (*.f64 1/2 (sqrt.f64 (/.f64 1 re))))) (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) 1/16)))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 (sqrt.f64 re) (*.f64 (pow.f64 im 3) (*.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 re 5)))))) (*.f64 im (+.f64 (*.f64 (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) -1/8) (*.f64 1/2 (sqrt.f64 (/.f64 1 re)))))))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))
(*.f64 1 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 2 (+.f64 re im))) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(*.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 re im)))) (cbrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 (cbrt.f64 (*.f64 2 (+.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 im re)))))
(*.f64 (sqrt.f64 (+.f64 re im)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 im re)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re im)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 im re)))
(*.f64 (pow.f64 (*.f64 2 (+.f64 re im)) 1/4) (pow.f64 (*.f64 2 (+.f64 re im)) 1/4))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (pow.f64 (+.f64 re im) 2) 4))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re im)))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (pow.f64 (+.f64 im re) 2) 4))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 im re)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 2 (+.f64 re im))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (+.f64 re im) 2) 4)) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re im))) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (pow.f64 (+.f64 im re) 2) 4))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 im re)))))
(pow.f64 (*.f64 2 (+.f64 re im)) 1/2)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))
(pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))
(pow.f64 (pow.f64 (*.f64 2 (+.f64 re im)) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 2 (+.f64 im re)) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 3)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))
(pow.f64 (pow.f64 (*.f64 2 (+.f64 re im)) 1/4) 2)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))
(fabs.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))
(cbrt.f64 (pow.f64 (*.f64 2 (+.f64 re im)) 3/2))
(cbrt.f64 (pow.f64 (*.f64 2 (+.f64 im re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (+.f64 im re)))

localize19.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (/.f64 (*.f64 (*.f64 -1/2 im) im) re))
6.5b
(/.f64 (*.f64 (*.f64 -1/2 im) im) re)
19.6b
(sqrt.f64 (*.f64 2 (/.f64 (*.f64 (*.f64 -1/2 im) im) re)))
Compiler

Compiled 53 to 36 computations (32.1% saved)

series12.0ms (0.2%)

Counts
3 → 60
Calls

18 calls:

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

rewrite74.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
560×log-prod_binary64
417×exp-prod_binary64
309×pow-prod-down_binary64
260×pow2_binary64
236×pow-unpow_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify70.0ms (0.9%)

Algorithm
egg-herbie
Rules
855×fma-def_binary64
381×associate-/l/_binary64
371×log-prod_binary64
245×exp-prod_binary64
218×sqr-pow_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03582503
18742440
229892434
Stop Event
node limit
Counts
208 → 223
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 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 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(+.f64 0 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))) 1)
(*.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1)
(*.f64 1 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/6))
(*.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/6) (cbrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(*.f64 (/.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 re)))
(*.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/4) (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/4))
(/.f64 (sqrt.f64 (*.f64 -1 (*.f64 im im))) (sqrt.f64 re))
(pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/2)
(pow.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1)
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 2) 1/4)
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3) 1/6)
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3/2) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 3/2)
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/6) 3)
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/4) 2)
(pow.f64 (exp.f64 1/2) (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))) (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))))
(fabs.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))))
(cbrt.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3/2)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/6)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/4)) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 1) 1))
(+.f64 0 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))) 1)
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (*.f64 (*.f64 im im) (/.f64 1 re)))
(*.f64 im (*.f64 (*.f64 -1/2 im) (/.f64 1 re)))
(*.f64 (*.f64 -1/2 im) (/.f64 1 (/.f64 re im)))
(*.f64 (*.f64 -1/2 im) (*.f64 im (/.f64 1 re)))
(*.f64 (*.f64 -1/2 (*.f64 im im)) (/.f64 1 re))
(*.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)) 1)
(*.f64 1 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))
(*.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))) (cbrt.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re -2))))
(*.f64 (cbrt.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re -2))) (cbrt.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) (/.f64 1 re)))
(*.f64 (/.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 re)))
(*.f64 (*.f64 (sqrt.f64 -1/2) im) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (/.f64 1 re)))
(*.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 1 (neg.f64 re)))
(*.f64 (/.f64 1 re) (*.f64 -1/2 (*.f64 im im)))
(*.f64 (/.f64 im 1) (/.f64 (*.f64 -1/2 im) re))
(*.f64 (/.f64 (*.f64 -1/2 im) re) im)
(*.f64 (/.f64 (*.f64 -1/2 im) 1) (/.f64 im re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) 1) (/.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) re))
(*.f64 (/.f64 (*.f64 (sqrt.f64 -1/2) im) 1) (/.f64 (*.f64 (sqrt.f64 -1/2) im) re))
(*.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 -1/2 im) (cbrt.f64 re)))
(*.f64 (/.f64 (*.f64 -1/2 im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (/.f64 (*.f64 -1/2 (*.f64 im im)) (cbrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 -1/2) im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 (sqrt.f64 -1/2) im) (cbrt.f64 re)))
(*.f64 (/.f64 -1/2 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (*.f64 -1/2 im) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 -1/2 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 re -1/2) (/.f64 (*.f64 -1/2 (*.f64 im im)) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (sqrt.f64 re)) (/.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) (sqrt.f64 re)))
(pow.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)) 1)
(pow.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re -2)) 1/2)
(pow.f64 (pow.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))) 3)
(pow.f64 (/.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 re)) 2)
(pow.f64 (*.f64 -2 (/.f64 re (*.f64 im im))) -1)
(pow.f64 (exp.f64 1) (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(pow.f64 (/.f64 (pow.f64 (*.f64 (sqrt.f64 -1/2) im) 6) (pow.f64 re 3)) 1/3)
(pow.f64 (/.f64 (*.f64 -2 (/.f64 re (*.f64 im im))) 1) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))) 2)) (cbrt.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))) (sqrt.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))))
(neg.f64 (/.f64 (*.f64 -1/2 (*.f64 im im)) (neg.f64 re)))
(sqrt.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re -2)))
(log.f64 (exp.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))))
(cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)) 3))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 (sqrt.f64 -1/2) im) 6) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(log1p.f64 (expm1.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(exp.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(exp.f64 (*.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))) 1))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))) 3))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 re))) 2))
(exp.f64 (*.f64 (log.f64 (*.f64 -2 (/.f64 re (*.f64 im im)))) -1))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))) 1) 1))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 -1/2 im)) 1) (log.f64 (/.f64 re im))))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 -1/2 (*.f64 im im))) 1) (log.f64 re)))
(exp.f64 (-.f64 (log.f64 (*.f64 -1/2 (*.f64 im im))) (*.f64 (log.f64 re) 1)))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 -1/2 (*.f64 im im))) 1) (*.f64 (log.f64 re) 1)))
(+.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)) (/.f64 -1/2 (/.f64 (/.f64 re im) im)))
(+.f64 0 (/.f64 (*.f64 -1 (*.f64 im im)) re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 1)
(/.f64 2 (*.f64 -2 (/.f64 re (*.f64 im im))))
(/.f64 1 (/.f64 re (*.f64 -1 (*.f64 im im))))
(/.f64 (*.f64 -1 (*.f64 im im)) re)
(/.f64 (neg.f64 (*.f64 -1 (*.f64 im im))) (neg.f64 re))
(/.f64 (/.f64 (*.f64 -1 (*.f64 im im)) 1) re)
(/.f64 (/.f64 (*.f64 -1 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (/.f64 (*.f64 -1 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 re))
(/.f64 (*.f64 (*.f64 -1/2 im) 2) (/.f64 re im))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) 2) (neg.f64 re))
(/.f64 (*.f64 2 (*.f64 -1/2 im)) (/.f64 re im))
(/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) (neg.f64 re))
(pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1)
(pow.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 2)
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 2) 1/2)
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3) 1/3)
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3/2) 2/3)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 3)
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/6) 6)
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/4) 4)
(pow.f64 (exp.f64 1) (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(pow.f64 (/.f64 re (*.f64 -1 (*.f64 im im))) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 2)) (cbrt.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))) (sqrt.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(sqrt.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 2))
(log.f64 (exp.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(cbrt.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(exp.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 1/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 3))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1/2) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 1) 2))
(exp.f64 (-.f64 (log.f64 (*.f64 -1 (*.f64 im im))) (*.f64 (log.f64 re) 1)))
Outputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1) (*.f64 im (fabs.f64 (pow.f64 re -1/2))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1) (*.f64 im (fabs.f64 (pow.f64 re -1/2))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1) (*.f64 im (fabs.f64 (pow.f64 re -1/2))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1) (*.f64 im (fabs.f64 (pow.f64 re -1/2))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1) (*.f64 im (fabs.f64 (pow.f64 re -1/2))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1) (*.f64 im (fabs.f64 (pow.f64 re -1/2))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1) (*.f64 im (fabs.f64 (pow.f64 re -1/2))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1) (*.f64 im (fabs.f64 (pow.f64 re -1/2))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 (sqrt.f64 -1) im)))
(*.f64 (sqrt.f64 -1) (*.f64 (fabs.f64 (pow.f64 re -1/2)) (neg.f64 im)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 (sqrt.f64 -1) im)))
(*.f64 (sqrt.f64 -1) (*.f64 (fabs.f64 (pow.f64 re -1/2)) (neg.f64 im)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 (sqrt.f64 -1) im)))
(*.f64 (sqrt.f64 -1) (*.f64 (fabs.f64 (pow.f64 re -1/2)) (neg.f64 im)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 (sqrt.f64 -1) im)))
(*.f64 (sqrt.f64 -1) (*.f64 (fabs.f64 (pow.f64 re -1/2)) (neg.f64 im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(+.f64 0 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)))))) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))) 1)
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(*.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1)
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(*.f64 1 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/6))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(*.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/6) (cbrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(*.f64 (/.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 re)) (sqrt.f64 2))
(*.f64 (/.f64 (sqrt.f64 -1/2) (/.f64 (sqrt.f64 re) im)) (sqrt.f64 2))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 -1/2))))
(*.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 -1/2))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 (*.f64 (sqrt.f64 -1/2) 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 re) (*.f64 im (sqrt.f64 -1/2))))
(*.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 -1/2))) (sqrt.f64 2))
(*.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/4) (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/4))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(/.f64 (sqrt.f64 (*.f64 -1 (*.f64 im im))) (sqrt.f64 re))
(/.f64 (sqrt.f64 (neg.f64 (*.f64 im im))) (sqrt.f64 re))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 re))
(pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/2)
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1)
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 2) 1/4)
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3) 1/6)
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3/2) 1/3)
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 3/2)
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/6) 3)
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/4) 2)
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (exp.f64 1/2) (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re))))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re))))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))) (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))))) (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re))))))
(fabs.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(cbrt.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3/2))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1/2))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 1))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3/2)) 1/3))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/6)) 3))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/4)) 2))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1) 1/2))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1/2) 1))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 1) 1))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(+.f64 0 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (*.f64 (*.f64 im -1/2) (/.f64 im re)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (*.f64 im -1/2) (/.f64 im re))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (*.f64 im -1/2)) (/.f64 im re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) -1/2) (/.f64 im re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (*.f64 im -1/2) (/.f64 im re))))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (*.f64 im -1/2)) (/.f64 im re)))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) -1/2) (/.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))) 1)
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 -1/2 (*.f64 (*.f64 im im) (/.f64 1 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 im (*.f64 (*.f64 -1/2 im) (/.f64 1 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (*.f64 -1/2 im) (/.f64 1 (/.f64 re im)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (*.f64 -1/2 im) (*.f64 im (/.f64 1 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (*.f64 -1/2 (*.f64 im im)) (/.f64 1 re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)) 1)
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 1 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))) (cbrt.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re -2))))
(*.f64 (cbrt.f64 (*.f64 (*.f64 im -1/2) (/.f64 im re))) (cbrt.f64 (*.f64 1/4 (*.f64 (pow.f64 im 4) (pow.f64 re -2)))))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re)))) (cbrt.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re -2))))
(*.f64 (cbrt.f64 (/.f64 im (*.f64 (/.f64 re im) -2))) (cbrt.f64 (*.f64 (*.f64 (pow.f64 re -2) 1/4) (pow.f64 im 4))))
(*.f64 (cbrt.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re -2))) (cbrt.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(*.f64 (cbrt.f64 (*.f64 (*.f64 im -1/2) (/.f64 im re))) (cbrt.f64 (*.f64 1/4 (*.f64 (pow.f64 im 4) (pow.f64 re -2)))))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re)))) (cbrt.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re -2))))
(*.f64 (cbrt.f64 (/.f64 im (*.f64 (/.f64 re im) -2))) (cbrt.f64 (*.f64 (*.f64 (pow.f64 re -2) 1/4) (pow.f64 im 4))))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) (/.f64 1 re)))
(*.f64 (*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))) (/.f64 1 re))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (/.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2))) re))
(*.f64 (/.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (*.f64 (sqrt.f64 -1/2) im) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (/.f64 1 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 1 (neg.f64 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (/.f64 1 re) (*.f64 -1/2 (*.f64 im im)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (/.f64 im 1) (/.f64 (*.f64 -1/2 im) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (/.f64 (*.f64 -1/2 im) re) im)
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (/.f64 (*.f64 -1/2 im) 1) (/.f64 im re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) 1) (/.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) re))
(*.f64 (*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))) (/.f64 1 re))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (/.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2))) re))
(*.f64 (/.f64 (*.f64 (sqrt.f64 -1/2) im) 1) (/.f64 (*.f64 (sqrt.f64 -1/2) im) re))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 -1/2 im) (cbrt.f64 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (/.f64 (*.f64 -1/2 im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (/.f64 (*.f64 -1/2 (*.f64 im im)) (cbrt.f64 re)))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 re) -2) (*.f64 -1/2 (*.f64 im im))) (cbrt.f64 re))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (/.f64 (*.f64 im -1/2) (/.f64 (cbrt.f64 re) im)))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (*.f64 im (*.f64 (/.f64 -1/2 (cbrt.f64 re)) im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(*.f64 (cbrt.f64 (*.f64 (*.f64 im -1/2) (/.f64 im re))) (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2)))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re)))) (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2)))
(/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (/.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (/.f64 im (*.f64 (/.f64 re im) -2)))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 -1/2) im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 (sqrt.f64 -1/2) im) (cbrt.f64 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (/.f64 -1/2 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (*.f64 -1/2 im) (sqrt.f64 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (/.f64 (*.f64 -1/2 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(*.f64 (pow.f64 re -1/2) (/.f64 (*.f64 -1/2 (*.f64 im im)) (sqrt.f64 re)))
(*.f64 (pow.f64 re -1/2) (/.f64 -1/2 (/.f64 (sqrt.f64 re) (*.f64 im im))))
(*.f64 (pow.f64 re -1/2) (*.f64 im (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im)))
(*.f64 (pow.f64 re -1/2) (*.f64 im (/.f64 im (/.f64 (sqrt.f64 re) -1/2))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (sqrt.f64 re)) (/.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) (sqrt.f64 re)))
(*.f64 (*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))) (/.f64 1 re))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (/.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2))) re))
(pow.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)) 1)
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(pow.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re -2)) 1/2)
(sqrt.f64 (*.f64 1/4 (*.f64 (pow.f64 im 4) (pow.f64 re -2))))
(sqrt.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re -2)))
(fabs.f64 (/.f64 im (*.f64 (/.f64 re im) -2)))
(pow.f64 (pow.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)) 3) 1/3)
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(pow.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))) 3)
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(pow.f64 (/.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 re)) 2)
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(pow.f64 (*.f64 -2 (/.f64 re (*.f64 im im))) -1)
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(pow.f64 (exp.f64 1) (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(pow.f64 (/.f64 (pow.f64 (*.f64 (sqrt.f64 -1/2) im) 6) (pow.f64 re 3)) 1/3)
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(pow.f64 (/.f64 (*.f64 -2 (/.f64 re (*.f64 im im))) 1) -1)
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))) 2)) (cbrt.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (*.f64 im -1/2) (/.f64 im re)))) 2)) (cbrt.f64 (log.f64 (*.f64 (*.f64 im -1/2) (/.f64 im re)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))))) 2)) (cbrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 im (*.f64 (/.f64 re im) -2)))) 2)) (cbrt.f64 (log.f64 (/.f64 im (*.f64 (/.f64 re im) -2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))) (sqrt.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (*.f64 im -1/2) (/.f64 im re))))) (sqrt.f64 (log.f64 (*.f64 (*.f64 im -1/2) (/.f64 im re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re)))))) (sqrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 im (*.f64 (/.f64 re im) -2))))) (sqrt.f64 (log.f64 (/.f64 im (*.f64 (/.f64 re im) -2)))))
(neg.f64 (/.f64 (*.f64 -1/2 (*.f64 im im)) (neg.f64 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(sqrt.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re -2)))
(sqrt.f64 (*.f64 1/4 (*.f64 (pow.f64 im 4) (pow.f64 re -2))))
(fabs.f64 (/.f64 im (*.f64 (/.f64 re im) -2)))
(log.f64 (exp.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)) 3))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 (sqrt.f64 -1/2) im) 6) (pow.f64 re 3)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(expm1.f64 (log1p.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(log1p.f64 (expm1.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(exp.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(exp.f64 (*.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))) 1))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))) 1/3))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)))) 3))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 re))) 2))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(exp.f64 (*.f64 (log.f64 (*.f64 -2 (/.f64 re (*.f64 im im)))) -1))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im))) 1) 1))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 -1/2 im)) 1) (log.f64 (/.f64 re im))))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 -1/2 (*.f64 im im))) 1) (log.f64 re)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(exp.f64 (-.f64 (log.f64 (*.f64 -1/2 (*.f64 im im))) (*.f64 (log.f64 re) 1)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 -1/2 (*.f64 im im))) 1) (*.f64 (log.f64 re) 1)))
(*.f64 (*.f64 im -1/2) (/.f64 im re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 im (*.f64 (/.f64 re im) -2))
(+.f64 (/.f64 -1/2 (/.f64 (/.f64 re im) im)) (/.f64 -1/2 (/.f64 (/.f64 re im) im)))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(+.f64 0 (/.f64 (*.f64 -1 (*.f64 im im)) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (/.f64 (neg.f64 (*.f64 im im)) re))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (neg.f64 (*.f64 im im)) re)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (*.f64 (neg.f64 im) (/.f64 im re))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 (neg.f64 im) re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (neg.f64 (*.f64 im im)) re)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (neg.f64 im) (/.f64 im re))))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 (neg.f64 im) re)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 1)
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(/.f64 2 (*.f64 -2 (/.f64 re (*.f64 im im))))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(/.f64 1 (/.f64 re (*.f64 -1 (*.f64 im im))))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(/.f64 (*.f64 -1 (*.f64 im im)) re)
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(/.f64 (neg.f64 (*.f64 -1 (*.f64 im im))) (neg.f64 re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(/.f64 (/.f64 (*.f64 -1 (*.f64 im im)) 1) re)
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(/.f64 (/.f64 (*.f64 -1 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(/.f64 (/.f64 (*.f64 -1 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(/.f64 (*.f64 (*.f64 -1/2 im) 2) (/.f64 re im))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) 2) (neg.f64 re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(/.f64 (*.f64 2 (*.f64 -1/2 im)) (/.f64 re im))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) (neg.f64 re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1)
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 2)
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 2) 1/2)
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3) 1/3)
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3/2) 2/3)
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 3)
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/6) 6)
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 1/4) 4)
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (exp.f64 1) (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (/.f64 re (*.f64 -1 (*.f64 im im))) -1)
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 2)) (cbrt.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (neg.f64 (*.f64 im im)) re))) 2)) (cbrt.f64 (log.f64 (/.f64 (neg.f64 (*.f64 im im)) re))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (neg.f64 im) (/.f64 im re)))) 2)) (cbrt.f64 (log.f64 (*.f64 (neg.f64 im) (/.f64 im re)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (/.f64 (neg.f64 im) re)))) 2)) (cbrt.f64 (log.f64 (*.f64 im (/.f64 (neg.f64 im) re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))) (sqrt.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (neg.f64 (*.f64 im im)) re)))) (sqrt.f64 (log.f64 (/.f64 (neg.f64 (*.f64 im im)) re))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (neg.f64 im) (/.f64 im re))))) (sqrt.f64 (log.f64 (*.f64 (neg.f64 im) (/.f64 im re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (/.f64 (neg.f64 im) re))))) (sqrt.f64 (log.f64 (*.f64 im (/.f64 (neg.f64 im) re)))))
(sqrt.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 2))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(log.f64 (exp.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(cbrt.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(exp.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 2))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 1/2))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re) 3)) 1/3))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 3))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1) 1))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re)) 1/2) 2))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 -1 (*.f64 im im)) re))) 1) 2))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(exp.f64 (-.f64 (log.f64 (*.f64 -1 (*.f64 im im))) (*.f64 (log.f64 re) 1)))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))

localize22.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
0.0b
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
0.3b
(+.f64 re (hypot.f64 re im))
3.8b
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
Compiler

Compiled 60 to 27 computations (55% saved)

series13.0ms (0.2%)

Counts
3 → 24
Calls

18 calls:

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

rewrite88.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
932×pow1_binary64
865×add-log-exp_binary64
864×log1p-expm1-u_binary64
864×expm1-log1p-u_binary64
845×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify101.0ms (1.4%)

Algorithm
egg-herbie
Rules
766×fma-def_binary64
368×*-commutative_binary64
365×associate-/r*_binary64
292×fma-neg_binary64
289×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02232890
15512566
220032336
378972336
Stop Event
node limit
Counts
97 → 108
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) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(log.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (log.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im))) (*.f64 1/2 (/.f64 re im)))
(+.f64 (log.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im))) (*.f64 1/2 (/.f64 re im)))
(+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 im 3))) (*.f64 -3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 im 2)))) (pow.f64 re 3))) (+.f64 (log.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im))) (*.f64 1/2 (/.f64 re im))))
(log.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(+.f64 (log.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))) (*.f64 1/4 (/.f64 (pow.f64 im 2) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2)))))
(+.f64 (log.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 2) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2)))) (*.f64 1/24 (*.f64 (-.f64 (*.f64 -12 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) re))) (*.f64 3/4 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 2) 4) (pow.f64 re 4))))) (pow.f64 im 4)))))
(+.f64 (log.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 2) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2)))) (+.f64 (*.f64 1/720 (*.f64 (+.f64 (*.f64 90 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 4) (pow.f64 re 3)))) (+.f64 (*.f64 15/4 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 2) 6) (pow.f64 re 6)))) (*.f64 360 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (*.f64 (pow.f64 (sqrt.f64 2) 2) re))))) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (-.f64 (*.f64 -12 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) re))) (*.f64 3/4 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 2) 4) (pow.f64 re 4))))) (pow.f64 im 4))))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1)
(*.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2))
(pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/2)
(pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) 2)
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(pow.f64 (exp.f64 (cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2))) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1)
(*.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2))
(pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/2)
(pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) 2)
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(pow.f64 (exp.f64 (cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2))) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(+.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) (log.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(+.f64 0 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(+.f64 (log.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4)) (log.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4)))
(+.f64 (log.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (log.f64 (sqrt.f64 2)))
(-.f64 (+.f64 1 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1)
(*.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1)
(*.f64 1 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2)
(*.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) (cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2)))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(*.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(*.f64 1/2 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1)
(pow.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3) 1/3)
(pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 3)
(pow.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 2)
(sqrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2))
(cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3))
(expm1.f64 (log1p.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(log1p.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1))
(exp.f64 (log.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
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 (*.f64 (sqrt.f64 2) 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 1/2 (sqrt.f64 (/.f64 1 im)))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(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)))) (fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (*.f64 1/2 (sqrt.f64 2)) (*.f64 re (*.f64 re (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2))))) (*.f64 (*.f64 1/2 (sqrt.f64 2)) re))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 re (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)))) re))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (/.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/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (*.f64 1/2 (sqrt.f64 2)) (*.f64 re (*.f64 re (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2))))) (*.f64 (*.f64 1/2 (sqrt.f64 2)) re)))) (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (pow.f64 re 3) (sqrt.f64 2))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) -1/4)))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 re (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)))) re))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/4 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (sqrt.f64 im))))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(*.f64 2 (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (*.f64 2 (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 2 (sqrt.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1 (sqrt.f64 2)))) 2)) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (fma.f64 2 (sqrt.f64 re) (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re))) -1/2))))
(fma.f64 2 (sqrt.f64 re) (fma.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (*.f64 im (*.f64 im (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1 (sqrt.f64 2)))) 2)) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1 (sqrt.f64 2)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 2) 2))))) (*.f64 (pow.f64 im 6) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (pow.f64 im 4))) (*.f64 1/2 (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 re re)))) (pow.f64 im 6))))) (fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (*.f64 2 (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (fma.f64 (sqrt.f64 (/.f64 1 re)) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (pow.f64 im 4)) (*.f64 1/2 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/8 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 re re)))) (pow.f64 im 6)))) (*.f64 2 (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)))
(fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) 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 1/2 (sqrt.f64 (/.f64 1 im)))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(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)))) (fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (*.f64 1/2 (sqrt.f64 2)) (*.f64 re (*.f64 re (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2))))) (*.f64 (*.f64 1/2 (sqrt.f64 2)) re))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 re (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)))) re))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (/.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/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (*.f64 1/2 (sqrt.f64 2)) (*.f64 re (*.f64 re (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2))))) (*.f64 (*.f64 1/2 (sqrt.f64 2)) re)))) (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (pow.f64 re 3) (sqrt.f64 2))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) -1/4)))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 re (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)))) re))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/4 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (sqrt.f64 im))))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(*.f64 2 (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (*.f64 2 (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 2 (sqrt.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1 (sqrt.f64 2)))) 2)) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (fma.f64 2 (sqrt.f64 re) (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re))) -1/2))))
(fma.f64 2 (sqrt.f64 re) (fma.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (*.f64 im (*.f64 im (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1 (sqrt.f64 2)))) 2)) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1 (sqrt.f64 2)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 2) 2))))) (*.f64 (pow.f64 im 6) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (pow.f64 im 4))) (*.f64 1/2 (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 re re)))) (pow.f64 im 6))))) (fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (*.f64 2 (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (fma.f64 (sqrt.f64 (/.f64 1 re)) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (pow.f64 im 4)) (*.f64 1/2 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/8 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 re re)))) (pow.f64 im 6)))) (*.f64 2 (sqrt.f64 re))))
(log.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (log.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im))) (*.f64 1/2 (/.f64 re im)))
(fma.f64 1/2 (/.f64 re im) (log.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (log.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im))) (*.f64 1/2 (/.f64 re im)))
(fma.f64 1/2 (/.f64 re im) (log.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 im 3))) (*.f64 -3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 im 2)))) (pow.f64 re 3))) (+.f64 (log.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im))) (*.f64 1/2 (/.f64 re im))))
(fma.f64 1/6 (*.f64 (pow.f64 re 3) (+.f64 (/.f64 1/4 (pow.f64 im 3)) (*.f64 -3 (/.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 im im))))) (+.f64 (log.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im))) (*.f64 1/2 (/.f64 re im))))
(fma.f64 1/6 (*.f64 (pow.f64 re 3) (fma.f64 -3 (/.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 im im)) (/.f64 1/4 (pow.f64 im 3)))) (fma.f64 1/2 (/.f64 re im) (log.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 1/2 (/.f64 re im) (fma.f64 (fma.f64 -3 (-.f64 (/.f64 1/2 (pow.f64 im 3)) (/.f64 1/4 (pow.f64 im 3))) (/.f64 1/4 (pow.f64 im 3))) (*.f64 (pow.f64 re 3) 1/6) (log.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(log.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(log.f64 (*.f64 2 (sqrt.f64 re)))
(+.f64 (log.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))) (*.f64 1/4 (/.f64 (pow.f64 im 2) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2)))))
(+.f64 (log.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))) (*.f64 1/4 (/.f64 (*.f64 im im) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 2) 2)))))
(+.f64 (log.f64 (*.f64 2 (sqrt.f64 re))) (*.f64 1/8 (/.f64 (*.f64 im im) (*.f64 re re))))
(fma.f64 1/8 (*.f64 (/.f64 im re) (/.f64 im re)) (log.f64 (*.f64 2 (sqrt.f64 re))))
(+.f64 (log.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 2) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2)))) (*.f64 1/24 (*.f64 (-.f64 (*.f64 -12 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) re))) (*.f64 3/4 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 2) 4) (pow.f64 re 4))))) (pow.f64 im 4)))))
(+.f64 (log.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))) (fma.f64 1/4 (/.f64 (*.f64 im im) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 2) 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (-.f64 (*.f64 -12 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1 (sqrt.f64 2)))) 2)) (*.f64 re (pow.f64 (sqrt.f64 2) 2)))) (/.f64 3/4 (*.f64 (pow.f64 (sqrt.f64 2) 4) (pow.f64 re 4))))))))
(+.f64 (log.f64 (*.f64 2 (sqrt.f64 re))) (fma.f64 1/24 (*.f64 (pow.f64 im 4) (+.f64 (*.f64 -6 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) re)) (/.f64 -3/16 (pow.f64 re 4)))) (*.f64 1/8 (/.f64 (*.f64 im im) (*.f64 re re)))))
(fma.f64 (pow.f64 im 4) (fma.f64 1/24 (*.f64 -6 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) re)) (/.f64 -1/128 (pow.f64 re 4))) (fma.f64 1/8 (*.f64 (/.f64 im re) (/.f64 im re)) (log.f64 (*.f64 2 (sqrt.f64 re)))))
(+.f64 (log.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 2) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2)))) (+.f64 (*.f64 1/720 (*.f64 (+.f64 (*.f64 90 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 4) (pow.f64 re 3)))) (+.f64 (*.f64 15/4 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 2) 6) (pow.f64 re 6)))) (*.f64 360 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (*.f64 (pow.f64 (sqrt.f64 2) 2) re))))) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (-.f64 (*.f64 -12 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) re))) (*.f64 3/4 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 2) 4) (pow.f64 re 4))))) (pow.f64 im 4))))))
(+.f64 (log.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))) (fma.f64 1/4 (/.f64 (*.f64 im im) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 2) 2))) (fma.f64 1/720 (*.f64 (pow.f64 im 6) (fma.f64 90 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1 (sqrt.f64 2)))) 2)) (*.f64 (pow.f64 re 3) (pow.f64 (sqrt.f64 2) 4))) (+.f64 (/.f64 15/4 (*.f64 (pow.f64 (sqrt.f64 2) 6) (pow.f64 re 6))) (*.f64 360 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1 (sqrt.f64 2)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 2) 2))))) (*.f64 re (pow.f64 (sqrt.f64 2) 2))))))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (-.f64 (*.f64 -12 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1 (sqrt.f64 2)))) 2)) (*.f64 re (pow.f64 (sqrt.f64 2) 2)))) (/.f64 3/4 (*.f64 (pow.f64 (sqrt.f64 2) 4) (pow.f64 re 4)))))))))
(+.f64 (log.f64 (*.f64 2 (sqrt.f64 re))) (+.f64 (fma.f64 1/24 (*.f64 (pow.f64 im 4) (+.f64 (*.f64 -6 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) re)) (/.f64 -3/16 (pow.f64 re 4)))) (*.f64 1/8 (/.f64 (*.f64 im im) (*.f64 re re)))) (*.f64 (pow.f64 im 6) (*.f64 1/720 (+.f64 (*.f64 180 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 re re)))) re)) (+.f64 (*.f64 45/2 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (pow.f64 re 3))) (/.f64 15/4 (*.f64 (pow.f64 (sqrt.f64 2) 6) (pow.f64 re 6)))))))))
(+.f64 (log.f64 (*.f64 2 (sqrt.f64 re))) (fma.f64 (pow.f64 im 6) (*.f64 1/720 (fma.f64 180 (-.f64 (/.f64 (/.f64 1/16 (pow.f64 re 5)) re) (/.f64 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) -8) (pow.f64 re 3))) (fma.f64 45/2 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (pow.f64 re 3)) (/.f64 15/32 (pow.f64 re 6))))) (fma.f64 (pow.f64 im 4) (fma.f64 1/24 (*.f64 -6 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) re)) (/.f64 -1/128 (pow.f64 re 4))) (*.f64 1/8 (*.f64 (/.f64 im re) (/.f64 im re))))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(*.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(*.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(*.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/2)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) 2)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (exp.f64 (cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2))) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(pow.f64 (exp.f64 (cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) 2))) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2))
(cbrt.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(*.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(*.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(*.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/2)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) 2)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (exp.f64 (cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2))) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(pow.f64 (exp.f64 (cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) 2))) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2))
(cbrt.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) -1))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 0)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(+.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) (log.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(+.f64 (log.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (log.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(+.f64 0 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(+.f64 (log.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4)) (log.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4)))
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(+.f64 (log.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (log.f64 (sqrt.f64 2)))
(-.f64 (+.f64 1 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1)
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(*.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1)
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(*.f64 1 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2)
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(*.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) (cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2)))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(*.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(*.f64 1/2 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1)
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(pow.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3) 1/3)
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 3)
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(pow.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 2)
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(sqrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2))
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3))
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(expm1.f64 (log1p.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(log1p.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1))
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(exp.f64 (log.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))

eval403.0ms (5.5%)

Compiler

Compiled 17320 to 12076 computations (30.3% saved)

prune196.0ms (2.7%)

Pruning

16 alts after pruning (12 fresh and 4 done)

PrunedKeptTotal
New7427749
Fresh358
Picked101
Done145
Total74716763
Error
4.6b
Counts
763 → 16
Alt Table
Click to see full alt table
StatusErrorProgram
43.1b
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 re im)) (sqrt.f64 2)))
44.1b
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
54.7b
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 (*.f64 -1/2 im) 2) (/.f64 re im))))
55.4b
(*.f64 1/2 (sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)))
54.7b
(*.f64 1/2 (sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re))))
44.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 re 2 (/.f64 (*.f64 1/2 (*.f64 im im)) re)))))
10.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) 2))))
11.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 3))))
46.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
10.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
43.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
55.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (/.f64 1 re) (*.f64 -1/2 (*.f64 im im))))))
48.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
46.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
14.2b
(*.f64 1/2 (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2)))
49.8b
(*.f64 1/2 (exp.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2)))))
Compiler

Compiled 341 to 274 computations (19.6% saved)

localize19.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 2 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 3)))
0.3b
(+.f64 re (hypot.f64 re im))
0.5b
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
0.6b
(pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 3)
Compiler

Compiled 63 to 26 computations (58.7% saved)

series23.0ms (0.3%)

Counts
3 → 24
Calls

18 calls:

TimeVariablePointExpression
6.0ms
im
@0
(pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 3)
4.0ms
im
@inf
(pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 3)
3.0ms
re
@0
(pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 3)
2.0ms
re
@inf
(pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 3)
2.0ms
re
@-inf
(pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 3)

rewrite59.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
506×prod-diff_binary64
450×log-prod_binary64
328×exp-prod_binary64
295×pow-prod-down_binary64
253×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify88.0ms (1.2%)

Algorithm
egg-herbie
Rules
539×times-frac_binary64
351×associate-*r*_binary64
351×associate-*l*_binary64
308×fma-def_binary64
294×sqr-pow_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
05474294971037
114883562
248443525
Stop Event
node limit
Counts
158 → 225
Calls
Call 1
Inputs
(*.f64 (pow.f64 1 1/3) im)
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 1/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9))) re) (*.f64 (pow.f64 1 1/3) im))
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 1/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9))) re) (+.f64 (*.f64 (pow.f64 1 1/3) im) (*.f64 (+.f64 (*.f64 2/9 (pow.f64 (/.f64 1 im) 1/9)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 (pow.f64 (*.f64 1 im) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9)))))) (pow.f64 re 2))))
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 1/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9))) re) (+.f64 (*.f64 (pow.f64 1 1/3) im) (+.f64 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 (pow.f64 (*.f64 1 im) 1/3) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9)))))))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 1 1/3) (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9)))))))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9))))) (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))))))) (*.f64 (+.f64 (*.f64 2/9 (pow.f64 (/.f64 1 im) 1/9)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 (pow.f64 (*.f64 1 im) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9)))))) (pow.f64 re 2)))))
(*.f64 2 (*.f64 (pow.f64 1 1/3) re))
(+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 re))) (*.f64 1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 re)))) (pow.f64 im 2)) (*.f64 2 (*.f64 (pow.f64 1 1/3) re)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 re 3)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 re) 1/3) (*.f64 (cbrt.f64 2) (+.f64 (*.f64 1/36 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3) (/.f64 1 (pow.f64 (cbrt.f64 2) 4)))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3) (/.f64 1 (cbrt.f64 2))))))) (*.f64 1/36 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 4)) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 re))) (*.f64 1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 re)))) (pow.f64 im 2)) (*.f64 2 (*.f64 (pow.f64 1 1/3) re))))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (+.f64 (*.f64 1/36 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3) (/.f64 1 (pow.f64 (cbrt.f64 2) 4)))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3) (/.f64 1 (cbrt.f64 2))))) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 re) 1/3) (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 re) 1/3) (/.f64 (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5))))) (cbrt.f64 2)))) (*.f64 -1/54 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 16)) 1/3) (/.f64 1 (pow.f64 (cbrt.f64 2) 4))))) (cbrt.f64 2))) (+.f64 (*.f64 -1/108 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 re 5)))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5)))))))))) (pow.f64 im 6)) (+.f64 (*.f64 (+.f64 (*.f64 -1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 re 3)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 re) 1/3) (*.f64 (cbrt.f64 2) (+.f64 (*.f64 1/36 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3) (/.f64 1 (pow.f64 (cbrt.f64 2) 4)))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3) (/.f64 1 (cbrt.f64 2))))))) (*.f64 1/36 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 4)) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 re))) (*.f64 1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 re)))) (pow.f64 im 2)) (*.f64 2 (*.f64 (pow.f64 1 1/3) re)))))
(pow.f64 im 1/3)
(+.f64 (pow.f64 im 1/3) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) re)))
(+.f64 (pow.f64 im 1/3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) re))))
(+.f64 (pow.f64 im 1/3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) re)) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9)))))) (pow.f64 re 3)))))))
(*.f64 (pow.f64 (*.f64 1 re) 1/3) (cbrt.f64 2))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (pow.f64 (*.f64 1 re) 1/3) (cbrt.f64 2)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 -1/18 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 11)) 1/3) (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (pow.f64 (*.f64 1 re) 1/3) (cbrt.f64 2))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 2)) 1/3) (/.f64 (*.f64 (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5))))) (pow.f64 im 6)) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 -1/18 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 11)) 1/3) (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (pow.f64 (*.f64 1 re) 1/3) (cbrt.f64 2)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(+.f64 re (hypot.f64 re im))
(+.f64 (hypot.f64 re im) re)
(+.f64 0 (+.f64 re (hypot.f64 re im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (+.f64 re (hypot.f64 re im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (+.f64 re (hypot.f64 re im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (+.f64 re (hypot.f64 re im))))) (log.f64 (sqrt.f64 (exp.f64 (+.f64 re (hypot.f64 re im))))))
(-.f64 (exp.f64 (log1p.f64 (+.f64 re (hypot.f64 re im)))) 1)
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (hypot.f64 re im))) (/.f64 (pow.f64 (hypot.f64 re im) 2) (-.f64 re (hypot.f64 re im))))
(*.f64 (+.f64 re (hypot.f64 re im)) 1)
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2))
(*.f64 1 (+.f64 re (hypot.f64 re im)))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2)))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/6) (pow.f64 (+.f64 re (hypot.f64 re im)) 5/6))
(*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (/.f64 1 (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re))))
(*.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (/.f64 1 (-.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 5/6) (pow.f64 (+.f64 re (hypot.f64 re im)) 1/6))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2) 1) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))) 2) (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(/.f64 1 (/.f64 (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re)) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))))
(/.f64 1 (/.f64 (-.f64 re (hypot.f64 re im)) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re)))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (-.f64 (*.f64 re re) (*.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im)))
(/.f64 (neg.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))) (neg.f64 (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re))))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2))) (neg.f64 (-.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (-.f64 (hypot.f64 re im) re))
(sqrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2))
(log.f64 (exp.f64 (+.f64 re (hypot.f64 re im))))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 re (hypot.f64 re im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 re)) (exp.f64 (hypot.f64 re im))))
(log.f64 (*.f64 (exp.f64 re) (+.f64 1 (expm1.f64 (hypot.f64 re im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 re)) (+.f64 1 (expm1.f64 (hypot.f64 re im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 re im))) (exp.f64 re)))
(log.f64 (*.f64 (exp.f64 (hypot.f64 re im)) (+.f64 1 (expm1.f64 re))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 re im))) (+.f64 1 (expm1.f64 re))))
(cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3))
(expm1.f64 (log1p.f64 (+.f64 re (hypot.f64 re im))))
(log1p.f64 (expm1.f64 (+.f64 re (hypot.f64 re im))))
(exp.f64 (log.f64 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (log.f64 (+.f64 re (hypot.f64 re im))) 1))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (+.f64 re (hypot.f64 re im)))) 1/3))
(exp.f64 (*.f64 (*.f64 2/3 (log.f64 (+.f64 re (hypot.f64 re im)))) 3/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 re (hypot.f64 re im))) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 re (hypot.f64 re im))) 1/3) 3))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 1) 3))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 3/2) 2))
(fma.f64 re 1 (hypot.f64 re im))
(fma.f64 (hypot.f64 re im) 1 re)
(fma.f64 1 re (hypot.f64 re im))
(fma.f64 1 (hypot.f64 re im) re)
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (hypot.f64 re im))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (hypot.f64 re im))
(fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) re)
(fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)) re)
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (hypot.f64 re im))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(+.f64 0 (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))) 1)
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 1)
(*.f64 1 (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 2) (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/6) (pow.f64 (+.f64 re (hypot.f64 re im)) 1/6))
(/.f64 (cbrt.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2))) (cbrt.f64 (-.f64 re (hypot.f64 re im))))
(/.f64 (cbrt.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))) (cbrt.f64 (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re))))
(pow.f64 (+.f64 re (hypot.f64 re im)) 1/3)
(pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 1)
(pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6)
(pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3) 1/9)
(pow.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2) 1/2)
(pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 3)
(pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 2) 3/2)
(pow.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) 2/3)
(pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/6) 2)
(pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(pow.f64 (exp.f64 1/3) (log.f64 (+.f64 re (hypot.f64 re im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))) (sqrt.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))))
(sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2))
(log.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))))
(expm1.f64 (log1p.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(log1p.f64 (expm1.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(exp.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(exp.f64 (*.f64 (log.f64 (+.f64 re (hypot.f64 re im))) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 1))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))) 3/2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))) 3))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 (+.f64 re (hypot.f64 re im)))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 re (hypot.f64 re im))) 1) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 re (hypot.f64 re im))) 1/3) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 1) 1))
(+.f64 0 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1)
(*.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6) (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/2)
(pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2) 1/3)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 2) 1/4)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3) 1/6)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6) 3)
(pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3/2)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) 2)
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(pow.f64 (exp.f64 1/2) (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6)) 3))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1) 1))
Outputs
(*.f64 (pow.f64 1 1/3) im)
im
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 1/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9))) re) (*.f64 (pow.f64 1 1/3) im))
(fma.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 1/18) (pow.f64 (pow.f64 im 4) 1/18)) 1) re im)
(fma.f64 (*.f64 (pow.f64 (pow.f64 im 4) 1/18) (pow.f64 (pow.f64 im 4) 1/18)) re im)
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 1/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9))) re) (+.f64 (*.f64 (pow.f64 1 1/3) im) (*.f64 (+.f64 (*.f64 2/9 (pow.f64 (/.f64 1 im) 1/9)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 (pow.f64 (*.f64 1 im) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9)))))) (pow.f64 re 2))))
(+.f64 (fma.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 1/18) (pow.f64 (pow.f64 im 4) 1/18)) 1) re im) (*.f64 (fma.f64 2/9 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) (+.f64 (*.f64 1/3 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18))))) (*.f64 (cbrt.f64 im) (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (cbrt.f64 (/.f64 1 im))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18))))))) (*.f64 re re)))
(fma.f64 (*.f64 (pow.f64 (pow.f64 im 4) 1/18) (pow.f64 (pow.f64 im 4) 1/18)) re (fma.f64 (fma.f64 2/9 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) (fma.f64 (cbrt.f64 im) (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (cbrt.f64 (/.f64 1 im))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) 1/9))) (*.f64 1/3 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3))))) (*.f64 re re) im))
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9)) (*.f64 1/3 (pow.f64 (*.f64 1 (pow.f64 im 4)) 1/9))) re) (+.f64 (*.f64 (pow.f64 1 1/3) im) (+.f64 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 (pow.f64 (*.f64 1 im) 1/3) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9)))))))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 1 1/3) (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9)))))))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9))))) (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))))))) (*.f64 (+.f64 (*.f64 2/9 (pow.f64 (/.f64 1 im) 1/9)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 (pow.f64 (*.f64 1 im) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 im) 1/3) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (*.f64 1/9 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/9)))))) (pow.f64 re 2)))))
(+.f64 (fma.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 1/18) (pow.f64 (pow.f64 im 4) 1/18)) 1) re im) (fma.f64 (pow.f64 re 3) (fma.f64 (cbrt.f64 im) (fma.f64 2/9 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18))) (*.f64 (*.f64 -2/3 (cbrt.f64 (/.f64 1 im))) (fma.f64 1/27 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))))))) (+.f64 (*.f64 -1/3 (fma.f64 1/27 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)))))) (fma.f64 1/3 (*.f64 (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (cbrt.f64 (/.f64 1 im))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))) (*.f64 2/9 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))))))) (*.f64 (fma.f64 2/9 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) (+.f64 (*.f64 1/3 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18))))) (*.f64 (cbrt.f64 im) (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (cbrt.f64 (/.f64 1 im))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18))))))) (*.f64 re re))))
(+.f64 (fma.f64 (*.f64 (pow.f64 (pow.f64 im 4) 1/18) (pow.f64 (pow.f64 im 4) 1/18)) re im) (fma.f64 (pow.f64 re 3) (fma.f64 (cbrt.f64 im) (fma.f64 2/9 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 8)) 1/18))) (*.f64 (cbrt.f64 (/.f64 1 im)) (*.f64 (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (*.f64 1/27 (cbrt.f64 (/.f64 1 (*.f64 im im))))) -2/3))) (fma.f64 (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (*.f64 1/27 (cbrt.f64 (/.f64 1 (*.f64 im im))))) -1/3 (fma.f64 1/3 (*.f64 (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (cbrt.f64 (/.f64 1 im))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) 1/9))) (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))) (*.f64 2/9 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))))))) (*.f64 re (*.f64 re (fma.f64 2/9 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) (fma.f64 (cbrt.f64 im) (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (cbrt.f64 (/.f64 1 im))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 4)) 1/18) 1/9))) (*.f64 1/3 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)))))))))
(*.f64 2 (*.f64 (pow.f64 1 1/3) re))
(*.f64 re 2)
(+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 re))) (*.f64 1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 re)))) (pow.f64 im 2)) (*.f64 2 (*.f64 (pow.f64 1 1/3) re)))
(fma.f64 (*.f64 (/.f64 1 re) 1/2) (*.f64 im im) (*.f64 re 2))
(fma.f64 (*.f64 im im) (/.f64 1/2 re) (*.f64 re 2))
(+.f64 (*.f64 (+.f64 (*.f64 -1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 re 3)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 re) 1/3) (*.f64 (cbrt.f64 2) (+.f64 (*.f64 1/36 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3) (/.f64 1 (pow.f64 (cbrt.f64 2) 4)))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3) (/.f64 1 (cbrt.f64 2))))))) (*.f64 1/36 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 4)) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 re))) (*.f64 1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 re)))) (pow.f64 im 2)) (*.f64 2 (*.f64 (pow.f64 1 1/3) re))))
(fma.f64 (fma.f64 -1/18 (/.f64 1 (pow.f64 re 3)) (fma.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 2) (fma.f64 1/36 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (/.f64 1 (pow.f64 (cbrt.f64 2) 4))) (*.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (/.f64 1 (cbrt.f64 2)))))) (*.f64 (/.f64 1 (pow.f64 re 3)) 1/36))) (pow.f64 im 4) (fma.f64 (*.f64 (/.f64 1 re) 1/2) (*.f64 im im) (*.f64 re 2)))
(fma.f64 (pow.f64 im 4) (+.f64 (/.f64 -1/18 (pow.f64 re 3)) (fma.f64 (*.f64 (cbrt.f64 re) (cbrt.f64 2)) (fma.f64 -1/9 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (cbrt.f64 2)) (/.f64 (*.f64 1/36 (cbrt.f64 (/.f64 1 (pow.f64 re 10)))) (*.f64 2 (cbrt.f64 2)))) (/.f64 1/36 (pow.f64 re 3)))) (fma.f64 (*.f64 im im) (/.f64 1/2 re) (*.f64 re 2)))
(fma.f64 (pow.f64 im 4) (+.f64 (/.f64 -1/18 (pow.f64 re 3)) (fma.f64 (cbrt.f64 re) (fma.f64 (cbrt.f64 2) (*.f64 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (cbrt.f64 2)) 1/72) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) -1/9)) (/.f64 1/36 (pow.f64 re 3)))) (fma.f64 (*.f64 im im) (/.f64 1/2 re) (*.f64 re 2)))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (+.f64 (*.f64 1/36 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3) (/.f64 1 (pow.f64 (cbrt.f64 2) 4)))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3) (/.f64 1 (cbrt.f64 2))))) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 re) 1/3) (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 re) 1/3) (/.f64 (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5))))) (cbrt.f64 2)))) (*.f64 -1/54 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 16)) 1/3) (/.f64 1 (pow.f64 (cbrt.f64 2) 4))))) (cbrt.f64 2))) (+.f64 (*.f64 -1/108 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 re 5)))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5)))))))))) (pow.f64 im 6)) (+.f64 (*.f64 (+.f64 (*.f64 -1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 re 3)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 re) 1/3) (*.f64 (cbrt.f64 2) (+.f64 (*.f64 1/36 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3) (/.f64 1 (pow.f64 (cbrt.f64 2) 4)))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 10)) 1/3) (/.f64 1 (cbrt.f64 2))))))) (*.f64 1/36 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 re 3)))))) (pow.f64 im 4)) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 re))) (*.f64 1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 re)))) (pow.f64 im 2)) (*.f64 2 (*.f64 (pow.f64 1 1/3) re)))))
(fma.f64 (fma.f64 1/6 (/.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (fma.f64 1/36 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (/.f64 1 (pow.f64 (cbrt.f64 2) 4))) (*.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (/.f64 1 (cbrt.f64 2)))))) (pow.f64 (cbrt.f64 2) 2)) (fma.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 2) (fma.f64 2/3 (/.f64 (*.f64 (cbrt.f64 (/.f64 1 re)) (-.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 1/216 (*.f64 (pow.f64 re 5) (pow.f64 (cbrt.f64 2) 6))))) (cbrt.f64 2)) (*.f64 -1/54 (/.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 16))) 1) (pow.f64 (cbrt.f64 2) 4))))) (fma.f64 -1/108 (/.f64 1 (pow.f64 re 5)) (*.f64 1/3 (-.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 1/216 (*.f64 (pow.f64 re 5) (pow.f64 (cbrt.f64 2) 6)))))))) (pow.f64 im 6) (fma.f64 (fma.f64 -1/18 (/.f64 1 (pow.f64 re 3)) (fma.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 2) (fma.f64 1/36 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (/.f64 1 (pow.f64 (cbrt.f64 2) 4))) (*.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (/.f64 1 (cbrt.f64 2)))))) (*.f64 (/.f64 1 (pow.f64 re 3)) 1/36))) (pow.f64 im 4) (fma.f64 (*.f64 (/.f64 1 re) 1/2) (*.f64 im im) (*.f64 re 2))))
(fma.f64 (fma.f64 1/6 (/.f64 (*.f64 (fma.f64 -1/9 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (cbrt.f64 2)) (/.f64 (*.f64 1/36 (cbrt.f64 (/.f64 1 (pow.f64 re 10)))) (*.f64 2 (cbrt.f64 2)))) (cbrt.f64 (/.f64 1 (pow.f64 re 5)))) (pow.f64 (cbrt.f64 2) 2)) (fma.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 2) (fma.f64 -1/54 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 16))) (*.f64 2 (cbrt.f64 2))) (*.f64 (/.f64 (+.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 -1/864 (pow.f64 re 5))) (cbrt.f64 2)) (*.f64 2/3 (cbrt.f64 (/.f64 1 re)))))) (fma.f64 1/3 (+.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 -1/864 (pow.f64 re 5))) (/.f64 -1/108 (pow.f64 re 5))))) (pow.f64 im 6) (fma.f64 (pow.f64 im 4) (+.f64 (/.f64 -1/18 (pow.f64 re 3)) (fma.f64 (*.f64 (cbrt.f64 re) (cbrt.f64 2)) (fma.f64 -1/9 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (cbrt.f64 2)) (/.f64 (*.f64 1/36 (cbrt.f64 (/.f64 1 (pow.f64 re 10)))) (*.f64 2 (cbrt.f64 2)))) (/.f64 1/36 (pow.f64 re 3)))) (fma.f64 (*.f64 im im) (/.f64 1/2 re) (*.f64 re 2))))
(fma.f64 (fma.f64 1/6 (/.f64 (*.f64 (fma.f64 -1/9 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (cbrt.f64 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (cbrt.f64 2)) 1/72)) (cbrt.f64 (/.f64 1 (pow.f64 re 5)))) (pow.f64 (cbrt.f64 2) 2)) (fma.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 2) (fma.f64 (*.f64 2/3 (cbrt.f64 (/.f64 1 re))) (/.f64 (+.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 -1/864 (pow.f64 re 5))) (cbrt.f64 2)) (*.f64 -1/108 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 16))) (cbrt.f64 2))))) (fma.f64 1/3 (+.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 -1/864 (pow.f64 re 5))) (/.f64 -1/108 (pow.f64 re 5))))) (pow.f64 im 6) (fma.f64 (pow.f64 im 4) (+.f64 (/.f64 -1/18 (pow.f64 re 3)) (fma.f64 (cbrt.f64 re) (fma.f64 (cbrt.f64 2) (*.f64 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) (cbrt.f64 2)) 1/72) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 10))) -1/9)) (/.f64 1/36 (pow.f64 re 3)))) (fma.f64 (*.f64 im im) (/.f64 1/2 re) (*.f64 re 2))))
(pow.f64 im 1/3)
(cbrt.f64 im)
(+.f64 (pow.f64 im 1/3) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) re)))
(+.f64 (cbrt.f64 im) (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))) re))
(fma.f64 1/3 (*.f64 re (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))) (cbrt.f64 im))
(+.f64 (pow.f64 im 1/3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) re))))
(+.f64 (cbrt.f64 im) (*.f64 1/3 (+.f64 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 re re))) (*.f64 re (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))))))
(fma.f64 1/3 (fma.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 re (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)))) (*.f64 re (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)))) (cbrt.f64 im))
(+.f64 (pow.f64 im 1/3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) re)) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9)))))) (pow.f64 re 3)))))))
(+.f64 (cbrt.f64 im) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 re re))) (fma.f64 1/3 (*.f64 re (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))) (*.f64 (*.f64 -1/3 (cbrt.f64 (/.f64 1 (*.f64 im im)))) (*.f64 (pow.f64 re 3) (fma.f64 1/27 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))))))))))
(+.f64 (cbrt.f64 im) (fma.f64 1/3 (fma.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 re (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)))) (*.f64 re (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)))) (*.f64 (*.f64 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) -1/3) (pow.f64 re 3)) (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (*.f64 1/27 (cbrt.f64 (/.f64 1 (*.f64 im im))))))))
(*.f64 (pow.f64 (*.f64 1 re) 1/3) (cbrt.f64 2))
(*.f64 (cbrt.f64 re) (cbrt.f64 2))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (pow.f64 (*.f64 1 re) 1/3) (cbrt.f64 2)))
(fma.f64 1/6 (/.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 im im)) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (cbrt.f64 re) (cbrt.f64 2)))
(fma.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 im (/.f64 (pow.f64 (cbrt.f64 2) 2) im))) (*.f64 (cbrt.f64 re) (cbrt.f64 2)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 -1/18 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 11)) 1/3) (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (pow.f64 (*.f64 1 re) 1/3) (cbrt.f64 2))))
(fma.f64 1/6 (/.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 im im)) (pow.f64 (cbrt.f64 2) 2)) (fma.f64 -1/18 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 11))) (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2))) (*.f64 (cbrt.f64 re) (cbrt.f64 2))))
(fma.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 im (/.f64 (pow.f64 (cbrt.f64 2) 2) im))) (fma.f64 -1/18 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 11))) (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2))) (*.f64 (cbrt.f64 re) (cbrt.f64 2))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 2)) 1/3) (/.f64 (*.f64 (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5))))) (pow.f64 im 6)) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 -1/18 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 11)) 1/3) (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (pow.f64 (*.f64 1 re) 1/3) (cbrt.f64 2)))))
(fma.f64 1/6 (/.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 im im)) (pow.f64 (cbrt.f64 2) 2)) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 re re))) (/.f64 (-.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 1/216 (*.f64 (pow.f64 re 5) (pow.f64 (cbrt.f64 2) 6)))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 im 6)))) (fma.f64 -1/18 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 11))) (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2))) (*.f64 (cbrt.f64 re) (cbrt.f64 2)))))
(fma.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 im (/.f64 (pow.f64 (cbrt.f64 2) 2) im))) (fma.f64 1/3 (/.f64 (*.f64 (+.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 -1/864 (pow.f64 re 5))) (cbrt.f64 (/.f64 1 (*.f64 re re)))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 im 6))) (fma.f64 -1/18 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 11))) (/.f64 (pow.f64 im 4) (pow.f64 (cbrt.f64 2) 2))) (*.f64 (cbrt.f64 re) (cbrt.f64 2)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2))) (*.f64 re re))) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 2)))) (*.f64 (*.f64 1/2 re) (sqrt.f64 2)))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/4 (/.f64 1 im))) (*.f64 (*.f64 re re) (sqrt.f64 2)))) (*.f64 (*.f64 1/2 re) (sqrt.f64 2)))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2))) (*.f64 re re))) (fma.f64 -1/4 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2))) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 2)))) (*.f64 (*.f64 1/2 re) (sqrt.f64 2))))) (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (pow.f64 re 3) (sqrt.f64 2))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) -1/4)))
(+.f64 (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/4 (/.f64 1 im))) (*.f64 (*.f64 re re) (sqrt.f64 2)))) (*.f64 (*.f64 1/2 re) (sqrt.f64 2))))) (*.f64 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/4 (/.f64 1 im))) (*.f64 (pow.f64 re 3) (sqrt.f64 2))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) -1/4)))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(*.f64 2 (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 2 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (*.f64 im im) 1/4)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1 (sqrt.f64 2)))) 2)) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (fma.f64 2 (sqrt.f64 re) (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (/.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (sqrt.f64 2))) 2)) (*.f64 (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re))) -1/2))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1 (sqrt.f64 2)))) 2)) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1 (sqrt.f64 2)))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 re re))))) (*.f64 (pow.f64 im 6) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 4)) (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (/.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (sqrt.f64 2))) 2))) (*.f64 (*.f64 1/2 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (/.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (sqrt.f64 2))) 2)) (*.f64 re re))))) (pow.f64 im 6)))) (fma.f64 2 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (*.f64 im im) 1/4))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 4)) (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (/.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (sqrt.f64 2))) 2))) (*.f64 (*.f64 1/2 (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/8 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 1/4 (/.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (sqrt.f64 2))) 2)) (*.f64 re re))))) (pow.f64 im 6)))) (fma.f64 2 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (*.f64 im im) 1/4))))
(+.f64 re (hypot.f64 re im))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
(+.f64 0 (+.f64 re (hypot.f64 re im)))
(+.f64 re (hypot.f64 re im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (+.f64 re (hypot.f64 re im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (+.f64 re (hypot.f64 re im))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (+.f64 re (hypot.f64 re im)))))) (log.f64 (cbrt.f64 (exp.f64 (+.f64 re (hypot.f64 re im))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (+.f64 re (hypot.f64 re im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (+.f64 re (hypot.f64 re im))))) (log.f64 (sqrt.f64 (exp.f64 (+.f64 re (hypot.f64 re im))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (+.f64 re (hypot.f64 re im))))))
(-.f64 (exp.f64 (log1p.f64 (+.f64 re (hypot.f64 re im)))) 1)
(+.f64 re (hypot.f64 re im))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (hypot.f64 re im))) (/.f64 (pow.f64 (hypot.f64 re im) 2) (-.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (-.f64 (hypot.f64 re im) re))
(*.f64 (+.f64 re (hypot.f64 re im)) 1)
(+.f64 re (hypot.f64 re im))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2))
(+.f64 re (hypot.f64 re im))
(*.f64 1 (+.f64 re (hypot.f64 re im)))
(+.f64 re (hypot.f64 re im))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(+.f64 re (hypot.f64 re im))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2)))
(+.f64 re (hypot.f64 re im))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(+.f64 re (hypot.f64 re im))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/6) (pow.f64 (+.f64 re (hypot.f64 re im)) 5/6))
(*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (/.f64 1 (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re))))
(/.f64 (*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) 1) (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re)))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re)))
(*.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (/.f64 1 (-.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (-.f64 (hypot.f64 re im) re))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 5/6) (pow.f64 (+.f64 re (hypot.f64 re im)) 1/6))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/6) (pow.f64 (+.f64 re (hypot.f64 re im)) 5/6))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2) 1) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(+.f64 re (hypot.f64 re im))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))) 2) (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(+.f64 re (hypot.f64 re im))
(/.f64 1 (/.f64 (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re)) (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) 1) (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re)))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re)))
(/.f64 1 (/.f64 (-.f64 re (hypot.f64 re im)) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (-.f64 (hypot.f64 re im) re))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re)))
(/.f64 (*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) 1) (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re)))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (-.f64 (*.f64 re re) (*.f64 re (hypot.f64 re im)))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 re (hypot.f64 re im)))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (-.f64 (hypot.f64 re im) re))
(/.f64 (neg.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))) (neg.f64 (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re))))
(/.f64 (*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) 1) (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re)))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3)) (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re)))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2))) (neg.f64 (-.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (-.f64 (hypot.f64 re im) re))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (-.f64 (hypot.f64 re im) re))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im)))
(sqrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2))
(+.f64 re (hypot.f64 re im))
(log.f64 (exp.f64 (+.f64 re (hypot.f64 re im))))
(+.f64 re (hypot.f64 re im))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 re (hypot.f64 re im)))))
(+.f64 re (hypot.f64 re im))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 re)) (exp.f64 (hypot.f64 re im))))
(+.f64 re (hypot.f64 re im))
(log.f64 (*.f64 (exp.f64 re) (+.f64 1 (expm1.f64 (hypot.f64 re im)))))
(+.f64 re (hypot.f64 re im))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 re)) (+.f64 1 (expm1.f64 (hypot.f64 re im)))))
(+.f64 re (hypot.f64 re im))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 re im))) (exp.f64 re)))
(+.f64 re (hypot.f64 re im))
(log.f64 (*.f64 (exp.f64 (hypot.f64 re im)) (+.f64 1 (expm1.f64 re))))
(+.f64 re (hypot.f64 re im))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 re im))) (+.f64 1 (expm1.f64 re))))
(+.f64 re (hypot.f64 re im))
(cbrt.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3))
(+.f64 re (hypot.f64 re im))
(expm1.f64 (log1p.f64 (+.f64 re (hypot.f64 re im))))
(+.f64 re (hypot.f64 re im))
(log1p.f64 (expm1.f64 (+.f64 re (hypot.f64 re im))))
(+.f64 re (hypot.f64 re im))
(exp.f64 (log.f64 (+.f64 re (hypot.f64 re im))))
(+.f64 re (hypot.f64 re im))
(exp.f64 (*.f64 (log.f64 (+.f64 re (hypot.f64 re im))) 1))
(+.f64 re (hypot.f64 re im))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (+.f64 re (hypot.f64 re im)))) 1/3))
(+.f64 re (hypot.f64 re im))
(exp.f64 (*.f64 (*.f64 2/3 (log.f64 (+.f64 re (hypot.f64 re im)))) 3/2))
(+.f64 re (hypot.f64 re im))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) 2))
(+.f64 re (hypot.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 re (hypot.f64 re im))) 1) 1))
(+.f64 re (hypot.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 re (hypot.f64 re im))) 1/3) 3))
(+.f64 re (hypot.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 1) 3))
(+.f64 re (hypot.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 3/2) 2))
(+.f64 re (hypot.f64 re im))
(fma.f64 re 1 (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(fma.f64 (hypot.f64 re im) 1 re)
(+.f64 re (hypot.f64 re im))
(fma.f64 1 re (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(fma.f64 1 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) re)
(+.f64 re (hypot.f64 re im))
(fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)) re)
(+.f64 re (hypot.f64 re im))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(+.f64 re (hypot.f64 re im))
(+.f64 0 (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))) 1)
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 1)
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 1 (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 2))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 2) (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/6) (pow.f64 (+.f64 re (hypot.f64 re im)) 1/6))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(/.f64 (cbrt.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2))) (cbrt.f64 (-.f64 re (hypot.f64 re im))))
(/.f64 (cbrt.f64 (+.f64 (pow.f64 re 3) (pow.f64 (hypot.f64 re im) 3))) (cbrt.f64 (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re) (*.f64 re re))))
(pow.f64 (+.f64 re (hypot.f64 re im)) 1/3)
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 1)
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6)
(pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3) 1/9)
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(pow.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2) 1/2)
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 3)
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 2) 3/2)
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(pow.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) 2/3)
(*.f64 (pow.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) 1/3) (pow.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))) (cbrt.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im)))))
(pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 1/6) 2)
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(pow.f64 (exp.f64 1/3) (log.f64 (+.f64 re (hypot.f64 re im))))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))) (sqrt.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))))
(sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 2))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(log.f64 (exp.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(expm1.f64 (log1p.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(log1p.f64 (expm1.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(exp.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(exp.f64 (*.f64 (log.f64 (+.f64 re (hypot.f64 re im))) 1/3))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 1))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))))) 3/2))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))))) 3))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 (+.f64 re (hypot.f64 re im)))) 2))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 re (hypot.f64 re im))) 1) 1/3))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 re (hypot.f64 re im))) 1/3) 1))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im)))) 1) 1))
(cbrt.f64 (+.f64 re (hypot.f64 re im)))
(+.f64 0 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6) (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/2)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2) 1/3)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 2) 1/4)
(pow.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 2) 1/4)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3) 1/6)
(pow.f64 (*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3) 8) 1/6)
(pow.f64 (pow.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))) 3) 1/6)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6) 3)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3/2)
(pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 3/2)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) 2)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (exp.f64 1/2) (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2)) 1/3))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6)) 3))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1) 1/2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2) 1))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1) 1))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))

localize7.0ms (0.1%)

Compiler

Compiled 17 to 11 computations (35.3% saved)

localize14.0ms (0.2%)

Compiler

Compiled 28 to 15 computations (46.4% saved)

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
6.5b
(/.f64 (neg.f64 (*.f64 im im)) re)
19.6b
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
Compiler

Compiled 34 to 9 computations (73.5% saved)

series3.0ms (0%)

Counts
2 → 36
Calls

12 calls:

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

rewrite54.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
657×pow1_binary64
612×add-log-exp_binary64
611×log1p-expm1-u_binary64
611×expm1-log1p-u_binary64
596×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify60.0ms (0.8%)

Algorithm
egg-herbie
Rules
651×associate-/l*_binary64
614×fma-def_binary64
430×log-div_binary64
409×fma-neg_binary64
353×unswap-sqr_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01701433
14301279
216991140
367531140
Stop Event
node limit
Counts
113 → 110
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (pow.f64 (/.f64 1 re) 1/2))
(*.f64 im (/.f64 1 (sqrt.f64 re)))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 1 (/.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 im (/.f64 re im))))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 1/2))
(/.f64 im (sqrt.f64 re))
(/.f64 im (sqrt.f64 (neg.f64 re)))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 (neg.f64 im) (neg.f64 (sqrt.f64 re)))
(pow.f64 (/.f64 im (/.f64 re im)) 1/2)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(fabs.f64 (/.f64 im (sqrt.f64 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))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 0 (/.f64 im (/.f64 re im)))
(-.f64 (+.f64 1 (/.f64 im (/.f64 re im))) 1)
(-.f64 (/.f64 0 re) (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 (neg.f64 im) (/.f64 1 re)))
(*.f64 im (*.f64 im (/.f64 1 re)))
(*.f64 (*.f64 im im) (/.f64 1 re))
(*.f64 (*.f64 im im) (/.f64 1 (neg.f64 re)))
(*.f64 (/.f64 im (/.f64 re im)) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(*.f64 1 (/.f64 im (/.f64 re im)))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 2))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 2) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 1 re) (*.f64 im im))
(*.f64 -1 (/.f64 im (/.f64 re im)))
(*.f64 (neg.f64 im) (*.f64 im (/.f64 1 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 1) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(*.f64 (/.f64 (neg.f64 im) 1) (/.f64 im re))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 (neg.f64 im) (cbrt.f64 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 (*.f64 im im) (cbrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (/.f64 -1 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(*.f64 (/.f64 (neg.f64 im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)))
(*.f64 (/.f64 -1 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (/.f64 re im)))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(pow.f64 (/.f64 im (/.f64 re im)) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) 1/2)
(pow.f64 (pow.f64 (/.f64 im (/.f64 re im)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 3)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(neg.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(log.f64 (exp.f64 (/.f64 im (/.f64 re im))))
(cbrt.f64 (pow.f64 (/.f64 im (/.f64 re im)) 3))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im im) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (/.f64 im (/.f64 re im))))
(log1p.f64 (expm1.f64 (/.f64 im (/.f64 re im))))
(exp.f64 (log.f64 (/.f64 im (/.f64 re im))))
Outputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (neg.f64 im) (sqrt.f64 -1)))
(*.f64 im (neg.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (neg.f64 im) (sqrt.f64 -1)))
(*.f64 im (neg.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (neg.f64 im) (sqrt.f64 -1)))
(*.f64 im (neg.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (neg.f64 im) (sqrt.f64 -1)))
(*.f64 im (neg.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) -1)
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (pow.f64 (/.f64 1 re) 1/2))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (/.f64 1 (sqrt.f64 re)))
(+.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) -1)
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 (+.f64 1 (/.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 (+.f64 1 (/.f64 im (sqrt.f64 re))) -1)
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.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 (/.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 re im))))
(*.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 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) -1)
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.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 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(+.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) -1)
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 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 im (sqrt.f64 re))
(+.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) -1)
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 (neg.f64 re)))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(+.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) -1)
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(/.f64 (neg.f64 im) (neg.f64 (sqrt.f64 re)))
(+.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) -1)
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (/.f64 re im)) 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 (+.f64 1 (/.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 (+.f64 1 (/.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 (+.f64 1 (/.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 (+.f64 1 (/.f64 im (sqrt.f64 re))) -1)
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(+.f64 (+.f64 1 (/.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 (+.f64 1 (/.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 (+.f64 1 (/.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 (+.f64 1 (/.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 (+.f64 1 (/.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 (+.f64 1 (/.f64 im (sqrt.f64 re))) -1)
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(-.f64 0 (/.f64 im (/.f64 re im)))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(-.f64 (+.f64 1 (/.f64 im (/.f64 re im))) 1)
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(-.f64 (/.f64 0 re) (/.f64 im (/.f64 re im)))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 im (*.f64 (neg.f64 im) (/.f64 1 re)))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 im (*.f64 im (/.f64 1 re)))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 im im) (/.f64 1 re))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 im im) (/.f64 1 (neg.f64 re)))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im (/.f64 re im)) 1)
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 1 (/.f64 im (/.f64 re im)))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 2))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.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 re im))) 2) (cbrt.f64 (/.f64 im (/.f64 re im))))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im 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 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 1 re) (*.f64 im im))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(*.f64 -1 (/.f64 im (/.f64 re im)))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (neg.f64 im) (*.f64 im (/.f64 1 re)))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (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 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 im 1) (/.f64 (neg.f64 im) re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im 1) (/.f64 im re))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) 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 (neg.f64 im) 1) (/.f64 im re))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 (neg.f64 im) (cbrt.f64 re)))
(*.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 1 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(*.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 (cbrt.f64 (pow.f64 im 4)) (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)))
(/.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(/.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (/.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 im 4))))
(*.f64 (/.f64 -1 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 (neg.f64 im) (cbrt.f64 re)))
(*.f64 (/.f64 (neg.f64 im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 (neg.f64 im) (cbrt.f64 re)))
(*.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(*.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 -1 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (/.f64 re im)))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(pow.f64 (/.f64 im (/.f64 re im)) 1)
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im 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 im re)) 2))
(fabs.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (pow.f64 (/.f64 im (/.f64 re im)) 3) 1/3)
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 3)
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(neg.f64 (/.f64 im (/.f64 re im)))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re 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 re im))))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(cbrt.f64 (pow.f64 (/.f64 im (/.f64 re im)) 3))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im im) 3) (pow.f64 re 3)))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(expm1.f64 (log1p.f64 (/.f64 im (/.f64 re im))))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(log1p.f64 (expm1.f64 (/.f64 im (/.f64 re im))))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)
(exp.f64 (log.f64 (/.f64 im (/.f64 re im))))
(+.f64 1 (-.f64 (*.f64 im (/.f64 im re)) 1))
(+.f64 (*.f64 im (/.f64 im re)) 0)
(/.f64 (*.f64 im im) re)

localize22.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (*.f64 (/.f64 1 re) (*.f64 -1/2 (*.f64 im im))))
0.0b
(*.f64 -1/2 (*.f64 im im))
6.6b
(*.f64 (/.f64 1 re) (*.f64 -1/2 (*.f64 im im)))
19.6b
(sqrt.f64 (*.f64 2 (*.f64 (/.f64 1 re) (*.f64 -1/2 (*.f64 im im)))))
Compiler

Compiled 65 to 41 computations (36.9% saved)

series6.0ms (0.1%)

Counts
4 → 72
Calls

21 calls:

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

rewrite61.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
581×log-prod_binary64
440×exp-prod_binary64
341×pow-prod-down_binary64
298×pow-unpow_binary64
277×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify68.0ms (0.9%)

Algorithm
egg-herbie
Rules
633×times-frac_binary64
572×fma-def_binary64
497×distribute-rgt-in_binary64
468×unswap-sqr_binary64
331×log-prod_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03272806
17342570
224412318
Stop Event
node limit
Counts
208 → 181
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 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 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(+.f64 0 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 -1/2 re))) im) (sqrt.f64 2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 -1/2 re))) im) (sqrt.f64 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 -1/2 re))) im) (sqrt.f64 2)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 -1/2 re))) im) (sqrt.f64 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))) 1)
(*.f64 1 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)) 1)
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/6))
(*.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/6) (cbrt.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))
(*.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/4) (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/4))
(*.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) (sqrt.f64 2))
(*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 im (sqrt.f64 -1/2)))
(pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/2)
(pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)) 1)
(pow.f64 (E.f64) (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))
(pow.f64 (*.f64 4 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 4)) 1/4)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3) 1/6)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3/2) 1/3)
(pow.f64 (cbrt.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 3/2)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/6) 3)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/4) 2)
(pow.f64 (exp.f64 1/2) (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))) 2)) (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))) (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))))
(fabs.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 -1/2 re))) im) (sqrt.f64 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))))
(cbrt.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3/2))
(expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))
(log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))
(exp.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))
(exp.f64 (*.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))) 1))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/6)) 3))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))) 1) 1))
(+.f64 0 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (/.f64 -1/2 re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (/.f64 -1/2 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (/.f64 -1/2 re)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (/.f64 -1/2 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1)
(/.f64 1 (/.f64 re (*.f64 -1/2 (*.f64 im im))))
(/.f64 -1/2 (/.f64 re (*.f64 im im)))
(/.f64 (*.f64 im im) (/.f64 re -1/2))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (/.f64 re (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (*.f64 im (sqrt.f64 -1/2)) (/.f64 re (*.f64 im (sqrt.f64 -1/2))))
(/.f64 (*.f64 -1/2 im) (/.f64 re im))
(/.f64 (neg.f64 (*.f64 -1/2 (*.f64 im im))) (neg.f64 re))
(/.f64 (/.f64 (*.f64 -1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 -1/2 (*.f64 im im)) 1) re)
(/.f64 (/.f64 (*.f64 -1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (*.f64 -1 (*.f64 -1/2 (*.f64 im im))) (neg.f64 re))
(/.f64 (*.f64 (*.f64 -1/2 (*.f64 im im)) -1) (neg.f64 re))
(pow.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)) 1)
(pow.f64 (E.f64) (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 6) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3)
(pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 2)
(pow.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 -1/2)) 6) (pow.f64 re 3)) 1/3)
(pow.f64 (/.f64 re (*.f64 -1/2 (*.f64 im im))) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 2)) (cbrt.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))) (sqrt.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(sqrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (/.f64 -1/2 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 6))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 -1/2)) 6) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))
(exp.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 6)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 3))
(exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1) 1))
(+.f64 0 (*.f64 -1/2 (*.f64 im im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (*.f64 im im)))) 1)
(pow.f64 (*.f64 -1/2 (*.f64 im im)) 1)
(pow.f64 (E.f64) (fma.f64 2 (log.f64 im) (log.f64 -1/2)))
(pow.f64 (*.f64 (pow.f64 im 4) 1/4) 1/2)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 -1/2)) 6) 1/3)
(pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) 3)
(pow.f64 (*.f64 im (sqrt.f64 -1/2)) 2)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2))) 2)) (cbrt.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2))))
(pow.f64 (exp.f64 (sqrt.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2)))) (sqrt.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2))))
(sqrt.f64 (*.f64 (pow.f64 im 4) 1/4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (*.f64 im im)))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 -1/2)) 6))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 im im))))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 im im))))
(exp.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2)))
(exp.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2)) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 -1/2)) 6)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))) 3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 -1/2))) 2))
(exp.f64 (*.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2)) 1) 1))
(+.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)) (*.f64 (*.f64 im im) (/.f64 -1/2 re)))
(+.f64 0 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im) (/.f64 2 re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im) (/.f64 2 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im) (/.f64 2 re)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im) (/.f64 2 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))) 1)
(/.f64 (*.f64 (*.f64 -1/2 (*.f64 im im)) 2) re)
(/.f64 (*.f64 2 (*.f64 -1/2 (*.f64 im im))) re)
(pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1)
(pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)) 2)
(pow.f64 (E.f64) (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(pow.f64 (*.f64 4 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 4)) 1/2)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3) 1/3)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3/2) 2/3)
(pow.f64 (cbrt.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 3)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/6) 6)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/4) 4)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))) 2)) (cbrt.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))) (sqrt.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))))
(sqrt.f64 (*.f64 4 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 4)))
(log.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im) (/.f64 2 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))))
(cbrt.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3))
(expm1.f64 (log1p.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(log1p.f64 (expm1.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(exp.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1))
(exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))) 2))
(exp.f64 (*.f64 (log.f64 (*.f64 4 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 4))) 1/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))) 3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1/2) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))) 1) 2))
Outputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(+.f64 0 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 -1/2 re))) im) (sqrt.f64 2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 -1/2 re))) im) (sqrt.f64 2)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 -1/2 re))) im) (sqrt.f64 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 -1/2 re))) im) (sqrt.f64 2)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 -1/2 re))) im) (sqrt.f64 2)))))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))) 1)
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(*.f64 1 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)) 1)
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/6))
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/6) (cbrt.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(*.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/4) (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/4))
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 im (sqrt.f64 -1/2)))
(*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 2 re))))
(pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/2)
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)) 1)
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(pow.f64 (E.f64) (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(pow.f64 (*.f64 4 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 4)) 1/4)
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3) 1/6)
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3/2) 1/3)
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(pow.f64 (cbrt.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 3/2)
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/6) 3)
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/4) 2)
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(pow.f64 (exp.f64 1/2) (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))) 2)) (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))) (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))))) (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))))) (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2))))))
(fabs.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 -1/2 re))) im) (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(cbrt.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3/2))
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(exp.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(exp.f64 (*.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1/2))
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))) 1))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))) 1/3))
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/6)) 3))
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))) 2))
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1) 1/2))
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1/2) 1))
(*.f64 (cbrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) (pow.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))) 1/6))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)) (pow.f64 (/.f64 (neg.f64 (*.f64 im im)) re) 1/6))
(sqrt.f64 (neg.f64 (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))) 1) 1))
(*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2)))
(+.f64 0 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (/.f64 -1/2 re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (/.f64 -1/2 re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (/.f64 -1/2 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (/.f64 -1/2 re)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (/.f64 -1/2 re)))))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1)
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 1 (/.f64 re (*.f64 -1/2 (*.f64 im im))))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 -1/2 (/.f64 re (*.f64 im im)))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 (*.f64 im im) (/.f64 re -1/2))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (/.f64 re (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) re) (cbrt.f64 (*.f64 -1/2 (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) re))
(/.f64 (*.f64 im (sqrt.f64 -1/2)) (/.f64 re (*.f64 im (sqrt.f64 -1/2))))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 (*.f64 -1/2 im) (/.f64 re im))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 (neg.f64 (*.f64 -1/2 (*.f64 im im))) (neg.f64 re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 (/.f64 (*.f64 -1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 (/.f64 (*.f64 -1/2 (*.f64 im im)) 1) re)
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 (/.f64 (*.f64 -1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 (*.f64 -1 (*.f64 -1/2 (*.f64 im im))) (neg.f64 re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(/.f64 (*.f64 (*.f64 -1/2 (*.f64 im im)) -1) (neg.f64 re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(pow.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)) 1)
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(pow.f64 (E.f64) (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 4) 1/2)
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 6) 1/3)
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3)
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 2)
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(pow.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 -1/2)) 6) (pow.f64 re 3)) 1/3)
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(pow.f64 (/.f64 re (*.f64 -1/2 (*.f64 im im))) -1)
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 2)) (cbrt.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))) 2)) (cbrt.f64 (log.f64 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))))) 2)) (cbrt.f64 (log.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))))) 2)) (cbrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))) (sqrt.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 -1/2 (/.f64 (*.f64 im im) re))))) (sqrt.f64 (log.f64 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im)))))) (sqrt.f64 (log.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re)))))) (sqrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))))))
(sqrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 4))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (/.f64 -1/2 re)))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 6))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 -1/2)) 6) (pow.f64 re 3)))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(exp.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 6)) 1/3))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 3))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)) 2))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1) 1))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(+.f64 0 (*.f64 -1/2 (*.f64 im im)))
(*.f64 -1/2 (*.f64 im im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im))))
(*.f64 -1/2 (*.f64 im im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (*.f64 im im)))) 1)
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (*.f64 -1/2 (*.f64 im im)) 1)
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (E.f64) (fma.f64 2 (log.f64 im) (log.f64 -1/2)))
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (*.f64 (pow.f64 im 4) 1/4) 1/2)
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 -1/2)) 6) 1/3)
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) 3)
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (*.f64 im (sqrt.f64 -1/2)) 2)
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2))) 2)) (cbrt.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 -1/2 (*.f64 im im)))) 2)) (cbrt.f64 (log.f64 (*.f64 -1/2 (*.f64 im im)))))
(pow.f64 (exp.f64 (sqrt.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2)))) (sqrt.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 -1/2 (*.f64 im im))))) (sqrt.f64 (log.f64 (*.f64 -1/2 (*.f64 im im)))))
(sqrt.f64 (*.f64 (pow.f64 im 4) 1/4))
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im))
(*.f64 -1/2 (*.f64 im im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (*.f64 im im)))))
(*.f64 -1/2 (*.f64 im im))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 -1/2)) 6))
(*.f64 -1/2 (*.f64 im im))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 im im))))
(*.f64 -1/2 (*.f64 im im))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 im im))))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2)))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2)) 1))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 -1/2)) 6)) 1/3))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))) 3))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 -1/2))) 2))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (*.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 -1/2)) 1) 1))
(*.f64 -1/2 (*.f64 im im))
(+.f64 (*.f64 (*.f64 im im) (/.f64 -1/2 re)) (*.f64 (*.f64 im im) (/.f64 -1/2 re)))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(+.f64 0 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im) (/.f64 2 re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im) (/.f64 2 re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im) (/.f64 2 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im) (/.f64 2 re)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im) (/.f64 2 re)))))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(-.f64 (exp.f64 (log1p.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))) 1)
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 -1/2 (*.f64 im im)) 2) re)
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(/.f64 (*.f64 2 (*.f64 -1/2 (*.f64 im im))) re)
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1)
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(pow.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)) 2)
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(pow.f64 (E.f64) (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(pow.f64 (*.f64 4 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 4)) 1/2)
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3) 1/3)
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3/2) 2/3)
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(pow.f64 (cbrt.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 3)
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/6) 6)
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 1/4) 4)
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))) 2)) (cbrt.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))))) 2)) (cbrt.f64 (log.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (neg.f64 (*.f64 im im)) re))) 2)) (cbrt.f64 (log.f64 (/.f64 (neg.f64 (*.f64 im im)) re))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (neg.f64 (/.f64 (*.f64 im im) re)))) 2)) (cbrt.f64 (log.f64 (neg.f64 (/.f64 (*.f64 im im) re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))) (sqrt.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re)))))) (sqrt.f64 (log.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (*.f64 im im) re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (neg.f64 (*.f64 im im)) re)))) (sqrt.f64 (log.f64 (/.f64 (neg.f64 (*.f64 im im)) re))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (neg.f64 (/.f64 (*.f64 im im) re))))) (sqrt.f64 (log.f64 (neg.f64 (/.f64 (*.f64 im im) re)))))
(sqrt.f64 (*.f64 4 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 4)))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(log.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) im) im) (/.f64 2 re)))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(cbrt.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(expm1.f64 (log1p.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(log1p.f64 (expm1.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(exp.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(exp.f64 (*.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))) 2))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(exp.f64 (*.f64 (log.f64 (*.f64 4 (pow.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) 4))) 1/2))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))) 3)) 1/3))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re))))) 3))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1) 1))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 2 (*.f64 (*.f64 im im) (/.f64 -1/2 re)))) 1/2) 2))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))) 1) 2))
(neg.f64 (/.f64 (*.f64 im im) re))
(/.f64 (neg.f64 (*.f64 im im)) re)

eval264.0ms (3.6%)

Compiler

Compiled 13902 to 9764 computations (29.8% saved)

prune144.0ms (2%)

Pruning

20 alts after pruning (15 fresh and 5 done)

PrunedKeptTotal
New59511606
Fresh347
Picked101
Done358
Total60220622
Error
0.1b
Counts
622 → 20
Alt Table
Click to see full alt table
StatusErrorProgram
11.1b
(*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3/2))
57.3b
(*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re))))
57.3b
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) (sqrt.f64 2)))
57.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2))))
43.1b
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 re im)) (sqrt.f64 2)))
44.1b
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
60.1b
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
54.7b
(*.f64 1/2 (sqrt.f64 (/.f64 (neg.f64 im) (/.f64 re im))))
55.4b
(*.f64 1/2 (sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1 (neg.f64 re)))))
44.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (*.f64 im im) (/.f64 1/2 re) (*.f64 re 2)))))
43.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (cbrt.f64 (+.f64 re im)) 3))))
49.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (cbrt.f64 (neg.f64 im)) 3))))
46.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
10.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
43.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
48.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
46.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
50.2b
(*.f64 1/2 (fabs.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))
14.2b
(*.f64 1/2 (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2)))
49.8b
(*.f64 1/2 (exp.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2)))))
Compiler

Compiled 418 to 341 computations (18.4% saved)

localize20.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(+.f64 re (hypot.f64 re im))
0.3b
(pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3/2)
0.4b
(cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
Compiler

Compiled 52 to 24 computations (53.8% saved)

series24.0ms (0.3%)

Counts
2 → 16
Calls

12 calls:

TimeVariablePointExpression
6.0ms
re
@inf
(pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3/2)
3.0ms
im
@0
(pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3/2)
3.0ms
re
@-inf
(pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3/2)
3.0ms
re
@0
(pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3/2)
2.0ms
im
@inf
(pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3/2)

rewrite53.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
506×prod-diff_binary64
436×log-prod_binary64
330×exp-prod_binary64
269×pow-prod-down_binary64
257×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify62.0ms (0.8%)

Algorithm
egg-herbie
Rules
595×distribute-rgt-in_binary64
589×distribute-lft-in_binary64
415×associate-/r*_binary64
258×unswap-sqr_binary64
217×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03492407
19072282
229852185
Stop Event
node limit
Counts
84 → 134
Calls
Call 1
Inputs
(*.f64 (pow.f64 (*.f64 1 im) 1/3) (cbrt.f64 2))
(+.f64 (*.f64 (pow.f64 (*.f64 1 im) 1/3) (cbrt.f64 2)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) (*.f64 (cbrt.f64 2) re))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (cbrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 im) 1/3) (cbrt.f64 2)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) (*.f64 (cbrt.f64 2) re)))))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (cbrt.f64 2) (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9)))))))))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (cbrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 im) 1/3) (cbrt.f64 2)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) (*.f64 (cbrt.f64 2) re))))))
(*.f64 (pow.f64 (*.f64 1 re) 1/3) (pow.f64 (cbrt.f64 2) 2))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (pow.f64 im 2) (cbrt.f64 2)))) (*.f64 (pow.f64 (*.f64 1 re) 1/3) (pow.f64 (cbrt.f64 2) 2)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (pow.f64 im 2) (cbrt.f64 2)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 re) 1/3) (pow.f64 (cbrt.f64 2) 2)) (*.f64 -1/18 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 11)) 1/3) (/.f64 (pow.f64 im 4) (cbrt.f64 2))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 2)) 1/3) (/.f64 (*.f64 (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5))))) (pow.f64 im 6)) (cbrt.f64 2)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (pow.f64 im 2) (cbrt.f64 2)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 re) 1/3) (pow.f64 (cbrt.f64 2) 2)) (*.f64 -1/18 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 11)) 1/3) (/.f64 (pow.f64 im 4) (cbrt.f64 2)))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (pow.f64 (/.f64 1 im) 1/18)))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 3/4 (+.f64 (*.f64 -1/9 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) im))))) (pow.f64 re 2))) (sqrt.f64 im)) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (pow.f64 (/.f64 1 im) 1/18))))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/4 (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (+.f64 (*.f64 2/27 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/3)) (*.f64 -2 (/.f64 (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9)))))) im))))) (+.f64 (*.f64 3/8 (*.f64 (+.f64 (*.f64 -1/9 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) im))) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9))) (*.f64 1/48 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/3)))) (pow.f64 re 3))) (sqrt.f64 im)) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 3/4 (+.f64 (*.f64 -1/9 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) im))))) (pow.f64 re 2))) (sqrt.f64 im)) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (pow.f64 (/.f64 1 im) 1/18)))))))
(*.f64 2 (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 2 (sqrt.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 2 (sqrt.f64 re)) (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/128 (/.f64 1 (pow.f64 re 4))) (*.f64 1/16 (-.f64 (*.f64 -1/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 4))))) (*.f64 2/3 (/.f64 1 (pow.f64 re 4)))))) (pow.f64 im 4)) (sqrt.f64 re)))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 2 (sqrt.f64 re)) (+.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/3072 (/.f64 1 (pow.f64 re 6))) (+.f64 (*.f64 1/480 (+.f64 (*.f64 10/9 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 9) (pow.f64 re 6)))) (+.f64 (*.f64 20/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 6))))) (*.f64 120 (/.f64 (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5))))) re))))) (*.f64 1/128 (/.f64 (-.f64 (*.f64 -1/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 4))))) (*.f64 2/3 (/.f64 1 (pow.f64 re 4)))) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 re))) (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/128 (/.f64 1 (pow.f64 re 4))) (*.f64 1/16 (-.f64 (*.f64 -1/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 4))))) (*.f64 2/3 (/.f64 1 (pow.f64 re 4)))))) (pow.f64 im 4)) (sqrt.f64 re))))))
(+.f64 0 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1)
(*.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(*.f64 1 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2)) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 2))
(*.f64 (cbrt.f64 2) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6))
(pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2/3)
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2) 1/2)
(pow.f64 (*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) 4) 1/6)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3) 1/9)
(pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)
(pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2)) 3/2)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6) 2)
(pow.f64 (exp.f64 1/3) (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (sqrt.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2))
(log.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(exp.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 3))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) 3/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/3) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1) 1))
(+.f64 0 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1)
(*.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6))
(*.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6) (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2))
(exp.f64 (*.f64 (*.f64 2/3 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3/4))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2)) 1/3))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/3) 3/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1) 3/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3/4) 2))
Outputs
(*.f64 (pow.f64 (*.f64 1 im) 1/3) (cbrt.f64 2))
(*.f64 (cbrt.f64 im) (cbrt.f64 2))
(+.f64 (*.f64 (pow.f64 (*.f64 1 im) 1/3) (cbrt.f64 2)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) (*.f64 (cbrt.f64 2) re))))
(fma.f64 (cbrt.f64 im) (cbrt.f64 2) (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))) (*.f64 (cbrt.f64 2) re)))
(fma.f64 (cbrt.f64 im) (cbrt.f64 2) (*.f64 1/3 (*.f64 (*.f64 (*.f64 (cbrt.f64 2) re) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))))
(*.f64 (cbrt.f64 2) (+.f64 (cbrt.f64 im) (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))) re)))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (cbrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 im) 1/3) (cbrt.f64 2)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) (*.f64 (cbrt.f64 2) re)))))
(fma.f64 1/3 (*.f64 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (cbrt.f64 2)) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 re re))) (fma.f64 (cbrt.f64 im) (cbrt.f64 2) (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))) (*.f64 (cbrt.f64 2) re))))
(fma.f64 1/3 (*.f64 (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 1 (*.f64 im im)))) (*.f64 re re)) (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3))) (fma.f64 (cbrt.f64 im) (cbrt.f64 2) (*.f64 1/3 (*.f64 (*.f64 (*.f64 (cbrt.f64 2) re) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)))))
(fma.f64 1/3 (*.f64 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 re re)) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 1 (*.f64 im im))))) (*.f64 (cbrt.f64 2) (+.f64 (cbrt.f64 im) (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))) re))))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (cbrt.f64 2) (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9)))))))))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3) (*.f64 (cbrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) (pow.f64 re 2))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 im) 1/3) (cbrt.f64 2)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/9) (*.f64 (cbrt.f64 2) re))))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 (*.f64 (cbrt.f64 2) (pow.f64 re 3)) (fma.f64 1/27 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))))))) (fma.f64 1/3 (*.f64 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) (cbrt.f64 2)) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 re re))) (fma.f64 (cbrt.f64 im) (cbrt.f64 2) (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))) (*.f64 (cbrt.f64 2) re)))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 2) (*.f64 (*.f64 (pow.f64 re 3) (fma.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) 1/27))) (cbrt.f64 (/.f64 1 (*.f64 im im))))) (fma.f64 1/3 (*.f64 (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 1 (*.f64 im im)))) (*.f64 re re)) (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3))) (fma.f64 (cbrt.f64 im) (cbrt.f64 2) (*.f64 1/3 (*.f64 (*.f64 (*.f64 (cbrt.f64 2) re) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18)) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))))))
(+.f64 (*.f64 (cbrt.f64 2) (+.f64 (cbrt.f64 im) (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 im im)) 1/18) (pow.f64 (/.f64 1 (*.f64 im im)) 1/18))) re))) (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 1 (*.f64 im im)))) (+.f64 (*.f64 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 re re)) 1/3) (*.f64 (*.f64 (pow.f64 re 3) (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) 1/27))) -1/3))))
(*.f64 (pow.f64 (*.f64 1 re) 1/3) (pow.f64 (cbrt.f64 2) 2))
(*.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 2) 2))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (pow.f64 im 2) (cbrt.f64 2)))) (*.f64 (pow.f64 (*.f64 1 re) 1/3) (pow.f64 (cbrt.f64 2) 2)))
(fma.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 im im) (cbrt.f64 2))) (*.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 2) 2)))
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 2) 2) (*.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 im im) (cbrt.f64 2)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (pow.f64 im 2) (cbrt.f64 2)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 re) 1/3) (pow.f64 (cbrt.f64 2) 2)) (*.f64 -1/18 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 11)) 1/3) (/.f64 (pow.f64 im 4) (cbrt.f64 2))))))
(fma.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 im im) (cbrt.f64 2))) (fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 2) 2) (*.f64 -1/18 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 11))) (/.f64 (pow.f64 im 4) (cbrt.f64 2))))))
(fma.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 im im) (cbrt.f64 2))) (fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 2) 2) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 11))) (*.f64 (/.f64 (pow.f64 im 4) (cbrt.f64 2)) -1/18))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 2)) 1/3) (/.f64 (*.f64 (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5))))) (pow.f64 im 6)) (cbrt.f64 2)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 5)) 1/3) (/.f64 (pow.f64 im 2) (cbrt.f64 2)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 re) 1/3) (pow.f64 (cbrt.f64 2) 2)) (*.f64 -1/18 (*.f64 (pow.f64 (/.f64 1 (pow.f64 re 11)) 1/3) (/.f64 (pow.f64 im 4) (cbrt.f64 2)))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 re re))) (/.f64 (-.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 1/216 (*.f64 (pow.f64 re 5) (pow.f64 (cbrt.f64 2) 6)))) (/.f64 (cbrt.f64 2) (pow.f64 im 6)))) (fma.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 im im) (cbrt.f64 2))) (fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 2) 2) (*.f64 -1/18 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 11))) (/.f64 (pow.f64 im 4) (cbrt.f64 2)))))))
(fma.f64 1/3 (/.f64 (*.f64 (*.f64 (cbrt.f64 (/.f64 (/.f64 1 re) re)) (pow.f64 im 6)) (-.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 1/864 (pow.f64 re 5)))) (cbrt.f64 2)) (fma.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 im im) (cbrt.f64 2))) (fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 2) 2) (*.f64 -1/18 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 11))) (/.f64 (pow.f64 im 4) (cbrt.f64 2)))))))
(fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 (/.f64 (/.f64 1 re) re)) (cbrt.f64 2)) (*.f64 (+.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 -1/864 (pow.f64 re 5))) (pow.f64 im 6))) (fma.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 im im) (cbrt.f64 2))) (fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 2) 2) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 re 11))) (*.f64 (/.f64 (pow.f64 im 4) (cbrt.f64 2)) -1/18)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (pow.f64 (/.f64 1 im) 1/18)))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 re (*.f64 1 (pow.f64 (/.f64 1 im) 1/18))))))
(fma.f64 1/2 (*.f64 (*.f64 re (sqrt.f64 2)) (pow.f64 (/.f64 1 im) 1/18)) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (*.f64 re (pow.f64 (/.f64 1 im) 1/18)) 1/2)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 3/4 (+.f64 (*.f64 -1/9 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) im))))) (pow.f64 re 2))) (sqrt.f64 im)) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (pow.f64 (/.f64 1 im) 1/18))))))
(fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (fma.f64 1/8 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (*.f64 3/4 (fma.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (*.f64 2/3 (/.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) im))))))) (sqrt.f64 im) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 re (*.f64 1 (pow.f64 (/.f64 1 im) 1/18)))))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 re (sqrt.f64 2)) (pow.f64 (/.f64 1 im) 1/18))) (*.f64 (sqrt.f64 im) (+.f64 (*.f64 (*.f64 re re) (*.f64 (sqrt.f64 2) (fma.f64 1/8 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (+.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) -1/12) (*.f64 1/2 (/.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) im)))))) (sqrt.f64 2))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 re (pow.f64 (/.f64 1 im) 1/18)) 1/2) (*.f64 (+.f64 (*.f64 re (*.f64 re (+.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) 1/24) (*.f64 1/2 (/.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) im))))) 1) (sqrt.f64 im))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/4 (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))))) (+.f64 (*.f64 2/27 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/3)) (*.f64 -2 (/.f64 (+.f64 (*.f64 1/27 (pow.f64 (/.f64 1 (pow.f64 im 2)) 1/3)) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9)))))) im))))) (+.f64 (*.f64 3/8 (*.f64 (+.f64 (*.f64 -1/9 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) im))) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/9))) (*.f64 1/48 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/3)))) (pow.f64 re 3))) (sqrt.f64 im)) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 3/4 (+.f64 (*.f64 -1/9 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/9)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (*.f64 1/3 (pow.f64 (/.f64 1 im) 1/9))) im))))) (pow.f64 re 2))) (sqrt.f64 im)) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (pow.f64 (/.f64 1 im) 1/18)))))))
(fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (fma.f64 1/4 (fma.f64 -2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/18))) (fma.f64 2/27 (cbrt.f64 (/.f64 1 (pow.f64 im 5))) (*.f64 -2 (/.f64 (fma.f64 1/27 (cbrt.f64 (/.f64 1 (*.f64 im im))) (*.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))))) im)))) (fma.f64 3/8 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) (fma.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (*.f64 2/3 (/.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) im)))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 5))) 1/48))))) (sqrt.f64 im) (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (fma.f64 1/8 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (*.f64 3/4 (fma.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (*.f64 2/3 (/.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)))) im))))))) (sqrt.f64 im) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 re (*.f64 1 (pow.f64 (/.f64 1 im) 1/18))))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 re 3) (fma.f64 1/4 (fma.f64 -2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/18))) (fma.f64 2/27 (cbrt.f64 (/.f64 1 (pow.f64 im 5))) (*.f64 -2 (/.f64 (fma.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) 1/27)) im)))) (fma.f64 3/8 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) (fma.f64 2/3 (/.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) im) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) -1/9))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 5))) 1/48))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 re (sqrt.f64 2)) (pow.f64 (/.f64 1 im) 1/18))) (*.f64 (sqrt.f64 im) (+.f64 (*.f64 (*.f64 re re) (*.f64 (sqrt.f64 2) (fma.f64 1/8 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (+.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) -1/12) (*.f64 1/2 (/.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) im)))))) (sqrt.f64 2)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (*.f64 re (pow.f64 (/.f64 1 im) 1/18)) 1/2))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (+.f64 (*.f64 (pow.f64 re 3) (fma.f64 1/4 (fma.f64 -2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 14)) 1/18))) (fma.f64 -2 (/.f64 (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 im im))) 1/27)) im) (*.f64 2/27 (cbrt.f64 (/.f64 1 (pow.f64 im 5)))))) (fma.f64 (*.f64 (fma.f64 2/3 (/.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) im) (*.f64 (*.f64 -1/9 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18))) 3/8) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/18)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 im 5))) 1/48)))) (*.f64 re (*.f64 re (+.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 im 10)) 1/18)) 1/24) (*.f64 1/2 (/.f64 (+.f64 (/.f64 1/2 im) (*.f64 (*.f64 (pow.f64 (/.f64 1 im) 1/18) (pow.f64 (/.f64 1 im) 1/18)) -1/3)) im))))))))
(*.f64 2 (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 2 (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 2 (sqrt.f64 re)))
(fma.f64 2 (sqrt.f64 re) (*.f64 (*.f64 im im) (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))
(fma.f64 2 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (*.f64 im im) 1/4)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 2 (sqrt.f64 re)) (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/128 (/.f64 1 (pow.f64 re 4))) (*.f64 1/16 (-.f64 (*.f64 -1/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 4))))) (*.f64 2/3 (/.f64 1 (pow.f64 re 4)))))) (pow.f64 im 4)) (sqrt.f64 re)))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 2 (+.f64 (sqrt.f64 re) (*.f64 (+.f64 (/.f64 1/128 (pow.f64 re 4)) (*.f64 1/16 (-.f64 (*.f64 -1/3 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 4)))) (/.f64 2/3 (pow.f64 re 4))))) (*.f64 (pow.f64 im 4) (sqrt.f64 re))))))
(fma.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) (fma.f64 1/16 (+.f64 (/.f64 -1/12 (pow.f64 re 4)) (/.f64 -2/3 (pow.f64 re 4))) (/.f64 1/128 (pow.f64 re 4)))) 1) (sqrt.f64 re)) (*.f64 (*.f64 im im) (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))
(fma.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) (fma.f64 1/16 (+.f64 (/.f64 -1/12 (pow.f64 re 4)) (/.f64 -2/3 (pow.f64 re 4))) (/.f64 1/128 (pow.f64 re 4)))) 1) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (*.f64 im im) 1/4)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 2 (sqrt.f64 re)) (+.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/3072 (/.f64 1 (pow.f64 re 6))) (+.f64 (*.f64 1/480 (+.f64 (*.f64 10/9 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 9) (pow.f64 re 6)))) (+.f64 (*.f64 20/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 6))))) (*.f64 120 (/.f64 (-.f64 (*.f64 13/144 (/.f64 1 (pow.f64 re 5))) (*.f64 1/216 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 5))))) re))))) (*.f64 1/128 (/.f64 (-.f64 (*.f64 -1/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 4))))) (*.f64 2/3 (/.f64 1 (pow.f64 re 4)))) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 re))) (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/128 (/.f64 1 (pow.f64 re 4))) (*.f64 1/16 (-.f64 (*.f64 -1/3 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 4))))) (*.f64 2/3 (/.f64 1 (pow.f64 re 4)))))) (pow.f64 im 4)) (sqrt.f64 re))))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (fma.f64 2 (sqrt.f64 re) (*.f64 2 (+.f64 (*.f64 (+.f64 (/.f64 1/3072 (pow.f64 re 6)) (fma.f64 1/480 (+.f64 (/.f64 10/9 (*.f64 (pow.f64 re 6) (pow.f64 (cbrt.f64 2) 9))) (fma.f64 20/3 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 6))) (*.f64 120 (/.f64 (-.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 1/216 (*.f64 (pow.f64 re 5) (pow.f64 (cbrt.f64 2) 6)))) re)))) (*.f64 1/128 (/.f64 (-.f64 (*.f64 -1/3 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 4)))) (/.f64 2/3 (pow.f64 re 4))) (*.f64 re re))))) (*.f64 (pow.f64 im 6) (sqrt.f64 re))) (*.f64 (+.f64 (/.f64 1/128 (pow.f64 re 4)) (*.f64 1/16 (-.f64 (*.f64 -1/3 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 re 4)))) (/.f64 2/3 (pow.f64 re 4))))) (*.f64 (pow.f64 im 4) (sqrt.f64 re)))))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 2 (+.f64 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 (pow.f64 im 6) (+.f64 (/.f64 1/3072 (pow.f64 re 6)) (fma.f64 1/480 (+.f64 (/.f64 10/9 (*.f64 (pow.f64 re 6) (pow.f64 (cbrt.f64 2) 9))) (fma.f64 120 (/.f64 (-.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 1/864 (pow.f64 re 5))) re) (/.f64 5/3 (pow.f64 re 6)))) (*.f64 1/128 (-.f64 (/.f64 (/.f64 -1/12 (pow.f64 re 4)) (*.f64 re re)) (/.f64 2/3 (pow.f64 re 6))))))) (*.f64 (pow.f64 im 4) (fma.f64 1/16 (+.f64 (/.f64 -1/12 (pow.f64 re 4)) (/.f64 -2/3 (pow.f64 re 4))) (/.f64 1/128 (pow.f64 re 4)))))) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (sqrt.f64 re) (+.f64 2 (*.f64 2 (+.f64 (*.f64 (pow.f64 im 6) (+.f64 (/.f64 1/3072 (pow.f64 re 6)) (fma.f64 1/128 (+.f64 (/.f64 -1/12 (pow.f64 re 6)) (/.f64 -2/3 (pow.f64 re 6))) (+.f64 (*.f64 1/480 (fma.f64 120 (/.f64 (+.f64 (/.f64 13/144 (pow.f64 re 5)) (/.f64 -1/864 (pow.f64 re 5))) re) (/.f64 5/3 (pow.f64 re 6)))) (/.f64 (/.f64 1/432 (pow.f64 re 6)) (pow.f64 (cbrt.f64 2) 9)))))) (*.f64 (pow.f64 im 4) (fma.f64 1/16 (+.f64 (/.f64 -1/12 (pow.f64 re 4)) (/.f64 -2/3 (pow.f64 re 4))) (/.f64 1/128 (pow.f64 re 4)))))))))
(+.f64 0 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1)
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 1 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 2)))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2)) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 2)))
(*.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) (cbrt.f64 2))
(*.f64 (cbrt.f64 2) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (cbrt.f64 2) (cbrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/3)
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2/3)
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2) 1/2)
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 2) 4) 1/6)
(pow.f64 (*.f64 4 (pow.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/6)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3) 1/9)
(*.f64 (pow.f64 (*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3) 8) 1/18) (pow.f64 (*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3) 8) 1/18))
(pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2)) 3/2)
(pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))) 2)) 3/2)
(pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6) 2)
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (exp.f64 1/3) (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (sqrt.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))) (sqrt.f64 (log.f64 (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/3))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 3))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) 3/2))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1) 1/3))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/3) 1))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1) 1))
(cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(+.f64 0 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))) 1)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/6) (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 2/3 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3/4))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 3/2)) 1/3))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1) 1/2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/3) 3/2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1) 3/2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1) 1))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3/4) 2))
(sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))

localize9.0ms (0.1%)

Compiler

Compiled 23 to 15 computations (34.8% saved)

localize11.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 32 to 9 computations (71.9% saved)

series3.0ms (0%)

Counts
2 → 36
Calls

12 calls:

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

rewrite47.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
722×pow1_binary64
673×add-log-exp_binary64
672×log1p-expm1-u_binary64
672×expm1-log1p-u_binary64
656×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify70.0ms (1%)

Algorithm
egg-herbie
Rules
693×fma-def_binary64
592×log-div_binary64
556×log-prod_binary64
484×associate-/l*_binary64
358×associate-*l/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01741569
14011392
214351256
362241256
Stop Event
node limit
Counts
113 → 117
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(-.f64 (+.f64 1 (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 (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 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 im re) 1/2))
(*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(*.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 (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)) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 2)
(fabs.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))
(log.f64 (exp.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)))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(-.f64 0 (*.f64 im (/.f64 im re)))
(-.f64 (+.f64 1 (*.f64 im (/.f64 im re))) 1)
(-.f64 (/.f64 0 (/.f64 re im)) (*.f64 im (/.f64 im re)))
(*.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 (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 (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.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 (/.f64 im re) im)
(*.f64 -1 (*.f64 im (/.f64 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 (/.f64 (cbrt.f64 (*.f64 im im)) 1) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 (sqrt.f64 im) re) (/.f64 (sqrt.f64 im) (/.f64 1 im)))
(*.f64 (/.f64 1 re) (/.f64 im (/.f64 1 im)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 im (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (/.f64 im (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) re) (/.f64 (cbrt.f64 im) (/.f64 1 im)))
(*.f64 (/.f64 -1 re) (/.f64 im (/.f64 1 im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (*.f64 im (/.f64 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 (cbrt.f64 (*.f64 im im)) (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 1) (/.f64 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 (*.f64 (/.f64 im re) 1) im)
(*.f64 (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))) (cbrt.f64 im))
(*.f64 (*.f64 (/.f64 im re) (sqrt.f64 im)) (sqrt.f64 im))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(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 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(neg.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
Outputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 -1) (neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 -1) (neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 -1) (neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 -1) (neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im)))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(*.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (sqrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (sqrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 im re) 1/2))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 im) 1) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (sqrt.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.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))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(*.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 (*.f64 im im) re)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (sqrt.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(/.f64 (*.f64 (sqrt.f64 im) 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 (*.f64 (sqrt.f64 im) 1) (sqrt.f64 (/.f64 re im)))
(/.f64 (neg.f64 (sqrt.f64 im)) (neg.f64 (sqrt.f64 (/.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 im) 1) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) 1/3)
(cbrt.f64 (pow.f64 (/.f64 (*.f64 im im) re) 3/2))
(cbrt.f64 (pow.f64 (/.f64 im (/.f64 re im)) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 2)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(fabs.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2))
(cbrt.f64 (pow.f64 (/.f64 (*.f64 im im) re) 3/2))
(cbrt.f64 (pow.f64 (/.f64 im (/.f64 re im)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 1))
(+.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) 0)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(-.f64 0 (*.f64 im (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(-.f64 (+.f64 1 (*.f64 im (/.f64 im re))) 1)
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(-.f64 (/.f64 0 (/.f64 re im)) (*.f64 im (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im re))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 im (/.f64 im re)) 1)
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (*.f64 im (/.f64 im re))))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.f64 1 (*.f64 im (/.f64 im re)))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.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 (*.f64 im im) re)) (*.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im im) re))) 4))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (/.f64 re im)))) 4))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 im)) (/.f64 im re))
(*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 im (/.f64 (cbrt.f64 im) re)))
(*.f64 (/.f64 (cbrt.f64 im) re) (*.f64 im (cbrt.f64 (*.f64 im im))))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.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 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.f64 -1 (*.f64 im (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 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 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) 1) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 im)) (/.f64 im re))
(*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 im (/.f64 (cbrt.f64 im) re)))
(*.f64 (/.f64 (cbrt.f64 im) re) (*.f64 im (cbrt.f64 (*.f64 im im))))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 (sqrt.f64 im) re) (/.f64 (sqrt.f64 im) (/.f64 1 im)))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 1 re) (/.f64 im (/.f64 1 im)))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.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 (pow.f64 (cbrt.f64 (/.f64 re im)) 2) (cbrt.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 (/.f64 (cbrt.f64 (*.f64 im im)) re) (/.f64 (cbrt.f64 im) (/.f64 1 im)))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 im)) (/.f64 im re))
(*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 im (/.f64 (cbrt.f64 im) re)))
(*.f64 (/.f64 (cbrt.f64 im) re) (*.f64 im (cbrt.f64 (*.f64 im im))))
(*.f64 (/.f64 -1 re) (/.f64 im (/.f64 1 im)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (/.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (/.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(*.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 (pow.f64 (cbrt.f64 (/.f64 re im)) 2) (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))) (/.f64 -1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(/.f64 (/.f64 (neg.f64 im) (cbrt.f64 (/.f64 re im))) (pow.f64 (cbrt.f64 (/.f64 re im)) 2))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (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))) (/.f64 -1 (sqrt.f64 (/.f64 re im))))
(/.f64 (/.f64 (neg.f64 im) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(/.f64 (neg.f64 im) (*.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 im 1) (/.f64 im re))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.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 (*.f64 im im) re)) (*.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im im) re))) 4))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (/.f64 re im)))) 4))
(*.f64 (*.f64 (/.f64 im re) 1) im)
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))) (cbrt.f64 im))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 im)) (/.f64 im re))
(*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 im (/.f64 (cbrt.f64 im) re)))
(*.f64 (/.f64 (cbrt.f64 im) re) (*.f64 im (cbrt.f64 (*.f64 im im))))
(*.f64 (*.f64 (/.f64 im re) (sqrt.f64 im)) (sqrt.f64 im))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(neg.f64 (*.f64 im (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(+.f64 1 (-.f64 (/.f64 (*.f64 im im) re) 1))
(+.f64 (/.f64 (*.f64 im im) re) 0)
(/.f64 im (/.f64 re im))

localize17.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

Compiled 40 to 31 computations (22.5% saved)

series8.0ms (0.1%)

Counts
3 → 24
Calls

12 calls:

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

rewrite69.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
927×pow1_binary64
860×add-log-exp_binary64
859×log1p-expm1-u_binary64
859×expm1-log1p-u_binary64
841×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify79.0ms (1.1%)

Algorithm
egg-herbie
Rules
773×fma-def_binary64
507×fma-neg_binary64
460×log-prod_binary64
347×*-commutative_binary64
204×associate-/l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01361005
1286906
21140821
33528820
47228820
Stop Event
node limit
Counts
80 → 77
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 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 1 (*.f64 im (sqrt.f64 2))) 1)
(pow.f64 (*.f64 im (sqrt.f64 2)) 1)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 2)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 im (sqrt.f64 2))) 3)
(pow.f64 (sqrt.f64 (*.f64 im (sqrt.f64 2))) 2)
(sqrt.f64 (*.f64 2 (*.f64 im im)))
(log.f64 (pow.f64 (exp.f64 im) (sqrt.f64 2)))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 im 3) (*.f64 2 (sqrt.f64 2))))
(cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 im 3)))
(expm1.f64 (log1p.f64 (*.f64 im (sqrt.f64 2))))
(log1p.f64 (expm1.f64 (*.f64 im (sqrt.f64 2))))
(exp.f64 (log.f64 (*.f64 im (sqrt.f64 2))))
(-.f64 (+.f64 1 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re)))) 1)
(/.f64 (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2))) (sqrt.f64 re))
(/.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 -1/2)) (sqrt.f64 re))
(pow.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re))) 1)
(pow.f64 (pow.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re))) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re)))) 3)
(pow.f64 (sqrt.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re)))) 2)
(sqrt.f64 (*.f64 (/.f64 -1/2 re) (*.f64 2 (*.f64 im im))))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 2)) 3) (pow.f64 (/.f64 -1/2 re) 3/2)))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 -1/2 re) 3/2) (pow.f64 (*.f64 im (sqrt.f64 2)) 3)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re)))))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re)))))
(exp.f64 (log.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re)))))
(-.f64 (+.f64 1 (sqrt.f64 (/.f64 -1/2 re))) 1)
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) 1)
(*.f64 1 (sqrt.f64 (/.f64 -1/2 re)))
(*.f64 (cbrt.f64 (/.f64 -1/2 re)) (cbrt.f64 (sqrt.f64 (/.f64 -1/2 re))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 -1/2 re))) (cbrt.f64 (/.f64 -1/2 re)))
(*.f64 (pow.f64 (/.f64 -1/2 re) 1/4) (pow.f64 (/.f64 -1/2 re) 1/4))
(*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1/2) (pow.f64 (/.f64 1 re) 1/2))
(*.f64 (sqrt.f64 -1/2) (/.f64 1 (sqrt.f64 re)))
(*.f64 (sqrt.f64 (cbrt.f64 (/.f64 1/4 (*.f64 re re)))) (sqrt.f64 (cbrt.f64 (/.f64 -1/2 re))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (/.f64 -1/2 re)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 (*.f64 re re))) 1/2) (pow.f64 (cbrt.f64 (/.f64 -1/2 re)) 1/2))
(/.f64 1 (sqrt.f64 (*.f64 re -2)))
(/.f64 1 (/.f64 (sqrt.f64 re) (sqrt.f64 -1/2)))
(/.f64 (sqrt.f64 -1/2) (sqrt.f64 re))
(/.f64 (sqrt.f64 1/2) (sqrt.f64 (neg.f64 re)))
(/.f64 (neg.f64 (sqrt.f64 -1/2)) (neg.f64 (sqrt.f64 re)))
(pow.f64 (/.f64 -1/2 re) 1/2)
(pow.f64 (sqrt.f64 (/.f64 -1/2 re)) 1)
(pow.f64 (pow.f64 (/.f64 -1/2 re) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 -1/2 re))) 3)
(pow.f64 (pow.f64 (/.f64 -1/2 re) 1/4) 2)
(fabs.f64 (sqrt.f64 (/.f64 -1/2 re)))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 -1/2 re))))
(cbrt.f64 (pow.f64 (/.f64 -1/2 re) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 -1/2 re))))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 -1/2 re))))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 -1/2 re))))
Outputs
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2))))
(-.f64 (+.f64 1 (*.f64 im (sqrt.f64 2))) 1)
(*.f64 (sqrt.f64 2) im)
(pow.f64 (*.f64 im (sqrt.f64 2)) 1)
(*.f64 (sqrt.f64 2) im)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 2)) 3) 1/3)
(*.f64 (sqrt.f64 2) im)
(pow.f64 (cbrt.f64 (*.f64 im (sqrt.f64 2))) 3)
(*.f64 (sqrt.f64 2) im)
(pow.f64 (sqrt.f64 (*.f64 im (sqrt.f64 2))) 2)
(*.f64 (sqrt.f64 2) im)
(sqrt.f64 (*.f64 2 (*.f64 im im)))
(sqrt.f64 (*.f64 im (*.f64 2 im)))
(fabs.f64 (*.f64 (sqrt.f64 2) im))
(log.f64 (pow.f64 (exp.f64 im) (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) im)
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 2)) 3))
(*.f64 (sqrt.f64 2) im)
(cbrt.f64 (*.f64 (pow.f64 im 3) (*.f64 2 (sqrt.f64 2))))
(*.f64 (sqrt.f64 2) im)
(cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 im 3)))
(*.f64 (sqrt.f64 2) im)
(expm1.f64 (log1p.f64 (*.f64 im (sqrt.f64 2))))
(*.f64 (sqrt.f64 2) im)
(log1p.f64 (expm1.f64 (*.f64 im (sqrt.f64 2))))
(*.f64 (sqrt.f64 2) im)
(exp.f64 (log.f64 (*.f64 im (sqrt.f64 2))))
(*.f64 (sqrt.f64 2) im)
(-.f64 (+.f64 1 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re)))) 1)
(+.f64 1 (-.f64 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re)))) 1))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))) 0)
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re))))
(/.f64 (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2))) (sqrt.f64 re))
(/.f64 (sqrt.f64 -1/2) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 2) im)))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2)) (/.f64 (sqrt.f64 re) im))
(*.f64 (sqrt.f64 -1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 (sqrt.f64 2) (*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im))
(/.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 -1/2)) (sqrt.f64 re))
(/.f64 (sqrt.f64 -1/2) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 2) im)))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1/2)) (/.f64 (sqrt.f64 re) im))
(*.f64 (sqrt.f64 -1/2) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) im)))
(*.f64 (sqrt.f64 2) (*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im))
(pow.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re))) 1)
(+.f64 1 (-.f64 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re)))) 1))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))) 0)
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re))))
(pow.f64 (pow.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re))) 3) 1/3)
(+.f64 1 (-.f64 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re)))) 1))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))) 0)
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re))))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re)))) 3)
(+.f64 1 (-.f64 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re)))) 1))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))) 0)
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re))))
(pow.f64 (sqrt.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re)))) 2)
(+.f64 1 (-.f64 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re)))) 1))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))) 0)
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re))))
(sqrt.f64 (*.f64 (/.f64 -1/2 re) (*.f64 2 (*.f64 im im))))
(sqrt.f64 (*.f64 (*.f64 2 (*.f64 im im)) (/.f64 -1/2 re)))
(sqrt.f64 (*.f64 (*.f64 im im) (/.f64 -1 re)))
(sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re))))
(+.f64 1 (-.f64 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re)))) 1))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))) 0)
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re))) 3))
(+.f64 1 (-.f64 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re)))) 1))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))) 0)
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re))))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 2)) 3) (pow.f64 (/.f64 -1/2 re) 3/2)))
(+.f64 1 (-.f64 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re)))) 1))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))) 0)
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re))))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 -1/2 re) 3/2) (pow.f64 (*.f64 im (sqrt.f64 2)) 3)))
(+.f64 1 (-.f64 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re)))) 1))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))) 0)
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re))))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re)))))
(+.f64 1 (-.f64 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re)))) 1))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))) 0)
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re))))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re)))))
(+.f64 1 (-.f64 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re)))) 1))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))) 0)
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re))))
(exp.f64 (log.f64 (*.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 (/.f64 -1/2 re)))))
(+.f64 1 (-.f64 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re)))) 1))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))) 0)
(*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 -1/2 re))))
(-.f64 (+.f64 1 (sqrt.f64 (/.f64 -1/2 re))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(*.f64 (sqrt.f64 (/.f64 -1/2 re)) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(*.f64 1 (sqrt.f64 (/.f64 -1/2 re)))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(*.f64 (cbrt.f64 (/.f64 -1/2 re)) (cbrt.f64 (sqrt.f64 (/.f64 -1/2 re))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 -1/2 re))) (cbrt.f64 (/.f64 -1/2 re)))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(*.f64 (pow.f64 (/.f64 -1/2 re) 1/4) (pow.f64 (/.f64 -1/2 re) 1/4))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1/2) (pow.f64 (/.f64 1 re) 1/2))
(*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1/2) (/.f64 1 (sqrt.f64 re)))
(/.f64 (sqrt.f64 -1/2) (sqrt.f64 re))
(*.f64 (sqrt.f64 (cbrt.f64 (/.f64 1/4 (*.f64 re re)))) (sqrt.f64 (cbrt.f64 (/.f64 -1/2 re))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (/.f64 -1/2 re)))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 (*.f64 re re))) 1/2) (pow.f64 (cbrt.f64 (/.f64 -1/2 re)) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (/.f64 1/4 (*.f64 re re)))) (sqrt.f64 (cbrt.f64 (/.f64 -1/2 re))))
(/.f64 1 (sqrt.f64 (*.f64 re -2)))
(/.f64 1 (/.f64 (sqrt.f64 re) (sqrt.f64 -1/2)))
(*.f64 (sqrt.f64 -1/2) (/.f64 1 (sqrt.f64 re)))
(/.f64 (sqrt.f64 -1/2) (sqrt.f64 re))
(/.f64 (sqrt.f64 -1/2) (sqrt.f64 re))
(*.f64 (sqrt.f64 -1/2) (/.f64 1 (sqrt.f64 re)))
(/.f64 (sqrt.f64 1/2) (sqrt.f64 (neg.f64 re)))
(/.f64 (neg.f64 (sqrt.f64 -1/2)) (neg.f64 (sqrt.f64 re)))
(*.f64 (sqrt.f64 -1/2) (/.f64 1 (sqrt.f64 re)))
(/.f64 (sqrt.f64 -1/2) (sqrt.f64 re))
(pow.f64 (/.f64 -1/2 re) 1/2)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(pow.f64 (sqrt.f64 (/.f64 -1/2 re)) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(pow.f64 (pow.f64 (/.f64 -1/2 re) 3/2) 1/3)
(cbrt.f64 (pow.f64 (/.f64 -1/2 re) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 -1/2 re))) 3)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(pow.f64 (pow.f64 (/.f64 -1/2 re) 1/4) 2)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(fabs.f64 (sqrt.f64 (/.f64 -1/2 re)))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 -1/2 re))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(cbrt.f64 (pow.f64 (/.f64 -1/2 re) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 -1/2 re))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 -1/2 re))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 -1/2 re))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 -1/2 re)) 1))
(+.f64 (sqrt.f64 (/.f64 -1/2 re)) 0)
(sqrt.f64 (/.f64 -1/2 re))

localize18.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(log.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2)))
2.3b
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2))))
Compiler

Compiled 38 to 26 computations (31.6% saved)

series4.0ms (0.1%)

Counts
2 → 0
Calls

6 calls:

TimeVariablePointExpression
1.0ms
im
@0
(log.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2)))
1.0ms
im
@0
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2))))
1.0ms
im
@-inf
(log.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2)))
1.0ms
im
@-inf
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2))))
1.0ms
im
@inf
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2))))

rewrite67.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
522×pow1_binary64
507×add-sqr-sqrt_binary64
485×add-log-exp_binary64
484×log1p-expm1-u_binary64
484×expm1-log1p-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify43.0ms (0.6%)

Algorithm
egg-herbie
Rules
412×associate-+l+_binary64
408×log-prod_binary64
321×associate-*l/_binary64
309×associate-*l*_binary64
304×associate-*r/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
093535
1179484
2575435
33554421
Stop Event
node limit
Counts
47 → 54
Calls
Call 1
Inputs
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 im 2)) 1))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 im 2))) 1)
(*.f64 (sqrt.f64 (*.f64 im 2)) 1)
(*.f64 1 (sqrt.f64 (*.f64 im 2)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im 2))) (cbrt.f64 (*.f64 im 2)))
(*.f64 (cbrt.f64 (*.f64 im 2)) (cbrt.f64 (sqrt.f64 (*.f64 im 2))))
(*.f64 (pow.f64 (*.f64 im 2) 1/4) (pow.f64 (*.f64 im 2) 1/4))
(*.f64 (sqrt.f64 im) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im 2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im 2))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 im 2)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im 2)) 1/2))
(pow.f64 (*.f64 im 2) 1/2)
(pow.f64 (sqrt.f64 (*.f64 im 2)) 1)
(pow.f64 (pow.f64 (*.f64 im 2) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 im 2))) 3)
(pow.f64 (pow.f64 (*.f64 im 2) 1/4) 2)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))))
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 im 2))))
(sqrt.f64 (*.f64 im 2))
(fabs.f64 (sqrt.f64 (*.f64 im 2)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 im 2))))
(cbrt.f64 (pow.f64 (*.f64 im 2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 im 2))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im 2))))
(+.f64 0 (log.f64 (sqrt.f64 (*.f64 im 2))))
(+.f64 (log.f64 (sqrt.f64 im)) (log.f64 (sqrt.f64 2)))
(+.f64 (log.f64 (pow.f64 (*.f64 im 2) 1/4)) (log.f64 (pow.f64 (*.f64 im 2) 1/4)))
(+.f64 (log.f64 (cbrt.f64 (*.f64 im 2))) (log.f64 (cbrt.f64 (sqrt.f64 (*.f64 im 2)))))
(-.f64 (+.f64 1 (log.f64 (sqrt.f64 (*.f64 im 2)))) 1)
(*.f64 (log.f64 (sqrt.f64 (*.f64 im 2))) 1)
(*.f64 1 (log.f64 (sqrt.f64 (*.f64 im 2))))
(*.f64 (log.f64 (*.f64 im 2)) 1/2)
(*.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) 2) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))))
(*.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))))
(*.f64 1/2 (log.f64 (*.f64 im 2)))
(pow.f64 (log.f64 (sqrt.f64 (*.f64 im 2))) 1)
(pow.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 im 2))) 3) 1/3)
(pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) 3)
(pow.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) 2)
(sqrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 im 2))) 2))
(cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 im 2))) 3))
(expm1.f64 (log1p.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))))
(log1p.f64 (-.f64 (sqrt.f64 (*.f64 im 2)) 1))
(exp.f64 (log.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))))
Outputs
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 im 2)) 1))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 im 2))) 1)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(*.f64 (sqrt.f64 (*.f64 im 2)) 1)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(*.f64 1 (sqrt.f64 (*.f64 im 2)))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im 2))) (cbrt.f64 (*.f64 im 2)))
(*.f64 (cbrt.f64 (*.f64 im 2)) (cbrt.f64 (sqrt.f64 (*.f64 im 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im 2))) (cbrt.f64 (*.f64 im 2)))
(*.f64 (pow.f64 (*.f64 im 2) 1/4) (pow.f64 (*.f64 im 2) 1/4))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(*.f64 (sqrt.f64 im) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im 2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im 2))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 im 2))) (sqrt.f64 (cbrt.f64 (*.f64 im 2))))
(*.f64 (cbrt.f64 (*.f64 im 2)) (sqrt.f64 (cbrt.f64 (*.f64 im 2))))
(pow.f64 (cbrt.f64 (*.f64 im 2)) 3/2)
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 im 2)))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im 2)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im 2)) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im 2)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im 2))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 im 2))) (sqrt.f64 (cbrt.f64 (*.f64 im 2))))
(*.f64 (cbrt.f64 (*.f64 im 2)) (sqrt.f64 (cbrt.f64 (*.f64 im 2))))
(pow.f64 (cbrt.f64 (*.f64 im 2)) 3/2)
(pow.f64 (*.f64 im 2) 1/2)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(pow.f64 (sqrt.f64 (*.f64 im 2)) 1)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(pow.f64 (pow.f64 (*.f64 im 2) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 im 2) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 im 2))) 3)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(pow.f64 (pow.f64 (*.f64 im 2) 1/4) 2)
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))))
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 im 2))))
(pow.f64 (E.f64) (log.f64 (sqrt.f64 (*.f64 im 2))))
(sqrt.f64 (*.f64 im 2))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(fabs.f64 (sqrt.f64 (*.f64 im 2)))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 im 2))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(cbrt.f64 (pow.f64 (*.f64 im 2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 im 2))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im 2))))
(+.f64 1 (+.f64 (sqrt.f64 (*.f64 im 2)) -1))
(+.f64 (sqrt.f64 (*.f64 im 2)) 0)
(sqrt.f64 (*.f64 im 2))
(+.f64 0 (log.f64 (sqrt.f64 (*.f64 im 2))))
(log.f64 (sqrt.f64 (*.f64 im 2)))
(+.f64 (log.f64 (sqrt.f64 im)) (log.f64 (sqrt.f64 2)))
(+.f64 (log.f64 (pow.f64 (*.f64 im 2) 1/4)) (log.f64 (pow.f64 (*.f64 im 2) 1/4)))
(log.f64 (sqrt.f64 (*.f64 im 2)))
(+.f64 (log.f64 (cbrt.f64 (*.f64 im 2))) (log.f64 (cbrt.f64 (sqrt.f64 (*.f64 im 2)))))
(-.f64 (+.f64 1 (log.f64 (sqrt.f64 (*.f64 im 2)))) 1)
(log.f64 (sqrt.f64 (*.f64 im 2)))
(*.f64 (log.f64 (sqrt.f64 (*.f64 im 2))) 1)
(log.f64 (sqrt.f64 (*.f64 im 2)))
(*.f64 1 (log.f64 (sqrt.f64 (*.f64 im 2))))
(log.f64 (sqrt.f64 (*.f64 im 2)))
(*.f64 (log.f64 (*.f64 im 2)) 1/2)
(log.f64 (sqrt.f64 (*.f64 im 2)))
(*.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) 2))
(log.f64 (sqrt.f64 (*.f64 im 2)))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) 2) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))))
(log.f64 (sqrt.f64 (*.f64 im 2)))
(*.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))))
(log.f64 (sqrt.f64 (*.f64 im 2)))
(*.f64 1/2 (log.f64 (*.f64 im 2)))
(log.f64 (sqrt.f64 (*.f64 im 2)))
(pow.f64 (log.f64 (sqrt.f64 (*.f64 im 2))) 1)
(log.f64 (sqrt.f64 (*.f64 im 2)))
(pow.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 im 2))) 3) 1/3)
(log.f64 (sqrt.f64 (*.f64 im 2)))
(pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) 3)
(log.f64 (sqrt.f64 (*.f64 im 2)))
(pow.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))) 2)
(log.f64 (sqrt.f64 (*.f64 im 2)))
(sqrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 im 2))) 2))
(log.f64 (sqrt.f64 (*.f64 im 2)))
(cbrt.f64 (pow.f64 (log.f64 (sqrt.f64 (*.f64 im 2))) 3))
(log.f64 (sqrt.f64 (*.f64 im 2)))
(expm1.f64 (log1p.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))))
(log.f64 (sqrt.f64 (*.f64 im 2)))
(log1p.f64 (-.f64 (sqrt.f64 (*.f64 im 2)) 1))
(log.f64 (sqrt.f64 (*.f64 im 2)))
(exp.f64 (log.f64 (log.f64 (sqrt.f64 (*.f64 im 2)))))
(log.f64 (sqrt.f64 (*.f64 im 2)))

eval221.0ms (3%)

Compiler

Compiled 10027 to 7084 computations (29.4% saved)

prune101.0ms (1.4%)

Pruning

23 alts after pruning (13 fresh and 10 done)

PrunedKeptTotal
New4684472
Fresh1910
Picked011
Done099
Total46923492
Error
0.0b
Counts
492 → 23
Alt Table
Click to see full alt table
StatusErrorProgram
11.1b
(*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3/2))
49.0b
(*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 (neg.f64 im) 2)) 3/2))
57.3b
(*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re))))
57.3b
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) (sqrt.f64 2)))
57.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2))))
54.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (sqrt.f64 (*.f64 im (*.f64 2 im)))))
50.2b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (fabs.f64 (*.f64 (sqrt.f64 2) im))))
43.1b
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 re im)) (sqrt.f64 2)))
44.1b
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
60.1b
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
54.7b
(*.f64 1/2 (sqrt.f64 (/.f64 (neg.f64 im) (/.f64 re im))))
55.4b
(*.f64 1/2 (sqrt.f64 (*.f64 (*.f64 im im) (/.f64 -1 re))))
44.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (*.f64 im im) (/.f64 1/2 re) (*.f64 re 2)))))
43.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (cbrt.f64 (+.f64 re im)) 3))))
49.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (cbrt.f64 (neg.f64 im)) 3))))
46.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
10.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
43.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
48.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
46.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
50.2b
(*.f64 1/2 (fabs.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))
14.2b
(*.f64 1/2 (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2)))
49.8b
(*.f64 1/2 (exp.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2)))))
Compiler

Compiled 272 to 223 computations (18% saved)

regimes202.0ms (2.7%)

Counts
37 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
(*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 1/2 (sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (neg.f64 im) (/.f64 re im))))
(*.f64 1/2 (sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)))
(*.f64 1/2 (sqrt.f64 (*.f64 (*.f64 im im) (/.f64 -1 re))))
(*.f64 1/2 (sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1 (neg.f64 re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (/.f64 im re) im) -1/2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 (*.f64 -1/2 im) im) re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 (*.f64 -1/2 im) 2) (/.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (/.f64 1 re) (*.f64 -1/2 (*.f64 im im))))))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 re im)) (sqrt.f64 2)))
(*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 (neg.f64 im) 2)) 3/2))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (sqrt.f64 (*.f64 im (*.f64 2 im)))))
(*.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 (fma.f64 re 2 (/.f64 (*.f64 1/2 (*.f64 im im)) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (*.f64 im im) (/.f64 1/2 re) (*.f64 re 2)))))
(*.f64 1/2 (exp.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (cbrt.f64 (neg.f64 im)) 3))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (cbrt.f64 (+.f64 re im)) 3))))
(*.f64 1/2 (fabs.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (fabs.f64 (*.f64 (sqrt.f64 2) im))))
(*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3/2))
(*.f64 1/2 (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1/2)))
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/4) 2))
(*.f64 1/2 (exp.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (cbrt.f64 (+.f64 re (hypot.f64 re im))) 3))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8)))))
Outputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (fabs.f64 (*.f64 (sqrt.f64 2) im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
Calls

8 calls:

44.0ms
re
37.0ms
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
23.0ms
(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
23.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
22.0ms
(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
Results
ErrorSegmentsBranch
5.7b2re
10.4b1im
4.8b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
4.8b2(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
5.6b2(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
5.6b2(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
10.4b1(*.f64 im im)
10.4b1(*.f64 im im)
Compiler

Compiled 483 to 331 computations (31.5% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
4.207430863493588e-150
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes221.0ms (3%)

Counts
29 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
(*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 1/2 (sqrt.f64 (*.f64 (neg.f64 im) (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (neg.f64 im) (/.f64 re im))))
(*.f64 1/2 (sqrt.f64 (/.f64 (neg.f64 (*.f64 im im)) re)))
(*.f64 1/2 (sqrt.f64 (*.f64 (*.f64 im im) (/.f64 -1 re))))
(*.f64 1/2 (sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1 (neg.f64 re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (/.f64 im re) im) -1/2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 (*.f64 -1/2 im) im) re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 (*.f64 -1/2 im) 2) (/.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (/.f64 1 re) (*.f64 -1/2 (*.f64 im im))))))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 re im)) (sqrt.f64 2)))
(*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 (neg.f64 im) 2)) 3/2))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (*.f64 im (sqrt.f64 2))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (sqrt.f64 (*.f64 im (*.f64 2 im)))))
(*.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 (fma.f64 re 2 (/.f64 (*.f64 1/2 (*.f64 im im)) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (*.f64 im im) (/.f64 1/2 re) (*.f64 re 2)))))
(*.f64 1/2 (exp.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (cbrt.f64 (neg.f64 im)) 3))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (cbrt.f64 (+.f64 re im)) 3))))
(*.f64 1/2 (fabs.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))
Outputs
(*.f64 1/2 (fabs.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
Calls

8 calls:

42.0ms
(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
34.0ms
re
34.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
19.0ms
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
18.0ms
(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
ErrorSegmentsBranch
5.7b2re
10.4b1im
4.8b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
4.8b2(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
5.6b2(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
5.6b2(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
10.4b1(*.f64 im im)
10.4b1(*.f64 im im)
Compiler

Compiled 374 to 260 computations (30.5% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
4.207430863493588e-150
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes186.0ms (2.5%)

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

8 calls:

47.0ms
re
29.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
26.0ms
(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
23.0ms
(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
19.0ms
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Results
ErrorSegmentsBranch
6.2b4re
10.4b1im
7.1b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
7.1b2(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
7.1b3(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
7.1b3(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
10.4b1(*.f64 im im)
10.4b1(*.f64 im im)
Compiler

Compiled 362 to 250 computations (30.9% saved)

bsearch100.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
32.0ms
-1.8483043935922868e-23
-1.4947362808374225e-27
36.0ms
-4.747538873649954e-6
-4.527489678930343e-12
31.0ms
-1.8518993200990824e+50
-7.882881687406739e+46
Results
46.0ms108×body2048valid
25.0ms218×body256valid
11.0ms40×body1024valid
7.0ms16×body4096valid
4.0ms18×body512valid
Compiler

Compiled 645 to 506 computations (21.6% saved)

regimes100.0ms (1.4%)

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

4 calls:

58.0ms
re
22.0ms
im
8.0ms
(*.f64 im im)
6.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
7.2b4re
10.4b1im
10.4b1(*.f64 im im)
10.4b1(*.f64 im im)
Compiler

Compiled 216 to 150 computations (30.6% saved)

bsearch148.0ms (2%)

Algorithm
binary-search
Steps
TimeLeftRight
31.0ms
-1.8483043935922868e-23
-1.4947362808374225e-27
56.0ms
-4.747538873649954e-6
-4.527489678930343e-12
62.0ms
-1.8518993200990824e+50
-7.882881687406739e+46
Results
57.0ms89×body2048valid
37.0ms21×body4096valid
28.0ms209×body256valid
16.0ms58×body1024valid
5.0ms23×body512valid
Compiler

Compiled 613 to 474 computations (22.7% saved)

regimes293.0ms (4%)

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

4 calls:

126.0ms
re
93.0ms
im
48.0ms
(*.f64 im im)
22.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
21.9b9re
20.4b5im
32.0b4(*.f64 im im)
32.0b4(*.f64 im im)
Compiler

Compiled 184 to 125 computations (32.1% saved)

bsearch165.0ms (2.2%)

Algorithm
binary-search
Steps
TimeLeftRight
29.0ms
1.7311237500830475e-35
8.233429107305051e-33
53.0ms
1.4604638776435756e-178
1.805424381249282e-167
26.0ms
4.280127104622806e-206
1.9507326681342e-203
58.0ms
-4.602942586700561e-12
-1.2477554423721467e-20
Results
64.0ms408×body256valid
27.0ms73×body2048valid
23.0ms50×body4096valid
6.0ms18×body1024valid
2.0ms11×body512valid
Compiler

Compiled 722 to 611 computations (15.4% saved)

regimes57.0ms (0.8%)

Counts
5 → 5
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
(*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
Calls

2 calls:

32.0ms
re
23.0ms
im
Results
ErrorSegmentsBranch
25.5b8re
20.5b5im
Compiler

Compiled 42 to 33 computations (21.4% saved)

bsearch119.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
23.0ms
1.7311237500830475e-35
8.233429107305051e-33
39.0ms
1.4604638776435756e-178
1.805424381249282e-167
25.0ms
4.280127104622806e-206
1.9507326681342e-203
32.0ms
-4.602942586700561e-12
-1.2477554423721467e-20
Results
53.0ms420×body256valid
24.0ms53×body2048valid
20.0ms41×body4096valid
9.0ms32×body1024valid
3.0ms14×body512valid
Compiler

Compiled 713 to 611 computations (14.3% saved)

regimes43.0ms (0.6%)

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

2 calls:

30.0ms
re
12.0ms
im
Results
ErrorSegmentsBranch
25.7b8re
21.7b3im
Compiler

Compiled 34 to 27 computations (20.6% saved)

bsearch52.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
23.0ms
1.7311237500830475e-35
8.233429107305051e-33
28.0ms
-4.602942586700561e-12
-1.2477554423721467e-20
Results
27.0ms219×body256valid
14.0ms32×body2048valid
3.0ms11×body1024valid
2.0msbody4096valid
1.0msbody512valid
Compiler

Compiled 337 to 297 computations (11.9% saved)

regimes19.0ms (0.3%)

Accuracy

Total -31.6b remaining (-101.9%)

Threshold costs -31.6b (-101.9%)

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

2 calls:

12.0ms
re
6.0ms
im
Results
ErrorSegmentsBranch
31.0b4re
32.3b2im
Compiler

Compiled 20 to 16 computations (20% saved)

bsearch55.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
20.0ms
142391461.1612667
531072542278.87305
17.0ms
5.3010662876576045e-45
7.708689494604776e-42
18.0ms
1.1932758046158548e-152
6.84119138073438e-150
Results
50.0ms384×body256valid
Compiler

Compiled 454 to 400 computations (11.9% saved)

simplify32.0ms (0.4%)

Algorithm
egg-herbie
Rules
28×*-commutative_binary64
+-commutative_binary64
fabs-mul_binary64
sub-neg_binary64
neg-sub0_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0119529
1161525
2179525
3185525
4187525
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) 0) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (fabs.f64 (*.f64 (sqrt.f64 2) im)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(if (<=.f64 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) 0) (*.f64 1/2 (fabs.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(if (<=.f64 re -175000000000000002967503504841146998705196040716288) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (sqrt.f64 (*.f64 im (*.f64 2 im))))) (if (<=.f64 re -7891867750444299/309485009821345068724781056) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 re -3157820365026309/21778071482940061661655974875633165533184) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(if (<=.f64 re -10199999999999999635931214913710396059377234608128) (*.f64 1/2 (sqrt.f64 (/.f64 (neg.f64 im) (/.f64 re im)))) (if (<=.f64 re -5694524180712749/1237940039285380274899124224) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 re -1531270651144223/85070591730234615865843651857942052864) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(if (<=.f64 im -2076918743413931/166153499473114484112975882535043072) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 im 2206260905240795/176500872419263593559319302637789241459459619490723595292712620678918364397574906244117120062201874810681116593642749786132706054117399434226659568030434131651924755717669757535789504530793970482734834967427158147858432) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im 1603983029632803/17822033662586700072817076584766762987864173856439687228824970773044043621908896041038721919208482030385321521771853153557377752817872804680674458280164899172859354196719784961261227313463296) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (if (<=.f64 im 7576424487923401/93536104789177786765035829293842113257979682750464) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))))
(if (<=.f64 im -2076918743413931/166153499473114484112975882535043072) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im 430220876521955/22062609052407949194914912829723655182432452436340449411589077584864795549696863280514640007775234351335139574205343723266588256764674929278332446003804266456490594464708719691973688066349246310341854370928394768482304) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im 3011210807630649/18249762470488780874564686422801165299572914028994239722316770071597100668834709546023651245269485599114569238294377629242754818885501751993010645278888856753007978697441059800331496768986415104) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (if (<=.f64 im 1730417938599789/93536104789177786765035829293842113257979682750464) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))))
(if (<=.f64 im -3406146739198847/41538374868278621028243970633760768) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im 7482888383134223/11692013098647223345629478661730264157247460343808) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im)))))
(if (<=.f64 re 8476673415126509/3685510180489786476798393145496356338786055879312930105836138965083617346086082863365358130056307390177215209990980317284932211552660930305235775636164742230126362624) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 5884782876925013/784637716923335095479473677900958302012794430558004314112) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 re 430000000) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))))))
(*.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/2 re)) (fabs.f64 (*.f64 (sqrt.f64 2) im)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(if (<=.f64 (sqrt.f64 (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) 0) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (fabs.f64 (*.f64 im (sqrt.f64 2))))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(if (<=.f64 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) 0) (*.f64 1/2 (fabs.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 -1/2 re)) im)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(if (<=.f64 (sqrt.f64 (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) 0) (*.f64 1/2 (fabs.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 -1/2 re)))))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(if (<=.f64 re -175000000000000002967503504841146998705196040716288) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 -1/2 re)) (sqrt.f64 (*.f64 im (*.f64 2 im))))) (if (<=.f64 re -7891867750444299/309485009821345068724781056) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 re -3157820365026309/21778071482940061661655974875633165533184) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(if (<=.f64 re -10199999999999999635931214913710396059377234608128) (*.f64 1/2 (sqrt.f64 (/.f64 (neg.f64 im) (/.f64 re im)))) (if (<=.f64 re -5694524180712749/1237940039285380274899124224) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 re -1531270651144223/85070591730234615865843651857942052864) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(if (<=.f64 im -2076918743413931/166153499473114484112975882535043072) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 im 2206260905240795/176500872419263593559319302637789241459459619490723595292712620678918364397574906244117120062201874810681116593642749786132706054117399434226659568030434131651924755717669757535789504530793970482734834967427158147858432) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im 1603983029632803/17822033662586700072817076584766762987864173856439687228824970773044043621908896041038721919208482030385321521771853153557377752817872804680674458280164899172859354196719784961261227313463296) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (if (<=.f64 im 7576424487923401/93536104789177786765035829293842113257979682750464) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))))
(if (<=.f64 im -2076918743413931/166153499473114484112975882535043072) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im 430220876521955/22062609052407949194914912829723655182432452436340449411589077584864795549696863280514640007775234351335139574205343723266588256764674929278332446003804266456490594464708719691973688066349246310341854370928394768482304) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im 3011210807630649/18249762470488780874564686422801165299572914028994239722316770071597100668834709546023651245269485599114569238294377629242754818885501751993010645278888856753007978697441059800331496768986415104) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (if (<=.f64 im 1730417938599789/93536104789177786765035829293842113257979682750464) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))))
(if (<=.f64 im -2076918743413931/166153499473114484112975882535043072) (*.f64 1/2 (sqrt.f64 (*.f64 im -2))) (if (<=.f64 im 430220876521955/22062609052407949194914912829723655182432452436340449411589077584864795549696863280514640007775234351335139574205343723266588256764674929278332446003804266456490594464708719691973688066349246310341854370928394768482304) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im 3011210807630649/18249762470488780874564686422801165299572914028994239722316770071597100668834709546023651245269485599114569238294377629242754818885501751993010645278888856753007978697441059800331496768986415104) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (if (<=.f64 im 1730417938599789/93536104789177786765035829293842113257979682750464) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))))
(if (<=.f64 im -3406146739198847/41538374868278621028243970633760768) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im 7482888383134223/11692013098647223345629478661730264157247460343808) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im)))))
(if (<=.f64 im -3406146739198847/41538374868278621028243970633760768) (*.f64 1/2 (sqrt.f64 (*.f64 im -2))) (if (<=.f64 im 7482888383134223/11692013098647223345629478661730264157247460343808) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im)))))
(if (<=.f64 re 8476673415126509/3685510180489786476798393145496356338786055879312930105836138965083617346086082863365358130056307390177215209990980317284932211552660930305235775636164742230126362624) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 5884782876925013/784637716923335095479473677900958302012794430558004314112) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 re 430000000) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 364 to 271 computations (25.5% saved)

soundness219.0ms (3%)

Algorithm
egg-herbie
Rules
835×fma-def_binary64
773×fma-def_binary64
633×times-frac_binary64
572×fma-def_binary64
507×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01315
12515
23415
33615
02431951
16471768
220751600
376811600
03272806
17342570
224412318
01361005
1286906
21140821
33528820
47228820
01315
12515
23415
33615
Stop Event
saturated
node limit
node limit
node limit
saturated
Compiler

Compiled 228 to 174 computations (23.7% saved)

end142.0ms (1.9%)

Compiler

Compiled 348 to 237 computations (31.9% saved)

Profiling

Loading profile data...