Details

Time bar (total: 7.1s)

analyze194.0ms (2.7%)

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

Results
881.0ms6373×body256valid
321.0ms533×body4096valid
320.0ms686×body2048valid
131.0ms429×body1024valid
52.0ms235×body512valid
Bogosity

preprocess16.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

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
13.2b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
37.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
13.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
Compiler

Compiled 29 to 21 computations (27.6% saved)

localize38.0ms (0.5%)

Local error

Found 2 expressions with local error:

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

Compiled 39 to 16 computations (59% saved)

series12.0ms (0.2%)

Counts
2 → 32
Calls

12 calls:

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

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

simplify71.0ms (1%)

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

localize61.0ms (0.9%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 re re) (*.f64 im im))
0.0b
(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
0.2b
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
28.3b
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Compiler

Compiled 77 to 19 computations (75.3% saved)

series12.0ms (0.2%)

Counts
4 → 80
Calls

24 calls:

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

rewrite64.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
541×log-prod_binary64
540×fma-def_binary64
404×pow-prod-down_binary64
298×pow2_binary64
265×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify144.0ms (2%)

Algorithm
egg-herbie
Rules
668×associate-/l*_binary64
347×cancel-sign-sub-inv_binary64
248×fma-def_binary64
239×fma-neg_binary64
205×sqr-pow_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

eval220.0ms (3.1%)

Compiler

Compiled 10465 to 7022 computations (32.9% saved)

prune106.0ms (1.5%)

Pruning

15 alts after pruning (13 fresh and 2 done)

PrunedKeptTotal
New46713480
Fresh000
Picked011
Done011
Total46715482
Error
4.7b
Counts
482 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
30.6b
(*.f64 1/2 (hypot.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2)) (sqrt.f64 (*.f64 re 2))))
13.5b
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2)))
45.0b
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
56.7b
(*.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)))))
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 re 2 (/.f64 (*.f64 1/2 (*.f64 im im)) re)))))
54.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 (*.f64 -1/2 im) im) re))))
44.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
47.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 -1/2 re) (/.f64 im re)) (-.f64 re im)))))
37.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
60.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (neg.f64 re) re))))
13.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
46.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
52.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (/.f64 im re) im) -1/2))))
47.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
48.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 369 to 291 computations (21.1% saved)

localize20.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

Compiled 42 to 17 computations (59.5% saved)

series2.0ms (0%)

Counts
1 → 8
Calls

6 calls:

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

rewrite50.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
923×pow1_binary64
857×add-log-exp_binary64
856×log1p-expm1-u_binary64
856×expm1-log1p-u_binary64
837×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0912
119212
2238912
Stop Event
node limit
Counts
1 → 14
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2))
Outputs
((#(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 pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x 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 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2) (*.f64 2 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (+.f64 re (hypot.f64 re im)) 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))))))))

simplify46.0ms (0.6%)

Algorithm
egg-herbie
Rules
677×associate-*l*_binary64
667×associate-*r*_binary64
485×times-frac_binary64
362×fma-def_binary64
259×log-prod_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0112733
1299650
21008569
35576551
Stop Event
node limit
Counts
22 → 47
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 (+.f64 1 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 1)
(pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 1)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 2)
(pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 1/2)
(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 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2) (*.f64 2 (sqrt.f64 2))))
(cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (+.f64 re (hypot.f64 re im)) 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
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 1/2 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/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 (*.f64 1/2 (sqrt.f64 2)) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re))) (*.f64 1/2 (*.f64 (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)))
(fma.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) 1/2) (+.f64 (*.f64 (*.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 (*.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 (*.f64 1/2 (sqrt.f64 2)) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re))) (*.f64 1/2 (*.f64 (sqrt.f64 2) re))))) (*.f64 -1/4 (*.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))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))
(+.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 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (*.f64 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) -1/4)) (sqrt.f64 im))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) 1/2) (+.f64 (*.f64 (*.f64 (/.f64 1 im) 1/4) (*.f64 re re)) re))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 -1/4 (*.f64 (*.f64 (/.f64 1 im) 1/4) (pow.f64 re 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 2 (sqrt.f64 re) (*.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (*.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 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))))
(fma.f64 2 (sqrt.f64 re) (fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (*.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 (*.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 (*.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 (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 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 (+.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 (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))))
(-.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))))
(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 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 3) 1/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 (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 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 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 (*.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))))
(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 (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))))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2) (*.f64 2 (sqrt.f64 2))))
(cbrt.f64 (*.f64 2 (*.f64 (sqrt.f64 2) (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2))))
(cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) 3/2) (*.f64 2 (sqrt.f64 2))))
(cbrt.f64 (*.f64 2 (*.f64 (sqrt.f64 2) (pow.f64 (+.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))))

localize17.0ms (0.2%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

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

series5.0ms (0.1%)

Counts
1 → 8
Calls

6 calls:

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

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

simplify49.0ms (0.7%)

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

localize16.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

Compiled 53 to 25 computations (52.8% saved)

series11.0ms (0.2%)

Counts
3 → 60
Calls

18 calls:

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

rewrite59.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
544×log-prod_binary64
394×exp-prod_binary64
352×prod-exp_binary64
305×pow-prod-down_binary64
259×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify54.0ms (0.8%)

Algorithm
egg-herbie
Rules
652×fma-def_binary64
596×distribute-rgt-in_binary64
568×distribute-lft-in_binary64
248×log-prod_binary64
216×associate-*l/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02881746
16251694
218491580
Stop Event
node limit
Counts
180 → 156
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 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 -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 (*.f64 im im) re) -1)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))) 1)
(*.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1)
(*.f64 1 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/6))
(*.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/6) (cbrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))
(*.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/4) (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/4))
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 im im) re))) (sqrt.f64 -1/2))
(pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/2)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1)
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 2) 1/4)
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3) 1/6)
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3/2) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 3/2)
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/6) 3)
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/4) 2)
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(pow.f64 (exp.f64 1/2) (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))))
(fabs.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3/2)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/6)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/4)) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1) 1))
(+.f64 0 (/.f64 (*.f64 im im) re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 im im) re))) 1)
(/.f64 im (/.f64 re im))
(/.f64 1 (/.f64 re (*.f64 im im)))
(/.f64 (*.f64 im im) re)
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(pow.f64 (/.f64 (*.f64 im im) re) 1)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/2)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 3)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (exp.f64 1) (log.f64 (/.f64 (*.f64 im im) re)))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (*.f64 im im) re))) 2)) (cbrt.f64 (log.f64 (/.f64 (*.f64 im im) re))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (*.f64 im im) re)))) (sqrt.f64 (log.f64 (/.f64 (*.f64 im im) re))))
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 im im) re))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 im im) re)))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 im im) re)))
(exp.f64 (log.f64 (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) 3))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1) 1))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 re im))))
(exp.f64 (-.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 re) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 im re))))
(exp.f64 (+.f64 (log.f64 im) (*.f64 (log.f64 (/.f64 im re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (/.f64 im re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im re)) 1) (log.f64 im)))
(exp.f64 (+.f64 (log.f64 (/.f64 im re)) (*.f64 (log.f64 im) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im re)) 1) (*.f64 (log.f64 im) 1)))
(+.f64 (*.f64 (/.f64 (*.f64 im im) re) -1/2) (*.f64 (/.f64 (*.f64 im im) re) -1/2))
(+.f64 0 (*.f64 (/.f64 (*.f64 im im) re) -1))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 -1) (/.f64 (*.f64 im im) re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1) (/.f64 (*.f64 im im) re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1) (/.f64 (*.f64 im im) re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1) (/.f64 (*.f64 im im) re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1)
(pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 2)
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3) 1/3)
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3/2) 2/3)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 3)
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/6) 6)
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/4) 4)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))) (sqrt.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(sqrt.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 2))
(log.f64 (pow.f64 (exp.f64 -1) (/.f64 (*.f64 im im) re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(exp.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1) 2))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2) (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1) (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2) (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1) (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2) (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1) (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1)))
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 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (neg.f64 im) (sqrt.f64 -1)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.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)) (*.f64 (neg.f64 im) (sqrt.f64 -1)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.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)) (*.f64 (neg.f64 im) (sqrt.f64 -1)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.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)) (*.f64 (neg.f64 im) (sqrt.f64 -1)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(+.f64 0 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (fabs.f64 (/.f64 im (sqrt.f64 re)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (fabs.f64 (/.f64 im (sqrt.f64 re)))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))) 1)
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1)
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(*.f64 1 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/6))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/6) (cbrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)) (sqrt.f64 2))
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2)))
(*.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/4) (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/4))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 im im) re))) (sqrt.f64 -1/2))
(*.f64 (sqrt.f64 -1/2) (sqrt.f64 (*.f64 2 (*.f64 (/.f64 im re) im))))
(*.f64 (sqrt.f64 -1/2) (sqrt.f64 (*.f64 (/.f64 im re) (+.f64 im im))))
(*.f64 (sqrt.f64 -1/2) (sqrt.f64 (*.f64 im (*.f64 2 (/.f64 im re)))))
(pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/2)
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1)
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 2) 1/4)
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3) 1/6)
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3/2) 1/3)
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 3/2)
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/6) 3)
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/4) 2)
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(pow.f64 (exp.f64 1/2) (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im))))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fabs.f64 (/.f64 im (sqrt.f64 re))))) 2)) (cbrt.f64 (log.f64 (fabs.f64 (/.f64 im (sqrt.f64 re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))))) (sqrt.f64 (log.f64 (sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fabs.f64 (/.f64 im (sqrt.f64 re)))))) (sqrt.f64 (log.f64 (fabs.f64 (/.f64 im (sqrt.f64 re))))))
(fabs.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3/2))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3/2)) 1/3))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/6)) 3))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/4)) 2))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1) 1/2))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2) 1))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1) 1))
(sqrt.f64 (neg.f64 (*.f64 (/.f64 im re) im)))
(sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(+.f64 0 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 im im) re))) 1)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 1 (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 (*.f64 im im) re) 1)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/2)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6) 1/3)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 3)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (exp.f64 1) (log.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (*.f64 im im) re))) 2)) (cbrt.f64 (log.f64 (/.f64 (*.f64 im im) re))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) im))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))) 2)) (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (*.f64 im im) re)))) (sqrt.f64 (log.f64 (/.f64 (*.f64 im im) re))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 im re) im)))) (sqrt.f64 (log.f64 (*.f64 (/.f64 im re) im))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re))))) (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (log.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6)) 1/3))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) 3))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1) 1))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 re im))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (-.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 re) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 im re))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (log.f64 im) (*.f64 (log.f64 (/.f64 im re)) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (/.f64 im re)) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im re)) 1) (log.f64 im)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (log.f64 (/.f64 im re)) (*.f64 (log.f64 im) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im re)) 1) (*.f64 (log.f64 im) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(+.f64 (*.f64 (/.f64 (*.f64 im im) re) -1/2) (*.f64 (/.f64 (*.f64 im im) re) -1/2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(+.f64 0 (*.f64 (/.f64 (*.f64 im im) re) -1))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 -1) (/.f64 (*.f64 im im) re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1) (/.f64 (*.f64 im im) re)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 -1) (*.f64 (/.f64 im re) im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1) (*.f64 (/.f64 im re) im)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1) (*.f64 im (/.f64 im re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1) (/.f64 (*.f64 im im) re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1) (/.f64 (*.f64 im im) re)))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 2)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 2) 1/2)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3) 1/3)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3/2) 2/3)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 3)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/6) 6)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/4) 4)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) im))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))) 2)) (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))) (sqrt.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 im re) im)))) (sqrt.f64 (log.f64 (*.f64 (/.f64 im re) im))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re))))) (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(log.f64 (pow.f64 (exp.f64 -1) (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1/2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 3)) 1/3))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 3))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1) 1))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2) 2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1) 2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2) (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1) (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2) (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1) (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 1/2) (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1) (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1))) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))

localize26.0ms (0.4%)

Local error

Found 2 expressions with local error:

NewErrorProgram
5.8b
(sqrt.f64 (*.f64 2 (fma.f64 re 2 (/.f64 (*.f64 1/2 (*.f64 im im)) re))))
7.7b
(/.f64 (*.f64 1/2 (*.f64 im im)) re)
Compiler

Compiled 71 to 40 computations (43.7% saved)

series10.0ms (0.1%)

Counts
2 → 36
Calls

12 calls:

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

rewrite80.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
576×log-prod_binary64
316×pow-prod-down_binary64
281×pow2_binary64
267×prod-diff_binary64
204×pow-unpow_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify58.0ms (0.8%)

Algorithm
egg-herbie
Rules
752×times-frac_binary64
639×associate-/r*_binary64
558×fma-def_binary64
549×associate-*l/_binary64
314×associate-/l/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03002404
17812303
224782273
Stop Event
node limit
Counts
128 → 170
Calls
Call 1
Inputs
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 (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/32 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (sqrt.f64 2) 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 7))))) (+.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/128 (*.f64 (/.f64 (pow.f64 im 6) (pow.f64 (sqrt.f64 2) 4)) (sqrt.f64 (/.f64 1 (pow.f64 re 11))))) (+.f64 (*.f64 -1/32 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (sqrt.f64 2) 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 7))))) (+.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 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 im 3))) (sqrt.f64 (pow.f64 re 7)))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 im 5))) (sqrt.f64 (pow.f64 re 11)))) (+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 im 3))) (sqrt.f64 (pow.f64 re 7)))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3)))) (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3)))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 im 3))) (sqrt.f64 (pow.f64 re 7)))) (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 im 5))) (sqrt.f64 (pow.f64 re 11)))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3)))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 im 3))) (sqrt.f64 (pow.f64 re 7)))) (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))))
(+.f64 0 (*.f64 1/2 (/.f64 (*.f64 im im) re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))) 1)
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 1 (*.f64 re (pow.f64 im -2))))
(*.f64 1/2 (*.f64 (*.f64 im im) (/.f64 1 re)))
(*.f64 (*.f64 im im) (*.f64 1/2 (/.f64 1 re)))
(*.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 1 re))
(*.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) 1)
(*.f64 1 (*.f64 1/2 (/.f64 (*.f64 im im) re)))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 1 re)))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) (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 im im) re))))
(*.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (/.f64 1 re)))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)))
(*.f64 (*.f64 (*.f64 im im) -1/2) (/.f64 1 (neg.f64 re)))
(*.f64 (/.f64 1 re) (*.f64 1/2 (*.f64 im im)))
(*.f64 (*.f64 1/2 im) (*.f64 im (/.f64 1 re)))
(*.f64 (/.f64 (*.f64 im im) 1) (/.f64 1/2 re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.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 im (sqrt.f64 1/2)) 1) (/.f64 (*.f64 im (sqrt.f64 1/2)) re))
(*.f64 (/.f64 (*.f64 1/2 im) 1) (/.f64 im re))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(*.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 1/2 (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 im im) re))))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (/.f64 1/2 (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)))
(*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(pow.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) 1)
(pow.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re -2)) 1/2)
(pow.f64 (pow.f64 (/.f64 (/.f64 re 1/2) (*.f64 im im)) -3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) 3)
(pow.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) 2)
(pow.f64 (/.f64 (/.f64 re 1/2) (*.f64 im im)) -1)
(pow.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6) (pow.f64 re 3)) 1/3)
(pow.f64 (/.f64 (/.f64 (/.f64 re 1/2) (*.f64 im im)) 1) -1)
(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 im im) re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))))
(cbrt.f64 (pow.f64 (/.f64 (/.f64 re 1/2) (*.f64 im im)) -3))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (/.f64 re 1/2) (*.f64 im im)) -3)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))) 3))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re))) 2))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 re 1/2) (*.f64 im im))) -1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) 1) 1))
(+.f64 0 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))) 1)
(*.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) 1)
(*.f64 1 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))
(*.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/6) (cbrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))
(*.f64 (cbrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/6))
(*.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/4) (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/4))
(*.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))
(*.f64 (sqrt.f64 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) (sqrt.f64 2))
(pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/2)
(pow.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) 1)
(pow.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 3/2) 1/3)
(pow.f64 (*.f64 4 (pow.f64 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)) 2)) 1/4)
(pow.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 3) 1/6)
(pow.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/6) 3)
(pow.f64 (cbrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) 3/2)
(pow.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/4) 2)
(fabs.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))))
(cbrt.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))
(exp.f64 (*.f64 (log.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))) 1))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/6)) 3))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))) 1) 1))
Outputs
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) 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 2 (sqrt.f64 re) (*.f64 1/4 (*.f64 im (*.f64 im (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/32 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (sqrt.f64 2) 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 7))))) (+.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/32 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (sqrt.f64 2) 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))) (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/32 (*.f64 (/.f64 (pow.f64 im 4) 2) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))) (fma.f64 2 (sqrt.f64 re) (*.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(fma.f64 2 (sqrt.f64 re) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 7))) (/.f64 (*.f64 (pow.f64 im 4) -1/32) 2) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (*.f64 im im) 1/4))))
(+.f64 (*.f64 1/128 (*.f64 (/.f64 (pow.f64 im 6) (pow.f64 (sqrt.f64 2) 4)) (sqrt.f64 (/.f64 1 (pow.f64 re 11))))) (+.f64 (*.f64 -1/32 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (sqrt.f64 2) 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 7))))) (+.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/128 (*.f64 (/.f64 (pow.f64 im 6) (pow.f64 (sqrt.f64 2) 4)) (sqrt.f64 (/.f64 1 (pow.f64 re 11)))) (fma.f64 -1/32 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 (sqrt.f64 2) 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))) (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/128 (*.f64 (/.f64 (pow.f64 im 6) 4) (sqrt.f64 (/.f64 1 (pow.f64 re 11)))) (fma.f64 -1/32 (*.f64 (/.f64 (pow.f64 im 4) 2) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))) (fma.f64 2 (sqrt.f64 re) (*.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))))
(fma.f64 1/128 (*.f64 (/.f64 (pow.f64 im 6) 4) (sqrt.f64 (/.f64 1 (pow.f64 re 11)))) (fma.f64 2 (sqrt.f64 re) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 7))) (/.f64 (*.f64 (pow.f64 im 4) -1/32) 2) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (*.f64 im im) 1/4)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(fma.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3)) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (pow.f64 re 3/2)))
(+.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 im 3))) (sqrt.f64 (pow.f64 re 7)))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3)) (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 im 3))) (sqrt.f64 (pow.f64 re 7))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3)) (fma.f64 (/.f64 (*.f64 -1/2 (sqrt.f64 2)) (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3)) (sqrt.f64 (pow.f64 re 7)) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 (/.f64 1 re))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (fma.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 7/2)) (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3)) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (pow.f64 re 3/2))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 im 5))) (sqrt.f64 (pow.f64 re 11)))) (+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 im 3))) (sqrt.f64 (pow.f64 re 7)))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3)) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 im 5))) (sqrt.f64 (pow.f64 re 11))) (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 im 3))) (sqrt.f64 (pow.f64 re 7))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3)) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 1/2) 5)) (/.f64 (sqrt.f64 (pow.f64 re 11)) (pow.f64 im 5))) (fma.f64 (/.f64 (*.f64 -1/2 (sqrt.f64 2)) (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3)) (sqrt.f64 (pow.f64 re 7)) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 1/2) 5)) (/.f64 (pow.f64 re 11/2) (pow.f64 im 5))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (fma.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 7/2)) (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3)) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (pow.f64 re 3/2)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 im (sqrt.f64 1/2)))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3)))) (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (fma.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3)) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))))
(neg.f64 (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3)))))
(neg.f64 (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (pow.f64 re 3/2))))
(+.f64 (*.f64 -1 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3)))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 im 3))) (sqrt.f64 (pow.f64 re 7)))) (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 im 3))) (sqrt.f64 (pow.f64 re 7))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re))))))
(-.f64 (-.f64 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (pow.f64 re 7))) 1/2) (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3)) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 (/.f64 1 re))))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3))))
(-.f64 (*.f64 1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 7/2)) (*.f64 (sqrt.f64 1/2) (pow.f64 im 3)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (pow.f64 re 3/2))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 im 5))) (sqrt.f64 (pow.f64 re 11)))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3)))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 im 3))) (sqrt.f64 (pow.f64 re 7)))) (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 im 5))) (sqrt.f64 (pow.f64 re 11))) (fma.f64 -1 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 im 3))) (sqrt.f64 (pow.f64 re 7))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 1/2) 5)) (/.f64 (sqrt.f64 (pow.f64 re 11)) (pow.f64 im 5))) (-.f64 (-.f64 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (pow.f64 re 7))) 1/2) (pow.f64 (*.f64 im (sqrt.f64 1/2)) 3)) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 (/.f64 1 re))))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3)))))
(fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 1/2) 5)) (/.f64 (pow.f64 re 11/2) (pow.f64 im 5))) (-.f64 (*.f64 1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 7/2)) (*.f64 (sqrt.f64 1/2) (pow.f64 im 3)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (pow.f64 re 3/2)))))
(+.f64 0 (*.f64 1/2 (/.f64 (*.f64 im im) re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (/.f64 re im)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (/.f64 re im))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (/.f64 re im))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (/.f64 im re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (/.f64 re im))))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (/.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))) 1)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (/.f64 1 (*.f64 re (pow.f64 im -2))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1/2 (*.f64 (*.f64 im im) (/.f64 1 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 (*.f64 im im) (*.f64 1/2 (/.f64 1 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 1 re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) 1)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 1 (*.f64 1/2 (/.f64 (*.f64 im im) re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.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 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 (/.f64 1 re) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) re))
(*.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 (*.f64 im im) re))) (cbrt.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re -2))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (/.f64 re im)))) (cbrt.f64 (*.f64 1/4 (*.f64 (pow.f64 im 4) (pow.f64 re -2)))))
(*.f64 (cbrt.f64 (/.f64 1/2 (/.f64 (/.f64 re im) im))) (cbrt.f64 (*.f64 1/4 (*.f64 (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 im im) re))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (/.f64 re im)))) (cbrt.f64 (*.f64 1/4 (*.f64 (pow.f64 im 4) (pow.f64 re -2)))))
(*.f64 (cbrt.f64 (/.f64 1/2 (/.f64 (/.f64 re im) im))) (cbrt.f64 (*.f64 1/4 (*.f64 (pow.f64 im 4) (pow.f64 re -2)))))
(*.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (/.f64 1 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)))
(pow.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))) 2)
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)
(*.f64 (*.f64 (*.f64 im im) -1/2) (/.f64 1 (neg.f64 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 (/.f64 1 re) (*.f64 1/2 (*.f64 im im)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 (*.f64 1/2 im) (*.f64 im (/.f64 1 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 (/.f64 (*.f64 im im) 1) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) 1) (/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) re))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 (/.f64 1 re) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) re) (cbrt.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) 1) (/.f64 (*.f64 im (sqrt.f64 1/2)) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 (/.f64 (*.f64 1/2 im) 1) (/.f64 im re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (*.f64 (/.f64 im (cbrt.f64 re)) im))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (*.f64 (*.f64 1/2 im) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 1/2 (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (*.f64 (/.f64 im (cbrt.f64 re)) im))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (*.f64 (*.f64 1/2 im) (/.f64 im (cbrt.f64 re))))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (/.f64 (*.f64 1/2 (*.f64 im im)) (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (*.f64 (/.f64 im (cbrt.f64 re)) im))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (*.f64 (*.f64 1/2 im) (/.f64 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 im im) re))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (/.f64 re im)))) (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2)))
(*.f64 (cbrt.f64 (/.f64 1/2 (/.f64 (/.f64 re im) im))) (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2)))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (*.f64 (/.f64 im (cbrt.f64 re)) im))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (*.f64 (*.f64 1/2 im) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 (*.f64 1/2 im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (*.f64 (/.f64 im (cbrt.f64 re)) im))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (*.f64 (*.f64 1/2 im) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(pow.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))) 2)
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)
(*.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))) 2)
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)
(*.f64 (pow.f64 re -1/2) (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)))
(/.f64 (*.f64 (pow.f64 re -1/2) (*.f64 1/2 (*.f64 im im))) (sqrt.f64 re))
(/.f64 (*.f64 (pow.f64 re -1/2) 1/2) (/.f64 (sqrt.f64 re) (*.f64 im im)))
(*.f64 (pow.f64 re -1/2) (*.f64 (*.f64 im im) (/.f64 1/2 (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)))
(*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(pow.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))) 2)
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)
(pow.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) 1)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(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))))
(pow.f64 (pow.f64 (/.f64 (/.f64 re 1/2) (*.f64 im im)) -3) 1/3)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) 3)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(pow.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) 2)
(pow.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))) 2)
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)
(pow.f64 (/.f64 (/.f64 re 1/2) (*.f64 im im)) -1)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(pow.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6) (pow.f64 re 3)) 1/3)
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6) (pow.f64 re 3)))
(pow.f64 (/.f64 (/.f64 (/.f64 re 1/2) (*.f64 im im)) 1) -1)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(neg.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (neg.f64 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(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))))
(log.f64 (exp.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(cbrt.f64 (pow.f64 (/.f64 (/.f64 re 1/2) (*.f64 im im)) -3))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) 1))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (/.f64 re 1/2) (*.f64 im im)) -3)) 1/3))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))) 3))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re))) 2))
(pow.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))) 2)
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 re 1/2) (*.f64 im im))) -1))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) 1) 1))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 1/2 (/.f64 (/.f64 re im) im))
(+.f64 0 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re)))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))) 1)
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(*.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) 1)
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(*.f64 1 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(*.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/6) (cbrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(*.f64 (cbrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/6))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(*.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/4) (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/4))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(*.f64 (sqrt.f64 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/2)
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(pow.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) 1)
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(pow.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 3/2) 1/3)
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(pow.f64 (*.f64 4 (pow.f64 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)) 2)) 1/4)
(pow.f64 (*.f64 4 (pow.f64 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re)) 2)) 1/4)
(pow.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 3) 1/6)
(pow.f64 (*.f64 8 (pow.f64 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re)) 3)) 1/6)
(pow.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/6) 3)
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(pow.f64 (cbrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) 3/2)
(pow.f64 (cbrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re)))) 3/2)
(pow.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/4) 2)
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(fabs.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))))))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(cbrt.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 3/2))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) 1/2))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))) 1))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))) 1/3))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))) 1/6)) 3))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))) 2))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) 1) 1/2))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2)))) 1/2) 1))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))))) 1) 1))
(sqrt.f64 (*.f64 2 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 2 re))))

eval215.0ms (3%)

Compiler

Compiled 11437 to 8061 computations (29.5% saved)

prune120.0ms (1.7%)

Pruning

21 alts after pruning (16 fresh and 5 done)

PrunedKeptTotal
New51810528
Fresh268
Picked101
Done156
Total52221543
Error
4.6b
Counts
543 → 21
Alt Table
Click to see full alt table
StatusErrorProgram
54.4b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/4) 2))
54.4b
(*.f64 1/2 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/2))
54.4b
(*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 3/2))
30.6b
(*.f64 1/2 (hypot.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2)) (sqrt.f64 (*.f64 re 2))))
48.9b
(*.f64 1/2 (+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1)))
44.8b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 re im)) (sqrt.f64 2)))
13.5b
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2)))
52.5b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 im re) im) -1/2)) (sqrt.f64 2)))
45.2b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re 2)) (sqrt.f64 2)))
45.0b
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
52.4b
(*.f64 1/2 (sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im)))
56.7b
(*.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.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
47.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 -1/2 re) (/.f64 im re)) (-.f64 re im)))))
37.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
13.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
46.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
52.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (/.f64 im (/.f64 re im)) -1/2))))
54.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (/.f64 1 (/.f64 re (*.f64 im im))) -1/2))))
47.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
48.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 494 to 394 computations (20.2% saved)

localize22.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

Compiled 51 to 31 computations (39.2% saved)

series21.0ms (0.3%)

Counts
2 → 13
Calls

12 calls:

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

rewrite51.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
867×pow1_binary64
795×add-log-exp_binary64
795×log1p-expm1-u_binary64
795×expm1-log1p-u_binary64
775×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify61.0ms (0.9%)

Algorithm
egg-herbie
Rules
724×fma-def_binary64
414×*-commutative_binary64
403×fma-neg_binary64
303×unswap-sqr_binary64
259×distribute-rgt-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01941686
15131483
220011258
376021256
Stop Event
node limit
Counts
52 → 89
Calls
Call 1
Inputs
(*.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 (pow.f64 im 4) (-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 2) 2) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 3)))) (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2))) (pow.f64 (sqrt.f64 2) 2)) (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 (pow.f64 im 6) (-.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3))))) (pow.f64 re 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (pow.f64 re 2)))))) (*.f64 1/4 (/.f64 (-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 2) 2) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 3)))) (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2)))))) (pow.f64 (sqrt.f64 2) 2)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (pow.f64 im 4) (-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 2) 2) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 3)))) (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2))) (pow.f64 (sqrt.f64 2) 2)) (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/4 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 1/4 (*.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) (*.f64 (pow.f64 re 4) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3)))))) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 1/4 (*.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) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 5))) (*.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3)))) (pow.f64 im 2)))) (pow.f64 re 6))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 4) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3)))))) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (pow.f64 im 4))) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 2) (sqrt.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (pow.f64 im 4))) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (pow.f64 re 2)))) (pow.f64 im 6))) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 2) (sqrt.f64 re)))))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 1)
(*.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 1)
(*.f64 1 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 1)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 3) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 3)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 2)
(pow.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)) 1/2)
(sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 3))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))) 1)
(*.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2)) 1)
(*.f64 1 (sqrt.f64 (*.f64 (hypot.f64 re im) 2)))
(*.f64 (cbrt.f64 (*.f64 (hypot.f64 re im) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))) (cbrt.f64 (*.f64 (hypot.f64 re im) 2)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (hypot.f64 re im)))
(*.f64 (pow.f64 (*.f64 (hypot.f64 re im) 2) 1/4) (pow.f64 (*.f64 (hypot.f64 re im) 2) 1/4))
(*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 2))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 (cbrt.f64 (*.f64 (hypot.f64 re im) 2))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (hypot.f64 re im) 2)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 4 (pow.f64 (hypot.f64 re im) 2))) 1/2) (pow.f64 (cbrt.f64 (*.f64 (hypot.f64 re im) 2)) 1/2))
(pow.f64 (*.f64 (hypot.f64 re im) 2) 1/2)
(pow.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2)) 1)
(pow.f64 (pow.f64 (*.f64 (hypot.f64 re im) 2) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))) 3)
(pow.f64 (pow.f64 (*.f64 (hypot.f64 re im) 2) 1/4) 2)
(fabs.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))))
(cbrt.f64 (pow.f64 (*.f64 (hypot.f64 re im) 2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))))
Outputs
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(*.f64 2 (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 (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)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (pow.f64 im 4) (-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 2) 2) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 3)))) (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2))) (pow.f64 (sqrt.f64 2) 2)) (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 (pow.f64 im 4) (/.f64 (pow.f64 (sqrt.f64 2) 2) (-.f64 (fma.f64 -1 (*.f64 (pow.f64 (sqrt.f64 2) 2) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 3)))) (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)))) (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 (pow.f64 im 4) (*.f64 (-.f64 (-.f64 (/.f64 1/8 (pow.f64 re 3)) (fma.f64 2 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/4 (pow.f64 re 3)))) (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (sqrt.f64 (/.f64 1 re)))) 2) (*.f64 2 (sqrt.f64 re))))
(fma.f64 2 (sqrt.f64 re) (fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (/.f64 (*.f64 (fma.f64 (fma.f64 (/.f64 1 (pow.f64 re 3)) 1/16 (/.f64 1/8 (pow.f64 re 3))) -2 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16))) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) 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 (pow.f64 im 6) (-.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3))))) (pow.f64 re 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (pow.f64 re 2)))))) (*.f64 1/4 (/.f64 (-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 2) 2) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 3)))) (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2)))))) (pow.f64 (sqrt.f64 2) 2)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (pow.f64 im 4) (-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 2) 2) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))))) (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 3)))) (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2))) (pow.f64 (sqrt.f64 2) 2)) (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 (sqrt.f64 (/.f64 1 re)) (/.f64 (pow.f64 im 6) (/.f64 (pow.f64 (sqrt.f64 2) 2) (+.f64 (fma.f64 -1/4 (/.f64 (pow.f64 (sqrt.f64 2) 2) (/.f64 (*.f64 re re) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) (*.f64 re re)))))) (*.f64 -1/4 (/.f64 (-.f64 (fma.f64 -1 (*.f64 (pow.f64 (sqrt.f64 2) 2) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 3)))) (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 re re)))))))) (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 im 4) (/.f64 (pow.f64 (sqrt.f64 2) 2) (-.f64 (fma.f64 -1 (*.f64 (pow.f64 (sqrt.f64 2) 2) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 3)))) (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)))) (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 (pow.f64 im 6) 2) (-.f64 (fma.f64 2 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 (/.f64 -1/4 re) (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) re))) (/.f64 -1/2 (/.f64 re (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) re)))) (*.f64 1/8 (/.f64 (-.f64 (-.f64 (/.f64 1/8 (pow.f64 re 3)) (fma.f64 2 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/4 (pow.f64 re 3)))) (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 re re)))))) (*.f64 1/2 (*.f64 (/.f64 (pow.f64 im 4) 2) (-.f64 (-.f64 (/.f64 1/8 (pow.f64 re 3)) (fma.f64 2 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/4 (pow.f64 re 3)))) (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)))))) (fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (*.f64 2 (sqrt.f64 re))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (*.f64 (-.f64 (fma.f64 2 (fma.f64 1/4 (/.f64 (fma.f64 (/.f64 1 (pow.f64 re 3)) 1/16 (/.f64 1/8 (pow.f64 re 3))) (*.f64 re re)) (/.f64 1/16 (pow.f64 re 5))) (*.f64 (/.f64 -1/2 re) (/.f64 (fma.f64 (/.f64 1 (pow.f64 re 3)) 1/16 (/.f64 1/8 (pow.f64 re 3))) re))) (*.f64 1/8 (/.f64 (fma.f64 (fma.f64 (/.f64 1 (pow.f64 re 3)) 1/16 (/.f64 1/8 (pow.f64 re 3))) -2 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16))) (*.f64 re re)))) (/.f64 (pow.f64 im 6) 2)) (*.f64 (fma.f64 (fma.f64 (/.f64 1 (pow.f64 re 3)) 1/16 (/.f64 1/8 (pow.f64 re 3))) -2 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16))) (/.f64 (pow.f64 im 4) 2)))) (fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (*.f64 2 (sqrt.f64 re))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (*.f64 (fma.f64 2 (fma.f64 1/4 (/.f64 (fma.f64 (/.f64 1 (pow.f64 re 3)) 1/16 (/.f64 1/8 (pow.f64 re 3))) (*.f64 re re)) (/.f64 1/16 (pow.f64 re 5))) (fma.f64 (/.f64 -1/2 re) (/.f64 (fma.f64 (/.f64 1 (pow.f64 re 3)) 1/16 (/.f64 1/8 (pow.f64 re 3))) re) (*.f64 -1/8 (/.f64 (fma.f64 (fma.f64 (/.f64 1 (pow.f64 re 3)) 1/16 (/.f64 1/8 (pow.f64 re 3))) -2 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16))) (*.f64 re re))))) (/.f64 (pow.f64 im 6) 2)) (*.f64 (fma.f64 (fma.f64 (/.f64 1 (pow.f64 re 3)) 1/16 (/.f64 1/8 (pow.f64 re 3))) -2 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (*.f64 (/.f64 1 (pow.f64 re 3)) -1/16))) (/.f64 (pow.f64 im 4) 2)))) (fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)) (*.f64 2 (sqrt.f64 re))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 1/4 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 1/4 (*.f64 (sqrt.f64 2) (*.f64 re re)))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/4 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (sqrt.f64 im)))
(+.f64 (*.f64 1/4 (*.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) (*.f64 (pow.f64 re 4) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3)))))) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 1/4 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (pow.f64 re 4) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3)))) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 1/4 (*.f64 (sqrt.f64 2) (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (pow.f64 re 4))) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 (sqrt.f64 2) (*.f64 1/4 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 (pow.f64 re 4) (*.f64 (fma.f64 1/16 (/.f64 1 (pow.f64 im 3)) (/.f64 1/8 (pow.f64 im 3))) (sqrt.f64 (/.f64 1 im))))))))
(+.f64 (*.f64 1/4 (*.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) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 5))) (*.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3)))) (pow.f64 im 2)))) (pow.f64 re 6))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 4) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 im 3)))))) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 1/4 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (/.f64 1/16 (pow.f64 im 5)) (*.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3))) (*.f64 im im)))) (pow.f64 re 6)) (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (pow.f64 re 4) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3)))) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (*.f64 1/2 (sqrt.f64 2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 im 5)) (*.f64 (/.f64 -1/4 im) (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3))) im))) (pow.f64 re 6))) (*.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 2) (pow.f64 re 4))) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2) (/.f64 1/8 (pow.f64 im 3)))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 1/4 (*.f64 (sqrt.f64 2) (*.f64 re re))))))
(fma.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (*.f64 (fma.f64 1/4 (/.f64 (fma.f64 1/16 (/.f64 1 (pow.f64 im 3)) (/.f64 1/8 (pow.f64 im 3))) (*.f64 im im)) (/.f64 1/16 (pow.f64 im 5))) (pow.f64 re 6))) (*.f64 -1/2 (*.f64 (pow.f64 re 4) (fma.f64 1/16 (/.f64 1 (pow.f64 im 3)) (/.f64 1/8 (pow.f64 im 3))))))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/4 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (sqrt.f64 im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im))) (*.f64 (sqrt.f64 2) (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (*.f64 im im))) (*.f64 (sqrt.f64 2) (sqrt.f64 re)))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im)))))
(+.f64 (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (pow.f64 im 4))) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im))) (fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (pow.f64 im 4) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (*.f64 im im))) (fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) (*.f64 (pow.f64 im 4) (sqrt.f64 2))) (*.f64 (sqrt.f64 (/.f64 1 re)) -1/2))))
(fma.f64 (sqrt.f64 2) (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 4) (*.f64 (fma.f64 (/.f64 1 (pow.f64 re 3)) 1/16 (/.f64 1/8 (pow.f64 re 3))) (sqrt.f64 (/.f64 1 re))))) (sqrt.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (pow.f64 im 4))) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (*.f64 1/8 (/.f64 1 (pow.f64 re 3)))) (pow.f64 re 2)))) (pow.f64 im 6))) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 2) (sqrt.f64 re)))))
(fma.f64 1/4 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im))) (fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (pow.f64 im 4) (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3)))) (sqrt.f64 (/.f64 1 re)))) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (pow.f64 im 6) (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) (*.f64 re re))))) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 2) (sqrt.f64 re)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) (*.f64 (pow.f64 im 4) (sqrt.f64 2)))) (*.f64 1/2 (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 (/.f64 -1/4 re) (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2) (/.f64 1/8 (pow.f64 re 3))) re))) (*.f64 (pow.f64 im 6) (sqrt.f64 2)))))) (fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (*.f64 im im))) (*.f64 (sqrt.f64 2) (sqrt.f64 re))))
(fma.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 4) (fma.f64 (/.f64 1 (pow.f64 re 3)) 1/16 (/.f64 1/8 (pow.f64 re 3))))) (*.f64 1/2 (*.f64 (pow.f64 im 6) (fma.f64 1/4 (/.f64 (fma.f64 (/.f64 1 (pow.f64 re 3)) 1/16 (/.f64 1/8 (pow.f64 re 3))) (*.f64 re re)) (/.f64 1/16 (pow.f64 re 5))))))) (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 im im))))))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 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 2 (+.f64 (hypot.f64 re im) re))) 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 2 (+.f64 (hypot.f64 re im) re))))
(+.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 2 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(*.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 2 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (cbrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(+.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 2 (+.f64 (hypot.f64 re im) re))) 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 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 3) 1/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 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 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 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 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 (*.f64 2 (+.f64 (hypot.f64 re im) re)) 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))))
(sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))
(+.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 2 (+.f64 (hypot.f64 re im) re)))))
(+.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 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 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))))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(+.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 2 (+.f64 (hypot.f64 re im) re)))))
(+.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 2 (+.f64 (hypot.f64 re im) re)))))
(+.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 (+.f64 1 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))) 1)
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))
(*.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2)) 1)
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))
(*.f64 1 (sqrt.f64 (*.f64 (hypot.f64 re im) 2)))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))
(*.f64 (cbrt.f64 (*.f64 (hypot.f64 re im) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))))
(*.f64 (cbrt.f64 (*.f64 2 (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))) (cbrt.f64 (*.f64 (hypot.f64 re im) 2)))
(*.f64 (cbrt.f64 (*.f64 2 (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (hypot.f64 re im)))
(*.f64 (pow.f64 (*.f64 (hypot.f64 re im) 2) 1/4) (pow.f64 (*.f64 (hypot.f64 re im) 2) 1/4))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))
(*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (hypot.f64 re im)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 (cbrt.f64 (*.f64 (hypot.f64 re im) 2))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (hypot.f64 re im)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (hypot.f64 re im) 2)))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 4 (pow.f64 (hypot.f64 re im) 2))) 1/2) (pow.f64 (cbrt.f64 (*.f64 (hypot.f64 re im) 2)) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 (hypot.f64 re im) 2)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (hypot.f64 re im)))))
(pow.f64 (*.f64 (hypot.f64 re im) 2) 1/2)
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))
(pow.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2)) 1)
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))
(pow.f64 (pow.f64 (*.f64 (hypot.f64 re im) 2) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 2 (hypot.f64 re im)) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))) 3)
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))
(pow.f64 (pow.f64 (*.f64 (hypot.f64 re im) 2) 1/4) 2)
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))
(fabs.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2)))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))
(cbrt.f64 (pow.f64 (*.f64 (hypot.f64 re im) 2) 3/2))
(cbrt.f64 (pow.f64 (*.f64 2 (hypot.f64 re im)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2))))
(+.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (hypot.f64 re im)))) -1)
(+.f64 (sqrt.f64 (*.f64 2 (hypot.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (hypot.f64 re im)))

localize7.0ms (0.1%)

Compiler

Compiled 17 to 11 computations (35.3% saved)

localize16.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 41 to 18 computations (56.1% saved)

series4.0ms (0.1%)

Counts
2 → 36
Calls

12 calls:

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

rewrite45.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
789×pow1_binary64
734×add-log-exp_binary64
734×log1p-expm1-u_binary64
734×expm1-log1p-u_binary64
715×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify54.0ms (0.8%)

Algorithm
egg-herbie
Rules
564×associate-/l*_binary64
510×log-div_binary64
411×log-prod_binary64
374×associate-*l/_binary64
369×div-sub_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01691168
14171103
214311058
353991048
Stop Event
node limit
Counts
111 → 114
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 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(-.f64 (+.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 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 -1) (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 im re) im))))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 1/2))
(/.f64 im (sqrt.f64 re))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 re))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re)))
(sqrt.f64 (*.f64 (/.f64 im re) im))
(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 (+.f64 1 (*.f64 (/.f64 im re) im)) 1)
(*.f64 im (/.f64 1 (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1 re)))
(*.f64 (*.f64 im im) (/.f64 1 re))
(*.f64 (*.f64 im im) (*.f64 (/.f64 1 re) -1))
(*.f64 (*.f64 (/.f64 im re) im) -1)
(*.f64 (*.f64 (/.f64 im re) im) 1)
(*.f64 (*.f64 (/.f64 im re) im) (sqrt.f64 -1))
(*.f64 -1 (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (/.f64 im (sqrt.f64 re)) -1))
(*.f64 1 (*.f64 (/.f64 im re) im))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 1 re)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 1 re))
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 1 (neg.f64 re)))
(*.f64 (/.f64 1 re) (*.f64 im im))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 (/.f64 im re) im)
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(*.f64 (/.f64 im (cbrt.f64 (*.f64 re re))) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 re re))) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 re re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (/.f64 -1 (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 (*.f64 im im) 1) (/.f64 -1 re))
(*.f64 (/.f64 (*.f64 im im) (cbrt.f64 (*.f64 re re))) (/.f64 -1 (cbrt.f64 re)))
(*.f64 (*.f64 -1 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re)))
(*.f64 (*.f64 -1 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2)) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 (/.f64 im re) im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(pow.f64 (*.f64 (/.f64 im 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 (/.f64 im re) im) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 3)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(neg.f64 (*.f64 (/.f64 im re) im))
(neg.f64 (/.f64 (*.f64 im im) (neg.f64 re)))
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(log.f64 (exp.f64 (*.f64 (/.f64 im re) im)))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) im) 3))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im im) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im re) im)))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im re) im)))
(exp.f64 (log.f64 (*.f64 (/.f64 im 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 (*.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 (sqrt.f64 (/.f64 1 re)) (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 (sqrt.f64 (/.f64 1 re)) (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 (sqrt.f64 (/.f64 1 re)) (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 (sqrt.f64 (/.f64 1 re)) (neg.f64 im)))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (pow.f64 (/.f64 1 re) 1/2))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))
(*.f64 (sqrt.f64 -1) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1) (sqrt.f64 re)) im)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (sqrt.f64 -1) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1) (sqrt.f64 re)) im)
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 im re) im))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 1/2))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(/.f64 im (sqrt.f64 re))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (sqrt.f64 (/.f64 (/.f64 re im) im)))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 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 (neg.f64 re)))
(/.f64 (sqrt.f64 (neg.f64 (*.f64 im im))) (sqrt.f64 (neg.f64 re)))
(sqrt.f64 (*.f64 (/.f64 im re) im))
(+.f64 1 (-.f64 (/.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 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(-.f64 (+.f64 1 (*.f64 (/.f64 im re) im)) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 1 (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 im (*.f64 im (/.f64 1 re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 im im) (/.f64 1 re))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 im im) (*.f64 (/.f64 1 re) -1))
(*.f64 im (*.f64 im (/.f64 -1 re)))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (neg.f64 (/.f64 im re)))
(*.f64 (*.f64 (/.f64 im re) im) -1)
(*.f64 im (*.f64 im (/.f64 -1 re)))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (neg.f64 (/.f64 im re)))
(*.f64 (*.f64 (/.f64 im re) im) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 (/.f64 im re) im) (sqrt.f64 -1))
(*.f64 (sqrt.f64 -1) (*.f64 im (/.f64 im re)))
(*.f64 (sqrt.f64 -1) (/.f64 im (/.f64 re im)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (/.f64 im re))
(*.f64 -1 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 -1 re)))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (neg.f64 (/.f64 im re)))
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (/.f64 im (sqrt.f64 re)) -1))
(*.f64 im (*.f64 im (/.f64 -1 re)))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (neg.f64 (/.f64 im re)))
(*.f64 1 (*.f64 (/.f64 im re) im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 1 re)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (/.f64 1 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 im) 2)) re)
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 5/2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 1 re))
(*.f64 im (*.f64 im (/.f64 -1 re)))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (neg.f64 (/.f64 im re)))
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 1 (neg.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 1 re) (*.f64 im im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (/.f64 1 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 im) 2)) re)
(*.f64 (/.f64 im (cbrt.f64 (*.f64 re re))) (/.f64 im (cbrt.f64 re)))
(/.f64 (*.f64 im (/.f64 im (cbrt.f64 re))) (cbrt.f64 (*.f64 re re)))
(/.f64 (/.f64 (*.f64 im im) (cbrt.f64 re)) (cbrt.f64 (*.f64 re re)))
(/.f64 im (*.f64 (/.f64 (cbrt.f64 re) im) (cbrt.f64 (*.f64 re re))))
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 re re))) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(/.f64 (*.f64 im (/.f64 im (cbrt.f64 re))) (cbrt.f64 (*.f64 re re)))
(/.f64 (/.f64 (*.f64 im im) (cbrt.f64 re)) (cbrt.f64 (*.f64 re re)))
(/.f64 im (*.f64 (/.f64 (cbrt.f64 re) im) (cbrt.f64 (*.f64 re re))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 re re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 re re))))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (/.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 re re))))
(*.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (/.f64 -1 (sqrt.f64 re)))
(*.f64 im (*.f64 im (/.f64 -1 re)))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (neg.f64 (/.f64 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 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 im) 2)) re)
(*.f64 (/.f64 (*.f64 im im) 1) (/.f64 -1 re))
(*.f64 im (*.f64 im (/.f64 -1 re)))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (neg.f64 (/.f64 im re)))
(*.f64 (/.f64 (*.f64 im im) (cbrt.f64 (*.f64 re re))) (/.f64 -1 (cbrt.f64 re)))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) (cbrt.f64 re)) (cbrt.f64 (*.f64 re re)))
(/.f64 (*.f64 im (neg.f64 im)) (*.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 re re))))
(/.f64 im (/.f64 (cbrt.f64 (*.f64 re re)) (/.f64 (neg.f64 im) (cbrt.f64 re))))
(*.f64 (*.f64 -1 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re)))
(*.f64 im (*.f64 im (/.f64 -1 re)))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (neg.f64 (/.f64 im re)))
(*.f64 (*.f64 -1 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2)) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 im (*.f64 im (/.f64 -1 re)))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (neg.f64 (/.f64 im re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 (/.f64 im re) im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 5/2))
(pow.f64 (*.f64 (/.f64 im re) im) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) 1/2)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 (/.f64 im re) im) 3) 1/3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(neg.f64 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 -1 re)))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (neg.f64 (/.f64 im re)))
(neg.f64 (/.f64 (*.f64 im im) (neg.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log.f64 (exp.f64 (*.f64 (/.f64 im re) im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) im) 3))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im im) 3) (pow.f64 re 3)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im re) im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im re) im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (log.f64 (*.f64 (/.f64 im re) im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))

localize28.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 (*.f64 -1/2 re) (/.f64 im re)) (-.f64 re im))
0.2b
(/.f64 (*.f64 -1/2 re) (/.f64 im re))
5.2b
(sqrt.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 -1/2 re) (/.f64 im re)) (-.f64 re im))))
Compiler

Compiled 77 to 38 computations (50.6% saved)

series13.0ms (0.2%)

Counts
3 → 60
Calls

18 calls:

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

rewrite81.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
791×log-prod_binary64
666×fma-def_binary64
347×fma-neg_binary64
267×log-div_binary64
255×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify109.0ms (1.5%)

Algorithm
egg-herbie
Rules
460×fma-neg_binary64
292×fma-def_binary64
291×associate-*l*_binary64
264×*-commutative_binary64
256×log-prod_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
05775859
115535561
255505550
Stop Event
node limit
Counts
267 → 322
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) 2) (*.f64 1/2 (/.f64 1 im))) (pow.f64 re 2))) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) 2) (*.f64 1/2 (/.f64 1 im))) (pow.f64 re 2))) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im)) (*.f64 1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) 2) (*.f64 1/2 (/.f64 1 im))) (pow.f64 re 3))) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 im)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 im))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1/2)) (sqrt.f64 im))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1/2)) (sqrt.f64 im))) (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 -1/2)) (sqrt.f64 im))) 2) im)) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 im)))))
(+.f64 (*.f64 1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 -1/2)) (sqrt.f64 im))) 2))) (*.f64 (pow.f64 re 2) (pow.f64 (sqrt.f64 -1/2) 3))) (sqrt.f64 (pow.f64 im 3)))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1/2)) (sqrt.f64 im))) (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 -1/2)) (sqrt.f64 im))) 2) im)) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 im))))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 re (sqrt.f64 -2))) (sqrt.f64 (/.f64 1 im))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) (sqrt.f64 im))) (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 re (sqrt.f64 -2))) (sqrt.f64 (/.f64 1 im)))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 -2) (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) (sqrt.f64 im))) (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 re (sqrt.f64 -2))) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 -2) (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) (sqrt.f64 im))) (+.f64 (*.f64 -1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 -2) (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 re 2))) (sqrt.f64 (pow.f64 im 3)))) (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 re (sqrt.f64 -2))) (sqrt.f64 (/.f64 1 im)))))))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) 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 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(+.f64 re (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(+.f64 re (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(+.f64 re (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) 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 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 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 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 0 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))) (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))))) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))) 1)
(*.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 1)
(*.f64 1 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))
(*.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) (cbrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))) (cbrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(*.f64 (pow.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 1/4) (pow.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 1/4))
(*.f64 (sqrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) (sqrt.f64 2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 1/2))
(pow.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 1/2)
(pow.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 1)
(pow.f64 (pow.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))) 3)
(pow.f64 (pow.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 1/4) 2)
(fabs.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))))
(cbrt.f64 (pow.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 3/2))
(hypot.f64 (sqrt.f64 (/.f64 -1 (/.f64 im (*.f64 re re)))) (sqrt.f64 (*.f64 2 (-.f64 re im))))
(hypot.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) (sqrt.f64 (/.f64 -1 (/.f64 im (*.f64 re re)))))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))
(exp.f64 (*.f64 (log.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))) 1))
(+.f64 0 (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))))) 1)
(*.f64 -1/2 (*.f64 re (/.f64 re im)))
(*.f64 -1/2 (/.f64 re (/.f64 im re)))
(*.f64 -1/2 (/.f64 1 (/.f64 im (*.f64 re re))))
(*.f64 re (/.f64 re (/.f64 im -1/2)))
(*.f64 (*.f64 -1/2 re) (/.f64 re im))
(*.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 1)
(*.f64 1 (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 2) (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (*.f64 (cbrt.f64 (*.f64 -1/2 re)) (/.f64 re im)))
(*.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (sqrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(*.f64 (sqrt.f64 (*.f64 -1/2 re)) (*.f64 (sqrt.f64 (*.f64 -1/2 re)) (/.f64 re im)))
(*.f64 (*.f64 re 1/2) (/.f64 1 (/.f64 (neg.f64 im) re)))
(*.f64 (/.f64 re im) (*.f64 -1/2 re))
(*.f64 (/.f64 re im) (/.f64 -1/2 (/.f64 1 re)))
(*.f64 (/.f64 re (/.f64 im -1/2)) re)
(*.f64 (/.f64 re 1) (/.f64 re (/.f64 im -1/2)))
(*.f64 (/.f64 -1/2 im) (/.f64 re (/.f64 1 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) 1) (/.f64 (cbrt.f64 (*.f64 -1/2 re)) (/.f64 im re)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 re)) 1) (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (/.f64 im re)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 re)) im) (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (/.f64 1 re)))
(*.f64 (/.f64 1 im) (/.f64 (*.f64 -1/2 re) (/.f64 1 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) im) (/.f64 (cbrt.f64 (*.f64 -1/2 re)) (/.f64 1 re)))
(*.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 re (cbrt.f64 (/.f64 im re))))
(*.f64 (/.f64 re (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 -1/2 (cbrt.f64 (/.f64 im re))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 (*.f64 -1/2 re) (cbrt.f64 (/.f64 im re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (cbrt.f64 (/.f64 im re))))
(*.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 im re))) (/.f64 re (sqrt.f64 (/.f64 im re))))
(*.f64 (/.f64 re (sqrt.f64 (/.f64 im re))) (/.f64 -1/2 (sqrt.f64 (/.f64 im re))))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 im re))) (/.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 im re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (sqrt.f64 (/.f64 im re))) (/.f64 (cbrt.f64 (*.f64 -1/2 re)) (sqrt.f64 (/.f64 im re))))
(*.f64 (/.f64 (*.f64 -1/2 re) 1) (/.f64 re im))
(*.f64 (/.f64 (*.f64 -1/2 re) (neg.f64 im)) (neg.f64 re))
(*.f64 (*.f64 (/.f64 re (/.f64 im -1/2)) 1) re)
(*.f64 (*.f64 (/.f64 re (/.f64 im -1/2)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 (*.f64 (/.f64 re (/.f64 im -1/2)) (sqrt.f64 re)) (sqrt.f64 re))
(pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 1)
(pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 3)
(pow.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 2)
(pow.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) 1/3)
(pow.f64 (*.f64 -2 (/.f64 im (*.f64 re re))) -1)
(neg.f64 (/.f64 (*.f64 -1/2 re) (/.f64 (neg.f64 im) re)))
(sqrt.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))))))
(cbrt.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(exp.f64 (log.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 1))
(-.f64 re (-.f64 im (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(-.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) im)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2) (+.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (neg.f64 re)) im)) (/.f64 (pow.f64 (-.f64 re im) 2) (+.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (neg.f64 re)) im)))
(*.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)) 1)
(*.f64 1 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))
(*.f64 (cbrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) (pow.f64 (cbrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 2) (cbrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(*.f64 (sqrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) (sqrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(*.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (/.f64 1 (fma.f64 (-.f64 re im) (-.f64 (-.f64 re im) (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2))))
(*.f64 (-.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2) (pow.f64 (-.f64 re im) 2)) (/.f64 1 (+.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (neg.f64 re)) im)))
(/.f64 1 (/.f64 (fma.f64 (-.f64 re im) (-.f64 (-.f64 re im) (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2)) (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3))))
(/.f64 1 (/.f64 (+.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (neg.f64 re)) im) (-.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2) (pow.f64 (-.f64 re im) 2))))
(/.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (fma.f64 (-.f64 re im) (-.f64 (-.f64 re im) (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2)))
(/.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (+.f64 (pow.f64 (-.f64 re im) 2) (-.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2) (*.f64 (*.f64 -1/2 re) (*.f64 (/.f64 re im) (-.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2) (pow.f64 (-.f64 re im) 2)) (+.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (neg.f64 re)) im))
(/.f64 (neg.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3))) (neg.f64 (fma.f64 (-.f64 re im) (-.f64 (-.f64 re im) (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2) (pow.f64 (-.f64 re im) 2))) (neg.f64 (+.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (neg.f64 re)) im)))
(/.f64 (fma.f64 -1/2 (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 (/.f64 im (*.f64 re re)) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (/.f64 im (*.f64 re re)) (fma.f64 im (+.f64 re im) (*.f64 re re))))
(/.f64 (fma.f64 (*.f64 -1/2 re) (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 (/.f64 im re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (/.f64 im re) (fma.f64 im (+.f64 re im) (*.f64 re re))))
(/.f64 (+.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 (*.f64 -2 (/.f64 im (*.f64 re re))) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (*.f64 -2 (/.f64 im (*.f64 re re))) (fma.f64 im (+.f64 re im) (*.f64 re re))))
(/.f64 (fma.f64 (*.f64 re 1/2) (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 (/.f64 (neg.f64 im) re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (/.f64 (neg.f64 im) re) (fma.f64 im (+.f64 re im) (*.f64 re re))))
(/.f64 (fma.f64 -1/2 (+.f64 re im) (*.f64 (/.f64 im (*.f64 re re)) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 im (*.f64 re re)) (+.f64 re im)))
(/.f64 (fma.f64 (*.f64 -1/2 re) (+.f64 re im) (*.f64 (/.f64 im re) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 im re) (+.f64 re im)))
(/.f64 (+.f64 (+.f64 re im) (*.f64 (*.f64 -2 (/.f64 im (*.f64 re re))) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (*.f64 -2 (/.f64 im (*.f64 re re))) (+.f64 re im)))
(/.f64 (fma.f64 (*.f64 re 1/2) (+.f64 re im) (*.f64 (/.f64 (neg.f64 im) re) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 (neg.f64 im) re) (+.f64 re im)))
(/.f64 (fma.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (/.f64 im (*.f64 re re)) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) -1/2)) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (/.f64 im (*.f64 re re))))
(/.f64 (fma.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (/.f64 im (*.f64 re re)) (*.f64 (+.f64 re im) -1/2)) (*.f64 (+.f64 re im) (/.f64 im (*.f64 re re))))
(/.f64 (fma.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (/.f64 im re) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 -1/2 re))) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (/.f64 im re)))
(/.f64 (fma.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (/.f64 im re) (*.f64 (+.f64 re im) (*.f64 -1/2 re))) (*.f64 (+.f64 re im) (/.f64 im re)))
(/.f64 (fma.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (*.f64 -2 (/.f64 im (*.f64 re re))) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) 1)) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 -2 (/.f64 im (*.f64 re re)))))
(/.f64 (fma.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 -2 (/.f64 im (*.f64 re re))) (*.f64 (+.f64 re im) 1)) (*.f64 (+.f64 re im) (*.f64 -2 (/.f64 im (*.f64 re re)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (/.f64 (neg.f64 im) re) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 re 1/2))) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (/.f64 (neg.f64 im) re)))
(/.f64 (fma.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (/.f64 (neg.f64 im) re) (*.f64 (+.f64 re im) (*.f64 re 1/2))) (*.f64 (+.f64 re im) (/.f64 (neg.f64 im) re)))
(/.f64 (-.f64 (pow.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) 3) (pow.f64 im 3)) (fma.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) (fma.f64 im im (*.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) im))))
(/.f64 (-.f64 (*.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (*.f64 im im)) (fma.f64 re (fma.f64 -1/2 (/.f64 re im) 1) im))
(/.f64 (-.f64 (pow.f64 (-.f64 re im) 2) (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2)) (-.f64 (-.f64 re im) (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(pow.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)) 1)
(pow.f64 (pow.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 3)
(pow.f64 (sqrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 2)
(sqrt.f64 (pow.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)) 2))
(log.f64 (exp.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))
(log.f64 (/.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)) (exp.f64 re)) (exp.f64 im)))
(log.f64 (/.f64 (exp.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (+.f64 1 (expm1.f64 im))))
(log.f64 (/.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)) (exp.f64 re)) (+.f64 1 (expm1.f64 im))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))))) (exp.f64 (-.f64 re im))))
(log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)) (+.f64 1 (expm1.f64 (-.f64 re im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))))) (+.f64 1 (expm1.f64 (-.f64 re im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 re im))) (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im))))
(log.f64 (*.f64 (exp.f64 (-.f64 re im)) (+.f64 1 (expm1.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 re im))) (+.f64 1 (expm1.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))))
(log.f64 (*.f64 (exp.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (exp.f64 (neg.f64 im))))
(log.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)) (exp.f64 re)) (exp.f64 (neg.f64 im))))
(log.f64 (*.f64 (exp.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (/.f64 1 (exp.f64 im))))
(log.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)) (exp.f64 re)) (/.f64 1 (exp.f64 im))))
(cbrt.f64 (pow.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)) 3))
(expm1.f64 (log1p.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(log1p.f64 (expm1.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(exp.f64 (log.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(exp.f64 (*.f64 (log.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 1))
(fma.f64 -1/2 (*.f64 re (/.f64 re im)) (-.f64 re im))
(fma.f64 -1/2 (/.f64 re (/.f64 im re)) (-.f64 re im))
(fma.f64 -1/2 (/.f64 1 (/.f64 im (*.f64 re re))) (-.f64 re im))
(fma.f64 re 1 (fma.f64 -1 im (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(fma.f64 re 1 (neg.f64 (-.f64 im (*.f64 -1/2 (/.f64 re (/.f64 im re))))))
(fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))
(fma.f64 re (fma.f64 -1/2 (/.f64 re im) 1) (neg.f64 im))
(fma.f64 (*.f64 -1/2 re) (/.f64 re im) (-.f64 re im))
(fma.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 1 (-.f64 re im))
(fma.f64 (-.f64 re im) 1 (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(fma.f64 1 re (fma.f64 -1 im (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(fma.f64 1 re (neg.f64 (-.f64 im (*.f64 -1/2 (/.f64 re (/.f64 im re))))))
(fma.f64 1 (*.f64 -1/2 (/.f64 re (/.f64 im re))) (-.f64 re im))
(fma.f64 1 (-.f64 re im) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(fma.f64 1 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) (neg.f64 im))
(fma.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 2) (-.f64 re im))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 2) (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (-.f64 re im))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (*.f64 (cbrt.f64 (*.f64 -1/2 re)) (/.f64 re im)) (-.f64 re im))
(fma.f64 (cbrt.f64 (-.f64 re im)) (pow.f64 (cbrt.f64 (-.f64 re im)) 2) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 re im)) 2) (cbrt.f64 (-.f64 re im)) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (fma.f64 -1 im (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (neg.f64 (-.f64 im (*.f64 -1/2 (/.f64 re (/.f64 im re))))))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (fma.f64 -1 im (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (neg.f64 (-.f64 im (*.f64 -1/2 (/.f64 re (/.f64 im re))))))
(fma.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (sqrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (-.f64 re im))
(fma.f64 (sqrt.f64 (*.f64 -1/2 re)) (*.f64 (sqrt.f64 (*.f64 -1/2 re)) (/.f64 re im)) (-.f64 re im))
(fma.f64 (sqrt.f64 (-.f64 re im)) (sqrt.f64 (-.f64 re im)) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (fma.f64 -1 im (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (neg.f64 (-.f64 im (*.f64 -1/2 (/.f64 re (/.f64 im re))))))
(fma.f64 (*.f64 re 1/2) (/.f64 1 (/.f64 (neg.f64 im) re)) (-.f64 re im))
(fma.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (/.f64 1 (fma.f64 im (+.f64 re im) (*.f64 re re))) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(fma.f64 (/.f64 re im) (*.f64 -1/2 re) (-.f64 re im))
(fma.f64 (/.f64 re im) (/.f64 -1/2 (/.f64 1 re)) (-.f64 re im))
(fma.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (/.f64 1 (+.f64 re im)) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(fma.f64 (/.f64 re (/.f64 im -1/2)) re (-.f64 re im))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (cbrt.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)))) (cbrt.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (neg.f64 im))
(fma.f64 (sqrt.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (sqrt.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (neg.f64 im))
(fma.f64 (/.f64 re 1) (/.f64 re (/.f64 im -1/2)) (-.f64 re im))
(fma.f64 (/.f64 -1/2 im) (/.f64 re (/.f64 1 re)) (-.f64 re im))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) 1) (/.f64 (cbrt.f64 (*.f64 -1/2 re)) (/.f64 im re)) (-.f64 re im))
(fma.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 re)) 1) (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (/.f64 im re)) (-.f64 re im))
(fma.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 re)) im) (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (/.f64 1 re)) (-.f64 re im))
(fma.f64 (/.f64 1 im) (/.f64 (*.f64 -1/2 re) (/.f64 1 re)) (-.f64 re im))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) im) (/.f64 (cbrt.f64 (*.f64 -1/2 re)) (/.f64 1 re)) (-.f64 re im))
(fma.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 re (cbrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 re (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 -1/2 (cbrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 (*.f64 -1/2 re) (cbrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (-.f64 re im))
(fma.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (cbrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 im re))) (/.f64 re (sqrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 re (sqrt.f64 (/.f64 im re))) (/.f64 -1/2 (sqrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 1 (sqrt.f64 (/.f64 im re))) (/.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (sqrt.f64 (/.f64 im re))) (/.f64 (cbrt.f64 (*.f64 -1/2 re)) (sqrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (+.f64 (sqrt.f64 re) (sqrt.f64 im)) (-.f64 (sqrt.f64 re) (sqrt.f64 im)) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re (neg.f64 im))
(fma.f64 (/.f64 (*.f64 -1/2 re) 1) (/.f64 re im) (-.f64 re im))
(fma.f64 (/.f64 (*.f64 -1/2 re) (neg.f64 im)) (neg.f64 re) (-.f64 re im))
(fma.f64 (*.f64 (/.f64 re (/.f64 im -1/2)) 1) re (-.f64 re im))
(fma.f64 (*.f64 (/.f64 re (/.f64 im -1/2)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (-.f64 re im))
(fma.f64 (*.f64 (/.f64 re (/.f64 im -1/2)) (sqrt.f64 re)) (sqrt.f64 re) (-.f64 re im))
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im)))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) re)) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im))))
(fma.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) re) (/.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) 2) (*.f64 1/2 (/.f64 1 im))) (pow.f64 re 2))) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (/.f64 1 (sqrt.f64 -1)))) 2) (/.f64 1/2 im)) (*.f64 re re))) (sqrt.f64 (/.f64 1 im))) (sqrt.f64 -1)) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) re)) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)))))
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im))) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (/.f64 1/2 (sqrt.f64 -1))) 2) (/.f64 1/2 im)) (*.f64 re re)))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) re)))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) 2) (*.f64 1/2 (/.f64 1 im))) (pow.f64 re 2))) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im)) (*.f64 1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) 2) (*.f64 1/2 (/.f64 1 im))) (pow.f64 re 3))) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (/.f64 1 (sqrt.f64 -1)))) 2) (/.f64 1/2 im)) (*.f64 re re))) (sqrt.f64 (/.f64 1 im))) (sqrt.f64 -1)) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) re)) (sqrt.f64 (/.f64 1 im))) (fma.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im) (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (/.f64 1 (sqrt.f64 -1)))) 2) (/.f64 1/2 im)) (pow.f64 re 3)))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (/.f64 -1 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (/.f64 1/2 (sqrt.f64 -1))) 2) (/.f64 1/2 im))) (/.f64 (sqrt.f64 -1) (pow.f64 re 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)))) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (/.f64 1/2 (sqrt.f64 -1))) 2) (/.f64 1/2 im)) (*.f64 re re)))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) re)))))
(+.f64 (fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (/.f64 (neg.f64 (sqrt.f64 -1)) (*.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (/.f64 1/2 (sqrt.f64 -1))) 2) (/.f64 1/2 im)) (pow.f64 re 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)))) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (/.f64 1/2 (sqrt.f64 -1))) 2) (/.f64 1/2 im)) (*.f64 re re)))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 im)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 re (sqrt.f64 -1/2)) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (sqrt.f64 -1/2))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 im))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1/2)) (sqrt.f64 im))))
(fma.f64 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 im)) (*.f64 1/2 (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 2) (sqrt.f64 -1/2)))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (sqrt.f64 -1/2))) (*.f64 (sqrt.f64 im) (*.f64 1/2 (/.f64 (sqrt.f64 2) (sqrt.f64 -1/2)))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1/2)) (sqrt.f64 im))) (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 -1/2)) (sqrt.f64 im))) 2) im)) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 im)))))
(fma.f64 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 im)) (fma.f64 1/2 (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 2) (sqrt.f64 -1/2))) (*.f64 -1/2 (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 2) (/.f64 (*.f64 re (sqrt.f64 -1/2)) (+.f64 im (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 -1/2)))) 2))))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (sqrt.f64 -1/2))) (*.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 2) (sqrt.f64 -1/2))) (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (+.f64 im (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1/2 (sqrt.f64 -1/2))) 2)))))))
(+.f64 (*.f64 1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 -1/2)) (sqrt.f64 im))) 2))) (*.f64 (pow.f64 re 2) (pow.f64 (sqrt.f64 -1/2) 3))) (sqrt.f64 (pow.f64 im 3)))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1/2)) (sqrt.f64 im))) (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 -1/2)) (sqrt.f64 im))) 2) im)) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 im))))))
(fma.f64 1/4 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 re re)) (/.f64 (+.f64 im (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 -1/2)))) 2)) (pow.f64 (sqrt.f64 -1/2) 3))) (sqrt.f64 (pow.f64 im 3))) (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 im)) (fma.f64 1/2 (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 2) (sqrt.f64 -1/2))) (*.f64 -1/2 (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 2) (/.f64 (*.f64 re (sqrt.f64 -1/2)) (+.f64 im (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 -1/2)))) 2)))))))))
(fma.f64 1/4 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 -1/2 (sqrt.f64 -1/2))) (/.f64 (+.f64 im (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1/2 (sqrt.f64 -1/2))) 2)) (*.f64 re re))) (sqrt.f64 (pow.f64 im 3))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (sqrt.f64 -1/2))) (*.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 2) (sqrt.f64 -1/2))) (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (+.f64 im (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1/2 (sqrt.f64 -1/2))) 2))))))))
(fma.f64 1/4 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 -1/2 (sqrt.f64 -1/2))) (/.f64 (+.f64 im (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1/2 (sqrt.f64 -1/2))) 2)) (*.f64 re re))) (pow.f64 im 3/2)) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (sqrt.f64 -1/2))) (*.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 2) (sqrt.f64 -1/2))) (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1/2))) (+.f64 im (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1/2 (sqrt.f64 -1/2))) 2))))))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 re (sqrt.f64 -2))) (sqrt.f64 (/.f64 1 im))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 1/2) (*.f64 re (sqrt.f64 -2)))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (neg.f64 (*.f64 re (*.f64 (sqrt.f64 -2) (sqrt.f64 1/2)))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (neg.f64 (*.f64 re (sqrt.f64 1/2))) (sqrt.f64 -2)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) (sqrt.f64 im))) (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 re (sqrt.f64 -2))) (sqrt.f64 (/.f64 1 im)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2))) (neg.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 1/2) (*.f64 re (sqrt.f64 -2))))))
(-.f64 (*.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2))) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (*.f64 (sqrt.f64 -2) (sqrt.f64 1/2)))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 -2) (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) (sqrt.f64 im))) (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 re (sqrt.f64 -2))) (sqrt.f64 (/.f64 1 im))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 im) (*.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) (/.f64 (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2)))) 2)) re))) (fma.f64 1/2 (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2))) (neg.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 1/2) (*.f64 re (sqrt.f64 -2)))))))
(-.f64 (*.f64 (sqrt.f64 im) (+.f64 (*.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2))) (/.f64 (-.f64 im (pow.f64 (/.f64 (*.f64 1/2 (sqrt.f64 im)) (sqrt.f64 1/2)) 2)) re)) (*.f64 1/2 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2))))) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (*.f64 (sqrt.f64 -2) (sqrt.f64 1/2)))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 -2) (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) (sqrt.f64 im))) (+.f64 (*.f64 -1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 -2) (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 re 2))) (sqrt.f64 (pow.f64 im 3)))) (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 re (sqrt.f64 -2))) (sqrt.f64 (/.f64 1 im)))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 im) (*.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) (/.f64 (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2)))) 2)) re))) (fma.f64 1/2 (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2))) (fma.f64 -1/4 (*.f64 (sqrt.f64 (pow.f64 im 3)) (*.f64 (/.f64 (sqrt.f64 -2) (pow.f64 (sqrt.f64 1/2) 3)) (/.f64 (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2)))) 2)) (*.f64 re re)))) (neg.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 1/2) (*.f64 re (sqrt.f64 -2))))))))
(+.f64 (fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 -2) (*.f64 (-.f64 im (pow.f64 (/.f64 (*.f64 1/2 (sqrt.f64 im)) (sqrt.f64 1/2)) 2)) (sqrt.f64 (pow.f64 im 3)))) (*.f64 (*.f64 1/2 (sqrt.f64 1/2)) (*.f64 re re))) (*.f64 (sqrt.f64 (/.f64 1 im)) (neg.f64 (*.f64 re (*.f64 (sqrt.f64 -2) (sqrt.f64 1/2)))))) (*.f64 (sqrt.f64 im) (+.f64 (*.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2))) (/.f64 (-.f64 im (pow.f64 (/.f64 (*.f64 1/2 (sqrt.f64 im)) (sqrt.f64 1/2)) 2)) re)) (*.f64 1/2 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2))))))
(+.f64 (fma.f64 (pow.f64 im 3/2) (/.f64 (*.f64 -1/4 (sqrt.f64 -2)) (/.f64 (*.f64 (*.f64 1/2 (sqrt.f64 1/2)) (*.f64 re re)) (-.f64 im (pow.f64 (/.f64 (*.f64 1/2 (sqrt.f64 im)) (sqrt.f64 1/2)) 2)))) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (neg.f64 (*.f64 re (sqrt.f64 1/2))) (sqrt.f64 -2)))) (*.f64 (sqrt.f64 im) (+.f64 (*.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2))) (/.f64 (-.f64 im (pow.f64 (/.f64 (*.f64 1/2 (sqrt.f64 im)) (sqrt.f64 1/2)) 2)) re)) (*.f64 1/2 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2))))))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 re (*.f64 -1 im))
(-.f64 re im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(+.f64 re (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 re (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(fma.f64 (*.f64 re re) (/.f64 -1/2 im) re)
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(+.f64 re (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 re (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(fma.f64 (*.f64 re re) (/.f64 -1/2 im) re)
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(+.f64 re (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 re (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(fma.f64 (*.f64 re re) (/.f64 -1/2 im) re)
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(*.f64 -1 im)
(neg.f64 im)
(+.f64 re (*.f64 -1 im))
(-.f64 re im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(*.f64 -1 im)
(neg.f64 im)
(+.f64 re (*.f64 -1 im))
(-.f64 re im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(+.f64 0 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))) (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))))) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im)))))) (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im)))))))) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im))))))) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))) 1)
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(*.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 1)
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(*.f64 1 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(*.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) (cbrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))
(*.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im)))) (cbrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))) (cbrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))
(*.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im)))) (cbrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(*.f64 (pow.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 1/4) (pow.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 1/4))
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(*.f64 (sqrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im)))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im)))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))))
(pow.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 1/2)
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(pow.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 1)
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(pow.f64 (pow.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))) 3/2))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))) 3)
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(pow.f64 (pow.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 1/4) 2)
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(fabs.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))))
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(cbrt.f64 (pow.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 3/2))
(cbrt.f64 (pow.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))) 3/2))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)) 3/2))
(hypot.f64 (sqrt.f64 (/.f64 -1 (/.f64 im (*.f64 re re)))) (sqrt.f64 (*.f64 2 (-.f64 re im))))
(hypot.f64 (sqrt.f64 (*.f64 (/.f64 -1 im) (*.f64 re re))) (sqrt.f64 (*.f64 2 (-.f64 re im))))
(hypot.f64 (sqrt.f64 (*.f64 (/.f64 re (neg.f64 im)) re)) (sqrt.f64 (*.f64 2 (-.f64 re im))))
(hypot.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) (sqrt.f64 (/.f64 -1 (/.f64 im (*.f64 re re)))))
(hypot.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) (sqrt.f64 (*.f64 (/.f64 -1 im) (*.f64 re re))))
(hypot.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) (sqrt.f64 (*.f64 (/.f64 re (neg.f64 im)) re)))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))))
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(exp.f64 (*.f64 (log.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 1/2))
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 2 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))) 1))
(sqrt.f64 (*.f64 2 (fma.f64 re (*.f64 (/.f64 re im) -1/2) (-.f64 re im))))
(sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)))
(+.f64 0 (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)))))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))))) 1)
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (*.f64 re (/.f64 re im)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 re (/.f64 im re)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 -1/2 (/.f64 1 (/.f64 im (*.f64 re re))))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 re (/.f64 re (/.f64 im -1/2)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (*.f64 -1/2 re) (/.f64 re im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 1)
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 1 (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 2))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 2) (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (*.f64 (cbrt.f64 (*.f64 -1/2 re)) (/.f64 re im)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (sqrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (sqrt.f64 (*.f64 -1/2 re)) (*.f64 (sqrt.f64 (*.f64 -1/2 re)) (/.f64 re im)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (*.f64 re 1/2) (/.f64 1 (/.f64 (neg.f64 im) re)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (/.f64 re im) (*.f64 -1/2 re))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (/.f64 re im) (/.f64 -1/2 (/.f64 1 re)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (/.f64 re (/.f64 im -1/2)) re)
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (/.f64 re 1) (/.f64 re (/.f64 im -1/2)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (/.f64 -1/2 im) (/.f64 re (/.f64 1 re)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) 1) (/.f64 (cbrt.f64 (*.f64 -1/2 re)) (/.f64 im re)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 re)) 1) (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (/.f64 im re)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 re)) im) (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (/.f64 1 re)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (/.f64 1 im) (/.f64 (*.f64 -1/2 re) (/.f64 1 re)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) im) (/.f64 (cbrt.f64 (*.f64 -1/2 re)) (/.f64 1 re)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 re (cbrt.f64 (/.f64 im re))))
(*.f64 (/.f64 re (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 -1/2 (cbrt.f64 (/.f64 im re))))
(*.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 re (cbrt.f64 (/.f64 im re))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 (*.f64 -1/2 re) (cbrt.f64 (/.f64 im re))))
(*.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 re (cbrt.f64 (/.f64 im re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 re -1/2)) 2) (cbrt.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)))) (pow.f64 (cbrt.f64 (/.f64 im re)) 2))
(*.f64 (cbrt.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 re -1/2)) 2) (pow.f64 (cbrt.f64 (/.f64 im re)) 2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (cbrt.f64 (/.f64 im re))))
(*.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 re (cbrt.f64 (/.f64 im re))))
(*.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 im re))) (/.f64 re (sqrt.f64 (/.f64 im re))))
(/.f64 -1/2 (/.f64 (sqrt.f64 (/.f64 im re)) (/.f64 re (sqrt.f64 (/.f64 im re)))))
(*.f64 (/.f64 re (sqrt.f64 (/.f64 im re))) (/.f64 -1/2 (sqrt.f64 (/.f64 im re))))
(*.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 im re))) (/.f64 re (sqrt.f64 (/.f64 im re))))
(/.f64 -1/2 (/.f64 (sqrt.f64 (/.f64 im re)) (/.f64 re (sqrt.f64 (/.f64 im re)))))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 im re))) (/.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 im re))))
(*.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 im re))) (/.f64 re (sqrt.f64 (/.f64 im re))))
(/.f64 -1/2 (/.f64 (sqrt.f64 (/.f64 im re)) (/.f64 re (sqrt.f64 (/.f64 im re)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (sqrt.f64 (/.f64 im re))) (/.f64 (cbrt.f64 (*.f64 -1/2 re)) (sqrt.f64 (/.f64 im re))))
(*.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 im re))) (/.f64 re (sqrt.f64 (/.f64 im re))))
(/.f64 -1/2 (/.f64 (sqrt.f64 (/.f64 im re)) (/.f64 re (sqrt.f64 (/.f64 im re)))))
(*.f64 (/.f64 (*.f64 -1/2 re) 1) (/.f64 re im))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (/.f64 (*.f64 -1/2 re) (neg.f64 im)) (neg.f64 re))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (*.f64 (/.f64 re (/.f64 im -1/2)) 1) re)
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (*.f64 (/.f64 re (/.f64 im -1/2)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(*.f64 (*.f64 (/.f64 re (/.f64 im -1/2)) (sqrt.f64 re)) (sqrt.f64 re))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 1)
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 3)
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(pow.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 2)
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(pow.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) 1/3)
(cbrt.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)))
(cbrt.f64 (*.f64 (/.f64 -1/8 (pow.f64 im 3)) (pow.f64 re 6)))
(pow.f64 (*.f64 -2 (/.f64 im (*.f64 re re))) -1)
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(neg.f64 (/.f64 (*.f64 -1/2 re) (/.f64 (neg.f64 im) re)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(sqrt.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(log.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))))))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(cbrt.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)))
(cbrt.f64 (*.f64 (/.f64 -1/8 (pow.f64 im 3)) (pow.f64 re 6)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(exp.f64 (log.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 1))
(*.f64 (*.f64 re re) (/.f64 -1/2 im))
(-.f64 re (-.f64 im (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(-.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) im)
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))) 1)
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(-.f64 (/.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2) (+.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (neg.f64 re)) im)) (/.f64 (pow.f64 (-.f64 re im) 2) (+.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (neg.f64 re)) im)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2) (pow.f64 (-.f64 re im) 2)) (+.f64 im (fma.f64 re (*.f64 (/.f64 re im) -1/2) (neg.f64 re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2) (pow.f64 (-.f64 re im) 2)) (+.f64 im (-.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) re)))
(*.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)) 1)
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(*.f64 1 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(*.f64 (cbrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) (pow.f64 (cbrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 2))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 2) (cbrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(*.f64 (sqrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) (sqrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(*.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (/.f64 1 (fma.f64 (-.f64 re im) (-.f64 (-.f64 re im) (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2))))
(*.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (/.f64 1 (fma.f64 (-.f64 re im) (-.f64 re (+.f64 im (*.f64 (*.f64 re re) (/.f64 -1/2 im)))) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2))))
(/.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (fma.f64 (-.f64 re im) (+.f64 (-.f64 re im) (*.f64 re (*.f64 1/2 (/.f64 re im)))) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2)))
(/.f64 (+.f64 (*.f64 (/.f64 -1/8 (pow.f64 im 3)) (pow.f64 re 6)) (pow.f64 (-.f64 re im) 3)) (fma.f64 (-.f64 re im) (+.f64 (-.f64 re im) (*.f64 re (*.f64 1/2 (/.f64 re im)))) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2)))
(*.f64 (-.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2) (pow.f64 (-.f64 re im) 2)) (/.f64 1 (+.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (neg.f64 re)) im)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2) (pow.f64 (-.f64 re im) 2)) (+.f64 im (fma.f64 re (*.f64 (/.f64 re im) -1/2) (neg.f64 re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2) (pow.f64 (-.f64 re im) 2)) (+.f64 im (-.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) re)))
(/.f64 1 (/.f64 (fma.f64 (-.f64 re im) (-.f64 (-.f64 re im) (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2)) (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3))))
(*.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (/.f64 1 (fma.f64 (-.f64 re im) (-.f64 re (+.f64 im (*.f64 (*.f64 re re) (/.f64 -1/2 im)))) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2))))
(/.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (fma.f64 (-.f64 re im) (+.f64 (-.f64 re im) (*.f64 re (*.f64 1/2 (/.f64 re im)))) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2)))
(/.f64 (+.f64 (*.f64 (/.f64 -1/8 (pow.f64 im 3)) (pow.f64 re 6)) (pow.f64 (-.f64 re im) 3)) (fma.f64 (-.f64 re im) (+.f64 (-.f64 re im) (*.f64 re (*.f64 1/2 (/.f64 re im)))) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2)))
(/.f64 1 (/.f64 (+.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (neg.f64 re)) im) (-.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2) (pow.f64 (-.f64 re im) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2) (pow.f64 (-.f64 re im) 2)) (+.f64 im (fma.f64 re (*.f64 (/.f64 re im) -1/2) (neg.f64 re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2) (pow.f64 (-.f64 re im) 2)) (+.f64 im (-.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) re)))
(/.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (fma.f64 (-.f64 re im) (-.f64 (-.f64 re im) (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2)))
(*.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (/.f64 1 (fma.f64 (-.f64 re im) (-.f64 re (+.f64 im (*.f64 (*.f64 re re) (/.f64 -1/2 im)))) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2))))
(/.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (fma.f64 (-.f64 re im) (+.f64 (-.f64 re im) (*.f64 re (*.f64 1/2 (/.f64 re im)))) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2)))
(/.f64 (+.f64 (*.f64 (/.f64 -1/8 (pow.f64 im 3)) (pow.f64 re 6)) (pow.f64 (-.f64 re im) 3)) (fma.f64 (-.f64 re im) (+.f64 (-.f64 re im) (*.f64 re (*.f64 1/2 (/.f64 re im)))) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2)))
(/.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (+.f64 (pow.f64 (-.f64 re im) 2) (-.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2) (*.f64 (*.f64 -1/2 re) (*.f64 (/.f64 re im) (-.f64 re im))))))
(/.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (+.f64 (pow.f64 (-.f64 re im) 2) (-.f64 (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2) (*.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) (-.f64 re im)))))
(/.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (+.f64 (pow.f64 (-.f64 re im) 2) (*.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) (-.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) (-.f64 re im)))))
(/.f64 (+.f64 (*.f64 (/.f64 -1/8 (pow.f64 im 3)) (pow.f64 re 6)) (pow.f64 (-.f64 re im) 3)) (+.f64 (pow.f64 (-.f64 re im) 2) (*.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) (-.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) (-.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2) (pow.f64 (-.f64 re im) 2)) (+.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (neg.f64 re)) im))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2) (pow.f64 (-.f64 re im) 2)) (+.f64 im (fma.f64 re (*.f64 (/.f64 re im) -1/2) (neg.f64 re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2) (pow.f64 (-.f64 re im) 2)) (+.f64 im (-.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) re)))
(/.f64 (neg.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3))) (neg.f64 (fma.f64 (-.f64 re im) (-.f64 (-.f64 re im) (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2))))
(*.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (/.f64 1 (fma.f64 (-.f64 re im) (-.f64 re (+.f64 im (*.f64 (*.f64 re re) (/.f64 -1/2 im)))) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2))))
(/.f64 (+.f64 (/.f64 -1/8 (pow.f64 (/.f64 im (*.f64 re re)) 3)) (pow.f64 (-.f64 re im) 3)) (fma.f64 (-.f64 re im) (+.f64 (-.f64 re im) (*.f64 re (*.f64 1/2 (/.f64 re im)))) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2)))
(/.f64 (+.f64 (*.f64 (/.f64 -1/8 (pow.f64 im 3)) (pow.f64 re 6)) (pow.f64 (-.f64 re im) 3)) (fma.f64 (-.f64 re im) (+.f64 (-.f64 re im) (*.f64 re (*.f64 1/2 (/.f64 re im)))) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2) (pow.f64 (-.f64 re im) 2))) (neg.f64 (+.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (neg.f64 re)) im)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2) (pow.f64 (-.f64 re im) 2)) (+.f64 im (fma.f64 re (*.f64 (/.f64 re im) -1/2) (neg.f64 re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2) (pow.f64 (-.f64 re im) 2)) (+.f64 im (-.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) re)))
(/.f64 (fma.f64 -1/2 (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 (/.f64 im (*.f64 re re)) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (/.f64 im (*.f64 re re)) (fma.f64 im (+.f64 re im) (*.f64 re re))))
(/.f64 (fma.f64 -1/2 (fma.f64 im (+.f64 im re) (*.f64 re re)) (*.f64 (/.f64 im (*.f64 re re)) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (/.f64 im (*.f64 re re)) (fma.f64 im (+.f64 im re) (*.f64 re re))))
(*.f64 (/.f64 (fma.f64 (/.f64 im (*.f64 re re)) (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (*.f64 -1/2 (fma.f64 im (+.f64 im re) (*.f64 re re)))) (*.f64 im (fma.f64 im (+.f64 im re) (*.f64 re re)))) (*.f64 re re))
(/.f64 (fma.f64 (*.f64 -1/2 re) (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 (/.f64 im re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (/.f64 im re) (fma.f64 im (+.f64 re im) (*.f64 re re))))
(/.f64 (fma.f64 (*.f64 re -1/2) (fma.f64 im (+.f64 im re) (*.f64 re re)) (*.f64 (/.f64 im re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (/.f64 im re) (fma.f64 im (+.f64 im re) (*.f64 re re))))
(/.f64 (fma.f64 (/.f64 im re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (*.f64 (*.f64 re -1/2) (fma.f64 im (+.f64 im re) (*.f64 re re)))) (*.f64 (/.f64 im re) (fma.f64 im (+.f64 im re) (*.f64 re re))))
(/.f64 (+.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 (*.f64 -2 (/.f64 im (*.f64 re re))) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (*.f64 -2 (/.f64 im (*.f64 re re))) (fma.f64 im (+.f64 re im) (*.f64 re re))))
(/.f64 (fma.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (*.f64 -2 (/.f64 im (*.f64 re re))) (fma.f64 im (+.f64 im re) (*.f64 re re))) (*.f64 -2 (*.f64 (/.f64 im (*.f64 re re)) (fma.f64 im (+.f64 im re) (*.f64 re re)))))
(/.f64 (fma.f64 (*.f64 (/.f64 -2 re) (/.f64 im re)) (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (fma.f64 im (+.f64 im re) (*.f64 re re))) (*.f64 -2 (*.f64 (/.f64 im (*.f64 re re)) (fma.f64 im (+.f64 im re) (*.f64 re re)))))
(/.f64 (fma.f64 (*.f64 re 1/2) (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 (/.f64 (neg.f64 im) re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (/.f64 (neg.f64 im) re) (fma.f64 im (+.f64 re im) (*.f64 re re))))
(/.f64 (fma.f64 (*.f64 1/2 re) (fma.f64 im (+.f64 im re) (*.f64 re re)) (*.f64 (/.f64 (neg.f64 im) re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (/.f64 (neg.f64 im) re) (fma.f64 im (+.f64 im re) (*.f64 re re))))
(*.f64 (/.f64 (fma.f64 (/.f64 (neg.f64 im) re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (*.f64 1/2 (*.f64 re (fma.f64 im (+.f64 im re) (*.f64 re re))))) (*.f64 (neg.f64 im) (fma.f64 im (+.f64 im re) (*.f64 re re)))) re)
(*.f64 (/.f64 (fma.f64 (/.f64 (neg.f64 im) re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (*.f64 1/2 (*.f64 re (fma.f64 im (+.f64 im re) (*.f64 re re))))) (*.f64 im (neg.f64 (fma.f64 im (+.f64 im re) (*.f64 re re))))) re)
(/.f64 (fma.f64 -1/2 (+.f64 re im) (*.f64 (/.f64 im (*.f64 re re)) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 im (*.f64 re re)) (+.f64 re im)))
(/.f64 (fma.f64 -1/2 (+.f64 im re) (*.f64 (/.f64 im (*.f64 re re)) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 im (*.f64 re re)) (+.f64 im re)))
(/.f64 (fma.f64 -1/2 (+.f64 im re) (/.f64 (*.f64 (*.f64 im (+.f64 im re)) (-.f64 re im)) (*.f64 re re))) (*.f64 (/.f64 im (*.f64 re re)) (+.f64 im re)))
(/.f64 (fma.f64 (*.f64 -1/2 re) (+.f64 re im) (*.f64 (/.f64 im re) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 im re) (+.f64 re im)))
(/.f64 (fma.f64 (*.f64 re -1/2) (+.f64 im re) (*.f64 (/.f64 im re) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 im re) (+.f64 im re)))
(/.f64 (fma.f64 (/.f64 im re) (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 re (*.f64 -1/2 (+.f64 im re)))) (*.f64 (/.f64 im re) (+.f64 im re)))
(/.f64 (+.f64 (+.f64 re im) (*.f64 (*.f64 -2 (/.f64 im (*.f64 re re))) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (*.f64 -2 (/.f64 im (*.f64 re re))) (+.f64 re im)))
(/.f64 (fma.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 -2 (/.f64 im (*.f64 re re))) (+.f64 im re)) (*.f64 -2 (*.f64 (/.f64 im (*.f64 re re)) (+.f64 im re))))
(/.f64 (fma.f64 -2 (/.f64 (*.f64 (*.f64 im (+.f64 im re)) (-.f64 re im)) (*.f64 re re)) (+.f64 im re)) (*.f64 (*.f64 (/.f64 -2 re) (/.f64 im re)) (+.f64 im re)))
(/.f64 (fma.f64 (*.f64 re 1/2) (+.f64 re im) (*.f64 (/.f64 (neg.f64 im) re) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 (neg.f64 im) re) (+.f64 re im)))
(/.f64 (fma.f64 (*.f64 1/2 re) (+.f64 im re) (*.f64 (/.f64 (neg.f64 im) re) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 (neg.f64 im) re) (+.f64 im re)))
(*.f64 (/.f64 (fma.f64 (/.f64 (neg.f64 im) re) (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 1/2 (*.f64 re (+.f64 im re)))) (*.f64 (neg.f64 im) (+.f64 im re))) re)
(*.f64 (/.f64 (-.f64 (*.f64 1/2 (*.f64 re (+.f64 im re))) (*.f64 (/.f64 im re) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 im (neg.f64 (+.f64 im re)))) re)
(/.f64 (fma.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (/.f64 im (*.f64 re re)) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) -1/2)) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (/.f64 im (*.f64 re re))))
(/.f64 (fma.f64 -1/2 (fma.f64 im (+.f64 im re) (*.f64 re re)) (*.f64 (/.f64 im (*.f64 re re)) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (/.f64 im (*.f64 re re)) (fma.f64 im (+.f64 im re) (*.f64 re re))))
(*.f64 (/.f64 (fma.f64 (/.f64 im (*.f64 re re)) (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (*.f64 -1/2 (fma.f64 im (+.f64 im re) (*.f64 re re)))) (*.f64 im (fma.f64 im (+.f64 im re) (*.f64 re re)))) (*.f64 re re))
(/.f64 (fma.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (/.f64 im (*.f64 re re)) (*.f64 (+.f64 re im) -1/2)) (*.f64 (+.f64 re im) (/.f64 im (*.f64 re re))))
(/.f64 (fma.f64 -1/2 (+.f64 im re) (*.f64 (/.f64 im (*.f64 re re)) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 im (*.f64 re re)) (+.f64 im re)))
(/.f64 (fma.f64 -1/2 (+.f64 im re) (/.f64 (*.f64 (*.f64 im (+.f64 im re)) (-.f64 re im)) (*.f64 re re))) (*.f64 (/.f64 im (*.f64 re re)) (+.f64 im re)))
(/.f64 (fma.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (/.f64 im re) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 -1/2 re))) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (/.f64 im re)))
(/.f64 (fma.f64 (*.f64 re -1/2) (fma.f64 im (+.f64 im re) (*.f64 re re)) (*.f64 (/.f64 im re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (/.f64 im re) (fma.f64 im (+.f64 im re) (*.f64 re re))))
(/.f64 (fma.f64 (/.f64 im re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (*.f64 (*.f64 re -1/2) (fma.f64 im (+.f64 im re) (*.f64 re re)))) (*.f64 (/.f64 im re) (fma.f64 im (+.f64 im re) (*.f64 re re))))
(/.f64 (fma.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (/.f64 im re) (*.f64 (+.f64 re im) (*.f64 -1/2 re))) (*.f64 (+.f64 re im) (/.f64 im re)))
(/.f64 (fma.f64 (*.f64 re -1/2) (+.f64 im re) (*.f64 (/.f64 im re) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 im re) (+.f64 im re)))
(/.f64 (fma.f64 (/.f64 im re) (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 re (*.f64 -1/2 (+.f64 im re)))) (*.f64 (/.f64 im re) (+.f64 im re)))
(/.f64 (fma.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (*.f64 -2 (/.f64 im (*.f64 re re))) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) 1)) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 -2 (/.f64 im (*.f64 re re)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (*.f64 -2 (/.f64 im (*.f64 re re))) (fma.f64 im (+.f64 im re) (*.f64 re re))) (*.f64 -2 (*.f64 (/.f64 im (*.f64 re re)) (fma.f64 im (+.f64 im re) (*.f64 re re)))))
(/.f64 (fma.f64 (*.f64 (/.f64 -2 re) (/.f64 im re)) (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (fma.f64 im (+.f64 im re) (*.f64 re re))) (*.f64 -2 (*.f64 (/.f64 im (*.f64 re re)) (fma.f64 im (+.f64 im re) (*.f64 re re)))))
(/.f64 (fma.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 -2 (/.f64 im (*.f64 re re))) (*.f64 (+.f64 re im) 1)) (*.f64 (+.f64 re im) (*.f64 -2 (/.f64 im (*.f64 re re)))))
(/.f64 (fma.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 -2 (/.f64 im (*.f64 re re))) (+.f64 im re)) (*.f64 -2 (*.f64 (/.f64 im (*.f64 re re)) (+.f64 im re))))
(/.f64 (fma.f64 -2 (/.f64 (*.f64 (*.f64 im (+.f64 im re)) (-.f64 re im)) (*.f64 re re)) (+.f64 im re)) (*.f64 (*.f64 (/.f64 -2 re) (/.f64 im re)) (+.f64 im re)))
(/.f64 (fma.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (/.f64 (neg.f64 im) re) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (*.f64 re 1/2))) (*.f64 (fma.f64 im (+.f64 re im) (*.f64 re re)) (/.f64 (neg.f64 im) re)))
(/.f64 (fma.f64 (*.f64 1/2 re) (fma.f64 im (+.f64 im re) (*.f64 re re)) (*.f64 (/.f64 (neg.f64 im) re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)))) (*.f64 (/.f64 (neg.f64 im) re) (fma.f64 im (+.f64 im re) (*.f64 re re))))
(*.f64 (/.f64 (fma.f64 (/.f64 (neg.f64 im) re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (*.f64 1/2 (*.f64 re (fma.f64 im (+.f64 im re) (*.f64 re re))))) (*.f64 (neg.f64 im) (fma.f64 im (+.f64 im re) (*.f64 re re)))) re)
(*.f64 (/.f64 (fma.f64 (/.f64 (neg.f64 im) re) (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (*.f64 1/2 (*.f64 re (fma.f64 im (+.f64 im re) (*.f64 re re))))) (*.f64 im (neg.f64 (fma.f64 im (+.f64 im re) (*.f64 re re))))) re)
(/.f64 (fma.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (/.f64 (neg.f64 im) re) (*.f64 (+.f64 re im) (*.f64 re 1/2))) (*.f64 (+.f64 re im) (/.f64 (neg.f64 im) re)))
(/.f64 (fma.f64 (*.f64 1/2 re) (+.f64 im re) (*.f64 (/.f64 (neg.f64 im) re) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 (neg.f64 im) re) (+.f64 im re)))
(*.f64 (/.f64 (fma.f64 (/.f64 (neg.f64 im) re) (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 1/2 (*.f64 re (+.f64 im re)))) (*.f64 (neg.f64 im) (+.f64 im re))) re)
(*.f64 (/.f64 (-.f64 (*.f64 1/2 (*.f64 re (+.f64 im re))) (*.f64 (/.f64 im re) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 im (neg.f64 (+.f64 im re)))) re)
(/.f64 (-.f64 (pow.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) 3) (pow.f64 im 3)) (fma.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) (fma.f64 im im (*.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) im))))
(/.f64 (-.f64 (pow.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) 3) (pow.f64 im 3)) (fma.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) (fma.f64 im im (*.f64 im (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))))))
(/.f64 (-.f64 (pow.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (fma.f64 re (*.f64 (fma.f64 -1/2 (/.f64 re im) 1) (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re)) (*.f64 im (fma.f64 re (fma.f64 -1/2 (/.f64 re im) 1) im))))
(/.f64 (-.f64 (*.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (*.f64 im im)) (fma.f64 re (fma.f64 -1/2 (/.f64 re im) 1) im))
(/.f64 (*.f64 (fma.f64 re (fma.f64 -1/2 (/.f64 re im) 1) im) (fma.f64 re (fma.f64 -1/2 (/.f64 re im) 1) (neg.f64 im))) (fma.f64 re (fma.f64 -1/2 (/.f64 re im) 1) im))
(/.f64 (*.f64 (-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im) (fma.f64 re (fma.f64 -1/2 (/.f64 re im) 1) im)) (fma.f64 re (fma.f64 -1/2 (/.f64 re im) 1) im))
(/.f64 (-.f64 (pow.f64 (-.f64 re im) 2) (pow.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 2)) (-.f64 (-.f64 re im) (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(/.f64 (-.f64 (pow.f64 (-.f64 re im) 2) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2)) (-.f64 re (+.f64 im (*.f64 (*.f64 re re) (/.f64 -1/2 im)))))
(/.f64 (-.f64 (pow.f64 (-.f64 re im) 2) (pow.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) 2)) (+.f64 (-.f64 re im) (*.f64 re (*.f64 1/2 (/.f64 re im)))))
(pow.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)) 1)
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(pow.f64 (pow.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)) 3) 1/3)
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(pow.f64 (cbrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 3)
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(pow.f64 (sqrt.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 2)
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(sqrt.f64 (pow.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)) 2))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (exp.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (/.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)) (exp.f64 re)) (exp.f64 im)))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (/.f64 (exp.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (+.f64 1 (expm1.f64 im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (/.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)) (exp.f64 re)) (+.f64 1 (expm1.f64 im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))))) (exp.f64 (-.f64 re im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)) (+.f64 1 (expm1.f64 (-.f64 re im)))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))))) (+.f64 1 (expm1.f64 (-.f64 re im)))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 re im))) (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (*.f64 (exp.f64 (-.f64 re im)) (+.f64 1 (expm1.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 re im))) (+.f64 1 (expm1.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (*.f64 (exp.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (exp.f64 (neg.f64 im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)) (exp.f64 re)) (exp.f64 (neg.f64 im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (*.f64 (exp.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (/.f64 1 (exp.f64 im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) re) (/.f64 re im)) (exp.f64 re)) (/.f64 1 (exp.f64 im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(cbrt.f64 (pow.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im)) 3))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(expm1.f64 (log1p.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(log1p.f64 (expm1.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(exp.f64 (log.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(exp.f64 (*.f64 (log.f64 (fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))) 1))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 -1/2 (*.f64 re (/.f64 re im)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 -1/2 (/.f64 re (/.f64 im re)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 -1/2 (/.f64 1 (/.f64 im (*.f64 re re))) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 re 1 (fma.f64 -1 im (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 re 1 (neg.f64 (-.f64 im (*.f64 -1/2 (/.f64 re (/.f64 im re))))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 re (/.f64 re (/.f64 im -1/2)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 re (fma.f64 -1/2 (/.f64 re im) 1) (neg.f64 im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (*.f64 -1/2 re) (/.f64 re im) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re))) 1 (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (-.f64 re im) 1 (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 1 re (fma.f64 -1 im (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 1 re (neg.f64 (-.f64 im (*.f64 -1/2 (/.f64 re (/.f64 im re))))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 1 (*.f64 -1/2 (/.f64 re (/.f64 im re))) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 1 (-.f64 re im) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 1 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) (neg.f64 im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 2) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) 2) (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (*.f64 (cbrt.f64 (*.f64 -1/2 re)) (/.f64 re im)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (cbrt.f64 (-.f64 re im)) (pow.f64 (cbrt.f64 (-.f64 re im)) 2) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 re im)) 2) (cbrt.f64 (-.f64 re im)) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (fma.f64 -1 im (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (neg.f64 (-.f64 im (*.f64 -1/2 (/.f64 re (/.f64 im re))))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (fma.f64 -1 im (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (neg.f64 (-.f64 im (*.f64 -1/2 (/.f64 re (/.f64 im re))))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (sqrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (sqrt.f64 (*.f64 -1/2 re)) (*.f64 (sqrt.f64 (*.f64 -1/2 re)) (/.f64 re im)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (sqrt.f64 (-.f64 re im)) (sqrt.f64 (-.f64 re im)) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (fma.f64 -1 im (*.f64 -1/2 (/.f64 re (/.f64 im re)))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (neg.f64 (-.f64 im (*.f64 -1/2 (/.f64 re (/.f64 im re))))))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (*.f64 re 1/2) (/.f64 1 (/.f64 (neg.f64 im) re)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (/.f64 1 (fma.f64 im (+.f64 re im) (*.f64 re re))) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(fma.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (/.f64 1 (fma.f64 im (+.f64 im re) (*.f64 re re))) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(+.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 im 3)) (fma.f64 im (+.f64 im re) (*.f64 re re))))
(fma.f64 (/.f64 re im) (*.f64 -1/2 re) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (/.f64 re im) (/.f64 -1/2 (/.f64 1 re)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (/.f64 1 (+.f64 re im)) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(fma.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (/.f64 1 (+.f64 im re)) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(+.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im)) (/.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (+.f64 im re)))
(fma.f64 (/.f64 re (/.f64 im -1/2)) re (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (*.f64 (cbrt.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (cbrt.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)))) (cbrt.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (neg.f64 im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (sqrt.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (sqrt.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1))) (neg.f64 im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (/.f64 re 1) (/.f64 re (/.f64 im -1/2)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (/.f64 -1/2 im) (/.f64 re (/.f64 1 re)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) 1) (/.f64 (cbrt.f64 (*.f64 -1/2 re)) (/.f64 im re)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 re)) 1) (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (/.f64 im re)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 re)) im) (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (/.f64 1 re)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (/.f64 1 im) (/.f64 (*.f64 -1/2 re) (/.f64 1 re)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) im) (/.f64 (cbrt.f64 (*.f64 -1/2 re)) (/.f64 1 re)) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 re (cbrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 re (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 -1/2 (cbrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 re (cbrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 (*.f64 -1/2 re) (cbrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 re (cbrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (cbrt.f64 (*.f64 -1/2 (/.f64 re (/.f64 im re)))) (-.f64 re im))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 re -1/2)) 2) (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (cbrt.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im))) (-.f64 re im))
(fma.f64 (cbrt.f64 (*.f64 (*.f64 re re) (/.f64 -1/2 im))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 re -1/2)) 2) (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (-.f64 re im))
(fma.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 (sqrt.f64 (*.f64 -1/2 re)) (cbrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (/.f64 re (cbrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 im re))) (/.f64 re (sqrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 re (sqrt.f64 (/.f64 im re))) (/.f64 -1/2 (sqrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 im re))) (/.f64 re (sqrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 1 (sqrt.f64 (/.f64 im re))) (/.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 im re))) (/.f64 re (sqrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (sqrt.f64 (/.f64 im re))) (/.f64 (cbrt.f64 (*.f64 -1/2 re)) (sqrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 im re))) (/.f64 re (sqrt.f64 (/.f64 im re))) (-.f64 re im))
(fma.f64 (+.f64 (sqrt.f64 re) (sqrt.f64 im)) (-.f64 (sqrt.f64 re) (sqrt.f64 im)) (*.f64 -1/2 (/.f64 re (/.f64 im re))))
(fma.f64 (+.f64 (sqrt.f64 im) (sqrt.f64 re)) (-.f64 (sqrt.f64 re) (sqrt.f64 im)) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re (neg.f64 im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (/.f64 (*.f64 -1/2 re) 1) (/.f64 re im) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (/.f64 (*.f64 -1/2 re) (neg.f64 im)) (neg.f64 re) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (*.f64 (/.f64 re (/.f64 im -1/2)) 1) re (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (*.f64 (/.f64 re (/.f64 im -1/2)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)
(fma.f64 (*.f64 (/.f64 re (/.f64 im -1/2)) (sqrt.f64 re)) (sqrt.f64 re) (-.f64 re im))
(+.f64 (-.f64 re im) (*.f64 (*.f64 re re) (/.f64 -1/2 im)))
(-.f64 (fma.f64 (*.f64 re re) (/.f64 -1/2 im) re) im)

localize21.0ms (0.3%)

Local error

Found 3 expressions with local error:

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

Compiled 56 to 28 computations (50% saved)

series11.0ms (0.2%)

Counts
2 → 24
Calls

12 calls:

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

rewrite56.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
564×log-prod_binary64
405×exp-prod_binary64
352×pow-prod-down_binary64
275×pow2_binary64
243×pow-unpow_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify55.0ms (0.8%)

Algorithm
egg-herbie
Rules
505×associate-*l/_binary64
391×associate-*r/_binary64
348×unswap-sqr_binary64
321×distribute-rgt-in_binary64
316×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01711541
13931463
29791253
330141253
Stop Event
node limit
Counts
88 → 99
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 0 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))) 1)
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)) 1)
(*.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))
(*.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 1/6) (cbrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 1/6))
(*.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))) (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 (*.f64 im -1/2)))
(pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 1/2)
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)) 1)
(pow.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 3/2) 1/3)
(pow.f64 (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/4) 1/4)
(pow.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 3) 1/6)
(pow.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 1/6) 3)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 3/2)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))) 2)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))))
(pow.f64 (exp.f64 1/2) (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))))) (sqrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))))
(fabs.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))
(log.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))))
(cbrt.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 3/2))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))))
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))) 1))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 1/6)) 3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))) 1) 1))
(+.f64 0 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 -1 1/2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 -1 1/2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 -1 1/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 -1 1/2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)))) 1)
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)) 1)
(pow.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 3/2) 1/3)
(pow.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6) 3)
(pow.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/4) 2)
(pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/2)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))))) (sqrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)))))
(sqrt.f64 (*.f64 (*.f64 im (/.f64 im re)) -1))
(log.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 -1 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 3/2))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))))
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 3/2)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/4)) 2))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 im (/.f64 im re)) -1)) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))) 1) 1))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im)))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 (sqrt.f64 -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (neg.f64 im)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im)))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 (sqrt.f64 -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (neg.f64 im)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im)))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 (sqrt.f64 -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (neg.f64 im)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im)))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 (sqrt.f64 -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (neg.f64 im)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 2))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2)))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) (neg.f64 im))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (*.f64 (sqrt.f64 2) (neg.f64 im))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 2))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2)))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) (neg.f64 im))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (*.f64 (sqrt.f64 2) (neg.f64 im))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 2))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2)))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) (neg.f64 im))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (*.f64 (sqrt.f64 2) (neg.f64 im))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (*.f64 (sqrt.f64 -1/2) im) (sqrt.f64 2))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 2)))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) (neg.f64 im))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1/2) (*.f64 (sqrt.f64 2) (neg.f64 im))))
(+.f64 0 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2)))))
(*.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2)))) 3)
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2)))))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))) 1)
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)) 1)
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(*.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(*.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 1/6) (cbrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))))
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 1/6))
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(*.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))) (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 (*.f64 im -1/2)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 (*.f64 -1/2 im)))
(pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 1/2)
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)) 1)
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(pow.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 3/2) 1/3)
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(pow.f64 (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/4) 1/4)
(pow.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 3) 1/6)
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(pow.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 1/6) 3)
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 3/2)
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))) 2)
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(pow.f64 (exp.f64 1/2) (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))))
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))))) (sqrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))))) (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)))) (sqrt.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im))))
(fabs.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(log.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1/2)))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(cbrt.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 3/2))
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 1/2))
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))) 1))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 1/3))
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 1/6)) 3))
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2)))) 2))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 1) 1/2))
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 1/2) 1))
(*.f64 (pow.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))) 1/6) (cbrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 -1/2 (*.f64 im (/.f64 im re))))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1/2))) 1) 1))
(*.f64 (sqrt.f64 -1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 -1/2) (sqrt.f64 re)) im)
(+.f64 0 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 -1 1/2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 -1 1/2)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 -1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 -1 1/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 -1 1/2)))))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)))) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))
(pow.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 -1 (/.f64 (*.f64 im im) re)) 3/2))
(sqrt.f64 (neg.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6) 3)
(cbrt.f64 (pow.f64 (*.f64 -1 (/.f64 (*.f64 im im) re)) 3/2))
(sqrt.f64 (neg.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/4) 2)
(cbrt.f64 (pow.f64 (*.f64 -1 (/.f64 (*.f64 im im) re)) 3/2))
(sqrt.f64 (neg.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/2)
(cbrt.f64 (pow.f64 (*.f64 -1 (/.f64 (*.f64 im im) re)) 3/2))
(sqrt.f64 (neg.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1)))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))))) (sqrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))))) (sqrt.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1)))))
(sqrt.f64 (*.f64 (*.f64 im (/.f64 im re)) -1))
(cbrt.f64 (pow.f64 (*.f64 -1 (/.f64 (*.f64 im im) re)) 3/2))
(sqrt.f64 (neg.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(log.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 -1 1/2)))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2)))))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 3/2))
(cbrt.f64 (pow.f64 (*.f64 -1 (/.f64 (*.f64 im im) re)) 3/2))
(sqrt.f64 (neg.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))) 1))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 3/2)) 1/3))
(cbrt.f64 (pow.f64 (*.f64 -1 (/.f64 (*.f64 im im) re)) 3/2))
(sqrt.f64 (neg.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6)) 3))
(cbrt.f64 (pow.f64 (*.f64 -1 (/.f64 (*.f64 im im) re)) 3/2))
(sqrt.f64 (neg.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/4)) 2))
(cbrt.f64 (pow.f64 (*.f64 -1 (/.f64 (*.f64 im im) re)) 3/2))
(sqrt.f64 (neg.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 im (/.f64 im re)) -1)) 1/2))
(cbrt.f64 (pow.f64 (*.f64 -1 (/.f64 (*.f64 im im) re)) 3/2))
(sqrt.f64 (neg.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 -1 1/2))) 1) 1))
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 -1))

eval286.0ms (4%)

Compiler

Compiled 16513 to 10725 computations (35.1% saved)

prune407.0ms (5.7%)

Pruning

23 alts after pruning (14 fresh and 9 done)

PrunedKeptTotal
New6686674
Fresh3811
Picked011
Done189
Total67223695
Error
2.9b
Counts
695 → 23
Alt Table
Click to see full alt table
StatusErrorProgram
54.4b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/4) 2))
53.2b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6) 3))
52.4b
(*.f64 1/2 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) -1) 1/2))
54.4b
(*.f64 1/2 (pow.f64 (*.f64 (*.f64 (/.f64 1 re) (*.f64 im im)) -1) 1/2))
54.4b
(*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 im im) re) -1)) 3/2))
30.6b
(*.f64 1/2 (hypot.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2)) (sqrt.f64 (*.f64 re 2))))
48.9b
(*.f64 1/2 (+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1)))
55.6b
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 (*.f64 im -1/2))) (sqrt.f64 2)))
44.8b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 re im)) (sqrt.f64 2)))
13.5b
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2)))
52.5b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 im re) im) -1/2)) (sqrt.f64 2)))
45.2b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re 2)) (sqrt.f64 2)))
45.0b
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
52.4b
(*.f64 1/2 (sqrt.f64 (*.f64 (/.f64 im re) (neg.f64 im))))
60.7b
(*.f64 1/2 (sqrt.f64 (*.f64 (/.f64 im re) im)))
56.7b
(*.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.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
47.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 -1/2 re) (/.f64 im re)) (-.f64 re im)))))
37.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
13.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
46.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
47.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
48.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 490 to 390 computations (20.4% saved)

localize11.0ms (0.2%)

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

rewrite43.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
778×pow1_binary64
726×add-log-exp_binary64
725×log1p-expm1-u_binary64
725×expm1-log1p-u_binary64
710×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
079
11529
219639
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)))))))))

simplify39.0ms (0.6%)

Algorithm
egg-herbie
Rules
671×associate-/r*_binary64
655×associate-*l/_binary64
588×associate-/r/_binary64
524×associate-*r/_binary64
295×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0117717
1275675
2820617
33358593
Stop Event
node limit
Counts
30 → 57
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 2) (sqrt.f64 re)))
(+.f64 (*.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 (sqrt.f64 2) (sqrt.f64 re))))
(+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.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 (sqrt.f64 2) (sqrt.f64 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 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im)))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) re)) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 re (/.f64 (sqrt.f64 2) (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 im)))))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 re (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im))))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) re)) (sqrt.f64 (/.f64 1 im))) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 re re))) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (/.f64 (*.f64 re re) -1)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (fma.f64 1/2 (*.f64 (*.f64 re (/.f64 (sqrt.f64 2) (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 1/8 (/.f64 (*.f64 re re) (/.f64 (sqrt.f64 -1) (sqrt.f64 2)))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (+.f64 (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 1 im)))) (*.f64 (*.f64 (/.f64 re -1) re) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 im)))))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) re)) (sqrt.f64 (/.f64 1 im))) (fma.f64 1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 re re))) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im))))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 im))) (fma.f64 1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 -1) 5)) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (/.f64 (*.f64 re re) -1)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(fma.f64 1/2 (*.f64 (*.f64 re (/.f64 (sqrt.f64 2) (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 im))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (fma.f64 1/16 (*.f64 (*.f64 (pow.f64 re 3) (/.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 -1) 5))) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 1/8 (/.f64 (*.f64 re re) (/.f64 (sqrt.f64 -1) (sqrt.f64 2))))))))
(fma.f64 1/16 (*.f64 (*.f64 (pow.f64 re 3) (/.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 -1) 5))) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (+.f64 (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 1 im)))) (*.f64 (*.f64 (/.f64 re -1) re) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 2) (sqrt.f64 re)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 2) (sqrt.f64 re)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))))
(+.f64 (*.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 (sqrt.f64 2) (sqrt.f64 re))))
(fma.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))))) (*.f64 (sqrt.f64 2) (sqrt.f64 re))))
(fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))) (fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 -1/8 (*.f64 (*.f64 im (*.f64 (sqrt.f64 2) im)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(fma.f64 (sqrt.f64 2) (*.f64 im (*.f64 (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) -1/8)) (*.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 -1/2 (sqrt.f64 (/.f64 1 re))) (*.f64 (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) -1/8)))))
(+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.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 (sqrt.f64 2) (sqrt.f64 re)))))
(fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 im 3) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (fma.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))))) (*.f64 (sqrt.f64 2) (sqrt.f64 re)))))
(fma.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))) (fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 -1/8 (*.f64 (*.f64 im (*.f64 (sqrt.f64 2) im)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 im (*.f64 (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) -1/8)))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2)) (*.f64 (pow.f64 im 3) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 im (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 re))) (*.f64 (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) -1/8))) (+.f64 (sqrt.f64 re) (*.f64 -1/16 (*.f64 (pow.f64 im 3) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (-.f64 re im)))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (-.f64 re im)))
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (-.f64 re im)))
(*.f64 1 (sqrt.f64 (*.f64 2 (-.f64 re im))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(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 (cbrt.f64 (*.f64 2 (-.f64 re im))) (cbrt.f64 (sqrt.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 (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 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (-.f64 re im)))
(*.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 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(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))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (pow.f64 (-.f64 re im) 2) 4))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 re im)))))
(pow.f64 (*.f64 2 (-.f64 re im)) 1/2)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (-.f64 re im)))
(pow.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (-.f64 re im)))
(pow.f64 (pow.f64 (*.f64 2 (-.f64 re im)) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 re im)) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 re im)))) 3)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (-.f64 re im)))
(pow.f64 (pow.f64 (*.f64 2 (-.f64 re im)) 1/4) 2)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (-.f64 re im)))
(fabs.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (-.f64 re im)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 re im)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(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)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (-.f64 re im)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 re im)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (-.f64 re im)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 re im)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 re im))) 0)
(sqrt.f64 (*.f64 2 (-.f64 re im)))

localize9.0ms (0.1%)

Compiler

Compiled 23 to 15 computations (34.8% saved)

localize15.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 41 to 18 computations (56.1% saved)

series3.0ms (0%)

Counts
2 → 36
Calls

12 calls:

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

rewrite48.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
866×pow1_binary64
807×add-log-exp_binary64
807×log1p-expm1-u_binary64
807×expm1-log1p-u_binary64
788×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify55.0ms (0.8%)

Algorithm
egg-herbie
Rules
755×log-div_binary64
613×associate-/l*_binary64
454×fma-def_binary64
411×associate-*l/_binary64
374×times-frac_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01941410
14371363
213781330
365131330
Stop Event
node limit
Counts
123 → 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 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 -1))
(*.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (sqrt.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 -1) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.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 1 1/2) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2)) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (pow.f64 (/.f64 im re) 1/2) (sqrt.f64 im))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 (neg.f64 re) im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(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 (+.f64 1 (*.f64 im (/.f64 im re))) 1)
(*.f64 im (/.f64 im re))
(*.f64 im (*.f64 (/.f64 im re) -1))
(*.f64 (*.f64 im (/.f64 im re)) -1)
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 (*.f64 im (/.f64 im re)) (sqrt.f64 -1))
(*.f64 -1 (*.f64 im (/.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) -1))
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (pow.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 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 (neg.f64 im) (/.f64 1 (/.f64 (neg.f64 re) im)))
(*.f64 (/.f64 im re) im)
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (/.f64 im re) (/.f64 -1 (/.f64 1 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 (*.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 (pow.f64 (cbrt.f64 im) 2) 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 (pow.f64 (cbrt.f64 im) 2) re) (/.f64 (cbrt.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 (pow.f64 (cbrt.f64 im) 2) (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 (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 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 (/.f64 im 1) (/.f64 -1 (/.f64 re im)))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 -1 (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 (/.f64 (neg.f64 im) 1) (/.f64 im re))
(*.f64 (*.f64 -1 (sqrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (*.f64 -1 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (*.f64 -1 (/.f64 im 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 (*.f64 (/.f64 im re) 1) im)
(*.f64 (*.f64 (/.f64 im re) (pow.f64 (cbrt.f64 im) 2)) (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)))
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(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 (*.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 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (neg.f64 im) (sqrt.f64 -1)))
(*.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 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (neg.f64 im) (sqrt.f64 -1)))
(*.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 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (neg.f64 im) (sqrt.f64 -1)))
(*.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 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (neg.f64 im) (sqrt.f64 -1)))
(*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im)))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 0)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 0)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 -1))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 0)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.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) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 0)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (/.f64 re im) im) -2))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (/.f64 im re)) (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 im (/.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 0)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2)) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (/.f64 re im) im) -2))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 (/.f64 im re) 1/2) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (sqrt.f64 (/.f64 (/.f64 re im) im)))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 (neg.f64 re) im)))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 re (neg.f64 im))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 0)
(fabs.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 0)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 0)
(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)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 0)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 0)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 0)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(-.f64 (+.f64 1 (*.f64 im (/.f64 im re))) 1)
(*.f64 im (/.f64 im re))
(*.f64 im (/.f64 im re))
(*.f64 im (*.f64 (/.f64 im re) -1))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (*.f64 im (/.f64 im re)) -1)
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 im (/.f64 im re)) (sqrt.f64 -1))
(*.f64 im (*.f64 (/.f64 im re) (sqrt.f64 -1)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (/.f64 im re))
(*.f64 -1 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) -1))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (pow.f64 (/.f64 (/.f64 re im) im) -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 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (pow.f64 (/.f64 (/.f64 re im) im) -2)))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 1 (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im re) (/.f64 -1 (/.f64 1 im)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im re) (neg.f64 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 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 im (/.f64 im re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (sqrt.f64 im) re) (/.f64 (sqrt.f64 im) (/.f64 1 im)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 1 re) (/.f64 im (/.f64 1 im)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (/.f64 (cbrt.f64 im) (/.f64 1 im)))
(*.f64 im (/.f64 im re))
(*.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 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 im) 2)) (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 (sqrt.f64 (/.f64 re im))) (/.f64 im (sqrt.f64 (/.f64 re im))))
(/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(/.f64 im (*.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 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 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (/.f64 im (sqrt.f64 (/.f64 re im))))
(/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(/.f64 im (*.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im 1) (/.f64 -1 (/.f64 re im)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 -1 (cbrt.f64 (/.f64 re im))))
(/.f64 (/.f64 (neg.f64 im) (cbrt.f64 (/.f64 re im))) (pow.f64 (cbrt.f64 (/.f64 re im)) 2))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (/.f64 (neg.f64 im) 1) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (*.f64 -1 (sqrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (*.f64 -1 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (neg.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (/.f64 re im) im) -2))))
(*.f64 (*.f64 -1 (/.f64 im re)) im)
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im re) (neg.f64 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 im (/.f64 im re))) (*.f64 (sqrt.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)))) (*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (*.f64 (/.f64 im re) 1) im)
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (/.f64 im re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (/.f64 im re) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 im (/.f64 im re))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(*.f64 im (/.f64 im re))
(neg.f64 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im re) (neg.f64 im))
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))

localize14.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

Compiled 30 to 25 computations (16.7% saved)

series2.0ms (0%)

Counts
1 → 0
Calls

3 calls:

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

rewrite42.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
586×pow1_binary64
541×add-log-exp_binary64
541×log1p-expm1-u_binary64
541×expm1-log1p-u_binary64
528×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify44.0ms (0.6%)

Algorithm
egg-herbie
Rules
913×fma-neg_binary64
859×log-prod_binary64
314×*-commutative_binary64
299×distribute-rgt-out_binary64
258×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
031144
178108
227872
3159172
4438772
5669972
Stop Event
node limit
Counts
12 → 15
Calls
Call 1
Inputs
(-.f64 (+.f64 1 (*.f64 (sqrt.f64 re) 2)) 1)
(pow.f64 (*.f64 (sqrt.f64 re) 2) 1)
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 re) 2) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 re) 2)) 3)
(pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 re) 2)) 2)
(pow.f64 (*.f64 re 4) 1/2)
(sqrt.f64 (*.f64 re 4))
(log.f64 (exp.f64 (*.f64 (sqrt.f64 re) 2)))
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 re) 2) 3))
(expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 re) 2)))
(log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 re) 2)))
(exp.f64 (log.f64 (*.f64 (sqrt.f64 re) 2)))
Outputs
(-.f64 (+.f64 1 (*.f64 (sqrt.f64 re) 2)) 1)
(+.f64 1 (-.f64 (*.f64 (sqrt.f64 re) 2) 1))
(+.f64 (*.f64 (sqrt.f64 re) 2) 0)
(*.f64 (sqrt.f64 re) 2)
(pow.f64 (*.f64 (sqrt.f64 re) 2) 1)
(+.f64 1 (-.f64 (*.f64 (sqrt.f64 re) 2) 1))
(+.f64 (*.f64 (sqrt.f64 re) 2) 0)
(*.f64 (sqrt.f64 re) 2)
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 re) 2) 3) 1/3)
(+.f64 1 (-.f64 (*.f64 (sqrt.f64 re) 2) 1))
(+.f64 (*.f64 (sqrt.f64 re) 2) 0)
(*.f64 (sqrt.f64 re) 2)
(pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 re) 2)) 3)
(+.f64 1 (-.f64 (*.f64 (sqrt.f64 re) 2) 1))
(+.f64 (*.f64 (sqrt.f64 re) 2) 0)
(*.f64 (sqrt.f64 re) 2)
(pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 re) 2)) 2)
(+.f64 1 (-.f64 (*.f64 (sqrt.f64 re) 2) 1))
(+.f64 (*.f64 (sqrt.f64 re) 2) 0)
(*.f64 (sqrt.f64 re) 2)
(pow.f64 (*.f64 re 4) 1/2)
(+.f64 1 (-.f64 (*.f64 (sqrt.f64 re) 2) 1))
(+.f64 (*.f64 (sqrt.f64 re) 2) 0)
(*.f64 (sqrt.f64 re) 2)
(sqrt.f64 (*.f64 re 4))
(+.f64 1 (-.f64 (*.f64 (sqrt.f64 re) 2) 1))
(+.f64 (*.f64 (sqrt.f64 re) 2) 0)
(*.f64 (sqrt.f64 re) 2)
(log.f64 (exp.f64 (*.f64 (sqrt.f64 re) 2)))
(+.f64 1 (-.f64 (*.f64 (sqrt.f64 re) 2) 1))
(+.f64 (*.f64 (sqrt.f64 re) 2) 0)
(*.f64 (sqrt.f64 re) 2)
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 re) 2) 3))
(+.f64 1 (-.f64 (*.f64 (sqrt.f64 re) 2) 1))
(+.f64 (*.f64 (sqrt.f64 re) 2) 0)
(*.f64 (sqrt.f64 re) 2)
(expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 re) 2)))
(+.f64 1 (-.f64 (*.f64 (sqrt.f64 re) 2) 1))
(+.f64 (*.f64 (sqrt.f64 re) 2) 0)
(*.f64 (sqrt.f64 re) 2)
(log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 re) 2)))
(+.f64 1 (-.f64 (*.f64 (sqrt.f64 re) 2) 1))
(+.f64 (*.f64 (sqrt.f64 re) 2) 0)
(*.f64 (sqrt.f64 re) 2)
(exp.f64 (log.f64 (*.f64 (sqrt.f64 re) 2)))
(+.f64 1 (-.f64 (*.f64 (sqrt.f64 re) 2) 1))
(+.f64 (*.f64 (sqrt.f64 re) 2) 0)
(*.f64 (sqrt.f64 re) 2)

localize19.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f64 im (/.f64 im re))
0.3b
(pow.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6) 3)
26.6b
(pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6)
Compiler

Compiled 56 to 28 computations (50% saved)

series94.0ms (1.3%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
30.0ms
re
@-inf
(pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6)
27.0ms
im
@0
(pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6)
17.0ms
re
@0
(pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6)
7.0ms
re
@inf
(pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6)
6.0ms
im
@inf
(pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6)

rewrite162.0ms (2.3%)

Algorithm
egg-rewrite
egg-rewrite-iter-limit
batch-egg-rewrite
Rules
837×pow1_binary64
780×add-log-exp_binary64
780×log1p-expm1-u_binary64
780×expm1-log1p-u_binary64
763×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01139
124339
2294539
0913
119210
2243610
01113
124313
2294513
01113
057
11057
214107
Stop Event
node limit
iter limit
node limit
node limit
node limit
Counts
3 → 51
Calls
Call 1
Inputs
(pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6)
(pow.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) -1) 1/6) 3)
(*.f64 im (/.f64 im re))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (pow.f64 -1 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 -1 1/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 im 1/6) (pow.f64 (*.f64 (/.f64 im re) -1) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 im 1/6) (pow.f64 (/.f64 im re) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 im re) 1/6) (pow.f64 im 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2)) 1/6) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 1/6 (log.f64 (*.f64 im (/.f64 im re)))))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) (*.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6)) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)) (sqrt.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) 3/2) (pow.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6)) 3))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 im (/.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 re (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im im) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im im) 1) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (/.f64 im re)) 1)))) (#(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 im (sqrt.f64 re)) 2)))) (#(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 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))))))))

simplify60.0ms (0.8%)

Algorithm
egg-herbie
Rules
726×fma-def_binary64
684×associate-*l*_binary64
621×associate-*r*_binary64
323×unswap-sqr_binary64
294×log-div_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01711790
14041741
211601325
363651317
Stop Event
node limit
Counts
123 → 83
Calls
Call 1
Inputs
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))) 3)
(*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (*.f64 -1 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 2))
(*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (*.f64 -1 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 2))
(*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (*.f64 -1 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 2))
(*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (*.f64 -1 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 2))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re))))) 3)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(-.f64 (+.f64 1 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) 1)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (pow.f64 -1 1/6))
(*.f64 1 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(*.f64 (pow.f64 -1 1/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))
(*.f64 (pow.f64 im 1/6) (pow.f64 (*.f64 (/.f64 im re) -1) 1/6))
(*.f64 (pow.f64 im 1/6) (pow.f64 (/.f64 im re) 1/6))
(*.f64 (pow.f64 1 1/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (/.f64 im re) 1/6) (pow.f64 im 1/6))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2)) 1/6) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/6))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))
(sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))
(log.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(cbrt.f64 (pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3))
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(exp.f64 (*.f64 1/6 (log.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) (*.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6)))
(*.f64 1 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2))
(*.f64 (*.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6)) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)) (sqrt.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))
(*.f64 (pow.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) 3/2) (pow.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) 3/2))
(log.f64 (exp.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))
(cbrt.f64 (*.f64 (*.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))
(exp.f64 (log.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6)) 3))
(-.f64 (+.f64 1 (*.f64 im (/.f64 im re))) 1)
(/.f64 im (/.f64 re im))
(/.f64 1 (/.f64 re (*.f64 im im)))
(/.f64 (*.f64 im im) re)
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(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 im (sqrt.f64 re)) 2)
(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))
(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
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1 re))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 im))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (pow.f64 (/.f64 -1 im) -2) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1 re))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 im))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (pow.f64 (/.f64 -1 im) -2) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1 re))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 im))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (pow.f64 (/.f64 -1 im) -2) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1 re))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 im))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (pow.f64 (/.f64 -1 im) -2) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6)
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 im)))) 3)
(pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (pow.f64 (/.f64 -1 im) -2) 1/6)) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 im)))) 3)
(pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (pow.f64 (/.f64 -1 im) -2) 1/6)) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 im)))) 3)
(pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (pow.f64 (/.f64 -1 im) -2) 1/6)) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 im)))) 3)
(pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (pow.f64 (/.f64 -1 im) -2) 1/6)) 3)
(*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (*.f64 -1 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 2))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (*.f64 -1 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 2))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (*.f64 -1 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 2))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (*.f64 -1 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -1 (log.f64 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 2))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(-.f64 (+.f64 1 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) 1)
(+.f64 1 (-.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1))
(+.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 0)
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1)
(+.f64 1 (-.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1))
(+.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 0)
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (pow.f64 -1 1/6))
(*.f64 1 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(+.f64 1 (-.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1))
(+.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 0)
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 -1 1/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (pow.f64 -1 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))
(+.f64 1 (-.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1))
(+.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 0)
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 im 1/6) (pow.f64 (*.f64 (/.f64 im re) -1) 1/6))
(*.f64 (pow.f64 im 1/6) (pow.f64 (*.f64 -1 (/.f64 im re)) 1/6))
(*.f64 (pow.f64 im 1/6) (pow.f64 (neg.f64 (/.f64 im re)) 1/6))
(*.f64 (pow.f64 im 1/6) (pow.f64 (/.f64 im re) 1/6))
(+.f64 1 (-.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1))
(+.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 0)
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 1 1/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(+.f64 1 (-.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1))
(+.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 0)
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 (/.f64 im re) 1/6) (pow.f64 im 1/6))
(+.f64 1 (-.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1))
(+.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 0)
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2)) 1/6) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/6))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4)) 1/6) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/6))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
(sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))
(log.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(+.f64 1 (-.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1))
(+.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 0)
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(cbrt.f64 (pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3))
(+.f64 1 (-.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1))
(+.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 0)
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(+.f64 1 (-.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1))
(+.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 0)
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(+.f64 1 (-.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1))
(+.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 0)
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(exp.f64 (*.f64 1/6 (log.f64 (*.f64 im (/.f64 im re)))))
(+.f64 1 (-.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1))
(+.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 0)
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) (*.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6)))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(*.f64 1 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(*.f64 (*.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6)) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)) (sqrt.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(*.f64 (pow.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) 3/2) (pow.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6) 3/2))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(log.f64 (exp.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(cbrt.f64 (*.f64 (*.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)) (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(exp.f64 (log.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/2)))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1)) 1/6)) 3))
(pow.f64 (pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))) 3)
(sqrt.f64 (*.f64 im (neg.f64 (/.f64 im re))))
(-.f64 (+.f64 1 (*.f64 im (/.f64 im re))) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 1 (/.f64 re (*.f64 im im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 im (/.f64 im re))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))

eval92.0ms (1.3%)

Compiler

Compiled 4701 to 3131 computations (33.4% saved)

prune57.0ms (0.8%)

Pruning

28 alts after pruning (15 fresh and 13 done)

PrunedKeptTotal
New2657272
Fresh189
Picked101
Done01313
Total26728295
Error
0.3b
Counts
295 → 28
Alt Table
Click to see full alt table
StatusErrorProgram
54.4b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) -1) 1/4) 2))
53.2b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 im (neg.f64 (/.f64 im re))) 1/6) 3))
53.7b
(*.f64 1/2 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (pow.f64 (/.f64 -1 im) -2) 1/6)) 3))
55.4b
(*.f64 1/2 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 im)))) 3))
56.1b
(*.f64 1/2 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (cbrt.f64 im)) 3))
52.4b
(*.f64 1/2 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) -1) 1/2))
54.4b
(*.f64 1/2 (pow.f64 (*.f64 (*.f64 (/.f64 1 re) (*.f64 im im)) -1) 1/2))
57.8b
(*.f64 1/2 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 -1 re))))) 3))
55.4b
(*.f64 1/2 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))) 3))
30.6b
(*.f64 1/2 (hypot.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) 2)) (sqrt.f64 (*.f64 re 2))))
55.9b
(*.f64 1/2 (/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 re im))))
48.9b
(*.f64 1/2 (+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (+.f64 im re))) 1)))
55.6b
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 (*.f64 im -1/2))) (sqrt.f64 2)))
44.8b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 re im)) (sqrt.f64 2)))
13.5b
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 re (hypot.f64 re im))) (sqrt.f64 2)))
52.5b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 im re) im) -1/2)) (sqrt.f64 2)))
45.2b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 re 2)) (sqrt.f64 2)))
45.0b
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
52.4b
(*.f64 1/2 (sqrt.f64 (*.f64 (/.f64 im re) (neg.f64 im))))
60.7b
(*.f64 1/2 (sqrt.f64 (*.f64 (/.f64 im re) im)))
56.7b
(*.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.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
47.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (/.f64 (*.f64 -1/2 re) (/.f64 im re)) (-.f64 re im)))))
37.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
13.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
46.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
47.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
48.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 390 to 317 computations (18.7% saved)

regimes208.0ms (2.9%)

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

7 calls:

48.0ms
re
44.0ms
im
24.0ms
(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
21.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
20.0ms
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Results
ErrorSegmentsBranch
9.7b2re
12.1b3im
8.7b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
8.7b2(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
9.1b2(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
9.1b2(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
13.2b1(*.f64 im im)
Compiler

Compiled 524 to 366 computations (30.2% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
1.4352430305525178e-148
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes140.0ms (2%)

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

3 calls:

60.0ms
re
38.0ms
(*.f64 im im)
36.0ms
im
Results
ErrorSegmentsBranch
22.9b7re
24.7b3im
33.1b7(*.f64 im im)
Compiler

Compiled 214 to 149 computations (30.4% saved)

bsearch104.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
16.0ms
1.1926607597422353e-99
2.9073086349915955e-98
23.0ms
5.2492235391527836e-248
1.7323158619879073e-232
7.0ms
5.404546051526689e-294
1.2034962118928527e-285
7.0ms
-1.0406135671922572e-274
-2.2401470246994888e-278
26.0ms
-1.9709680262096863e-171
-2.172642343772142e-181
25.0ms
-3.769315119019845e-53
-1.5428851680375417e-55
Results
76.0ms577×body256valid
9.0ms28×body1024valid
7.0ms17×body2048valid
4.0ms18×body512valid
Compiler

Compiled 866 to 730 computations (15.7% saved)

regimes57.0ms (0.8%)

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

2 calls:

36.0ms
re
19.0ms
im
Results
ErrorSegmentsBranch
22.9b7re
24.7b3im
Compiler

Compiled 78 to 55 computations (29.5% saved)

bsearch120.0ms (1.7%)

Algorithm
binary-search
Steps
TimeLeftRight
15.0ms
1.1926607597422353e-99
2.9073086349915955e-98
22.0ms
5.2492235391527836e-248
1.7323158619879073e-232
9.0ms
5.404546051526689e-294
1.2034962118928527e-285
18.0ms
-1.0406135671922572e-274
-2.2401470246994888e-278
27.0ms
-1.9709680262096863e-171
-2.172642343772142e-181
28.0ms
-3.769315119019845e-53
-1.5428851680375417e-55
Results
86.0ms661×body256valid
11.0ms36×body1024valid
9.0ms22×body2048valid
4.0ms17×body512valid
Compiler

Compiled 974 to 819 computations (15.9% saved)

regimes51.0ms (0.7%)

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

2 calls:

31.0ms
re
17.0ms
im
Results
ErrorSegmentsBranch
28.0b7re
24.7b3im
Compiler

Compiled 60 to 46 computations (23.3% saved)

bsearch61.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
33.0ms
9.89302750074555e-143
3.9717057639816503e-137
28.0ms
-1.5206217568685963e-134
-3.3732306288579848e-136
Results
20.0ms164×body256valid
17.0ms32×body4096valid
10.0ms25×body2048valid
7.0ms22×body1024valid
3.0ms13×body512valid
Compiler

Compiled 342 to 288 computations (15.8% saved)

regimes41.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 (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))))
Calls

2 calls:

26.0ms
re
14.0ms
im
Results
ErrorSegmentsBranch
28.3b8re
24.9b3im
Compiler

Compiled 35 to 28 computations (20% saved)

bsearch73.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
36.0ms
9.89302750074555e-143
3.9717057639816503e-137
38.0ms
-3.5485386463281355e-145
-2.0259572995731976e-150
Results
27.0ms194×body256valid
18.0ms36×body4096valid
14.0ms35×body2048valid
9.0ms17×body1024valid
1.0msbody512valid
Compiler

Compiled 373 to 322 computations (13.7% saved)

regimes39.0ms (0.5%)

Counts
3 → 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))))
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:

29.0ms
re
9.0ms
im
Results
ErrorSegmentsBranch
28.5b8re
25.3b3im
Compiler

Compiled 27 to 22 computations (18.5% saved)

bsearch72.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
34.0ms
9.89302750074555e-143
3.9717057639816503e-137
37.0ms
-3.5485386463281355e-145
-2.0259572995731976e-150
Results
27.0ms47×body4096valid
22.0ms181×body256valid
9.0ms22×body2048valid
6.0ms21×body1024valid
4.0ms17×body512valid
Compiler

Compiled 355 to 313 computations (11.8% saved)

regimes13.0ms (0.2%)

Accuracy

Total -26.9b remaining (-75.2%)

Threshold costs -26.9b (-75.2%)

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

2 calls:

7.0ms
re
5.0ms
im
Results
ErrorSegmentsBranch
36.4b2re
35.8b2im
Compiler

Compiled 20 to 16 computations (20% saved)

bsearch31.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
30.0ms
9.89302750074555e-143
3.9717057639816503e-137
Results
13.0ms104×body256valid
6.0ms13×body4096valid
6.0ms14×body2048valid
3.0ms11×body1024valid
0.0msbody512valid
Compiler

Compiled 184 to 160 computations (13% saved)

simplify21.0ms (0.3%)

Algorithm
egg-herbie
Rules
22×*-commutative_binary64
10×+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0107451
1137441
2154441
3164441
4167441
5168441
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 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) -1) 1/2)) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(if (<=.f64 re -2480315093377859/107839786668602559178668060348078522694548577690162289924414440996864) (*.f64 1/2 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) -1) 1/2)) (if (<=.f64 re -2338250816531375/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 re -6237000967295999/623700096729599941142616472824012051896078518886080481719546013261628716209051270557799364216448656590419514638810154763741386871372998018980991186964009818850001772797214273911730537951363433494579173982669976247915878267225271996527767271390013799220975283398673763013237029759482503102464) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 6857655085992111/685765508599211085406992031398401158759299079491541508764000248557024672719959118395646962442045349201660590667234013968119772982843080987903012964780708787451812337588750783066948774723991753080189067657794974398949244241113521123786594812548932026532556574571938698730267509225767960757581162756440064) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 re 2627630890081645/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (if (<=.f64 re 7141613623096499/1231312693637327475383720003129487931408741852202045208373384168882678805359287831606695820465153613775207124697088) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re)))))))))
(if (<=.f64 re -3666552746732487/215679573337205118357336120696157045389097155380324579848828881993728) (*.f64 1/2 (sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))) (if (<=.f64 re -912488123524439/9124881235244390437282343211400582649786457014497119861158385035798550334417354773011825622634742799557284619147188814621377409442750875996505322639444428376503989348720529900165748384493207552) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 re -7344692339087769/319334449525555169865019634085894170570792201669673206640407558789953902699034250525593274478821712174294791495070799239035590078142974985718267487725573027251200907672173708242806035431098077949224537079127027838932929672819339262222216842951687065201139345100120966662777359236855041588461568) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 4388899255034951/43888992550349509466047490009497674160595141087458656560896015907649579054077383577321405596290902348906277802702976893959665470901957183225792829745965362396915989605680050116284721582335472197132100330098878361532751631431265351922342068003131649698083620772604076718737120590449149488485194416412164096) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 re 811820827772699/492012622892544834271389790732894657662927476722860263779722814473019822087813969212041474774160597375290836201288857198210756815506783814402799101977552824568363543598917391308333275538335033741802194070267666507650193099632451067528125735714134272643866558464) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (if (<=.f64 re 3139847368775185/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re)))))))))
(if (<=.f64 im -5237424972633827/3273390607896141870013189696827599152216642046043064789483291368096133796404674554883270092325904157150886684127560071009217256545885393053328527589376) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 im 2513963986864237/1675975991242824637446753124775730765934920727574049172215445180465220503759193372100234287270862928461253982273310756356719235351493321243304206125760512) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))
(if (<=.f64 im -6118522760578747/7198262071269114212496861612297570974191515389283066612961208916178940129074380592510465097766225371439873457013633432197133225688790879502413624289384262168215552) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im 3888264299683353/13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))
(if (<=.f64 im -3599131035634557/28118211215894977392565865673037386617935606989386978956879722328823984879196799189494004288149317857187005691459505594520051662846839373056303219880407274094592) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im 7541891960592711/209496998905353079680844140596966345741865090946756146526930647558152562969899171512529285908857866057656747784163844544589904418936665155413025765720064) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im)))))
(if (<=.f64 im 3299577732759311/104748499452676539840422070298483172870932545473378073263465323779076281484949585756264642954428933028828373892081922272294952209468332577706512882860032) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Outputs
(if (<=.f64 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) 0) (*.f64 1/2 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) -1) 1/2)) (*.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 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) -1) 1/2)) (*.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 (pow.f64 (neg.f64 (/.f64 im (/.f64 re im))) 1/2)) (*.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 (pow.f64 (/.f64 (neg.f64 im) (/.f64 re im)) 1/2)) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))
(if (<=.f64 re -2480315093377859/107839786668602559178668060348078522694548577690162289924414440996864) (*.f64 1/2 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) -1) 1/2)) (if (<=.f64 re -2338250816531375/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 re -6237000967295999/623700096729599941142616472824012051896078518886080481719546013261628716209051270557799364216448656590419514638810154763741386871372998018980991186964009818850001772797214273911730537951363433494579173982669976247915878267225271996527767271390013799220975283398673763013237029759482503102464) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 6857655085992111/685765508599211085406992031398401158759299079491541508764000248557024672719959118395646962442045349201660590667234013968119772982843080987903012964780708787451812337588750783066948774723991753080189067657794974398949244241113521123786594812548932026532556574571938698730267509225767960757581162756440064) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 re 2627630890081645/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (if (<=.f64 re 7141613623096499/1231312693637327475383720003129487931408741852202045208373384168882678805359287831606695820465153613775207124697088) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re)))))))))
(if (<=.f64 re -2480315093377859/107839786668602559178668060348078522694548577690162289924414440996864) (*.f64 1/2 (pow.f64 (neg.f64 (/.f64 im (/.f64 re im))) 1/2)) (if (<=.f64 re -2338250816531375/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (*.f64 1/2 (sqrt.f64 (*.f64 im -2))) (if (<=.f64 re -6237000967295999/623700096729599941142616472824012051896078518886080481719546013261628716209051270557799364216448656590419514638810154763741386871372998018980991186964009818850001772797214273911730537951363433494579173982669976247915878267225271996527767271390013799220975283398673763013237029759482503102464) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 6857655085992111/685765508599211085406992031398401158759299079491541508764000248557024672719959118395646962442045349201660590667234013968119772982843080987903012964780708787451812337588750783066948774723991753080189067657794974398949244241113521123786594812548932026532556574571938698730267509225767960757581162756440064) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 re 2627630890081645/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (if (<=.f64 re 7141613623096499/1231312693637327475383720003129487931408741852202045208373384168882678805359287831606695820465153613775207124697088) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re)))))))))
(if (<=.f64 re -2480315093377859/107839786668602559178668060348078522694548577690162289924414440996864) (*.f64 1/2 (pow.f64 (/.f64 (neg.f64 im) (/.f64 re im)) 1/2)) (if (<=.f64 re -2338250816531375/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (*.f64 1/2 (sqrt.f64 (*.f64 im -2))) (if (<=.f64 re -6237000967295999/623700096729599941142616472824012051896078518886080481719546013261628716209051270557799364216448656590419514638810154763741386871372998018980991186964009818850001772797214273911730537951363433494579173982669976247915878267225271996527767271390013799220975283398673763013237029759482503102464) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 6857655085992111/685765508599211085406992031398401158759299079491541508764000248557024672719959118395646962442045349201660590667234013968119772982843080987903012964780708787451812337588750783066948774723991753080189067657794974398949244241113521123786594812548932026532556574571938698730267509225767960757581162756440064) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 re 2627630890081645/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (if (<=.f64 re 7141613623096499/1231312693637327475383720003129487931408741852202045208373384168882678805359287831606695820465153613775207124697088) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re)))))))))
(if (<=.f64 re -3666552746732487/215679573337205118357336120696157045389097155380324579848828881993728) (*.f64 1/2 (sqrt.f64 (*.f64 (neg.f64 (/.f64 im re)) im))) (if (<=.f64 re -912488123524439/9124881235244390437282343211400582649786457014497119861158385035798550334417354773011825622634742799557284619147188814621377409442750875996505322639444428376503989348720529900165748384493207552) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 re -7344692339087769/319334449525555169865019634085894170570792201669673206640407558789953902699034250525593274478821712174294791495070799239035590078142974985718267487725573027251200907672173708242806035431098077949224537079127027838932929672819339262222216842951687065201139345100120966662777359236855041588461568) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 4388899255034951/43888992550349509466047490009497674160595141087458656560896015907649579054077383577321405596290902348906277802702976893959665470901957183225792829745965362396915989605680050116284721582335472197132100330098878361532751631431265351922342068003131649698083620772604076718737120590449149488485194416412164096) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 re 811820827772699/492012622892544834271389790732894657662927476722860263779722814473019822087813969212041474774160597375290836201288857198210756815506783814402799101977552824568363543598917391308333275538335033741802194070267666507650193099632451067528125735714134272643866558464) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (if (<=.f64 re 3139847368775185/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re)))))))))
(if (<=.f64 re -3666552746732487/215679573337205118357336120696157045389097155380324579848828881993728) (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))) (if (<=.f64 re -912488123524439/9124881235244390437282343211400582649786457014497119861158385035798550334417354773011825622634742799557284619147188814621377409442750875996505322639444428376503989348720529900165748384493207552) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 re -7344692339087769/319334449525555169865019634085894170570792201669673206640407558789953902699034250525593274478821712174294791495070799239035590078142974985718267487725573027251200907672173708242806035431098077949224537079127027838932929672819339262222216842951687065201139345100120966662777359236855041588461568) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 4388899255034951/43888992550349509466047490009497674160595141087458656560896015907649579054077383577321405596290902348906277802702976893959665470901957183225792829745965362396915989605680050116284721582335472197132100330098878361532751631431265351922342068003131649698083620772604076718737120590449149488485194416412164096) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 re 811820827772699/492012622892544834271389790732894657662927476722860263779722814473019822087813969212041474774160597375290836201288857198210756815506783814402799101977552824568363543598917391308333275538335033741802194070267666507650193099632451067528125735714134272643866558464) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (if (<=.f64 re 3139847368775185/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re)))))))))
(if (<=.f64 re -3666552746732487/215679573337205118357336120696157045389097155380324579848828881993728) (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))) (if (<=.f64 re -912488123524439/9124881235244390437282343211400582649786457014497119861158385035798550334417354773011825622634742799557284619147188814621377409442750875996505322639444428376503989348720529900165748384493207552) (*.f64 1/2 (sqrt.f64 (*.f64 im -2))) (if (<=.f64 re -7344692339087769/319334449525555169865019634085894170570792201669673206640407558789953902699034250525593274478821712174294791495070799239035590078142974985718267487725573027251200907672173708242806035431098077949224537079127027838932929672819339262222216842951687065201139345100120966662777359236855041588461568) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 4388899255034951/43888992550349509466047490009497674160595141087458656560896015907649579054077383577321405596290902348906277802702976893959665470901957183225792829745965362396915989605680050116284721582335472197132100330098878361532751631431265351922342068003131649698083620772604076718737120590449149488485194416412164096) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 re 811820827772699/492012622892544834271389790732894657662927476722860263779722814473019822087813969212041474774160597375290836201288857198210756815506783814402799101977552824568363543598917391308333275538335033741802194070267666507650193099632451067528125735714134272643866558464) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (if (<=.f64 re 3139847368775185/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re)))))))))
(if (<=.f64 im -5237424972633827/3273390607896141870013189696827599152216642046043064789483291368096133796404674554883270092325904157150886684127560071009217256545885393053328527589376) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 im 2513963986864237/1675975991242824637446753124775730765934920727574049172215445180465220503759193372100234287270862928461253982273310756356719235351493321243304206125760512) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))
(if (<=.f64 im -6118522760578747/7198262071269114212496861612297570974191515389283066612961208916178940129074380592510465097766225371439873457013633432197133225688790879502413624289384262168215552) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im 3888264299683353/13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))
(if (<=.f64 im -6118522760578747/7198262071269114212496861612297570974191515389283066612961208916178940129074380592510465097766225371439873457013633432197133225688790879502413624289384262168215552) (*.f64 1/2 (sqrt.f64 (*.f64 im -2))) (if (<=.f64 im 3888264299683353/13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))
(if (<=.f64 im -3599131035634557/28118211215894977392565865673037386617935606989386978956879722328823984879196799189494004288149317857187005691459505594520051662846839373056303219880407274094592) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im 7541891960592711/209496998905353079680844140596966345741865090946756146526930647558152562969899171512529285908857866057656747784163844544589904418936665155413025765720064) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im)))))
(if (<=.f64 im -3599131035634557/28118211215894977392565865673037386617935606989386978956879722328823984879196799189494004288149317857187005691459505594520051662846839373056303219880407274094592) (*.f64 1/2 (sqrt.f64 (*.f64 im -2))) (if (<=.f64 im 7541891960592711/209496998905353079680844140596966345741865090946756146526930647558152562969899171512529285908857866057656747784163844544589904418936665155413025765720064) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im)))))
(if (<=.f64 im 3299577732759311/104748499452676539840422070298483172870932545473378073263465323779076281484949585756264642954428933028828373892081922272294952209468332577706512882860032) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 309 to 238 computations (23% saved)

soundness152.0ms (2.1%)

Algorithm
egg-herbie
Rules
835×fma-def_binary64
564×associate-/l*_binary64
510×log-div_binary64
462×fma-neg_binary64
455×times-frac_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01315
12515
23415
33615
02431951
16471768
220751600
376811600
01691168
14171103
214311058
353991048
01315
12515
23415
33615
Stop Event
saturated
node limit
node limit
saturated
Compiler

Compiled 158 to 111 computations (29.7% saved)

end142.0ms (2%)

Compiler

Compiled 295 to 210 computations (28.8% saved)

Profiling

Loading profile data...