Details

Time bar (total: 13.3s)

analyze216.0ms (1.6%)

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

Compiled 20 to 14 computations (30% saved)

sample2.5s (19.1%)

Results
1.5s6419×body256valid
444.0ms549×body4096valid
423.0ms637×body2048valid
150.0ms408×body1024valid
56.0ms243×body512valid
Bogosity

preprocess48.0ms (0.4%)

Algorithm
egg-herbie
Rules
318×fma-def_binary64
176×fma-neg_binary64
82×distribute-rgt-in_binary64
48×distribute-lft-in_binary64
48×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01930
13330
25130
38830
413530
518530
630530
747930
868930
984030
10109030
11125130
12128330
13128730
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) im))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) im))))
Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify34.0ms (0.3%)

Algorithm
egg-herbie
Rules
203×fma-def_binary64
142×fma-neg_binary64
49×distribute-rgt-in_binary64
43×cancel-sign-sub-inv_binary64
28×sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01315
12015
23315
35315
48015
510915
618015
728615
840715
949015
1060715
1167915
1270215
1374315
1479215
1585515
1689115
1790015
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))

eval1.0ms (0%)

Compiler

Compiled 27 to 19 computations (29.6% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 12 to 9 computations (25% saved)

localize35.0ms (0.3%)

Local error

Found 3 expressions with local error:

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

Compiled 39 to 16 computations (59% saved)

series15.0ms (0.1%)

Counts
3 → 56
Calls

18 calls:

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

rewrite76.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
873×pow1_binary64
812×add-log-exp_binary64
811×log1p-expm1-u_binary64
811×expm1-log1p-u_binary64
794×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify71.0ms (0.5%)

Algorithm
egg-herbie
Rules
773×fma-def_binary64
703×associate-*r*_binary64
657×associate-*l*_binary64
546×times-frac_binary64
426×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01741552
15331509
217241462
Stop Event
node limit
Counts
130 → 149
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -2 re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(*.f64 -1 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
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))))
Outputs
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 -1/2 re) (sqrt.f64 2))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re)) (sqrt.f64 (/.f64 1 im)))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 1/2 (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 re -1/2)) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (*.f64 (*.f64 (*.f64 re re) (sqrt.f64 2)) 1/2)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re)) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (/.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 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.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)))) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (*.f64 (*.f64 (*.f64 re re) (sqrt.f64 2)) 1/2)) (*.f64 (sqrt.f64 2) (*.f64 re -1/2)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 2)))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(fma.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/16 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))))
(fma.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/16 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (pow.f64 im 5)))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))) (fma.f64 (sqrt.f64 re) (*.f64 (/.f64 (*.f64 1/2 (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (pow.f64 im 5))) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/16 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)))))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re)) (*.f64 1/16 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 1/2) 2))))) (pow.f64 im 7))) (sqrt.f64 1/2))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (pow.f64 im 5)))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 (sqrt.f64 re) (+.f64 (/.f64 (*.f64 1/2 (sqrt.f64 2)) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 7)) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re)) (*.f64 -1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re)))))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5)))))) (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/16 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 7))) (+.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -1/32 (pow.f64 re 6))) re) (*.f64 1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re))))) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5))))) (fma.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/16 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)))))))
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(-.f64 (fma.f64 1/2 (/.f64 re (/.f64 im re)) im) re)
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 re im) re) im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(fma.f64 -1 re (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)))
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) im)) re)
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) im)) re)
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(/.f64 1/2 (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (/.f64 (pow.f64 im 4) (/.f64 (pow.f64 re 3) -1/8)))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (/.f64 (pow.f64 im 4) (/.f64 (pow.f64 re 3) -1/8))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (/.f64 (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)) (pow.f64 re 7)) (/.f64 (pow.f64 im 4) (/.f64 (pow.f64 re 3) -1/8)))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 im 8) 5/64) (pow.f64 re 7)) (*.f64 (/.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 4)))))
(*.f64 -2 re)
(*.f64 re -2)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(fma.f64 -1/2 (*.f64 (/.f64 im re) im) (*.f64 re -2))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re)))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2)))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2)))
(fma.f64 -1/2 (*.f64 (/.f64 im re) im) (fma.f64 re -2 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))))
(fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (*.f64 (/.f64 im re) im) (fma.f64 re -2 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(/.f64 1/2 (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (/.f64 (pow.f64 im 4) (/.f64 (pow.f64 re 3) -1/8)))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (/.f64 (pow.f64 im 4) (/.f64 (pow.f64 re 3) -1/8))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 re (pow.f64 im 8))) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re) (pow.f64 im 8)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (/.f64 (pow.f64 im 4) (/.f64 (pow.f64 re 3) -1/8)))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (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 (fma.f64 -1/2 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -1/32 (pow.f64 re 6))) re) (pow.f64 im 8)))))
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(-.f64 (fma.f64 1/2 (/.f64 re (/.f64 im re)) im) re)
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 re im) re) im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(fma.f64 -1 re (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)))
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) im)) re)
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) im)) re)
(*.f64 -1 im)
(neg.f64 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(fma.f64 -1 re (neg.f64 im))
(-.f64 (neg.f64 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 -1 re (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im)))
(-.f64 (-.f64 (/.f64 -1/2 (/.f64 im (*.f64 re re))) im) re)
(-.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (+.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(fma.f64 -1 re (fma.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im))))
(-.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (/.f64 -1/2 (/.f64 im (*.f64 re re)))) im) re)
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 re im) re) (*.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8)) (+.f64 im 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)))
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 im (/.f64 re im)) 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 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 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 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 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 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(-.f64 (*.f64 (/.f64 -1/2 re) (*.f64 im im)) 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 -1/2 (/.f64 (*.f64 im im) re))))
(-.f64 (fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8)) re)
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (-.f64 (*.f64 (/.f64 -1/2 re) (*.f64 im im)) 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 -1/2 (/.f64 (*.f64 im im) re)))))
(-.f64 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 -1/2 (/.f64 im (/.f64 re im)) (/.f64 -1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6))))) re)
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 im re) im) (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))) 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 im (/.f64 re im)) 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 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 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 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 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))
(-.f64 (/.f64 -1/2 (/.f64 im (*.f64 re re))) im)
(-.f64 (*.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 -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)))
(-.f64 (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (/.f64 -1/2 (/.f64 im (*.f64 re re)))) im)
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 re im) re) (*.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8)) 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 -1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) (-.f64 (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (/.f64 -1/2 (/.f64 im (*.f64 re re)))) im))
(-.f64 (fma.f64 -1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) (fma.f64 -1/2 (*.f64 (/.f64 re im) re) (*.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8))) im)

eval86.0ms (0.6%)

Compiler

Compiled 3306 to 2310 computations (30.1% saved)

prune39.0ms (0.3%)

Pruning

17 alts after pruning (16 fresh and 1 done)

PrunedKeptTotal
New13316149
Fresh000
Picked011
Done000
Total13317150
Error
0.4b
Counts
150 → 17
Alt Table
Click to see full alt table
StatusErrorProgram
47.9b
(*.f64 1/2 (*.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 2))))
34.3b
(*.f64 1/2 (pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2) 1/3))
47.9b
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
56.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (/.f64 1/2 re) (*.f64 im im)))))
60.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re re))))
56.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))))
32.1b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)))))
48.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im))))))
13.4b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2)))
31.4b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
47.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (-.f64 (*.f64 (/.f64 -1/2 re) (*.f64 im im)) re) re))))
46.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
31.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
53.1b
(*.f64 1/2 (fma.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/16 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)))))))
56.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 4))))))
13.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
29.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
Compiler

Compiled 512 to 415 computations (18.9% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 42 to 17 computations (59.5% saved)

series8.0ms (0.1%)

Counts
2 → 16
Calls

12 calls:

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

rewrite69.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
933×pow1_binary64
866×add-log-exp_binary64
865×log1p-expm1-u_binary64
865×expm1-log1p-u_binary64
846×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify67.0ms (0.5%)

Algorithm
egg-herbie
Rules
652×associate-*r*_binary64
609×associate-*l*_binary64
603×fma-def_binary64
309×times-frac_binary64
271×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01251061
13741009
21236916
36741916
Stop Event
node limit
Counts
52 → 66
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 im)))) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (+.f64 (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 re)))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (+.f64 (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (pow.f64 im 7) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 re))))))
Outputs
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 -1/2 re) (sqrt.f64 2))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re)))))))
(fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))) (fma.f64 1/2 (*.f64 (*.f64 re (*.f64 re (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (fma.f64 -1/2 re (*.f64 re (*.f64 (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4))) 1/2))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re)))) (*.f64 1/4 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))))
(fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (*.f64 re (*.f64 re (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 1/4))))))
(+.f64 (*.f64 (sqrt.f64 2) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (*.f64 re 1/2)))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(fma.f64 -1/16 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (sqrt.f64 1/2)) (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) im) (sqrt.f64 (/.f64 1 re))))
(fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) -1/16)))
(fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (pow.f64 im 3) -1/16))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 -1/16 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (sqrt.f64 1/2)) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (pow.f64 im 5)))) (sqrt.f64 re)) (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) im) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 re) (/.f64 (*.f64 1/2 (sqrt.f64 2)) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 5)) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)))))))
(fma.f64 (*.f64 (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5)) (/.f64 (sqrt.f64 2) (sqrt.f64 1/2))) (*.f64 1/2 (sqrt.f64 re)) (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (pow.f64 im 3) -1/16)))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (sqrt.f64 1/2)) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (+.f64 (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) re) (*.f64 1/16 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 1/2) 2))))) (pow.f64 im 7))))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (pow.f64 im 5)))) (sqrt.f64 re)) (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) im) (sqrt.f64 (/.f64 1 re))))))
(+.f64 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 -1/2 (/.f64 re (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))))) (*.f64 -1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re)))) (pow.f64 im 7)))) (/.f64 (*.f64 1/2 (sqrt.f64 2)) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 5)) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)))))) (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) -1/16))))
(fma.f64 1/2 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 7))) (-.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -1/32 (pow.f64 re 6))) re) (/.f64 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) -8) (*.f64 re re)))) (*.f64 (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5)) (/.f64 (sqrt.f64 2) (sqrt.f64 1/2))))) (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (pow.f64 im 3) -1/16)))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (*.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 1 im))))
(fma.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 1 im)) (sqrt.f64 im))
(fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 im)))) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re))) (*.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 1/2 (*.f64 re (*.f64 re (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))))) (*.f64 -1/2 re))))
(fma.f64 (sqrt.f64 (/.f64 1 im)) (fma.f64 -1/2 re (*.f64 re (*.f64 (*.f64 re (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4))) 1/2))) (sqrt.f64 im))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 re re))) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 1/4 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 1/2 (*.f64 re (*.f64 re (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))))) (*.f64 -1/2 re))) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 1/4))))
(+.f64 (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (*.f64 re 1/2))))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)) (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)))))
(fma.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/16 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)))))
(fma.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 (pow.f64 im 3) -1/16) (sqrt.f64 1/2))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (+.f64 (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 re)))))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)) (fma.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (sqrt.f64 1/2))) (*.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (/.f64 (sqrt.f64 1/2) (pow.f64 im 5)))))))
(fma.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))) (fma.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/16 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2))))))
(fma.f64 (sqrt.f64 re) (*.f64 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (sqrt.f64 1/2)) (*.f64 (pow.f64 im 5) 1/2)) (fma.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 (pow.f64 im 3) -1/16) (sqrt.f64 1/2)))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (+.f64 (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (pow.f64 im 7) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2)))))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5)) (sqrt.f64 1/2)) (sqrt.f64 re))))))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)) (fma.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (sqrt.f64 1/2))) (*.f64 1/2 (+.f64 (*.f64 (sqrt.f64 re) (/.f64 (pow.f64 im 7) (/.f64 (sqrt.f64 1/2) (+.f64 (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) re) (*.f64 1/16 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 1/2) 2)))))))) (*.f64 (sqrt.f64 re) (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (/.f64 (sqrt.f64 1/2) (pow.f64 im 5))))))))
(fma.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 (/.f64 (pow.f64 im 7) (sqrt.f64 1/2)) (-.f64 (/.f64 -1/2 (/.f64 re (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))))) (*.f64 -1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re))))) (*.f64 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (sqrt.f64 1/2)) (pow.f64 im 5)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/16 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 re) (fma.f64 (/.f64 (pow.f64 im 7) (sqrt.f64 1/2)) (-.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -1/32 (pow.f64 re 6))) re) (/.f64 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) -8) (*.f64 re re))) (*.f64 (pow.f64 im 5) (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (sqrt.f64 1/2))))) (fma.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 (pow.f64 im 3) -1/16) (sqrt.f64 1/2)))))

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 18 to 14 computations (22.2% saved)

series3.0ms (0%)

Counts
1 → 0
Calls

3 calls:

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

rewrite43.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
422×pow1_binary64
410×add-sqr-sqrt_binary64
401×*-un-lft-identity_binary64
392×add-log-exp_binary64
392×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify6.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
25 → 25
Calls
Call 1
Inputs
Outputs

localize24.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
8.3b
(*.f64 (/.f64 1/2 re) (*.f64 im im))
18.7b
(sqrt.f64 (*.f64 2 (*.f64 (/.f64 1/2 re) (*.f64 im im))))
Compiler

Compiled 50 to 29 computations (42% saved)

series8.0ms (0.1%)

Counts
2 → 36
Calls

12 calls:

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

rewrite58.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
956×pow1_binary64
886×add-log-exp_binary64
886×log1p-expm1-u_binary64
886×expm1-log1p-u_binary64
102×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify89.0ms (0.7%)

Algorithm
egg-herbie
Rules
967×fma-def_binary64
652×associate-*l/_binary64
553×associate-*r/_binary64
502×fma-neg_binary64
355×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
014356
128356
252356
3102356
4265356
5893356
62080356
73218356
85040356
97136356
107955356
Stop Event
node limit
Counts
85 → 53
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 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))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (/.f64 1/2 re) im) im)
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (/.f64 1/2 (/.f64 re im)))

localize26.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 re im)
0.0b
(pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2)
0.5b
(-.f64 (hypot.f64 re im) re)
20.8b
(pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2) 1/3)
Compiler

Compiled 56 to 28 computations (50% saved)

series36.0ms (0.3%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
10.0ms
re
@inf
(pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2) 1/3)
4.0ms
re
@-inf
(pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2) 1/3)
4.0ms
im
@0
(pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2) 1/3)
4.0ms
im
@inf
(pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2) 1/3)
4.0ms
re
@0
(pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3/2) 1/3)

rewrite245.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
487×log-prod_binary64
410×prod-diff_binary64
292×pow2_binary64
273×pow-prod-down_binary64
216×pow-to-exp_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify206.0ms (1.5%)

Algorithm
egg-herbie
Rules
425×associate-*r*_binary64
384×fma-def_binary64
362×cancel-sign-sub-inv_binary64
349×distribute-rgt-neg-in_binary64
346×associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04575291
115234595
256084112
Stop Event
node limit
Counts
99 → 142
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2)) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 9/8 (*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1 im)))) (*.f64 3/4 (*.f64 (pow.f64 (/.f64 1 (sqrt.f64 2)) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 8) 2) (pow.f64 (pow.f64 im 5) 1/6)))))) (pow.f64 re 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) im))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2)) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 9/8 (*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1 im)))) (*.f64 3/4 (*.f64 (pow.f64 (/.f64 1 (sqrt.f64 2)) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 8) 2) (pow.f64 (pow.f64 im 5) 1/6)))))) (pow.f64 re 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) im))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2)) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6))))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 -5/16 (*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 (sqrt.f64 8) 3) (pow.f64 (sqrt.f64 2) 2)) (sqrt.f64 im))) (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 2) 5) im)) 1/3) (*.f64 (-.f64 (*.f64 9/8 (*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1 im)))) (*.f64 3/4 (*.f64 (pow.f64 (/.f64 1 (sqrt.f64 2)) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 8) 2) (pow.f64 (pow.f64 im 5) 1/6)))))) (sqrt.f64 8)))))) (pow.f64 re 3)) (*.f64 (pow.f64 (sqrt.f64 2) 2) im))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 1/3)
(+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 1/3) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))))
(+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 1/3) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (*.f64 3/64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)))) (pow.f64 re 4))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (+.f64 (*.f64 -9/1024 (pow.f64 im 6)) (+.f64 (*.f64 1/480 (+.f64 (*.f64 45/2 (pow.f64 im 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (*.f64 -15/4 (pow.f64 im 6))))) (*.f64 -3/128 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (+.f64 (*.f64 -1/512 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 6))) (*.f64 -1/4 (*.f64 (-.f64 (*.f64 (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (*.f64 3/64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)))) (pow.f64 im 2))))) (pow.f64 re 6)))) (+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 1/3) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (*.f64 3/64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)))) (pow.f64 re 4)))))))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1/3)
(+.f64 (*.f64 1/8 (*.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1/3))
(+.f64 (*.f64 1/8 (*.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))) (+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1/3) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))))) (*.f64 3/64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 4)))) (pow.f64 re 4))))))
(+.f64 (*.f64 1/8 (*.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))) (+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1/3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))))) (*.f64 3/64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 4)))) (pow.f64 re 4)))) (*.f64 1/3 (*.f64 (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 3/128 (*.f64 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))) (pow.f64 im 2))) (+.f64 (*.f64 9/1024 (pow.f64 im 6)) (*.f64 1/480 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6)))))))) (+.f64 (*.f64 1/4 (*.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4)))) (*.f64 9/128 (pow.f64 im 4)))) (*.f64 3/64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 4)))) (pow.f64 im 2))) (*.f64 1/512 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 6))))) (pow.f64 re 6)) (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)) 1/3))))))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 1/3)
(+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 1/3) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2)) 1/3) (*.f64 (-.f64 (*.f64 27/128 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 4))) (*.f64 3/64 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 4)))) (pow.f64 im 4)))) (+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 1/3) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2)) 1/3) (*.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (-.f64 (*.f64 1/480 (+.f64 (*.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 75/4 (/.f64 1 (pow.f64 re 6))))) (*.f64 63/1024 (/.f64 1 (pow.f64 re 6))))) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 27/128 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 4))) (*.f64 3/64 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 4)))) (pow.f64 re 2))) (*.f64 -1/512 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 6))))) (pow.f64 im 6)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2)) 1/3) (*.f64 (-.f64 (*.f64 27/128 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 4))) (*.f64 3/64 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 4)))) (pow.f64 im 4)))) (+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 1/3) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))))))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 1/3)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 7)) 1/9) (/.f64 re im))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 1/3))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 7)) 1/9) (/.f64 re im))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (*.f64 3/4 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 17)) 1/9) (pow.f64 re 2)))) (pow.f64 im 2)))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 1/3)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 7)) 1/9) (/.f64 re im))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (*.f64 3/4 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 17)) 1/9) (pow.f64 re 2)))) (pow.f64 im 2)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (+.f64 (*.f64 -9/16 (pow.f64 re 3)) (+.f64 (*.f64 -9/8 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/4 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 4)) 1/9) (*.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (*.f64 3/4 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 17)) 1/9) (pow.f64 re 2)))) re))) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 7)) 1/3) (pow.f64 re 3))))) (pow.f64 im 3)))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 1/3))))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 1/3)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 7)) 1/9) (/.f64 re im))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 1/3))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (*.f64 3/4 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 17)) 1/9) (pow.f64 re 2)))) (pow.f64 im 2)))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 7)) 1/9) (/.f64 re im))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 1/3)))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 -9/16 (pow.f64 re 3)) (+.f64 (*.f64 -9/8 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/4 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3))))))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 7)) 1/3) (pow.f64 re 3))) (*.f64 -1 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 4)) 1/9) (*.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (*.f64 3/4 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 17)) 1/9) (pow.f64 re 2)))) re))))) (pow.f64 im 3)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (*.f64 3/4 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 17)) 1/9) (pow.f64 re 2)))) (pow.f64 im 2)))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 7)) 1/9) (/.f64 re im))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 1/3))))
(*.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3)))
(+.f64 (*.f64 -3/2 (*.f64 (*.f64 re (sqrt.f64 8)) (sqrt.f64 im))) (*.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3))))
(+.f64 (*.f64 9/8 (*.f64 (*.f64 (pow.f64 re 2) (sqrt.f64 8)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -3/2 (*.f64 (*.f64 re (sqrt.f64 8)) (sqrt.f64 im))) (*.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3)))))
(+.f64 (*.f64 9/8 (*.f64 (*.f64 (pow.f64 re 2) (sqrt.f64 8)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -3/2 (*.f64 (*.f64 re (sqrt.f64 8)) (sqrt.f64 im))) (+.f64 (*.f64 -5/16 (*.f64 (*.f64 (pow.f64 re 3) (sqrt.f64 8)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))))
(+.f64 (/.f64 (*.f64 (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (pow.f64 re 4)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))))
(+.f64 (/.f64 (*.f64 (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (pow.f64 re 4)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -9/1024 (pow.f64 im 6)) (+.f64 (*.f64 1/480 (+.f64 (*.f64 45/2 (pow.f64 im 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (*.f64 -15/4 (pow.f64 im 6))))) (*.f64 -3/128 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (pow.f64 re 6)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re))))))
(+.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (*.f64 3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4)))) (*.f64 9/128 (pow.f64 im 4)))) (pow.f64 re 4))))
(+.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 9/1024 (pow.f64 im 6)) (+.f64 (*.f64 1/480 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6))))) (*.f64 3/128 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))) (pow.f64 im 2)))))) (pow.f64 re 6)) (+.f64 (*.f64 3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4)))) (*.f64 9/128 (pow.f64 im 4)))) (pow.f64 re 4)))))
(exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (*.f64 27/128 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)) (pow.f64 re 4)))))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (*.f64 (-.f64 (*.f64 1/480 (+.f64 (*.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 75/4 (/.f64 1 (pow.f64 re 6))))) (*.f64 63/1024 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 6))) (+.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (*.f64 27/128 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)) (pow.f64 re 4))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 re (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) im)) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))))
(+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (pow.f64 im 2)) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 re (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) im)) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 re (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) im)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -9/16 (pow.f64 re 3)) (+.f64 (*.f64 -9/8 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/4 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) (pow.f64 im 3)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) (pow.f64 im 2)) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))
(+.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (*.f64 3/2 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) re) im)))
(+.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) re) im)) (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (pow.f64 im 2))))
(+.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) re) im)) (+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (pow.f64 im 2)) (*.f64 -1 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 -9/16 (pow.f64 re 3)) (+.f64 (*.f64 -9/8 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/4 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3))))))) (pow.f64 im 3))))))
Outputs
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2)) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2))) (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6)) (*.f64 -1/2 (cbrt.f64 1/2))))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 9/8 (*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1 im)))) (*.f64 3/4 (*.f64 (pow.f64 (/.f64 1 (sqrt.f64 2)) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 8) 2) (pow.f64 (pow.f64 im 5) 1/6)))))) (pow.f64 re 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) im))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2)) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 1/3 (*.f64 (/.f64 (+.f64 (*.f64 (*.f64 9/8 (sqrt.f64 8)) (sqrt.f64 (/.f64 1 im))) (*.f64 -3/4 (*.f64 (cbrt.f64 (/.f64 1 (sqrt.f64 2))) (*.f64 (pow.f64 (sqrt.f64 8) 2) (pow.f64 (pow.f64 im 5) 1/6))))) (pow.f64 (sqrt.f64 2) 2)) (/.f64 (*.f64 re re) im)) (fma.f64 -1/2 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2))) (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6)) (*.f64 -1/2 (cbrt.f64 1/2)))) (*.f64 1/6 (/.f64 (*.f64 (fma.f64 9/8 (*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1 im))) (*.f64 (*.f64 -3/4 (cbrt.f64 (/.f64 1 (sqrt.f64 2)))) (*.f64 8 (pow.f64 (pow.f64 im 5) 1/6)))) (*.f64 re re)) im)))
(+.f64 (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6)) (*.f64 -1/2 (cbrt.f64 1/2)))) (*.f64 1/6 (/.f64 (*.f64 (fma.f64 (sqrt.f64 8) (*.f64 (sqrt.f64 (/.f64 1 im)) 9/8) (*.f64 (*.f64 -3/4 (cbrt.f64 (/.f64 1 (sqrt.f64 2)))) (*.f64 8 (pow.f64 (pow.f64 im 5) 1/6)))) (*.f64 re re)) im)))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 9/8 (*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1 im)))) (*.f64 3/4 (*.f64 (pow.f64 (/.f64 1 (sqrt.f64 2)) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 8) 2) (pow.f64 (pow.f64 im 5) 1/6)))))) (pow.f64 re 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) im))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2)) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6))))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 -5/16 (*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 (sqrt.f64 8) 3) (pow.f64 (sqrt.f64 2) 2)) (sqrt.f64 im))) (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 2) 5) im)) 1/3) (*.f64 (-.f64 (*.f64 9/8 (*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1 im)))) (*.f64 3/4 (*.f64 (pow.f64 (/.f64 1 (sqrt.f64 2)) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 8) 2) (pow.f64 (pow.f64 im 5) 1/6)))))) (sqrt.f64 8)))))) (pow.f64 re 3)) (*.f64 (pow.f64 (sqrt.f64 2) 2) im))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 1/3 (*.f64 (/.f64 (+.f64 (*.f64 (*.f64 9/8 (sqrt.f64 8)) (sqrt.f64 (/.f64 1 im))) (*.f64 -3/4 (*.f64 (cbrt.f64 (/.f64 1 (sqrt.f64 2))) (*.f64 (pow.f64 (sqrt.f64 8) 2) (pow.f64 (pow.f64 im 5) 1/6))))) (pow.f64 (sqrt.f64 2) 2)) (/.f64 (*.f64 re re) im)) (fma.f64 -1/2 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2))) (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6))) (fma.f64 1/3 (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 -5/16 (sqrt.f64 8)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 -1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 8) 3) (sqrt.f64 im)) (pow.f64 (sqrt.f64 2) 2)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 5)) im)) (*.f64 (sqrt.f64 8) (+.f64 (*.f64 (*.f64 9/8 (sqrt.f64 8)) (sqrt.f64 (/.f64 1 im))) (*.f64 -3/4 (*.f64 (cbrt.f64 (/.f64 1 (sqrt.f64 2))) (*.f64 (pow.f64 (sqrt.f64 8) 2) (pow.f64 (pow.f64 im 5) 1/6)))))))))) (pow.f64 (sqrt.f64 2) 2)) (/.f64 (pow.f64 re 3) im)) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (*.f64 1/6 (/.f64 (*.f64 (fma.f64 9/8 (*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1 im))) (*.f64 (*.f64 -3/4 (cbrt.f64 (/.f64 1 (sqrt.f64 2)))) (*.f64 8 (pow.f64 (pow.f64 im 5) 1/6)))) (*.f64 re re)) im)) (fma.f64 -1/2 (*.f64 (cbrt.f64 1/2) (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/6 (/.f64 (*.f64 (-.f64 (*.f64 (sqrt.f64 8) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) -5/16)) (-.f64 (*.f64 (sqrt.f64 im) (*.f64 -1/8 (/.f64 (sqrt.f64 8) 1/4))) (*.f64 (sqrt.f64 8) (*.f64 (fma.f64 9/8 (*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1 im))) (*.f64 (*.f64 -3/4 (cbrt.f64 (/.f64 1 (sqrt.f64 2)))) (*.f64 8 (pow.f64 (pow.f64 im 5) 1/6)))) (cbrt.f64 (/.f64 (/.f64 1 im) (pow.f64 (sqrt.f64 2) 5))))))) (pow.f64 re 3)) im)))))
(+.f64 (*.f64 1/6 (/.f64 (*.f64 (fma.f64 (sqrt.f64 8) (*.f64 (sqrt.f64 (/.f64 1 im)) 9/8) (*.f64 (*.f64 -3/4 (cbrt.f64 (/.f64 1 (sqrt.f64 2)))) (*.f64 8 (pow.f64 (pow.f64 im 5) 1/6)))) (*.f64 re re)) im)) (fma.f64 -1/2 (*.f64 (cbrt.f64 1/2) (*.f64 (*.f64 re (sqrt.f64 8)) (pow.f64 im 1/6))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/6 (/.f64 (*.f64 (+.f64 (fma.f64 (sqrt.f64 8) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) -5/16) (*.f64 (sqrt.f64 im) (*.f64 (/.f64 (sqrt.f64 8) 1/4) 1/8))) (*.f64 (sqrt.f64 8) (*.f64 (fma.f64 (sqrt.f64 8) (*.f64 (sqrt.f64 (/.f64 1 im)) 9/8) (*.f64 (*.f64 -3/4 (cbrt.f64 (/.f64 1 (sqrt.f64 2)))) (*.f64 8 (pow.f64 (pow.f64 im 5) 1/6)))) (cbrt.f64 (/.f64 (/.f64 1 im) (pow.f64 (sqrt.f64 2) 5)))))) (pow.f64 re 3)) im)))))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))))
(cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))
(cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))
(+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 1/3) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))))
(+.f64 (cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (*.f64 (*.f64 -1/8 (cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))))) (/.f64 (*.f64 im im) (*.f64 re re))))
(fma.f64 (*.f64 -1/8 (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))) (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))))
(fma.f64 (*.f64 -1/8 (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))) (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2))))
(+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 1/3) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (*.f64 3/64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)))) (pow.f64 re 4))))))
(+.f64 (cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (fma.f64 -1/8 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (/.f64 (*.f64 im im) (*.f64 re re))) (*.f64 1/3 (*.f64 (/.f64 (+.f64 (*.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 1/16 (*.f64 (pow.f64 im 4) 9/4))) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (*.f64 -3/64 (*.f64 (pow.f64 im 4) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))))) (pow.f64 re 4)) (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2)))))))
(+.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2))) (*.f64 (/.f64 (fma.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 9/64)) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) -3/64) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))) (pow.f64 re 4)) 1/3)) (fma.f64 (*.f64 -1/8 (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))) (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))))
(+.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) 2))) (*.f64 (/.f64 (fma.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 9/64)) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (*.f64 (*.f64 (pow.f64 im 4) -3/64) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))) (pow.f64 re 4)) 1/3)) (fma.f64 (*.f64 -1/8 (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))) (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (+.f64 (*.f64 -9/1024 (pow.f64 im 6)) (+.f64 (*.f64 1/480 (+.f64 (*.f64 45/2 (pow.f64 im 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (*.f64 -15/4 (pow.f64 im 6))))) (*.f64 -3/128 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (+.f64 (*.f64 -1/512 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 6))) (*.f64 -1/4 (*.f64 (-.f64 (*.f64 (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (*.f64 3/64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)))) (pow.f64 im 2))))) (pow.f64 re 6)))) (+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 1/3) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (*.f64 3/64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)))) (pow.f64 re 4)))))))
(fma.f64 1/3 (*.f64 (/.f64 (-.f64 (*.f64 (fma.f64 -9/1024 (pow.f64 im 6) (fma.f64 1/480 (fma.f64 45/2 (pow.f64 im 6) (fma.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (*.f64 im im)) (*.f64 (pow.f64 im 6) -15/4))) (*.f64 -3/128 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 9/4))))) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (fma.f64 -1/512 (*.f64 (pow.f64 im 6) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (*.f64 -1/4 (*.f64 (*.f64 im im) (+.f64 (*.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 1/16 (*.f64 (pow.f64 im 4) 9/4))) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (*.f64 -3/64 (*.f64 (pow.f64 im 4) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))))))))) (pow.f64 re 6)) (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2)))) (+.f64 (cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (fma.f64 -1/8 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (/.f64 (*.f64 im im) (*.f64 re re))) (*.f64 1/3 (*.f64 (/.f64 (+.f64 (*.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 1/16 (*.f64 (pow.f64 im 4) 9/4))) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (*.f64 -3/64 (*.f64 (pow.f64 im 4) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))))) (pow.f64 re 4)) (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2))))))))
(+.f64 (fma.f64 1/3 (*.f64 (/.f64 (fma.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 9/64)) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) -3/64) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))) (pow.f64 re 4)) (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2)))) (*.f64 (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (*.f64 (/.f64 im (/.f64 (*.f64 re re) im)) -1/8))) (fma.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2)))) (/.f64 (-.f64 (*.f64 (fma.f64 -9/1024 (pow.f64 im 6) (fma.f64 1/480 (fma.f64 (pow.f64 im 6) 45/2 (fma.f64 (pow.f64 im 6) -15/4 (/.f64 -720 (/.f64 (*.f64 im im) (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)))))) (*.f64 -3/128 (*.f64 (pow.f64 im 6) 9/4)))) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (fma.f64 -1/512 (*.f64 (pow.f64 im 6) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (*.f64 (fma.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 9/64)) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) -3/64) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))) (*.f64 (*.f64 im im) -1/4)))) (pow.f64 re 6)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))))
(+.f64 (fma.f64 1/3 (*.f64 (/.f64 (fma.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 9/64)) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (*.f64 (*.f64 (pow.f64 im 4) -3/64) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))) (pow.f64 re 4)) (cbrt.f64 (/.f64 1 (pow.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) 2)))) (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2))) (*.f64 (/.f64 im (/.f64 (*.f64 re re) im)) -1/8))) (fma.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) 2)))) (/.f64 (+.f64 (fma.f64 (fma.f64 -9/1024 (pow.f64 im 6) (fma.f64 1/480 (fma.f64 (pow.f64 im 6) 45/2 (fma.f64 (pow.f64 im 6) -15/4 (/.f64 -720 (/.f64 (*.f64 im im) (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)))))) (*.f64 -3/128 (*.f64 (pow.f64 im 6) 9/4)))) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (*.f64 (pow.f64 im 6) (*.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) 1/512))) (*.f64 (*.f64 im (*.f64 im (fma.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 9/64)) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (*.f64 (*.f64 (pow.f64 im 4) -3/64) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))))) 1/4)) (pow.f64 re 6)) (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))))
(cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))))
(cbrt.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)))
(+.f64 (*.f64 1/8 (*.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1/3))
(fma.f64 1/8 (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))))) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re)))))))
(fma.f64 1/8 (*.f64 (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))))) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))))))
(fma.f64 1/8 (*.f64 (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)))) (cbrt.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2))))
(+.f64 (*.f64 1/8 (*.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))) (+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1/3) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))))) (*.f64 3/64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 4)))) (pow.f64 re 4))))))
(+.f64 (fma.f64 1/8 (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))))) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))))) (*.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2)))) (/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (fma.f64 1/16 (*.f64 (pow.f64 im 4) -9/4) (*.f64 9/128 (pow.f64 im 4)))) (*.f64 (*.f64 3/64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 4))) (pow.f64 re 4))))
(fma.f64 1/8 (*.f64 (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2))) (/.f64 (fma.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -9/64)) (*.f64 (*.f64 (pow.f64 im 4) (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))))) -3/64)) (pow.f64 re 4))) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))))))
(fma.f64 1/8 (*.f64 (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) 2))) (/.f64 (fma.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -9/64)) (*.f64 (pow.f64 im 4) (*.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) -3/64))) (pow.f64 re 4))) (cbrt.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)))))
(+.f64 (*.f64 1/8 (*.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))) (+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 1/3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))))) (*.f64 3/64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 4)))) (pow.f64 re 4)))) (*.f64 1/3 (*.f64 (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 3/128 (*.f64 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))) (pow.f64 im 2))) (+.f64 (*.f64 9/1024 (pow.f64 im 6)) (*.f64 1/480 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6)))))))) (+.f64 (*.f64 1/4 (*.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4)))) (*.f64 9/128 (pow.f64 im 4)))) (*.f64 3/64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 4)))) (pow.f64 im 2))) (*.f64 1/512 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 6))))) (pow.f64 re 6)) (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)) 1/3))))))
(+.f64 (fma.f64 1/8 (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))))) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))))) (*.f64 1/3 (+.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2))) (/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (fma.f64 1/16 (*.f64 (pow.f64 im 4) -9/4) (*.f64 9/128 (pow.f64 im 4)))) (*.f64 (*.f64 3/64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 4))) (pow.f64 re 4))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) 2))) (/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (fma.f64 9/1024 (pow.f64 im 6) (fma.f64 1/480 (fma.f64 15/4 (pow.f64 im 6) (*.f64 (pow.f64 im 6) 135/4)) (*.f64 3/128 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4)))))) (fma.f64 1/4 (*.f64 (*.f64 im im) (-.f64 (*.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (fma.f64 1/16 (*.f64 (pow.f64 im 4) -9/4) (*.f64 9/128 (pow.f64 im 4)))) (*.f64 (*.f64 3/64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 4)))) (*.f64 1/512 (*.f64 (pow.f64 im 6) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))))))) (pow.f64 re 6))))))
(fma.f64 1/8 (*.f64 (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) 2))) (+.f64 (/.f64 (fma.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -9/64)) (*.f64 (*.f64 (pow.f64 im 4) (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))))) -3/64)) (pow.f64 re 4)) (/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (fma.f64 3/128 (*.f64 (pow.f64 im 6) -9/4) (fma.f64 1/480 (*.f64 (pow.f64 im 6) 75/2) (*.f64 (pow.f64 im 6) 9/1024)))) (fma.f64 1/4 (*.f64 im (*.f64 im (fma.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -9/64)) (*.f64 (*.f64 (pow.f64 im 4) (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))))) -3/64)))) (*.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (*.f64 (pow.f64 im 6) 1/512)))) (pow.f64 re 6)))) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))))))
(fma.f64 1/8 (*.f64 (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) 2))) (+.f64 (/.f64 (fma.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -9/64)) (*.f64 (pow.f64 im 4) (*.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) -3/64))) (pow.f64 re 4)) (/.f64 (+.f64 (fma.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) (fma.f64 3/128 (*.f64 (pow.f64 im 6) -9/4) (fma.f64 1/480 (*.f64 (pow.f64 im 6) 75/2) (*.f64 (pow.f64 im 6) 9/1024))) (*.f64 (*.f64 (pow.f64 im 6) (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2))) -1/512)) (*.f64 (*.f64 im im) (*.f64 (fma.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -9/64)) (*.f64 (pow.f64 im 4) (*.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) -3/64))) -1/4))) (pow.f64 re 6)))) (cbrt.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)))))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))))
(cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))
(cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))
(+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 1/3) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))))
(+.f64 (cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (*.f64 (*.f64 -1/8 (cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))))) (/.f64 (*.f64 im im) (*.f64 re re))))
(fma.f64 (*.f64 -1/8 (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))) (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))))
(fma.f64 (*.f64 -1/8 (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))) (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2)) 1/3) (*.f64 (-.f64 (*.f64 27/128 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 4))) (*.f64 3/64 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 4)))) (pow.f64 im 4)))) (+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 1/3) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2))) (*.f64 (pow.f64 im 4) (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (pow.f64 re 4)) 21/128))) (+.f64 (cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (*.f64 (*.f64 -1/8 (cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))))) (/.f64 (*.f64 im im) (*.f64 re re)))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2))) (*.f64 (pow.f64 im 4) (/.f64 (*.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 21/128) (pow.f64 re 4)))) (fma.f64 (*.f64 -1/8 (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))) (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) 2))) (*.f64 (pow.f64 im 4) (/.f64 (*.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) 21/128) (pow.f64 re 4)))) (fma.f64 (*.f64 -1/8 (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))) (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2)) 1/3) (*.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (-.f64 (*.f64 1/480 (+.f64 (*.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 75/4 (/.f64 1 (pow.f64 re 6))))) (*.f64 63/1024 (/.f64 1 (pow.f64 re 6))))) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 27/128 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 4))) (*.f64 3/64 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 4)))) (pow.f64 re 2))) (*.f64 -1/512 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 6))))) (pow.f64 im 6)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 2)) 1/3) (*.f64 (-.f64 (*.f64 27/128 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 4))) (*.f64 3/64 (/.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 re 4)))) (pow.f64 im 4)))) (+.f64 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) 1/3) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))) 1/3) (/.f64 (pow.f64 im 2) (pow.f64 re 2)))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2))) (*.f64 (pow.f64 im 6) (fma.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (fma.f64 1/480 (fma.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 75/4 (pow.f64 re 6))) (neg.f64 (/.f64 63/1024 (pow.f64 re 6)))) (neg.f64 (fma.f64 -1/4 (/.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (pow.f64 re 4)) 21/128) (*.f64 re re)) (*.f64 -1/512 (/.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (pow.f64 re 6)))))))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) 2))) (*.f64 (pow.f64 im 4) (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (pow.f64 re 4)) 21/128))) (+.f64 (cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (*.f64 (*.f64 -1/8 (cbrt.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))))) (/.f64 (*.f64 im im) (*.f64 re re))))))
(+.f64 (fma.f64 (*.f64 -1/8 (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))) (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))) (*.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 2)))) (+.f64 (*.f64 (pow.f64 im 6) (-.f64 (*.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (+.f64 (fma.f64 1/480 (fma.f64 -720 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -45 (pow.f64 re 6))) (/.f64 5/128 (pow.f64 re 6))) (/.f64 -63/1024 (pow.f64 re 6)))) (fma.f64 -1/512 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (pow.f64 re 6)) (*.f64 (/.f64 -1/4 re) (/.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 21/128) (pow.f64 re 4)) re))))) (*.f64 (pow.f64 im 4) (/.f64 (*.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) 21/128) (pow.f64 re 4))))))
(+.f64 (fma.f64 (*.f64 -1/8 (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))) (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))) (*.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) 2)))) (+.f64 (*.f64 (pow.f64 im 6) (+.f64 (fma.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (+.f64 (fma.f64 1/480 (fma.f64 -720 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -45 (pow.f64 re 6))) (/.f64 5/128 (pow.f64 re 6))) (/.f64 -63/1024 (pow.f64 re 6))) (*.f64 (/.f64 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (pow.f64 re 4)) (/.f64 (*.f64 re re) 21/128)) 1/4)) (*.f64 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (pow.f64 re 6)) 1/512))) (*.f64 (pow.f64 im 4) (/.f64 (*.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) 21/128) (pow.f64 re 4))))))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))))
(cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))))
(cbrt.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 7)) 1/9) (/.f64 re im))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 1/3))
(fma.f64 -1/2 (*.f64 (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 7) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 7) 1/18)) (/.f64 re im)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im)))))))
(fma.f64 -1/2 (*.f64 (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 7) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 7) 1/18)) (/.f64 re im)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2)))))
(fma.f64 -1/2 (*.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 7) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 7) 1/18)) (/.f64 re im)) (cbrt.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 7)) 1/9) (/.f64 re im))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (*.f64 3/4 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 17)) 1/9) (pow.f64 re 2)))) (pow.f64 im 2)))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 1/3)))
(fma.f64 -1/2 (*.f64 (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 7) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 7) 1/18)) (/.f64 re im)) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2))) (/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (fma.f64 3/4 (*.f64 0 (*.f64 re re)) (*.f64 9/8 (*.f64 re re)))) (*.f64 (*.f64 3/4 (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 17) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 17) 1/18))) (*.f64 re re))) (*.f64 im im))) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))))))
(fma.f64 -1/2 (*.f64 (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 7) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 7) 1/18)) (/.f64 re im)) (fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 2))) im) (/.f64 (fma.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) (fma.f64 9/8 (*.f64 re re) 0) (*.f64 (*.f64 (*.f64 re re) -3/4) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 17) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 17) 1/18)))) im)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))))))
(fma.f64 -1/2 (*.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 7) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 7) 1/18)) (/.f64 re im)) (fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 2))) im) (/.f64 (fma.f64 9/8 (*.f64 (*.f64 re re) (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2))) (*.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 17) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 17) 1/18)) (*.f64 (*.f64 re re) -3/4))) im)) (cbrt.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 7)) 1/9) (/.f64 re im))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (*.f64 3/4 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 17)) 1/9) (pow.f64 re 2)))) (pow.f64 im 2)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (+.f64 (*.f64 -9/16 (pow.f64 re 3)) (+.f64 (*.f64 -9/8 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/4 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 4)) 1/9) (*.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (*.f64 3/4 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 17)) 1/9) (pow.f64 re 2)))) re))) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 7)) 1/3) (pow.f64 re 3))))) (pow.f64 im 3)))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) 1/3))))
(fma.f64 -1/2 (*.f64 (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 7) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 7) 1/18)) (/.f64 re im)) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2))) (/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (fma.f64 3/4 (*.f64 0 (*.f64 re re)) (*.f64 9/8 (*.f64 re re)))) (*.f64 (*.f64 3/4 (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 17) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 17) 1/18))) (*.f64 re re))) (*.f64 im im))) (fma.f64 1/3 (/.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 2))) (-.f64 (*.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (fma.f64 -9/16 (pow.f64 re 3) (fma.f64 -9/8 (*.f64 re (*.f64 0 (*.f64 re re))) (*.f64 1/4 (*.f64 (pow.f64 re 3) 1))))) (fma.f64 -1 (*.f64 (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 4) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 4) 1/18)) (*.f64 re (-.f64 (*.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (fma.f64 3/4 (*.f64 0 (*.f64 re re)) (*.f64 9/8 (*.f64 re re)))) (*.f64 (*.f64 3/4 (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 17) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 17) 1/18))) (*.f64 re re))))) (*.f64 -1/8 (*.f64 (pow.f64 re 3) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) 7))))))) (pow.f64 im 3)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im)))))))))
(+.f64 (*.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 2)))) (+.f64 (/.f64 (fma.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) (fma.f64 9/8 (*.f64 re re) 0) (*.f64 (*.f64 (*.f64 re re) -3/4) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 17) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 17) 1/18)))) (*.f64 im im)) (/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) (fma.f64 (pow.f64 re 3) -9/16 (fma.f64 (pow.f64 re 3) 1/4 (*.f64 re 0)))) (-.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 7)) (*.f64 (pow.f64 re 3) -1/8)) (*.f64 re (*.f64 (fma.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) (fma.f64 9/8 (*.f64 re re) 0) (*.f64 (*.f64 (*.f64 re re) -3/4) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 17) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 17) 1/18)))) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 4) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 4) 1/18)))))) (pow.f64 im 3)))) (fma.f64 -1/2 (*.f64 (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 7) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) 7) 1/18)) (/.f64 re im)) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))))))
(+.f64 (*.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 2)))) (+.f64 (/.f64 (fma.f64 9/8 (*.f64 (*.f64 re re) (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2))) (*.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 17) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 17) 1/18)) (*.f64 (*.f64 re re) -3/4))) (*.f64 im im)) (/.f64 (+.f64 (fma.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) (fma.f64 (pow.f64 re 3) -9/16 (fma.f64 (pow.f64 re 3) 1/4 0)) (*.f64 re (*.f64 (fma.f64 9/8 (*.f64 (*.f64 re re) (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2))) (*.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 17) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 17) 1/18)) (*.f64 (*.f64 re re) -3/4))) (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 4) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 4) 1/18))))) (*.f64 (pow.f64 re 3) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 7)) 1/8))) (pow.f64 im 3)))) (fma.f64 -1/2 (*.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 7) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) 7) 1/18)) (/.f64 re im)) (cbrt.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)))))
(pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 1/3)
(cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))))
(cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 7)) 1/9) (/.f64 re im))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 1/3))
(fma.f64 1/2 (*.f64 (/.f64 re im) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 7) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 7) 1/18))) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im)))))))
(fma.f64 1/2 (*.f64 (/.f64 re im) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 7) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 7) 1/18))) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))))
(fma.f64 1/2 (*.f64 (/.f64 re im) (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 7) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 7) 1/18))) (cbrt.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (*.f64 3/4 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 17)) 1/9) (pow.f64 re 2)))) (pow.f64 im 2)))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 7)) 1/9) (/.f64 re im))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 1/3)))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2))) (/.f64 (+.f64 (*.f64 (fma.f64 3/4 (*.f64 0 (*.f64 re re)) (*.f64 9/8 (*.f64 re re))) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im)))))) (*.f64 -3/4 (*.f64 (*.f64 re re) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 17) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 17) 1/18))))) (*.f64 im im))) (fma.f64 1/2 (*.f64 (/.f64 re im) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 7) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 7) 1/18))) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (exp.f64 3/2) (*.f64 2 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))))) (/.f64 (fma.f64 (fma.f64 9/8 (*.f64 re re) 0) (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) (*.f64 (*.f64 (*.f64 re re) -3/4) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 17) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 17) 1/18)))) (*.f64 im im))) (fma.f64 1/2 (*.f64 (/.f64 re im) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 7) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 7) 1/18))) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 2))) (/.f64 (fma.f64 9/8 (*.f64 (*.f64 re re) (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2))) (*.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 17) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 17) 1/18)) (*.f64 (*.f64 re re) -3/4))) (*.f64 im im))) (fma.f64 1/2 (*.f64 (/.f64 re im) (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 7) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 7) 1/18))) (cbrt.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)))))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 -9/16 (pow.f64 re 3)) (+.f64 (*.f64 -9/8 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/4 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3))))))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 7)) 1/3) (pow.f64 re 3))) (*.f64 -1 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 4)) 1/9) (*.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (*.f64 3/4 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 17)) 1/9) (pow.f64 re 2)))) re))))) (pow.f64 im 3)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 2)) 1/3) (/.f64 (-.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (*.f64 3/4 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 17)) 1/9) (pow.f64 re 2)))) (pow.f64 im 2)))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 7)) 1/9) (/.f64 re im))) (pow.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) 1/3))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2))) (/.f64 (-.f64 (*.f64 (fma.f64 -9/16 (pow.f64 re 3) (fma.f64 -9/8 (*.f64 re (*.f64 0 (*.f64 re re))) (*.f64 1/4 (*.f64 (pow.f64 re 3) 1)))) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im)))))) (fma.f64 -1/8 (*.f64 (pow.f64 re 3) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 7))) (neg.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 4) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 4) 1/18)) (*.f64 re (+.f64 (*.f64 (fma.f64 3/4 (*.f64 0 (*.f64 re re)) (*.f64 9/8 (*.f64 re re))) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im)))))) (*.f64 -3/4 (*.f64 (*.f64 re re) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 17) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 17) 1/18)))))))))) (pow.f64 im 3))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 2))) (/.f64 (+.f64 (*.f64 (fma.f64 3/4 (*.f64 0 (*.f64 re re)) (*.f64 9/8 (*.f64 re re))) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im)))))) (*.f64 -3/4 (*.f64 (*.f64 re re) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 17) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 17) 1/18))))) (*.f64 im im))) (fma.f64 1/2 (*.f64 (/.f64 re im) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 7) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) 7) 1/18))) (cbrt.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im)))))))))
(fma.f64 -1/3 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 (exp.f64 3/2) (*.f64 2 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))))) (/.f64 (pow.f64 im 3) (-.f64 (*.f64 (fma.f64 (pow.f64 re 3) -9/16 (fma.f64 (pow.f64 re 3) 1/4 (*.f64 re 0))) (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))) (-.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 7)) (*.f64 (pow.f64 re 3) -1/8)) (*.f64 (fma.f64 (fma.f64 9/8 (*.f64 re re) 0) (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) (*.f64 (*.f64 (*.f64 re re) -3/4) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 17) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 17) 1/18)))) (*.f64 re (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 4) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 4) 1/18)))))))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (exp.f64 3/2) (*.f64 2 (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))))) (/.f64 (fma.f64 (fma.f64 9/8 (*.f64 re re) 0) (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) (*.f64 (*.f64 (*.f64 re re) -3/4) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 17) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 17) 1/18)))) (*.f64 im im))) (fma.f64 1/2 (*.f64 (/.f64 re im) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 7) 1/18) (pow.f64 (pow.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) 7) 1/18))) (cbrt.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))))))
(fma.f64 -1/3 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 2))) (/.f64 (pow.f64 im 3) (+.f64 (fma.f64 (fma.f64 (pow.f64 re 3) -9/16 (fma.f64 (pow.f64 re 3) 1/4 0)) (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) (*.f64 (pow.f64 re 3) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 7)) 1/8))) (*.f64 (fma.f64 9/8 (*.f64 (*.f64 re re) (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2))) (*.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 17) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 17) 1/18)) (*.f64 (*.f64 re re) -3/4))) (*.f64 re (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 4) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 4) 1/18))))))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 2))) (/.f64 (fma.f64 9/8 (*.f64 (*.f64 re re) (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2))) (*.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 17) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 17) 1/18)) (*.f64 (*.f64 re re) -3/4))) (*.f64 im im))) (fma.f64 1/2 (*.f64 (/.f64 re im) (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 7) 1/18) (pow.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) 7) 1/18))) (cbrt.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2))))))
(*.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3)))
(*.f64 (sqrt.f64 8) (pow.f64 im 3/2))
(+.f64 (*.f64 -3/2 (*.f64 (*.f64 re (sqrt.f64 8)) (sqrt.f64 im))) (*.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3))))
(fma.f64 -3/2 (*.f64 (sqrt.f64 im) (*.f64 re (sqrt.f64 8))) (*.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3))))
(fma.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3)) (*.f64 (sqrt.f64 im) (*.f64 (*.f64 re (sqrt.f64 8)) -3/2)))
(fma.f64 (sqrt.f64 8) (pow.f64 im 3/2) (*.f64 (sqrt.f64 im) (*.f64 (*.f64 re (sqrt.f64 8)) -3/2)))
(+.f64 (*.f64 9/8 (*.f64 (*.f64 (pow.f64 re 2) (sqrt.f64 8)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -3/2 (*.f64 (*.f64 re (sqrt.f64 8)) (sqrt.f64 im))) (*.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3)))))
(fma.f64 9/8 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 8) (*.f64 re re))) (fma.f64 -3/2 (*.f64 (sqrt.f64 im) (*.f64 re (sqrt.f64 8))) (*.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3)))))
(fma.f64 9/8 (*.f64 (sqrt.f64 8) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3)) (*.f64 (sqrt.f64 im) (*.f64 (*.f64 re (sqrt.f64 8)) -3/2))))
(fma.f64 9/8 (*.f64 (sqrt.f64 8) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 8) (pow.f64 im 3/2) (*.f64 (sqrt.f64 im) (*.f64 (*.f64 re (sqrt.f64 8)) -3/2))))
(+.f64 (*.f64 9/8 (*.f64 (*.f64 (pow.f64 re 2) (sqrt.f64 8)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -3/2 (*.f64 (*.f64 re (sqrt.f64 8)) (sqrt.f64 im))) (+.f64 (*.f64 -5/16 (*.f64 (*.f64 (pow.f64 re 3) (sqrt.f64 8)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3))))))
(fma.f64 9/8 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 8) (*.f64 re re))) (fma.f64 -3/2 (*.f64 (sqrt.f64 im) (*.f64 re (sqrt.f64 8))) (fma.f64 -5/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (sqrt.f64 8) (pow.f64 re 3))) (*.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3))))))
(fma.f64 9/8 (*.f64 (sqrt.f64 8) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im)))) (fma.f64 -3/2 (*.f64 (sqrt.f64 im) (*.f64 re (sqrt.f64 8))) (fma.f64 (sqrt.f64 8) (sqrt.f64 (pow.f64 im 3)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (*.f64 (sqrt.f64 8) -5/16) (pow.f64 re 3))))))
(fma.f64 9/8 (*.f64 (sqrt.f64 8) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im)))) (fma.f64 -3/2 (*.f64 (sqrt.f64 im) (*.f64 re (sqrt.f64 8))) (fma.f64 (sqrt.f64 8) (pow.f64 im 3/2) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (*.f64 (sqrt.f64 8) -5/16) (pow.f64 re 3))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))
(*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))))
(fma.f64 -3/8 (/.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))))
(fma.f64 -3/8 (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (*.f64 re re)) (*.f64 im im)) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))
(fma.f64 -3/8 (*.f64 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (*.f64 re re)) (*.f64 im im)) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))
(+.f64 (/.f64 (*.f64 (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (pow.f64 re 4)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))))
(+.f64 (fma.f64 -3/8 (/.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (/.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 1/16 (*.f64 (pow.f64 im 4) 9/4))) (/.f64 (pow.f64 re 4) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))))))
(+.f64 (fma.f64 -3/8 (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (*.f64 re re)) (*.f64 im im)) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (*.f64 (/.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 9/64)) (pow.f64 re 4)) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))))
(+.f64 (fma.f64 -3/8 (*.f64 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (*.f64 re re)) (*.f64 im im)) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2))) (/.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 9/64)) (/.f64 (pow.f64 re 4) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))))
(+.f64 (/.f64 (*.f64 (+.f64 (*.f64 9/128 (pow.f64 im 4)) (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (pow.f64 re 4)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -9/1024 (pow.f64 im 6)) (+.f64 (*.f64 1/480 (+.f64 (*.f64 45/2 (pow.f64 im 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (*.f64 -15/4 (pow.f64 im 6))))) (*.f64 -3/128 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))) (pow.f64 re 6)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re))))))))
(+.f64 (/.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 1/16 (*.f64 (pow.f64 im 4) 9/4))) (/.f64 (pow.f64 re 4) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))))) (+.f64 (fma.f64 -3/8 (/.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (/.f64 (fma.f64 -9/1024 (pow.f64 im 6) (fma.f64 1/480 (fma.f64 45/2 (pow.f64 im 6) (fma.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (*.f64 im im)) (*.f64 (pow.f64 im 6) -15/4))) (*.f64 -3/128 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 9/4))))) (/.f64 (pow.f64 re 6) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))))))
(+.f64 (fma.f64 -3/8 (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (*.f64 re re)) (*.f64 im im)) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (+.f64 (*.f64 (/.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 9/64)) (pow.f64 re 4)) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (*.f64 (/.f64 (fma.f64 -9/1024 (pow.f64 im 6) (fma.f64 1/480 (fma.f64 (pow.f64 im 6) 45/2 (fma.f64 (pow.f64 im 6) -15/4 (/.f64 -720 (/.f64 (*.f64 im im) (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)))))) (*.f64 -3/128 (*.f64 (pow.f64 im 6) 9/4)))) (pow.f64 re 6)) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))))
(+.f64 (fma.f64 -3/8 (*.f64 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (*.f64 re re)) (*.f64 im im)) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2))) (+.f64 (/.f64 (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 9/64)) (/.f64 (pow.f64 re 4) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))) (*.f64 (/.f64 (fma.f64 -9/1024 (pow.f64 im 6) (fma.f64 1/480 (fma.f64 (pow.f64 im 6) 45/2 (fma.f64 (pow.f64 im 6) -15/4 (/.f64 -720 (/.f64 (*.f64 im im) (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)))))) (*.f64 -3/128 (*.f64 (pow.f64 im 6) 9/4)))) (pow.f64 re 6)) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))))
(*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2))
(+.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (*.f64 3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (*.f64 3/8 (/.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (*.f64 re re) (*.f64 im im)))))
(fma.f64 3/8 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (/.f64 (/.f64 (*.f64 re re) im) im)) (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))))
(fma.f64 3/8 (/.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) (/.f64 (/.f64 (*.f64 re re) im) im)) (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)))
(+.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4)))) (*.f64 9/128 (pow.f64 im 4)))) (pow.f64 re 4))))
(+.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (fma.f64 3/8 (/.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (pow.f64 re 4) (fma.f64 1/16 (*.f64 (pow.f64 im 4) -9/4) (*.f64 9/128 (pow.f64 im 4)))))))
(+.f64 (fma.f64 3/8 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (/.f64 (/.f64 (*.f64 re re) im) im)) (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))))) (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (pow.f64 re 4)) (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -9/64))))
(+.f64 (fma.f64 3/8 (/.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) (/.f64 (/.f64 (*.f64 re re) im) im)) (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2))) (*.f64 (/.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) (pow.f64 re 4)) (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -9/64))))
(+.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 9/1024 (pow.f64 im 6)) (+.f64 (*.f64 1/480 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6))))) (*.f64 3/128 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))) (pow.f64 im 2)))))) (pow.f64 re 6)) (+.f64 (*.f64 3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 4) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/16 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4)))) (*.f64 9/128 (pow.f64 im 4)))) (pow.f64 re 4)))))
(+.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (+.f64 (fma.f64 3/8 (/.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (pow.f64 re 4) (fma.f64 1/16 (*.f64 (pow.f64 im 4) -9/4) (*.f64 9/128 (pow.f64 im 4)))))) (/.f64 (*.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 4) (neg.f64 (log.f64 (/.f64 -1 re))))) (fma.f64 9/1024 (pow.f64 im 6) (fma.f64 1/480 (fma.f64 15/4 (pow.f64 im 6) (*.f64 (pow.f64 im 6) 135/4)) (*.f64 3/128 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4)))))) (pow.f64 re 6))))
(+.f64 (+.f64 (fma.f64 3/8 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (/.f64 (/.f64 (*.f64 re re) im) im)) (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re))))) (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))) (pow.f64 re 4)) (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -9/64)))) (/.f64 (fma.f64 3/128 (*.f64 (pow.f64 im 6) -9/4) (fma.f64 1/480 (*.f64 (pow.f64 im 6) 75/2) (*.f64 (pow.f64 im 6) 9/1024))) (/.f64 (pow.f64 re 6) (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 4) (log.f64 (/.f64 -1 re)))))))
(+.f64 (+.f64 (fma.f64 3/8 (/.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) (/.f64 (/.f64 (*.f64 re re) im) im)) (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2))) (*.f64 (/.f64 (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)) (pow.f64 re 4)) (fma.f64 9/128 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -9/64)))) (/.f64 (fma.f64 3/128 (*.f64 (pow.f64 im 6) -9/4) (fma.f64 1/480 (*.f64 (pow.f64 im 6) 75/2) (*.f64 (pow.f64 im 6) 9/1024))) (/.f64 (pow.f64 re 6) (*.f64 (pow.f64 4 3/2) (pow.f64 (/.f64 -1 re) -3/2)))))
(exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))
(*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))))
(fma.f64 -3/8 (/.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))))
(fma.f64 -3/8 (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (*.f64 re re)) (*.f64 im im)) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))))
(fma.f64 -3/8 (*.f64 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (*.f64 re re)) (*.f64 im im)) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (*.f64 27/128 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)) (pow.f64 re 4)))))
(+.f64 (fma.f64 -3/8 (/.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (*.f64 27/128 (/.f64 (*.f64 (pow.f64 im 4) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (pow.f64 re 4))))
(fma.f64 -3/8 (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (*.f64 re re)) (*.f64 im im)) (fma.f64 27/128 (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (pow.f64 re 4)) (pow.f64 im 4)) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))))
(fma.f64 -3/8 (*.f64 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (*.f64 re re)) (*.f64 im im)) (fma.f64 27/128 (*.f64 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (pow.f64 re 4)) (pow.f64 im 4)) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2))))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (*.f64 (-.f64 (*.f64 1/480 (+.f64 (*.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 75/4 (/.f64 1 (pow.f64 re 6))))) (*.f64 63/1024 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 6))) (+.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (*.f64 27/128 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re))))) (pow.f64 im 4)) (pow.f64 re 4))))))
(fma.f64 -3/8 (/.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (/.f64 (*.f64 re re) (*.f64 im im))) (fma.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (*.f64 (pow.f64 im 6) (fma.f64 1/480 (fma.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 75/4 (pow.f64 re 6))) (neg.f64 (/.f64 63/1024 (pow.f64 re 6))))) (+.f64 (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re)))) (*.f64 27/128 (/.f64 (*.f64 (pow.f64 im 4) (pow.f64 (exp.f64 3/2) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))) (pow.f64 re 4))))))
(fma.f64 -3/8 (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (*.f64 re re)) (*.f64 im im)) (+.f64 (/.f64 (*.f64 (*.f64 27/128 (pow.f64 im 4)) (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re)))) (pow.f64 re 4)) (*.f64 (pow.f64 (exp.f64 3/2) (-.f64 (*.f64 2 (log.f64 im)) (log.f64 re))) (+.f64 (*.f64 (pow.f64 im 6) (+.f64 (fma.f64 1/480 (fma.f64 -720 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -45 (pow.f64 re 6))) (/.f64 5/128 (pow.f64 re 6))) (/.f64 -63/1024 (pow.f64 re 6)))) 1))))
(fma.f64 -3/8 (*.f64 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (*.f64 re re)) (*.f64 im im)) (+.f64 (/.f64 (*.f64 (*.f64 27/128 (pow.f64 im 4)) (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2))) (pow.f64 re 4)) (*.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)) (+.f64 (*.f64 (pow.f64 im 6) (+.f64 (fma.f64 1/480 (fma.f64 -720 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -45 (pow.f64 re 6))) (/.f64 5/128 (pow.f64 re 6))) (/.f64 -63/1024 (pow.f64 re 6)))) 1))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im)))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2)))
(*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 re (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) im)) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))))
(fma.f64 -3/2 (/.f64 re (/.f64 im (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))))) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))))
(fma.f64 -3/2 (*.f64 (/.f64 re im) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2)))) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))))
(fma.f64 -3/2 (*.f64 (/.f64 re im) (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2))) (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)))
(+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (pow.f64 im 2)) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 re (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) im)) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))))
(+.f64 (fma.f64 -3/2 (/.f64 re (/.f64 im (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))))) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im)))))) (/.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (/.f64 (*.f64 im im) (fma.f64 3/4 (*.f64 0 (*.f64 re re)) (*.f64 9/8 (*.f64 re re))))))
(+.f64 (fma.f64 -3/2 (*.f64 (/.f64 re im) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2)))) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2)))) (*.f64 (/.f64 (fma.f64 9/8 (*.f64 re re) 0) (*.f64 im im)) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2)))))
(+.f64 (fma.f64 -3/2 (*.f64 (/.f64 re im) (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2))) (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2))) (/.f64 (*.f64 re (*.f64 re 9/8)) (/.f64 (*.f64 im im) (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 re (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) im)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -9/16 (pow.f64 re 3)) (+.f64 (*.f64 -9/8 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/4 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) (pow.f64 im 3)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2))) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im))))))) (pow.f64 im 2)) (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 im)))))))))
(fma.f64 -3/2 (/.f64 re (/.f64 im (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))))) (+.f64 (/.f64 (fma.f64 -9/16 (pow.f64 re 3) (fma.f64 -9/8 (*.f64 re (*.f64 0 (*.f64 re re))) (*.f64 1/4 (*.f64 (pow.f64 re 3) 1)))) (/.f64 (pow.f64 im 3) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))))) (+.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (/.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 im))))) (/.f64 (*.f64 im im) (fma.f64 3/4 (*.f64 0 (*.f64 re re)) (*.f64 9/8 (*.f64 re re))))))))
(+.f64 (+.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))) (*.f64 (/.f64 (fma.f64 9/8 (*.f64 re re) 0) (*.f64 im im)) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))))) (fma.f64 -3/2 (*.f64 (/.f64 re im) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2)))) (*.f64 (/.f64 (fma.f64 (pow.f64 re 3) -9/16 (fma.f64 (pow.f64 re 3) 1/4 (*.f64 re 0))) (pow.f64 im 3)) (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 im) (log.f64 2))))))
(+.f64 (+.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2)) (/.f64 (*.f64 re (*.f64 re 9/8)) (/.f64 (*.f64 im im) (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2))))) (fma.f64 -3/2 (*.f64 (/.f64 re im) (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2))) (/.f64 (fma.f64 (pow.f64 re 3) -9/16 (fma.f64 (pow.f64 re 3) 1/4 0)) (/.f64 (pow.f64 im 3) (*.f64 (pow.f64 im 3/2) (pow.f64 2 3/2))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im)))))
(pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))
(*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2))
(+.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (*.f64 3/2 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) re) im)))
(+.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) (*.f64 3/2 (/.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) (/.f64 im re))))
(fma.f64 3/2 (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) im) re) (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))))
(fma.f64 3/2 (*.f64 (/.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) im) re) (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)))
(+.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) re) im)) (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (pow.f64 im 2))))
(+.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) (fma.f64 3/2 (/.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) (/.f64 im re)) (/.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) (/.f64 (*.f64 im im) (fma.f64 3/4 (*.f64 0 (*.f64 re re)) (*.f64 9/8 (*.f64 re re)))))))
(+.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) (fma.f64 3/2 (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) im) re) (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) (*.f64 im im)) (fma.f64 9/8 (*.f64 re re) 0))))
(+.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) (fma.f64 3/2 (*.f64 (/.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) im) re) (*.f64 (/.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) (*.f64 im im)) (*.f64 re (*.f64 re 9/8)))))
(+.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) re) im)) (+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 3/4 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 9/8 (pow.f64 re 2)))) (pow.f64 im 2)) (*.f64 -1 (/.f64 (*.f64 (exp.f64 (*.f64 3/2 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 im)))))) (+.f64 (*.f64 -9/16 (pow.f64 re 3)) (+.f64 (*.f64 -9/8 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/4 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3))))))) (pow.f64 im 3))))))
(+.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) (+.f64 (fma.f64 3/2 (/.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) (/.f64 im re)) (/.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) (/.f64 (*.f64 im im) (fma.f64 3/4 (*.f64 0 (*.f64 re re)) (*.f64 9/8 (*.f64 re re)))))) (neg.f64 (/.f64 (pow.f64 (exp.f64 3/2) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 im))))) (/.f64 (pow.f64 im 3) (fma.f64 -9/16 (pow.f64 re 3) (fma.f64 -9/8 (*.f64 re (*.f64 0 (*.f64 re re))) (*.f64 1/4 (*.f64 (pow.f64 re 3) 1)))))))))
(+.f64 (fma.f64 3/2 (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) im) re) (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im))))) (-.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) (*.f64 im im)) (fma.f64 9/8 (*.f64 re re) 0)) (*.f64 (/.f64 (pow.f64 (exp.f64 3/2) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 im)))) (pow.f64 im 3)) (fma.f64 (pow.f64 re 3) -9/16 (fma.f64 (pow.f64 re 3) 1/4 (*.f64 re 0))))))
(+.f64 (fma.f64 3/2 (*.f64 (/.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) im) re) (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2))) (-.f64 (*.f64 (/.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) (*.f64 im im)) (*.f64 re (*.f64 re 9/8))) (*.f64 (/.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/2) (pow.f64 2 3/2)) (pow.f64 im 3)) (fma.f64 (pow.f64 re 3) -9/16 (fma.f64 (pow.f64 re 3) 1/4 0)))))

localize28.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(+.f64 re (hypot.f64 re im))
0.2b
(sqrt.f64 (*.f64 2 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))))
16.4b
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
16.7b
(-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))
Compiler

Compiled 101 to 38 computations (62.4% saved)

series33.0ms (0.2%)

Counts
4 → 80
Calls

24 calls:

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

rewrite160.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
689×log-prod_binary64
506×fma-def_binary64
268×fma-neg_binary64
244×pow1/3_binary64
240×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify127.0ms (1%)

Algorithm
egg-herbie
Rules
536×distribute-rgt-in_binary64
521×fma-def_binary64
310×cancel-sign-sub-inv_binary64
282×associate-+r+_binary64
274×+-commutative_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04083749
113493063
253162774
Stop Event
node limit
Counts
316 → 336
Calls
Call 1
Inputs
(pow.f64 im 2)
(pow.f64 im 2)
(+.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 1/64 (/.f64 1 (pow.f64 im 6))))) (pow.f64 re 8)) (pow.f64 im 2))
(+.f64 (*.f64 (pow.f64 re 12) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 im 8))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 2)))) (pow.f64 im 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)))))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 im 8))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 2)))) (pow.f64 im 2))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 im 10))) (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4))))))) (+.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 1/64 (/.f64 1 (pow.f64 im 6))))) (pow.f64 re 8)) (pow.f64 im 2)))
(pow.f64 im 2)
(+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))) (*.f64 -1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2)))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (*.f64 -1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2)))))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 6))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 6))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 8) (pow.f64 re 6))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (*.f64 -1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))))))))))
(pow.f64 im 2)
(+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))) (*.f64 -1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2)))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (*.f64 -1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2)))))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 6))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 6))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 8) (pow.f64 re 6))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (*.f64 -1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))))))))))
(pow.f64 im 2)
(+.f64 (pow.f64 im 2) (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 5/64 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 re 10))) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))))))) (pow.f64 im 12)) (+.f64 (pow.f64 im 2) (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 5/64 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 -1/8 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 4))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))) (pow.f64 re 2))) (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 6)))))) (+.f64 (*.f64 -1/8 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 4))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))) (pow.f64 re 2))) (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 6)))))) (pow.f64 im 14)) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 re 10))) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))))))) (pow.f64 im 12)) (+.f64 (pow.f64 im 2) (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 5/64 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)))))
(pow.f64 im 2)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (pow.f64 im 2)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4))) (*.f64 -1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4)))))))
(+.f64 (*.f64 1/64 (/.f64 (pow.f64 re 8) (pow.f64 im 6))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 8) (pow.f64 im 6))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4))) (*.f64 -1 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 re 4)) 2) (*.f64 1/16 (pow.f64 re 8))) (pow.f64 im 6))))))))))
(pow.f64 im 2)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (pow.f64 im 2)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4))) (*.f64 -1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4)))))))
(+.f64 (*.f64 1/64 (/.f64 (pow.f64 re 8) (pow.f64 im 6))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 8) (pow.f64 im 6))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4))) (*.f64 -1 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 re 4)) 2) (*.f64 1/16 (pow.f64 re 8))) (pow.f64 im 6))))))))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 3)))) (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 re 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 3))))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4)))) (*.f64 1/8 (pow.f64 im 4))) (pow.f64 im 2)) (pow.f64 re 5))) (*.f64 -1/32 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 re 5))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 1/64 (pow.f64 im 8)) (+.f64 (*.f64 1/16 (pow.f64 im 8)) (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8)))))) (pow.f64 re 7))) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 3)))))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6)))) (+.f64 (*.f64 1/4 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4)))) (*.f64 1/8 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/32 (pow.f64 im 6)))) (pow.f64 im 2)) (pow.f64 re 7))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4)))) (*.f64 1/8 (pow.f64 im 4))) (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4)))) (*.f64 1/8 (pow.f64 im 4))) (pow.f64 im 4)) (pow.f64 re 7))) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 7))) (*.f64 -1/32 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))))))
(*.f64 -2 re)
(+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) re)) (*.f64 -2 re))
(+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) re)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 im 2))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 -1/4 (*.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 im 2))))) (pow.f64 re 3))) (*.f64 -2 re)))
(+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) re)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 im 2))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 -1/4 (*.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 im 2))))) (pow.f64 re 3))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/64 (pow.f64 im 8)) (+.f64 (*.f64 1/16 (pow.f64 im 8)) (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8)))))) (pow.f64 im 2))) (+.f64 (*.f64 -2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 im 2))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 -1/4 (*.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 im 2))))) (pow.f64 im 2))) (*.f64 1/8 (*.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 im 4)))))) (pow.f64 re 5))) (*.f64 -2 re))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 (pow.f64 im 8) (-.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 5/64 (/.f64 1 (pow.f64 re 6))) (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))))) re)) (*.f64 5/128 (/.f64 1 (pow.f64 re 7))))))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) re)) (*.f64 -1/2 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) im)) im)))
(*.f64 -1 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) re)) (*.f64 -1/2 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 5/64 (/.f64 1 (pow.f64 re 6))) (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))))) re)) (+.f64 (*.f64 5/128 (/.f64 1 (pow.f64 re 7))) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2)))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
im
(+.f64 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))))
Outputs
(pow.f64 im 2)
(*.f64 im im)
(pow.f64 im 2)
(*.f64 im im)
(+.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 1/64 (/.f64 1 (pow.f64 im 6))))) (pow.f64 re 8)) (pow.f64 im 2))
(fma.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (fma.f64 -1 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (/.f64 1/64 (pow.f64 im 6)))) (pow.f64 re 8) (*.f64 im im))
(fma.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (-.f64 (/.f64 1/64 (pow.f64 im 6)) (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)))) (pow.f64 re 8) (*.f64 im im))
(fma.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (-.f64 (*.f64 (/.f64 1 (pow.f64 im 6)) -3/64) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (pow.f64 re 8) (*.f64 im im))
(+.f64 (*.f64 (pow.f64 re 12) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 im 8))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 2)))) (pow.f64 im 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)))))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 im 8))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 2)))) (pow.f64 im 2))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 im 10))) (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4))))))) (+.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 im 6))) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 1/64 (/.f64 1 (pow.f64 im 6))))) (pow.f64 re 8)) (pow.f64 im 2)))
(fma.f64 (pow.f64 re 12) (fma.f64 -1 (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/64 (pow.f64 im 8)) (/.f64 (*.f64 -1/2 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 im im))) (*.f64 im im)) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4))))) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/64 (pow.f64 im 8)) (/.f64 (*.f64 -1/2 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (*.f64 im im))) (*.f64 im im)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4))) (/.f64 1/256 (pow.f64 im 10))))) (fma.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (fma.f64 -1 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (/.f64 1/64 (pow.f64 im 6)))) (pow.f64 re 8) (*.f64 im im)))
(fma.f64 (pow.f64 re 12) (-.f64 (fma.f64 1/2 (-.f64 (/.f64 (/.f64 1/64 (pow.f64 im 8)) (*.f64 im im)) (/.f64 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) -1/2) (pow.f64 im 4))) (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)) (/.f64 1/256 (pow.f64 im 10)))) (fma.f64 1/2 (-.f64 (/.f64 (/.f64 1/64 (pow.f64 im 8)) (*.f64 im im)) (/.f64 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) -1/2) (pow.f64 im 4))) (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)) (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2)))) (fma.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (-.f64 (/.f64 1/64 (pow.f64 im 6)) (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)))) (pow.f64 re 8) (*.f64 im im)))
(fma.f64 (pow.f64 re 12) (-.f64 (fma.f64 1/2 (+.f64 (/.f64 (/.f64 1/64 (pow.f64 im 8)) (*.f64 im im)) (/.f64 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) 1/2) (pow.f64 im 4))) (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)) (/.f64 1/256 (pow.f64 im 10)))) (fma.f64 1/2 (+.f64 (/.f64 (/.f64 1/64 (pow.f64 im 8)) (*.f64 im im)) (/.f64 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) 1/2) (pow.f64 im 4))) (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2)) (pow.f64 im 4)) (pow.f64 (/.f64 1/16 (pow.f64 im 5)) 2)))) (fma.f64 (+.f64 (/.f64 1/16 (pow.f64 im 6)) (-.f64 (*.f64 (/.f64 1 (pow.f64 im 6)) -3/64) (pow.f64 (/.f64 -1/8 (pow.f64 im 3)) 2))) (pow.f64 re 8) (*.f64 im im)))
(pow.f64 im 2)
(*.f64 im im)
(+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))) (*.f64 -1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2)))))
(*.f64 im im)
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (*.f64 -1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2)))))))
(fma.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (+.f64 (*.f64 im im) (fma.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)) (fma.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (*.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) -1/4)))))
(fma.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (+.f64 (fma.f64 im im 0) (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)))))
(fma.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (fma.f64 im im (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 6))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 6))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 8) (pow.f64 re 6))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (*.f64 -1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))))))))))
(fma.f64 -1 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 6)) (fma.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (fma.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 6)) (+.f64 (*.f64 im im) (fma.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)) (fma.f64 1/16 (/.f64 (pow.f64 im 8) (pow.f64 re 6)) (fma.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (*.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) -1/4))))))))
(-.f64 (fma.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (fma.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 6)) (fma.f64 im im (+.f64 (fma.f64 1/16 (/.f64 (pow.f64 im 8) (pow.f64 re 6)) (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)))) 0)))) (/.f64 (*.f64 (pow.f64 im 8) 5/64) (pow.f64 re 6)))
(+.f64 (/.f64 (*.f64 (pow.f64 im 8) -5/64) (pow.f64 re 6)) (fma.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (fma.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 6)) (fma.f64 im im (fma.f64 1/16 (/.f64 (pow.f64 im 8) (pow.f64 re 6)) (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))))))))
(pow.f64 im 2)
(*.f64 im im)
(+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))) (*.f64 -1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2)))))
(*.f64 im im)
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (*.f64 -1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2)))))))
(fma.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (+.f64 (*.f64 im im) (fma.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)) (fma.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (*.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) -1/4)))))
(fma.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (+.f64 (fma.f64 im im 0) (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)))))
(fma.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (fma.f64 im im (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 6))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 6))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 8) (pow.f64 re 6))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))) (*.f64 -1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 2))))))))))
(fma.f64 -1 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 6)) (fma.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (fma.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 6)) (+.f64 (*.f64 im im) (fma.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)) (fma.f64 1/16 (/.f64 (pow.f64 im 8) (pow.f64 re 6)) (fma.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (*.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) -1/4))))))))
(-.f64 (fma.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (fma.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 6)) (fma.f64 im im (+.f64 (fma.f64 1/16 (/.f64 (pow.f64 im 8) (pow.f64 re 6)) (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)))) 0)))) (/.f64 (*.f64 (pow.f64 im 8) 5/64) (pow.f64 re 6)))
(+.f64 (/.f64 (*.f64 (pow.f64 im 8) -5/64) (pow.f64 re 6)) (fma.f64 1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4)) (fma.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 6)) (fma.f64 im im (fma.f64 1/16 (/.f64 (pow.f64 im 8) (pow.f64 re 6)) (*.f64 -1/8 (/.f64 (pow.f64 im 6) (pow.f64 re 4))))))))
(pow.f64 im 2)
(*.f64 im im)
(+.f64 (pow.f64 im 2) (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 5/64 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)))
(+.f64 (*.f64 im im) (*.f64 (pow.f64 im 8) (fma.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 5/64 (pow.f64 re 6)))))
(fma.f64 (pow.f64 im 8) (-.f64 (/.f64 5/64 (pow.f64 re 6)) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (*.f64 im im))
(fma.f64 (pow.f64 im 8) (+.f64 (neg.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2)) (*.f64 (/.f64 1 (pow.f64 re 6)) 1/64)) (*.f64 im im))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 re 10))) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))))))) (pow.f64 im 12)) (+.f64 (pow.f64 im 2) (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 5/64 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8))))
(fma.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (*.f64 re re)) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (+.f64 (/.f64 1/256 (pow.f64 re 10)) (neg.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (*.f64 re re)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4))) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))))))) (pow.f64 im 12) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 8) (fma.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 5/64 (pow.f64 re 6))))))
(fma.f64 (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (-.f64 (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (/.f64 1/256 (pow.f64 re 10))) (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))))) (pow.f64 im 12) (fma.f64 (pow.f64 im 8) (-.f64 (/.f64 5/64 (pow.f64 re 6)) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (*.f64 im im)))
(fma.f64 (fma.f64 1/2 (+.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (-.f64 (/.f64 -1/16 (pow.f64 re 6)) (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2))) (pow.f64 re 4))) (-.f64 (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (/.f64 1/256 (pow.f64 re 10))) (fma.f64 1/2 (+.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (-.f64 (/.f64 -1/16 (pow.f64 re 6)) (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2))) (pow.f64 re 4))) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))))) (pow.f64 im 12) (fma.f64 (pow.f64 im 8) (+.f64 (neg.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2)) (*.f64 (/.f64 1 (pow.f64 re 6)) 1/64)) (*.f64 im im)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 -1/8 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 4))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))) (pow.f64 re 2))) (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 6)))))) (+.f64 (*.f64 -1/8 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 4))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))) (pow.f64 re 2))) (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 6)))))) (pow.f64 im 14)) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 re 10))) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 re 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 2)))) (pow.f64 re 2))) (+.f64 (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 re 4))))))))) (pow.f64 im 12)) (+.f64 (pow.f64 im 2) (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 5/64 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)))))
(fma.f64 (*.f64 0 (fma.f64 -1/8 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (pow.f64 re 4)) (fma.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (*.f64 re re)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4))) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))) (*.f64 re re)) (*.f64 -1/16 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 6)))))) (pow.f64 im 14) (fma.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (*.f64 re re)) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (+.f64 (/.f64 1/256 (pow.f64 re 10)) (neg.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 re 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (*.f64 re re)))) (*.f64 re re)) (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4))) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))))))) (pow.f64 im 12) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 8) (fma.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 5/64 (pow.f64 re 6)))))))
(fma.f64 (pow.f64 im 14) 0 (fma.f64 (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (-.f64 (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (/.f64 1/256 (pow.f64 re 10))) (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (pow.f64 re 4))) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))))) (pow.f64 im 12) (fma.f64 (pow.f64 im 8) (-.f64 (/.f64 5/64 (pow.f64 re 6)) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (*.f64 im im))))
(+.f64 (fma.f64 (fma.f64 1/2 (+.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (-.f64 (/.f64 -1/16 (pow.f64 re 6)) (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2))) (pow.f64 re 4))) (-.f64 (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (/.f64 1/256 (pow.f64 re 10))) (fma.f64 1/2 (+.f64 (/.f64 1/64 (*.f64 (*.f64 re re) (pow.f64 re 8))) (/.f64 (*.f64 -1/2 (-.f64 (/.f64 -1/16 (pow.f64 re 6)) (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2))) (pow.f64 re 4))) (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (pow.f64 re 4)) (pow.f64 (/.f64 1/16 (pow.f64 re 5)) 2))))) (pow.f64 im 12) (fma.f64 (pow.f64 im 8) (+.f64 (neg.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2)) (*.f64 (/.f64 1 (pow.f64 re 6)) 1/64)) (*.f64 im im))) 0)
(pow.f64 im 2)
(*.f64 im im)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (pow.f64 im 2)))
(*.f64 im im)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4))) (*.f64 -1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4)))))))
(*.f64 im im)
(+.f64 (*.f64 1/64 (/.f64 (pow.f64 re 8) (pow.f64 im 6))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 8) (pow.f64 im 6))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4))) (*.f64 -1 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 re 4)) 2) (*.f64 1/16 (pow.f64 re 8))) (pow.f64 im 6))))))))))
(fma.f64 1/64 (/.f64 (pow.f64 re 8) (pow.f64 im 6)) (fma.f64 1/4 (/.f64 (pow.f64 re 4) (*.f64 im im)) (+.f64 (fma.f64 -1/4 (/.f64 (pow.f64 re 4) (*.f64 im im)) (*.f64 im im)) (fma.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4)) (fma.f64 1/16 (/.f64 (pow.f64 re 8) (pow.f64 im 6)) (fma.f64 -1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4)) (neg.f64 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 re 4)) 2) (*.f64 1/16 (pow.f64 re 8))) (pow.f64 im 6)))))))))
(fma.f64 1/64 (/.f64 (pow.f64 re 8) (pow.f64 im 6)) (+.f64 (fma.f64 im im (fma.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4)) (-.f64 (fma.f64 1/16 (/.f64 (pow.f64 re 8) (pow.f64 im 6)) (/.f64 (*.f64 -1/8 (pow.f64 re 6)) (pow.f64 im 4))) (/.f64 (fma.f64 1/16 (pow.f64 re 8) (*.f64 1/64 (pow.f64 re 8))) (pow.f64 im 6))))) (*.f64 (/.f64 (pow.f64 re 4) (*.f64 im im)) 0)))
(fma.f64 1/64 (/.f64 (pow.f64 re 8) (pow.f64 im 6)) (fma.f64 im im (fma.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4)) (fma.f64 1/16 (/.f64 (pow.f64 re 8) (pow.f64 im 6)) (-.f64 (/.f64 (*.f64 -1/8 (pow.f64 re 6)) (pow.f64 im 4)) (/.f64 (*.f64 (pow.f64 re 8) 5/64) (pow.f64 im 6)))))))
(pow.f64 im 2)
(*.f64 im im)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (pow.f64 im 2)))
(*.f64 im im)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4))) (*.f64 -1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4)))))))
(*.f64 im im)
(+.f64 (*.f64 1/64 (/.f64 (pow.f64 re 8) (pow.f64 im 6))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 8) (pow.f64 im 6))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4))) (*.f64 -1 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 re 4)) 2) (*.f64 1/16 (pow.f64 re 8))) (pow.f64 im 6))))))))))
(fma.f64 1/64 (/.f64 (pow.f64 re 8) (pow.f64 im 6)) (fma.f64 1/4 (/.f64 (pow.f64 re 4) (*.f64 im im)) (+.f64 (fma.f64 -1/4 (/.f64 (pow.f64 re 4) (*.f64 im im)) (*.f64 im im)) (fma.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4)) (fma.f64 1/16 (/.f64 (pow.f64 re 8) (pow.f64 im 6)) (fma.f64 -1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4)) (neg.f64 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 re 4)) 2) (*.f64 1/16 (pow.f64 re 8))) (pow.f64 im 6)))))))))
(fma.f64 1/64 (/.f64 (pow.f64 re 8) (pow.f64 im 6)) (+.f64 (fma.f64 im im (fma.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4)) (-.f64 (fma.f64 1/16 (/.f64 (pow.f64 re 8) (pow.f64 im 6)) (/.f64 (*.f64 -1/8 (pow.f64 re 6)) (pow.f64 im 4))) (/.f64 (fma.f64 1/16 (pow.f64 re 8) (*.f64 1/64 (pow.f64 re 8))) (pow.f64 im 6))))) (*.f64 (/.f64 (pow.f64 re 4) (*.f64 im im)) 0)))
(fma.f64 1/64 (/.f64 (pow.f64 re 8) (pow.f64 im 6)) (fma.f64 im im (fma.f64 1/8 (/.f64 (pow.f64 re 6) (pow.f64 im 4)) (fma.f64 1/16 (/.f64 (pow.f64 re 8) (pow.f64 im 6)) (-.f64 (/.f64 (*.f64 -1/8 (pow.f64 re 6)) (pow.f64 im 4)) (/.f64 (*.f64 (pow.f64 re 8) 5/64) (pow.f64 im 6)))))))
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 re re) im) im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(fma.f64 -1 re (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)))
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)) re)
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 3)))) (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (+.f64 (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im 4) 0) (pow.f64 re 3)))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (/.f64 0 re) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/2 (/.f64 im (/.f64 re im)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (/.f64 (*.f64 -1/8 (pow.f64 im 4)) (pow.f64 re 3)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 re 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 3))))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4)))) (*.f64 1/8 (pow.f64 im 4))) (pow.f64 im 2)) (pow.f64 re 5))) (*.f64 -1/32 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 im 6) 0) (pow.f64 re 5)) (*.f64 1/2 (+.f64 (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im 4) 0) (pow.f64 re 3))))) (fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/4 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 4) 0)) (*.f64 -1/8 (pow.f64 im 4))) (/.f64 (pow.f64 re 5) (*.f64 im im))) (/.f64 (*.f64 (pow.f64 im 6) -1/32) (pow.f64 re 5)))))
(+.f64 (/.f64 0 (pow.f64 re 5)) (-.f64 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (/.f64 0 re)) (fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/4 (*.f64 (/.f64 (*.f64 -1/8 (pow.f64 im 4)) (pow.f64 re 5)) (*.f64 im im)) (/.f64 (pow.f64 im 6) (/.f64 (pow.f64 re 5) -1/32))))))
(-.f64 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (/.f64 (*.f64 -1/8 (pow.f64 im 4)) (pow.f64 re 3))) (fma.f64 1/4 (*.f64 (/.f64 (*.f64 -1/8 (pow.f64 im 4)) (pow.f64 re 5)) (*.f64 im im)) (/.f64 (pow.f64 im 6) (/.f64 (pow.f64 re 5) -1/32))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 re 5))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 1/64 (pow.f64 im 8)) (+.f64 (*.f64 1/16 (pow.f64 im 8)) (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8)))))) (pow.f64 re 7))) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 re 3)))))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6)))) (+.f64 (*.f64 1/4 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4)))) (*.f64 1/8 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/32 (pow.f64 im 6)))) (pow.f64 im 2)) (pow.f64 re 7))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4)))) (*.f64 1/8 (pow.f64 im 4))) (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4)))) (*.f64 1/8 (pow.f64 im 4))) (pow.f64 im 4)) (pow.f64 re 7))) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 7))) (*.f64 -1/32 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))))))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 im 6) 0) (pow.f64 re 5)) (*.f64 1/2 (+.f64 (/.f64 (fma.f64 1/64 (pow.f64 im 8) (fma.f64 1/16 (pow.f64 im 8) (neg.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 (pow.f64 im 4) 0) (pow.f64 re 3)))))) (fma.f64 1/4 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 im 6) 0)) (fma.f64 1/4 (*.f64 (*.f64 im im) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 4) 0)) (*.f64 -1/8 (pow.f64 im 4)))) (*.f64 (pow.f64 im 6) -1/32))) (/.f64 (pow.f64 re 7) (*.f64 im im))) (fma.f64 1/4 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 4) 0)) (*.f64 -1/8 (pow.f64 im 4))) (/.f64 (pow.f64 re 5) (*.f64 im im))) (fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/16 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 4) 0)) (*.f64 -1/8 (pow.f64 im 4))) (/.f64 (pow.f64 re 7) (pow.f64 im 4))) (fma.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 7)) (/.f64 (*.f64 (pow.f64 im 6) -1/32) (pow.f64 re 5))))))))
(+.f64 (fma.f64 1/2 (/.f64 im (/.f64 re im)) (/.f64 0 (pow.f64 re 5))) (-.f64 (fma.f64 1/2 (/.f64 (-.f64 (*.f64 (pow.f64 im 8) 5/64) (*.f64 (pow.f64 im 8) 5/64)) (pow.f64 re 7)) (/.f64 0 re)) (fma.f64 1/4 (/.f64 (*.f64 im im) (/.f64 (pow.f64 re 7) (neg.f64 (fma.f64 (pow.f64 im 6) -1/32 (*.f64 (*.f64 im im) (*.f64 1/4 (*.f64 -1/8 (pow.f64 im 4)))))))) (fma.f64 1/4 (*.f64 (/.f64 (*.f64 -1/8 (pow.f64 im 4)) (pow.f64 re 5)) (*.f64 im im)) (fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/16 (*.f64 (/.f64 (*.f64 -1/8 (pow.f64 im 4)) (pow.f64 re 7)) (pow.f64 im 4)) (fma.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 7)) (/.f64 (pow.f64 im 6) (/.f64 (pow.f64 re 5) -1/32)))))))))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 im (/.f64 re im))) (/.f64 0 (pow.f64 re 7))) (-.f64 (*.f64 -1/4 (*.f64 (*.f64 im im) (+.f64 (/.f64 (+.f64 (*.f64 (*.f64 im im) (*.f64 -1/4 (*.f64 -1/8 (pow.f64 im 4)))) (*.f64 (pow.f64 im 6) 1/32)) (pow.f64 re 7)) (/.f64 (*.f64 -1/8 (pow.f64 im 4)) (pow.f64 re 5))))) (fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/16 (*.f64 (/.f64 (*.f64 -1/8 (pow.f64 im 4)) (pow.f64 re 7)) (pow.f64 im 4)) (fma.f64 1/64 (/.f64 (pow.f64 im 8) (pow.f64 re 7)) (/.f64 (pow.f64 im 6) (/.f64 (pow.f64 re 5) -1/32)))))))
(*.f64 -2 re)
(*.f64 re -2)
(+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) re)) (*.f64 -2 re))
(fma.f64 -1 (/.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 im 4) 0) (*.f64 im im))) (*.f64 1/2 (*.f64 im im))) re) (*.f64 re -2))
(-.f64 (*.f64 re -2) (/.f64 (+.f64 (/.f64 0 (*.f64 im im)) (*.f64 (*.f64 im im) 1/2)) re))
(-.f64 (*.f64 re -2) (*.f64 1/2 (/.f64 im (/.f64 re im))))
(+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) re)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 im 2))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 -1/4 (*.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 im 2))))) (pow.f64 re 3))) (*.f64 -2 re)))
(fma.f64 -1 (/.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 im 4) 0) (*.f64 im im))) (*.f64 1/2 (*.f64 im im))) re) (fma.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 im 6) 0) (*.f64 im im))) (fma.f64 1/4 (pow.f64 im 4) (*.f64 (*.f64 -1/4 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 im 4) 0) (*.f64 im im))) (*.f64 1/2 (*.f64 im im)))) (*.f64 im im)))) (pow.f64 re 3)) (*.f64 re -2)))
(-.f64 (-.f64 (*.f64 re -2) (/.f64 (-.f64 (/.f64 0 (*.f64 im im)) (fma.f64 (*.f64 -1/4 (+.f64 (/.f64 0 (*.f64 im im)) (*.f64 (*.f64 im im) 1/2))) (*.f64 im im) (*.f64 (pow.f64 im 4) 1/4))) (pow.f64 re 3))) (/.f64 (+.f64 (/.f64 0 (*.f64 im im)) (*.f64 (*.f64 im im) 1/2)) re))
(-.f64 (*.f64 re -2) (+.f64 (*.f64 1/2 (/.f64 im (/.f64 re im))) (/.f64 (-.f64 (*.f64 (pow.f64 im 4) -1/4) (*.f64 (*.f64 im im) (*.f64 -1/4 (*.f64 (*.f64 im im) 1/2)))) (pow.f64 re 3))))
(+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) re)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 im 2))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 -1/4 (*.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 im 2))))) (pow.f64 re 3))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/64 (pow.f64 im 8)) (+.f64 (*.f64 1/16 (pow.f64 im 8)) (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8)))))) (pow.f64 im 2))) (+.f64 (*.f64 -2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (*.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 -1/8 (pow.f64 im 6))) (pow.f64 im 2))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 -1/4 (*.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 im 2))))) (pow.f64 im 2))) (*.f64 1/8 (*.f64 (-.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 im 4)))))) (pow.f64 re 5))) (*.f64 -2 re))))
(fma.f64 -1 (/.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 im 4) 0) (*.f64 im im))) (*.f64 1/2 (*.f64 im im))) re) (fma.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 im 6) 0) (*.f64 im im))) (fma.f64 1/4 (pow.f64 im 4) (*.f64 (*.f64 -1/4 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 im 4) 0) (*.f64 im im))) (*.f64 1/2 (*.f64 im im)))) (*.f64 im im)))) (pow.f64 re 3)) (fma.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (fma.f64 1/64 (pow.f64 im 8) (fma.f64 1/16 (pow.f64 im 8) (neg.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8)))))) (*.f64 im im))) (fma.f64 -2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (*.f64 im im)) (fma.f64 -1/4 (*.f64 (*.f64 im im) (-.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 im 6) 0) (*.f64 im im))) (fma.f64 1/4 (pow.f64 im 4) (*.f64 (*.f64 -1/4 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 im 4) 0) (*.f64 im im))) (*.f64 1/2 (*.f64 im im)))) (*.f64 im im))))) (*.f64 (*.f64 1/8 (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 im 4) 0) (*.f64 im im))) (*.f64 1/2 (*.f64 im im)))) (pow.f64 im 4))))) (pow.f64 re 5)) (*.f64 re -2))))
(-.f64 (-.f64 (-.f64 (*.f64 re -2) (/.f64 (-.f64 (*.f64 2 (/.f64 (-.f64 (*.f64 (pow.f64 im 8) 5/64) (*.f64 (pow.f64 im 8) 5/64)) (*.f64 im im))) (fma.f64 -2 (/.f64 (*.f64 (pow.f64 im 8) 5/64) (*.f64 im im)) (fma.f64 1/8 (*.f64 (pow.f64 im 4) (+.f64 (/.f64 0 (*.f64 im im)) (*.f64 (*.f64 im im) 1/2))) (*.f64 (-.f64 (/.f64 0 (*.f64 im im)) (fma.f64 (*.f64 -1/4 (+.f64 (/.f64 0 (*.f64 im im)) (*.f64 (*.f64 im im) 1/2))) (*.f64 im im) (*.f64 (pow.f64 im 4) 1/4))) (*.f64 (*.f64 im im) -1/4))))) (pow.f64 re 5))) (/.f64 (-.f64 (/.f64 0 (*.f64 im im)) (fma.f64 (*.f64 -1/4 (+.f64 (/.f64 0 (*.f64 im im)) (*.f64 (*.f64 im im) 1/2))) (*.f64 im im) (*.f64 (pow.f64 im 4) 1/4))) (pow.f64 re 3))) (/.f64 (+.f64 (/.f64 0 (*.f64 im im)) (*.f64 (*.f64 im im) 1/2)) re))
(-.f64 (-.f64 (*.f64 re -2) (+.f64 (*.f64 1/2 (/.f64 im (/.f64 re im))) (/.f64 (-.f64 (*.f64 (pow.f64 im 4) -1/4) (*.f64 (*.f64 im im) (*.f64 -1/4 (*.f64 (*.f64 im im) 1/2)))) (pow.f64 re 3)))) (/.f64 (-.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 im 8) 5/64) (*.f64 im im))) (fma.f64 (neg.f64 (*.f64 -1/4 (fma.f64 (*.f64 -1/4 (*.f64 (*.f64 im im) 1/2)) (*.f64 im im) (*.f64 (pow.f64 im 4) 1/4)))) (*.f64 im im) (*.f64 1/8 (*.f64 (pow.f64 im 4) (*.f64 (*.f64 im im) 1/2))))) (pow.f64 re 5)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (+.f64 (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im 4) 0) (pow.f64 re 3)))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (/.f64 0 re) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/2 (/.f64 im (/.f64 re im)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (/.f64 (*.f64 -1/8 (pow.f64 im 4)) (pow.f64 re 3)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (/.f64 (*.f64 -1/8 (pow.f64 im 4)) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 (pow.f64 im 8) (-.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 5/64 (/.f64 1 (pow.f64 re 6))) (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))))) re)) (*.f64 5/128 (/.f64 1 (pow.f64 re 7))))))))
(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)) (*.f64 (pow.f64 im 8) (fma.f64 1/2 (/.f64 (fma.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 5/64 (pow.f64 re 6))) re) (neg.f64 (/.f64 5/128 (pow.f64 re 7))))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 (pow.f64 im 8) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 5/64 (pow.f64 re 6)) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) re) (/.f64 -5/128 (pow.f64 re 7))) (/.f64 (*.f64 -1/8 (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 (pow.f64 im 8) (fma.f64 1/2 (/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2)) (*.f64 (/.f64 1 (pow.f64 re 6)) 1/64)) re) (/.f64 -5/128 (pow.f64 re 7))) (/.f64 (*.f64 -1/8 (pow.f64 im 4)) (pow.f64 re 3)))))
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) im)) im))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 re re) im) im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) re)) (*.f64 -1/2 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) im)) im)))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 re re) im) im) re)
(*.f64 -1 im)
(neg.f64 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(*.f64 -1 (+.f64 im re))
(-.f64 (neg.f64 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) (*.f64 -1 (+.f64 (/.f64 (*.f64 re re) im) im))))
(-.f64 (-.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) im) re)
(-.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (+.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) re)) (*.f64 -1/2 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) (*.f64 -1 (+.f64 (/.f64 (*.f64 re re) im) im))))
(-.f64 (-.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) im) re)
(-.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (+.f64 im re))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 (*.f64 re (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) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))) (sqrt.f64 (/.f64 1 im)))))))
(fma.f64 -1/2 (*.f64 (*.f64 re (sqrt.f64 2)) (sqrt.f64 (/.f64 1 im))) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (*.f64 -1/2 re) (sqrt.f64 2)) (*.f64 1/2 (*.f64 (*.f64 re re) (*.f64 (sqrt.f64 2) (+.f64 (/.f64 1/2 im) (*.f64 -1/4 (/.f64 1 im)))))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (sqrt.f64 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))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im))))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 im))) -1/2))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/4 (/.f64 1 im))) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im)))) 1/2) (*.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 -1/4 (/.f64 1 im))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) 1/4))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 im 5) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2))))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 5)) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 5/64 (/.f64 1 (pow.f64 re 6))) (*.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))))) re)) (+.f64 (*.f64 5/128 (/.f64 1 (pow.f64 re 7))) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2)))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 5/64 (pow.f64 re 6))) re) (neg.f64 (/.f64 5/128 (pow.f64 re 7)))) (*.f64 -1/16 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 1/2) 2))))) (pow.f64 im 7))))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 im 5) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 1 (sqrt.f64 1/2)))) 2))))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (fma.f64 1/2 (/.f64 (-.f64 (/.f64 5/64 (pow.f64 re 6)) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) re) (/.f64 -5/128 (pow.f64 re 7))) (*.f64 -1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re)))) (pow.f64 im 7)))) (/.f64 (*.f64 1/2 (sqrt.f64 2)) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 5)) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)))))) (fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 re) 1/2) (+.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (pow.f64 im 5) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)))) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (+.f64 (fma.f64 1/2 (/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2)) (*.f64 (/.f64 1 (pow.f64 re 6)) 1/64)) re) (/.f64 -5/128 (pow.f64 re 7))) (*.f64 1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re)))) (pow.f64 im 7))))) (fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))))
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))
(+.f64 im (fma.f64 1/2 (/.f64 (*.f64 re re) 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 (*.f64 re re) im) im)) re)
(*.f64 2 re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 2 re))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.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)))))
(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 2 re (/.f64 (*.f64 -1/8 (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 -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 2 re (/.f64 (*.f64 -1/8 (pow.f64 im 4)) (pow.f64 re 3)))))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 1/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 -1/2 (/.f64 (*.f64 im im) re)))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 1/8 (/.f64 (pow.f64 im 4) (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 -1/2 (/.f64 (*.f64 im im) re))))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))
(+.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 -1/2 (/.f64 (*.f64 im im) re)))))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 im 8) 5/64) (pow.f64 re 7)) (fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
(*.f64 2 re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 2 re))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.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)))))
(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 2 re (/.f64 (*.f64 -1/8 (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 -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 2 re (/.f64 (*.f64 -1/8 (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))
(+.f64 im (fma.f64 1/2 (/.f64 (*.f64 re re) 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 (*.f64 re re) im) 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 (-.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) 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 (-.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) im) (fma.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) re))

eval739.0ms (5.5%)

Compiler

Compiled 27673 to 18884 computations (31.8% saved)

prune234.0ms (1.8%)

Pruning

19 alts after pruning (17 fresh and 2 done)

PrunedKeptTotal
New83115846
Fresh9211
Picked101
Done325
Total84419863
Error
0.2b
Counts
863 → 19
Alt Table
Click to see full alt table
StatusErrorProgram
29.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
47.9b
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
47.8b
(*.f64 1/2 (*.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) (sqrt.f64 2)))
31.4b
(*.f64 1/2 (*.f64 (sqrt.f64 im) (sqrt.f64 2)))
13.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
29.8b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
47.9b
(*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im)) 3))
53.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 im (/.f64 1/2 (/.f64 re im))))))
46.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
31.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
13.6b
(*.f64 1/2 (*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) 2) (sqrt.f64 2)))
47.7b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
59.0b
(*.f64 1/2 (fma.f64 (*.f64 -1/8 (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))) (/.f64 im (/.f64 (*.f64 re re) im)) (cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 re) 3/2)))))
47.9b
(*.f64 1/2 (*.f64 (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))) (sqrt.f64 2)))
53.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) 2))))
42.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 im im) (+.f64 re (hypot.f64 re im))))))
47.8b
(*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im)) 2))
47.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (-.f64 (*.f64 (/.f64 -1/2 re) (*.f64 im im)) re) re))))
56.0b
(*.f64 1/2 (pow.f64 (*.f64 (*.f64 im im) (/.f64 1 re)) 1/2))
Compiler

Compiled 514 to 416 computations (19.1% saved)

localize83.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)
0.4b
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) 2) (sqrt.f64 2))
0.4b
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) 2)
0.5b
(-.f64 (hypot.f64 re im) re)
Compiler

Compiled 59 to 31 computations (47.5% saved)

series55.0ms (0.4%)

Counts
3 → 56
Calls

18 calls:

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

rewrite78.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
480×log-prod_binary64
410×prod-diff_binary64
326×pow-prod-down_binary64
279×pow2_binary64
218×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01135
124331
2288731
Stop Event
node limit
Counts
3 → 83
Calls
Call 1
Inputs
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) 2)
(*.f64 (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) 2) (sqrt.f64 2))
(pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8) (pow.f64 (-.f64 (hypot.f64 re im) re) 3/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/8) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 5/6) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/12))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (hypot.f64 (hypot.f64 re im) (sqrt.f64 (*.f64 re (+.f64 re (hypot.f64 re im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (-.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (-.f64 (hypot.f64 re im) re))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 1/4 (log.f64 (-.f64 (hypot.f64 re im) re))) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/12) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 1/4 (log.f64 (-.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 (-.f64 (hypot.f64 re im) re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (-.f64 (hypot.f64 re im) re))) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3/4 (log.f64 (-.f64 (hypot.f64 re im) re))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/12)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/8 (log.f64 (-.f64 (hypot.f64 re im) re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 1/4 (log.f64 (-.f64 (hypot.f64 re im) re))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1/2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1/8) 2))))))

simplify153.0ms (1.2%)

Algorithm
egg-herbie
Rules
941×associate-/l*_binary64
494×fma-def_binary64
391×associate-*r*_binary64
329×associate-*l*_binary64
328×*-commutative_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04314169
114023714
257333159
Stop Event
node limit
Counts
139 → 179
Calls
Call 1
Inputs
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(+.f64 (*.f64 1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (+.f64 (*.f64 -1/64 (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (*.f64 5/64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (pow.f64 re 3)))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2)
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 4)) (pow.f64 re 4))))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (*.f64 (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (pow.f64 im 2))) (pow.f64 re 6))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (+.f64 (*.f64 -1/24576 (pow.f64 im 6)) (+.f64 (*.f64 -1/1536 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 1/2880 (+.f64 (*.f64 45/2 (pow.f64 im 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (*.f64 -15/4 (pow.f64 im 6)))))))) (pow.f64 re 6))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))))) (pow.f64 re 6))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 4)) (pow.f64 re 4)))))))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (+.f64 (*.f64 1/96 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))) (*.f64 1/512 (pow.f64 im 4)))) (pow.f64 re 4))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 4)) (pow.f64 re 4))))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (+.f64 (*.f64 1/96 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))) (*.f64 1/512 (pow.f64 im 4)))) (pow.f64 re 4))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 1/24576 (pow.f64 im 6)) (+.f64 (*.f64 1/1536 (*.f64 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 1/2880 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6))))))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)) (pow.f64 re 6))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/96 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))) (*.f64 1/512 (pow.f64 im 4))))) (pow.f64 re 6))) (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 4)) (pow.f64 re 4))))))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2)
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (*.f64 (+.f64 (*.f64 13/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 re 4))) (*.f64 1/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 re 4)))) (pow.f64 im 4))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (+.f64 (*.f64 (+.f64 (*.f64 -13/4096 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 re 6))) (*.f64 2 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (-.f64 (*.f64 1/2880 (+.f64 (*.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 75/4 (/.f64 1 (pow.f64 re 6))))) (*.f64 37/24576 (/.f64 1 (pow.f64 re 6))))))) (pow.f64 im 6)) (*.f64 (+.f64 (*.f64 13/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 re 4))) (*.f64 1/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 re 4)))) (pow.f64 im 4)))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2))))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 re (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 -1/384 (pow.f64 re 3)))) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2))))))))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 -1) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)))
(+.f64 (*.f64 2 (*.f64 (*.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 -1) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (*.f64 1/16 (*.f64 (*.f64 (sqrt.f64 -1) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 -1) (*.f64 re (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2))))) (sqrt.f64 im))) (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 -1/384 (pow.f64 re 3)))) (sqrt.f64 -1)) (sqrt.f64 im)))) (pow.f64 im 3))) (+.f64 (*.f64 2 (*.f64 (*.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 -1) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (*.f64 1/16 (*.f64 (*.f64 (sqrt.f64 -1) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(pow.f64 im 1/4)
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4) re)) (pow.f64 im 1/4))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4) re)) (+.f64 (pow.f64 im 1/4) (*.f64 1/32 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4) (pow.f64 re 2)))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4) re)) (+.f64 (*.f64 5/128 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/4) (pow.f64 re 3))) (+.f64 (pow.f64 im 1/4) (*.f64 1/32 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4) (pow.f64 re 2))))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (+.f64 (*.f64 -1/24576 (pow.f64 im 6)) (+.f64 (*.f64 -1/1536 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 1/2880 (+.f64 (*.f64 45/2 (pow.f64 im 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (*.f64 -15/4 (pow.f64 im 6)))))))) (pow.f64 re 6)))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re))))))
(+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (*.f64 1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (/.f64 (*.f64 (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re))))))) (pow.f64 re 4))))
(+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/1536 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))) (pow.f64 im 2))) (+.f64 (*.f64 1/24576 (pow.f64 im 6)) (*.f64 1/2880 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6)))))))) (pow.f64 re 6)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (/.f64 (*.f64 (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re))))))) (pow.f64 re 4)))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))))
(+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (pow.f64 im 2)) (pow.f64 re 2))) (*.f64 13/512 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (pow.f64 im 4)) (pow.f64 re 4)))))
(+.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (*.f64 (-.f64 (*.f64 1/2880 (+.f64 (*.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 75/4 (/.f64 1 (pow.f64 re 6))))) (*.f64 37/24576 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 6))) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (pow.f64 im 2)) (pow.f64 re 2))) (*.f64 13/512 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (pow.f64 im 4)) (pow.f64 re 4))))))
(pow.f64 im 1/4)
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4) re)) (pow.f64 im 1/4))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4) re)) (+.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4) (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (pow.f64 im 1/4)))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4) re)) (+.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/4) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (*.f64 -1/384 (pow.f64 re 3))))) (+.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4) (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (pow.f64 im 1/4))))
(pow.f64 (*.f64 -1 im) 1/4)
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 3)) 1/4) re)) (pow.f64 (*.f64 -1 im) 1/4))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 3)) 1/4) re)) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 7)) 1/4) (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (pow.f64 (*.f64 -1 im) 1/4)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/4) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (*.f64 -1/384 (pow.f64 re 3)))))) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 3)) 1/4) re)) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 7)) 1/4) (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (pow.f64 (*.f64 -1 im) 1/4))))
Outputs
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (*.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 1 im))))
(fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))
(+.f64 (*.f64 1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(fma.f64 1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (+.f64 (sqrt.f64 im) (*.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 1 im)))))
(fma.f64 1/8 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)))
(+.f64 (*.f64 1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (+.f64 (*.f64 -1/64 (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (*.f64 5/64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (pow.f64 re 3)))))
(fma.f64 1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (+.f64 (sqrt.f64 im) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) 1/16) (pow.f64 re 3)))))
(+.f64 (fma.f64 1/8 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (*.f64 1/16 (pow.f64 re 3))))
(+.f64 (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)) (*.f64 (*.f64 re re) (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) 1/16) re) (*.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2)
(pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))))
(pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2)
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2))
(fma.f64 -1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2))
(fma.f64 -1/8 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) re)) (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))))
(fma.f64 -1/8 (*.f64 (/.f64 im (/.f64 re im)) (/.f64 (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2) re)) (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 4)) (pow.f64 re 4))))))
(fma.f64 -1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) 9/4))))) (+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2) (/.f64 (*.f64 1/256 (*.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2) (pow.f64 im 4))) (pow.f64 re 4)))))
(fma.f64 -1/8 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) re)) (fma.f64 2 (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 3/128)))) (fma.f64 1/256 (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))))))
(fma.f64 -1/8 (*.f64 (/.f64 im (/.f64 re im)) (/.f64 (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2) re)) (fma.f64 2 (*.f64 (/.f64 (*.f64 (pow.f64 im 4) 13/512) (pow.f64 re 4)) (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2)) (fma.f64 1/256 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2)) (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (*.f64 (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (pow.f64 im 2))) (pow.f64 re 6))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (+.f64 (*.f64 -1/24576 (pow.f64 im 6)) (+.f64 (*.f64 -1/1536 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 1/2880 (+.f64 (*.f64 45/2 (pow.f64 im 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (*.f64 -15/4 (pow.f64 im 6)))))))) (pow.f64 re 6))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))))) (pow.f64 re 6))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 4)) (pow.f64 re 4)))))))))
(fma.f64 -1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (fma.f64 -1/16 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2) (/.f64 (pow.f64 re 6) (*.f64 (*.f64 im im) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) 9/4)))))) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2) (/.f64 (pow.f64 re 6) (fma.f64 -1/24576 (pow.f64 im 6) (fma.f64 -1/1536 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 9/4)) (*.f64 1/2880 (fma.f64 45/2 (pow.f64 im 6) (fma.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (*.f64 im im)) (*.f64 (pow.f64 im 6) -15/4)))))))) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) 9/4))))) (fma.f64 -1/16 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2) (/.f64 (pow.f64 re 6) (*.f64 (*.f64 im im) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) 9/4)))))) (+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2) (/.f64 (*.f64 1/256 (*.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2) (pow.f64 im 4))) (pow.f64 re 4))))))))
(fma.f64 -1/8 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) re)) (fma.f64 -1/16 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) (pow.f64 re 6)) (+.f64 (*.f64 1/512 (pow.f64 im 6)) (*.f64 1/96 (*.f64 (pow.f64 im 6) 9/4)))) (fma.f64 2 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) (pow.f64 re 6)) (fma.f64 -1/24576 (pow.f64 im 6) (fma.f64 1/2880 (fma.f64 (pow.f64 im 6) 45/2 (fma.f64 -720 (/.f64 (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)) (*.f64 im im)) (*.f64 (pow.f64 im 6) -15/4))) (*.f64 -1/1536 (*.f64 (pow.f64 im 6) 9/4))))) (fma.f64 2 (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 3/128)))) (fma.f64 -1/16 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) (pow.f64 re 6)) (+.f64 (*.f64 1/512 (pow.f64 im 6)) (*.f64 1/96 (*.f64 (pow.f64 im 6) 9/4)))) (fma.f64 1/256 (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))))))))))
(fma.f64 -1/8 (*.f64 (/.f64 im (/.f64 re im)) (/.f64 (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2) re)) (fma.f64 -1/16 (*.f64 (/.f64 (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2) (pow.f64 re 6)) (*.f64 im (*.f64 im (*.f64 (pow.f64 im 4) 13/512)))) (fma.f64 2 (*.f64 (/.f64 (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2) (pow.f64 re 6)) (fma.f64 -1/24576 (pow.f64 im 6) (fma.f64 -1/1536 (*.f64 (pow.f64 im 6) 9/4) (*.f64 1/2880 (+.f64 (*.f64 (/.f64 -720 (*.f64 im im)) (*.f64 (pow.f64 im 8) 5/64)) (*.f64 (pow.f64 im 6) 75/4)))))) (fma.f64 2 (*.f64 (/.f64 (*.f64 (pow.f64 im 4) 13/512) (pow.f64 re 4)) (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2)) (fma.f64 -1/16 (*.f64 (/.f64 (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2) (pow.f64 re 6)) (*.f64 im (*.f64 im (*.f64 (pow.f64 im 4) 13/512)))) (fma.f64 1/256 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2)) (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2)))))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) 2)
(pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2)
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (*.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (*.f64 re re) (*.f64 im im)))))
(fma.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) 2) (*.f64 (/.f64 re im) (/.f64 re im))) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) 2))
(fma.f64 1/8 (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2)) (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2))
(+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (+.f64 (*.f64 1/96 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))) (*.f64 1/512 (pow.f64 im 4)))) (pow.f64 re 4))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 4)) (pow.f64 re 4))))))
(fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/96 (*.f64 (pow.f64 im 4) -9/4) (*.f64 1/512 (pow.f64 im 4))))) (+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (fma.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (*.f64 1/256 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (pow.f64 re 4) (pow.f64 im 4)))))))
(+.f64 (fma.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) 2) (*.f64 (/.f64 re im) (/.f64 re im))) (*.f64 1/256 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) 2) (/.f64 (pow.f64 re 4) (pow.f64 im 4))))) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -3/128)))) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) 2)))
(+.f64 (fma.f64 1/8 (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2)) (*.f64 1/256 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2)))) (fma.f64 2 (*.f64 (/.f64 (*.f64 (pow.f64 im 4) -11/512) (pow.f64 re 4)) (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2)) (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2)))
(+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (+.f64 (*.f64 1/96 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))) (*.f64 1/512 (pow.f64 im 4)))) (pow.f64 re 4))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 1/24576 (pow.f64 im 6)) (+.f64 (*.f64 1/1536 (*.f64 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 1/2880 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6))))))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2)) (pow.f64 re 6))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/96 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))) (*.f64 1/512 (pow.f64 im 4))))) (pow.f64 re 6))) (*.f64 1/256 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) 2) (pow.f64 im 4)) (pow.f64 re 4))))))))
(fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/96 (*.f64 (pow.f64 im 4) -9/4) (*.f64 1/512 (pow.f64 im 4))))) (+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (fma.f64 2 (/.f64 (fma.f64 1/24576 (pow.f64 im 6) (fma.f64 1/1536 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4)) (*.f64 1/2880 (fma.f64 15/4 (pow.f64 im 6) (*.f64 (pow.f64 im 6) 135/4))))) (/.f64 (pow.f64 re 6) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) 2))) (fma.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (fma.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (pow.f64 re 6) (*.f64 (*.f64 im im) (fma.f64 1/96 (*.f64 (pow.f64 im 4) -9/4) (*.f64 1/512 (pow.f64 im 4)))))) (*.f64 1/256 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) 2) (/.f64 (pow.f64 re 4) (pow.f64 im 4)))))))))
(+.f64 (fma.f64 2 (/.f64 (fma.f64 (pow.f64 im 6) 1/24576 (fma.f64 1/2880 (*.f64 (pow.f64 im 6) 75/2) (*.f64 1/1536 (*.f64 (pow.f64 im 6) -9/4)))) (/.f64 (pow.f64 re 6) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) 2))) (fma.f64 1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) 2) (*.f64 (/.f64 re im) (/.f64 re im))) (fma.f64 1/8 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) 2) (pow.f64 re 6)) (+.f64 (*.f64 1/96 (*.f64 (pow.f64 im 6) -9/4)) (*.f64 1/512 (pow.f64 im 6)))) (*.f64 1/256 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) 2) (/.f64 (pow.f64 re 4) (pow.f64 im 4))))))) (fma.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) 2) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -3/128)))) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) 2)))
(+.f64 (fma.f64 2 (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2) (pow.f64 re 6)) (fma.f64 (pow.f64 im 6) 1/24576 (fma.f64 1/1536 (*.f64 (pow.f64 im 6) -9/4) (*.f64 (pow.f64 im 6) 5/384)))) (fma.f64 1/8 (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2)) (fma.f64 1/8 (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2) (pow.f64 re 6)) (*.f64 im (*.f64 im (*.f64 (pow.f64 im 4) -11/512)))) (*.f64 1/256 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2)))))) (fma.f64 2 (*.f64 (/.f64 (*.f64 (pow.f64 im 4) -11/512) (pow.f64 re 4)) (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2)) (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2)))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2)
(pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))))
(pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2)
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2))
(fma.f64 -1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) 2))
(fma.f64 -1/8 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) re)) (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))))
(fma.f64 -1/8 (*.f64 (/.f64 im (/.f64 re im)) (/.f64 (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2) re)) (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (*.f64 (+.f64 (*.f64 13/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 re 4))) (*.f64 1/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 re 4)))) (pow.f64 im 4))))
(+.f64 (fma.f64 -1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) 2)) (*.f64 (pow.f64 im 4) (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) 2) (pow.f64 re 4)) 7/128)))
(fma.f64 -1/8 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) re)) (fma.f64 (pow.f64 im 4) (/.f64 (*.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) 7/128) (pow.f64 re 4)) (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))))))
(fma.f64 -1/8 (*.f64 (/.f64 im (/.f64 re im)) (/.f64 (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2) re)) (fma.f64 (pow.f64 im 4) (/.f64 (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2) (/.f64 (pow.f64 re 4) 7/128)) (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2)))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (+.f64 (*.f64 (+.f64 (*.f64 -13/4096 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 re 6))) (*.f64 2 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (-.f64 (*.f64 1/2880 (+.f64 (*.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 75/4 (/.f64 1 (pow.f64 re 6))))) (*.f64 37/24576 (/.f64 1 (pow.f64 re 6))))))) (pow.f64 im 6)) (*.f64 (+.f64 (*.f64 13/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 re 4))) (*.f64 1/256 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) 2) (pow.f64 re 4)))) (pow.f64 im 4)))))
(+.f64 (fma.f64 -1/8 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) 2) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) 2)) (fma.f64 (fma.f64 -13/4096 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) 2) (pow.f64 re 6)) (*.f64 (*.f64 2 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) 2)) (fma.f64 1/2880 (fma.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 75/4 (pow.f64 re 6))) (neg.f64 (/.f64 37/24576 (pow.f64 re 6)))))) (pow.f64 im 6) (*.f64 (pow.f64 im 4) (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) 2) (pow.f64 re 4)) 7/128))))
(+.f64 (fma.f64 -1/8 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) re)) (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))))) (fma.f64 (pow.f64 im 6) (fma.f64 2 (*.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) (+.f64 (fma.f64 1/2880 (fma.f64 -720 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -45 (pow.f64 re 6))) (/.f64 5/768 (pow.f64 re 6))) (/.f64 -37/24576 (pow.f64 re 6)))) (*.f64 -13/4096 (/.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) (pow.f64 re 6)))) (*.f64 (pow.f64 im 4) (/.f64 (*.f64 (pow.f64 (exp.f64 1/4) (*.f64 2 (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))) 7/128) (pow.f64 re 4)))))
(+.f64 (fma.f64 -1/8 (*.f64 (/.f64 im (/.f64 re im)) (/.f64 (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2) re)) (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2)) (fma.f64 (pow.f64 im 6) (fma.f64 2 (*.f64 (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2) (+.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) -1/4) (*.f64 (/.f64 1 (pow.f64 re 6)) 41/8192))) (*.f64 -13/4096 (/.f64 (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2) (pow.f64 re 6)))) (*.f64 (pow.f64 im 4) (/.f64 (pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) 2) (/.f64 (pow.f64 re 4) 7/128)))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (*.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 1 im))))
(fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2))))))))
(+.f64 (sqrt.f64 im) (fma.f64 1/16 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 (*.f64 2 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32))))))
(+.f64 (sqrt.f64 im) (fma.f64 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) 1/16 (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 (fma.f64 (*.f64 re re) 1/32 0) (*.f64 2 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 2 (*.f64 re (*.f64 re 1/32))) (*.f64 (*.f64 re re) 1/16)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 re (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (sqrt.f64 im) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 -1/384 (pow.f64 re 3)))) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2))))))))))
(fma.f64 -1/2 (*.f64 re (*.f64 (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (sqrt.f64 im) (fma.f64 1/16 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (fma.f64 1/24 (*.f64 (pow.f64 re 3) 1) (fma.f64 -1/32 (*.f64 re (*.f64 0 (*.f64 re re))) (*.f64 (pow.f64 re 3) -1/384)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32)))))))))
(+.f64 (fma.f64 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) 1/16 (fma.f64 2 (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (fma.f64 (pow.f64 re 3) 1/24 (fma.f64 (pow.f64 re 3) -1/384 (*.f64 re 0))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (fma.f64 (*.f64 re re) 1/32 0))) (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))))) (fma.f64 (*.f64 -1/2 (fma.f64 re 0 (*.f64 (pow.f64 re 3) 1/32))) (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (sqrt.f64 im)))
(+.f64 (+.f64 (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (*.f64 2 (*.f64 (pow.f64 re 3) 5/128)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 2 (*.f64 re (*.f64 re 1/32))) (*.f64 (*.f64 re re) 1/16)))) (fma.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 3) 1/32)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (sqrt.f64 im)))
(*.f64 (sqrt.f64 -1) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 -1))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 -1) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (sqrt.f64 -1))) (*.f64 (sqrt.f64 im) (sqrt.f64 -1)))
(fma.f64 (sqrt.f64 im) (sqrt.f64 -1) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 1/2 (*.f64 re (sqrt.f64 -1)))))
(*.f64 (sqrt.f64 -1) (+.f64 (sqrt.f64 im) (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 im))) 1/2)))
(+.f64 (*.f64 2 (*.f64 (*.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 -1) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (*.f64 1/16 (*.f64 (*.f64 (sqrt.f64 -1) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(fma.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32)) (sqrt.f64 -1))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (sqrt.f64 -1))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 im) (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (*.f64 re re) (sqrt.f64 -1)))))))
(fma.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (fma.f64 (*.f64 re re) 1/32 0) (sqrt.f64 -1))) (fma.f64 1/2 (*.f64 re (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 im) (sqrt.f64 -1) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 1/16 (*.f64 re (*.f64 re (sqrt.f64 -1))))))))
(+.f64 (*.f64 (sqrt.f64 -1) (+.f64 (sqrt.f64 im) (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 im))) 1/2))) (*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 (*.f64 re re) 1/16) (*.f64 2 (*.f64 re (*.f64 re 1/32)))))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 -1) (*.f64 re (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2))))) (sqrt.f64 im))) (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 -1/384 (pow.f64 re 3)))) (sqrt.f64 -1)) (sqrt.f64 im)))) (pow.f64 im 3))) (+.f64 (*.f64 2 (*.f64 (*.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))) (*.f64 1/32 (pow.f64 re 2)))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 -1) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (*.f64 1/16 (*.f64 (*.f64 (sqrt.f64 -1) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))
(fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (sqrt.f64 im) (*.f64 (*.f64 re (sqrt.f64 -1)) (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32)))) (*.f64 2 (*.f64 (fma.f64 1/24 (*.f64 (pow.f64 re 3) 1) (fma.f64 -1/32 (*.f64 re (*.f64 0 (*.f64 re re))) (*.f64 (pow.f64 re 3) -1/384))) (*.f64 (sqrt.f64 im) (sqrt.f64 -1))))) (pow.f64 im 3)) (fma.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32)) (sqrt.f64 -1))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (sqrt.f64 -1))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 im) (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (*.f64 re re) (sqrt.f64 -1))))))))
(-.f64 (fma.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (fma.f64 (*.f64 re re) 1/32 0) (sqrt.f64 -1))) (fma.f64 1/2 (*.f64 re (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 im) (sqrt.f64 -1) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 1/16 (*.f64 re (*.f64 re (sqrt.f64 -1)))))))) (/.f64 (*.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/2 (*.f64 (fma.f64 (*.f64 re re) 1/32 0) (*.f64 re (sqrt.f64 -1)))) (*.f64 2 (*.f64 (sqrt.f64 -1) (fma.f64 (pow.f64 re 3) 1/24 (fma.f64 (pow.f64 re 3) -1/384 (*.f64 re 0))))))) (pow.f64 im 3)))
(-.f64 (+.f64 (*.f64 (sqrt.f64 -1) (+.f64 (sqrt.f64 im) (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 im))) 1/2))) (*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 (*.f64 re re) 1/16) (*.f64 2 (*.f64 re (*.f64 re 1/32))))))) (/.f64 (sqrt.f64 im) (/.f64 (pow.f64 im 3) (*.f64 (sqrt.f64 -1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 3) 1/32)) (*.f64 2 (*.f64 (pow.f64 re 3) 5/128)))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 2))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (sqrt.f64 2))) (*.f64 (sqrt.f64 im) (sqrt.f64 2)))
(fma.f64 (sqrt.f64 im) (sqrt.f64 2) (*.f64 (*.f64 re (sqrt.f64 2)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))))
(*.f64 (sqrt.f64 2) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (sqrt.f64 2))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))) (sqrt.f64 (/.f64 1 im)))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (sqrt.f64 2))) (fma.f64 (sqrt.f64 im) (sqrt.f64 2) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im)))) 1/2))))
(+.f64 (*.f64 (sqrt.f64 im) (sqrt.f64 2)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 2))) (*.f64 1/2 (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (*.f64 (*.f64 re re) (sqrt.f64 2)))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (sqrt.f64 2))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re (sqrt.f64 2))) (fma.f64 (sqrt.f64 im) (sqrt.f64 2) (fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (pow.f64 re 3) (sqrt.f64 2)))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 im)))) 1/2)))))
(+.f64 (*.f64 (sqrt.f64 2) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 re re) (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)))) 1/2) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (pow.f64 re 3) (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)))) 1/4))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 im 5) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (*.f64 -1/16 (/.f64 1 (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) 2))))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 5)) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (/.f64 (sqrt.f64 1/2) (pow.f64 im 5))) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re)) (*.f64 1/16 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (*.f64 -1/16 (/.f64 1 (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 1/2) 2)))))) (pow.f64 im 7)) (sqrt.f64 1/2))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 im 5) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (*.f64 -1/16 (/.f64 1 (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) 2))))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 7)) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re)) (*.f64 -1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re))))))) (/.f64 (*.f64 1/2 (sqrt.f64 2)) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 5)) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)))))) (fma.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 re) 1/2) (+.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (pow.f64 im 5) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)))) (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 7))) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re) (*.f64 1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re))))))) (fma.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))))
(pow.f64 im 1/4)
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4) re)) (pow.f64 im 1/4))
(fma.f64 -1/4 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4)) (pow.f64 im 1/4))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4) re)) (+.f64 (pow.f64 im 1/4) (*.f64 1/32 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4) (pow.f64 re 2)))))
(+.f64 (fma.f64 -1/4 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4)) (pow.f64 im 1/4)) (*.f64 (*.f64 1/32 (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4)) (*.f64 re re)))
(fma.f64 -1/4 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4)) (fma.f64 1/32 (*.f64 re (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4))) (pow.f64 im 1/4)))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4) re)) (+.f64 (*.f64 5/128 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/4) (pow.f64 re 3))) (+.f64 (pow.f64 im 1/4) (*.f64 1/32 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4) (pow.f64 re 2))))))
(fma.f64 -1/4 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4)) (fma.f64 5/128 (*.f64 (pow.f64 re 3) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/4)) (+.f64 (pow.f64 im 1/4) (*.f64 (*.f64 1/32 (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4)) (*.f64 re re)))))
(fma.f64 -1/4 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4)) (fma.f64 5/128 (*.f64 (pow.f64 re 3) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/4)) (fma.f64 1/32 (*.f64 re (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4))) (pow.f64 im 1/4))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im)))))
(pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (pow.f64 im 2)) (pow.f64 re 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))))
(fma.f64 -1/16 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))))
(fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))) re)) (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))))
(fma.f64 -1/16 (*.f64 (/.f64 im (/.f64 re im)) (/.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) re)) (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))))
(fma.f64 -1/16 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) (/.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) 9/4)))))))
(+.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))) (pow.f64 re 4)) (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 3/128))) (fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))) re)) (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))))
(+.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) (pow.f64 re 4)) (*.f64 (pow.f64 im 4) 13/512)) (fma.f64 -1/16 (*.f64 (/.f64 im (/.f64 re im)) (/.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) re)) (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4))))
(+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (pow.f64 im 2)) (pow.f64 re 2))) (+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4)))))) (pow.f64 re 4)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (+.f64 (*.f64 -1/24576 (pow.f64 im 6)) (+.f64 (*.f64 -1/1536 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))) (*.f64 1/2880 (+.f64 (*.f64 45/2 (pow.f64 im 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 im 2))) (*.f64 -15/4 (pow.f64 im 6)))))))) (pow.f64 re 6)))))
(fma.f64 -1/16 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) (/.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) (/.f64 (pow.f64 re 4) (fma.f64 1/512 (pow.f64 im 4) (*.f64 1/96 (*.f64 (pow.f64 im 4) 9/4)))))) (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) (/.f64 (pow.f64 re 6) (fma.f64 -1/24576 (pow.f64 im 6) (fma.f64 -1/1536 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 9/4)) (*.f64 1/2880 (fma.f64 45/2 (pow.f64 im 6) (fma.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (*.f64 im im)) (*.f64 (pow.f64 im 6) -15/4))))))))))
(+.f64 (+.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))) (pow.f64 re 4)) (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) 3/128))) (fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))) re)) (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))) (pow.f64 re 6)) (fma.f64 -1/24576 (pow.f64 im 6) (fma.f64 1/2880 (fma.f64 (pow.f64 im 6) 45/2 (fma.f64 -720 (/.f64 (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)) (*.f64 im im)) (*.f64 (pow.f64 im 6) -15/4))) (*.f64 -1/1536 (*.f64 (pow.f64 im 6) 9/4))))))
(+.f64 (+.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) (pow.f64 re 4)) (*.f64 (pow.f64 im 4) 13/512)) (fma.f64 -1/16 (*.f64 (/.f64 im (/.f64 re im)) (/.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) re)) (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) (pow.f64 re 6)) (fma.f64 -1/24576 (pow.f64 im 6) (fma.f64 -1/1536 (*.f64 (pow.f64 im 6) 9/4) (*.f64 1/2880 (+.f64 (*.f64 (/.f64 -720 (*.f64 im im)) (*.f64 (pow.f64 im 8) 5/64)) (*.f64 (pow.f64 im 6) 75/4)))))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re))))
(*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4))
(+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (*.f64 1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) (*.f64 1/16 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (*.f64 re re) (*.f64 im im)))))
(fma.f64 1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) re)) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))))
(fma.f64 1/16 (*.f64 (/.f64 im (/.f64 re im)) (/.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) re)) (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)))
(+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (/.f64 (*.f64 (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re))))))) (pow.f64 re 4))))
(+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) (fma.f64 1/16 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (fma.f64 1/96 (*.f64 (pow.f64 im 4) -9/4) (*.f64 1/512 (pow.f64 im 4))) (/.f64 (pow.f64 re 4) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re)))))))))
(+.f64 (fma.f64 1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) re)) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re))))) (*.f64 (/.f64 (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -3/128)) (pow.f64 re 4)) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re))))))
(+.f64 (/.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) (/.f64 (*.f64 (/.f64 re (*.f64 im im)) re) 1/16)) (*.f64 (+.f64 (/.f64 (*.f64 (pow.f64 im 4) -11/512) (pow.f64 re 4)) 1) (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4))))
(+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/1536 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))) (pow.f64 im 2))) (+.f64 (*.f64 1/24576 (pow.f64 im 6)) (*.f64 1/2880 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6)))))))) (pow.f64 re 6)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re)))))) (pow.f64 im 2)) (pow.f64 re 2))) (/.f64 (*.f64 (+.f64 (*.f64 1/512 (pow.f64 im 4)) (*.f64 1/96 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 -1 re))))))) (pow.f64 re 4)))))
(+.f64 (+.f64 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (pow.f64 re 6) (fma.f64 1/1536 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4)) (fma.f64 1/24576 (pow.f64 im 6) (*.f64 1/2880 (fma.f64 15/4 (pow.f64 im 6) (*.f64 (pow.f64 im 6) 135/4))))))) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re)))))) (fma.f64 1/16 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re))))) (/.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (fma.f64 1/96 (*.f64 (pow.f64 im 4) -9/4) (*.f64 1/512 (pow.f64 im 4))) (/.f64 (pow.f64 re 4) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 -1 re)))))))))
(+.f64 (fma.f64 1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) re)) (*.f64 (/.f64 (fma.f64 1/512 (pow.f64 im 4) (*.f64 (pow.f64 im 4) -3/128)) (pow.f64 re 4)) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))))) (+.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 2) (log.f64 (/.f64 -1 re)))) (pow.f64 re 6)) (fma.f64 (pow.f64 im 6) 1/24576 (fma.f64 1/2880 (*.f64 (pow.f64 im 6) 75/2) (*.f64 1/1536 (*.f64 (pow.f64 im 6) -9/4)))))))
(+.f64 (+.f64 (/.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) (/.f64 (*.f64 (/.f64 re (*.f64 im im)) re) 1/16)) (*.f64 (+.f64 (/.f64 (*.f64 (pow.f64 im 4) -11/512) (pow.f64 re 4)) 1) (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)))) (*.f64 (/.f64 (fma.f64 (pow.f64 im 6) 1/24576 (fma.f64 1/1536 (*.f64 (pow.f64 im 6) -9/4) (*.f64 (pow.f64 im 6) 5/384))) (pow.f64 re 6)) (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))))
(pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im)))))
(pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4))
(+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (pow.f64 im 2)) (pow.f64 re 2))))
(fma.f64 -1/16 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))) (/.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (exp.f64 1/4) (+.f64 (neg.f64 (log.f64 re)) (log.f64 (*.f64 1/2 (*.f64 im im))))))
(fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))) re)) (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))))
(fma.f64 -1/16 (*.f64 (/.f64 im (/.f64 re im)) (/.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) re)) (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)))
(+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (pow.f64 im 2)) (pow.f64 re 2))) (*.f64 13/512 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (pow.f64 im 4)) (pow.f64 re 4)))))
(+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) (fma.f64 -1/16 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) (/.f64 (*.f64 re re) (*.f64 im im))) (*.f64 13/512 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) (/.f64 (pow.f64 re 4) (pow.f64 im 4))))))
(+.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))) (fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))) re)) (*.f64 13/512 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))) (/.f64 (pow.f64 re 4) (pow.f64 im 4))))))
(+.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) (fma.f64 -1/16 (*.f64 (/.f64 im (/.f64 re im)) (/.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) re)) (*.f64 13/512 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4))))))
(+.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (*.f64 (-.f64 (*.f64 1/2880 (+.f64 (*.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (*.f64 75/4 (/.f64 1 (pow.f64 re 6))))) (*.f64 37/24576 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 6))) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (pow.f64 im 2)) (pow.f64 re 2))) (*.f64 13/512 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im))))) (pow.f64 im 4)) (pow.f64 re 4))))))
(fma.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) (*.f64 (pow.f64 im 6) (fma.f64 1/2880 (fma.f64 -720 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 75/4 (pow.f64 re 6))) (neg.f64 (/.f64 37/24576 (pow.f64 re 6))))) (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) (fma.f64 -1/16 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) (/.f64 (*.f64 re re) (*.f64 im im))) (*.f64 13/512 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 1/2 re)) (*.f64 2 (log.f64 im)))) (/.f64 (pow.f64 re 4) (pow.f64 im 4)))))))
(+.f64 (fma.f64 -1/16 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))) re)) (*.f64 13/512 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re)))) (/.f64 (pow.f64 re 4) (pow.f64 im 4))))) (*.f64 (+.f64 (*.f64 (pow.f64 im 6) (+.f64 (fma.f64 1/2880 (fma.f64 -720 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 -45 (pow.f64 re 6))) (/.f64 5/768 (pow.f64 re 6))) (/.f64 -37/24576 (pow.f64 re 6)))) 1) (pow.f64 (exp.f64 1/4) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 1/2 re))))))
(+.f64 (fma.f64 -1/16 (*.f64 (/.f64 im (/.f64 re im)) (/.f64 (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4)) re)) (*.f64 13/512 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4))))) (*.f64 (+.f64 (*.f64 (pow.f64 im 6) (+.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) -1/4) (*.f64 (/.f64 1 (pow.f64 re 6)) 41/8192))) 1) (*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1/2 re) 1/4))))
(pow.f64 im 1/4)
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4) re)) (pow.f64 im 1/4))
(fma.f64 -1/4 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4)) (pow.f64 im 1/4))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4) re)) (+.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4) (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (pow.f64 im 1/4)))
(+.f64 (fma.f64 -1/4 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4)) (pow.f64 im 1/4)) (*.f64 (*.f64 1/32 (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4)) (*.f64 re re)))
(fma.f64 -1/4 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4)) (fma.f64 1/32 (*.f64 re (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4))) (pow.f64 im 1/4)))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4) re)) (+.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/4) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (*.f64 -1/384 (pow.f64 re 3))))) (+.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4) (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (pow.f64 im 1/4))))
(fma.f64 -1/4 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4)) (fma.f64 5/128 (*.f64 (pow.f64 re 3) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/4)) (+.f64 (pow.f64 im 1/4) (*.f64 (*.f64 1/32 (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4)) (*.f64 re re)))))
(fma.f64 -1/4 (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 3)) 1/4)) (fma.f64 5/128 (*.f64 (pow.f64 re 3) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/4)) (fma.f64 1/32 (*.f64 re (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 7)) 1/4))) (pow.f64 im 1/4))))
(pow.f64 (*.f64 -1 im) 1/4)
(pow.f64 (neg.f64 im) 1/4)
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 3)) 1/4) re)) (pow.f64 (*.f64 -1 im) 1/4))
(fma.f64 1/4 (*.f64 re (pow.f64 (/.f64 -1 (pow.f64 im 3)) 1/4)) (pow.f64 (neg.f64 im) 1/4))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 3)) 1/4) re)) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 7)) 1/4) (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (pow.f64 (*.f64 -1 im) 1/4)))
(fma.f64 1/4 (*.f64 re (pow.f64 (/.f64 -1 (pow.f64 im 3)) 1/4)) (fma.f64 (pow.f64 (/.f64 -1 (pow.f64 im 7)) 1/4) (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32)) (pow.f64 (neg.f64 im) 1/4)))
(fma.f64 1/4 (*.f64 re (pow.f64 (/.f64 -1 (pow.f64 im 3)) 1/4)) (fma.f64 (fma.f64 (*.f64 re re) 1/32 0) (pow.f64 (/.f64 -1 (pow.f64 im 7)) 1/4) (pow.f64 (neg.f64 im) 1/4)))
(fma.f64 1/4 (*.f64 re (pow.f64 (/.f64 -1 (pow.f64 im 3)) 1/4)) (fma.f64 (*.f64 re (*.f64 re 1/32)) (pow.f64 (/.f64 -1 (pow.f64 im 7)) 1/4) (pow.f64 (neg.f64 im) 1/4)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/4) (+.f64 (*.f64 -1/32 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 1/24 (+.f64 (*.f64 3 (pow.f64 re 3)) (*.f64 -2 (pow.f64 re 3)))) (*.f64 -1/384 (pow.f64 re 3)))))) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 3)) 1/4) re)) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 7)) 1/4) (+.f64 (*.f64 1/32 (pow.f64 re 2)) (*.f64 1/8 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (pow.f64 (*.f64 -1 im) 1/4))))
(fma.f64 -1 (*.f64 (fma.f64 -1/32 (*.f64 re (*.f64 0 (*.f64 re re))) (fma.f64 1/24 (*.f64 (pow.f64 re 3) 1) (*.f64 (pow.f64 re 3) -1/384))) (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/4)) (fma.f64 1/4 (*.f64 re (pow.f64 (/.f64 -1 (pow.f64 im 3)) 1/4)) (fma.f64 (pow.f64 (/.f64 -1 (pow.f64 im 7)) 1/4) (fma.f64 1/8 (*.f64 0 (*.f64 re re)) (*.f64 (*.f64 re re) 1/32)) (pow.f64 (neg.f64 im) 1/4))))
(-.f64 (fma.f64 1/4 (*.f64 re (pow.f64 (/.f64 -1 (pow.f64 im 3)) 1/4)) (fma.f64 (fma.f64 (*.f64 re re) 1/32 0) (pow.f64 (/.f64 -1 (pow.f64 im 7)) 1/4) (pow.f64 (neg.f64 im) 1/4))) (*.f64 (fma.f64 (pow.f64 re 3) 1/24 (fma.f64 (pow.f64 re 3) -1/384 (*.f64 re 0))) (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/4)))
(-.f64 (fma.f64 1/4 (*.f64 re (pow.f64 (/.f64 -1 (pow.f64 im 3)) 1/4)) (fma.f64 (*.f64 re (*.f64 re 1/32)) (pow.f64 (/.f64 -1 (pow.f64 im 7)) 1/4) (pow.f64 (neg.f64 im) 1/4))) (*.f64 (*.f64 (pow.f64 re 3) 5/128) (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/4)))

localize40.0ms (0.3%)

Local error

Found 1 expressions with local error:

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

Compiled 28 to 23 computations (17.9% saved)

series2.0ms (0%)

Counts
1 → 0
Calls

3 calls:

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

rewrite56.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
595×pow1_binary64
553×add-log-exp_binary64
553×log1p-expm1-u_binary64
553×expm1-log1p-u_binary64
542×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify12.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
24 → 24
Calls
Call 1
Inputs
Outputs

localize37.0ms (0.3%)

Local error

Found 3 expressions with local error:

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

Compiled 52 to 29 computations (44.2% saved)

series16.0ms (0.1%)

Counts
3 → 60
Calls

18 calls:

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

rewrite103.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
561×log-prod_binary64
421×exp-prod_binary64
313×pow-prod-down_binary64
268×pow2_binary64
259×pow-unpow_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify141.0ms (1.1%)

Algorithm
egg-herbie
Rules
987×fma-def_binary64
459×fma-neg_binary64
306×distribute-rgt-in_binary64
303×associate-*l/_binary64
242×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
016524
133524
259524
3110524
4283524
5977524
62264524
73516524
83978524
95934524
106788524
117612524
Stop Event
node limit
Counts
175 → 120
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 im re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im re))
(*.f64 im (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))

localize23.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

Compiled 41 to 31 computations (24.4% saved)

series20.0ms (0.1%)

Counts
3 → 24
Calls

15 calls:

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

rewrite80.0ms (0.6%)

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

Useful iterations: 1 (0.0ms)

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

simplify18.0ms (0.1%)

Algorithm
egg-herbie
Rules
29×associate-*l*_binary64
21×associate-*r*_binary64
13×*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
014396
125396
248396
389396
492396
Stop Event
saturated
Counts
80 → 60
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))

localize29.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 61 to 47 computations (23% saved)

series9.0ms (0.1%)

Counts
2 → 24
Calls

12 calls:

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

rewrite83.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
982×pow1_binary64
908×add-log-exp_binary64
908×log1p-expm1-u_binary64
908×expm1-log1p-u_binary64
109×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify83.0ms (0.6%)

Algorithm
egg-herbie
Rules
691×unswap-sqr_binary64
645×fma-def_binary64
433×distribute-lft-neg-in_binary64
416×distribute-rgt-neg-in_binary64
344×associate-*l*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
019416
142356
2112356
3408356
41676356
53925356
66059356
77781356
Stop Event
node limit
Counts
70 → 52
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 -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 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 (/.f64 1 re)) (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 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 (/.f64 1 re)) (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 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 (/.f64 1 re)) (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 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (pow.f64 (sqrt.f64 1/2) 2) (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (pow.f64 (sqrt.f64 1/2) 2) (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (pow.f64 (sqrt.f64 1/2) 2) (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (pow.f64 (sqrt.f64 1/2) 2) (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (pow.f64 (sqrt.f64 1/2) 2) (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (pow.f64 (sqrt.f64 1/2) 2) (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (pow.f64 (sqrt.f64 1/2) 2) (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (pow.f64 (sqrt.f64 1/2) 2) (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (pow.f64 (sqrt.f64 1/2) 2) (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (pow.f64 (sqrt.f64 1/2) 2) (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (pow.f64 (sqrt.f64 1/2) 2) (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 im 2)) re)
(/.f64 (pow.f64 (sqrt.f64 1/2) 2) (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 im (*.f64 im (/.f64 1/2 re)))

eval537.0ms (4%)

Compiler

Compiled 13188 to 10087 computations (23.5% saved)

prune173.0ms (1.3%)

Pruning

21 alts after pruning (17 fresh and 4 done)

PrunedKeptTotal
New53810548
Fresh5712
Picked101
Done246
Total54621567
Error
0b
Counts
567 → 21
Alt Table
Click to see full alt table
StatusErrorProgram
29.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
46.3b
(*.f64 1/2 (*.f64 (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2) (sqrt.f64 2)))
53.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (/.f64 im re) im))) (sqrt.f64 2)))
31.4b
(*.f64 1/2 (*.f64 (sqrt.f64 im) (sqrt.f64 2)))
13.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
29.8b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
47.8b
(*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im)) 2))
47.9b
(*.f64 1/2 (*.f64 im (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))))
47.9b
(*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im)) 3))
53.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 im (/.f64 1/2 (/.f64 re im))))))
56.7b
(*.f64 1/2 (*.f64 (pow.f64 (pow.f64 (fma.f64 1/2 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 4))) 1/4) 2) (sqrt.f64 2)))
32.0b
(*.f64 1/2 (*.f64 (hypot.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (neg.f64 re))) (sqrt.f64 2)))
49.1b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 2 im)) (sqrt.f64 (*.f64 im (/.f64 1/2 re)))))
46.3b
(*.f64 1/2 (pow.f64 (*.f64 re -4) 1/2))
31.5b
(*.f64 1/2 (*.f64 (pow.f64 (pow.f64 im 1/4) 2) (sqrt.f64 2)))
47.7b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
47.8b
(*.f64 1/2 (*.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) (sqrt.f64 2)))
42.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 im im) (+.f64 re (hypot.f64 re im))))))
47.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (-.f64 (*.f64 (/.f64 -1/2 re) (*.f64 im im)) re) re))))
31.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
56.0b
(*.f64 1/2 (pow.f64 (*.f64 (*.f64 im im) (/.f64 1 re)) 1/2))
Compiler

Compiled 527 to 432 computations (18% saved)

localize27.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 31 to 16 computations (48.4% saved)

series11.0ms (0.1%)

Counts
2 → 16
Calls

12 calls:

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

rewrite64.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
838×pow1_binary64
780×add-log-exp_binary64
779×log1p-expm1-u_binary64
779×expm1-log1p-u_binary64
762×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify89.0ms (0.7%)

Algorithm
egg-herbie
Rules
863×associate-/r*_binary64
701×associate-/r/_binary64
436×fma-def_binary64
355×distribute-lft-out_binary64
336×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
098632
1269630
2824598
33369572
46367572
57562572
Stop Event
node limit
Counts
52 → 65
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/16 (*.f64 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 2) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 im (/.f64 (sqrt.f64 2) (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 1/2 (*.f64 im (/.f64 (sqrt.f64 2) (sqrt.f64 -1))))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 im im))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (/.f64 (*.f64 im im) -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (fma.f64 1/2 (*.f64 (*.f64 im (/.f64 (sqrt.f64 2) (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) (sqrt.f64 -1))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (+.f64 (*.f64 1/2 (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (/.f64 im -1) im) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(fma.f64 1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 im im))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))))
(fma.f64 1/16 (*.f64 (/.f64 (pow.f64 im 3) (/.f64 (pow.f64 (sqrt.f64 -1) 5) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (/.f64 (*.f64 im im) -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(fma.f64 1/2 (*.f64 (*.f64 im (/.f64 (sqrt.f64 2) (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 re))) (fma.f64 1/16 (*.f64 (*.f64 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) (sqrt.f64 -1)))))))
(fma.f64 1/16 (*.f64 (*.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 -1) 5))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (+.f64 (*.f64 1/2 (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (/.f64 im -1) im) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 2) (*.f64 re (*.f64 (sqrt.f64 (/.f64 1 im)) -1/2))))
(*.f64 (sqrt.f64 2) (fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 -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 (sqrt.f64 2) (fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (*.f64 re (*.f64 re (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))
(*.f64 (sqrt.f64 2) (fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (fma.f64 (*.f64 re re) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (fma.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (*.f64 (sqrt.f64 2) (fma.f64 -1/8 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (sqrt.f64 im))) (*.f64 (sqrt.f64 2) (fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (*.f64 (pow.f64 re 3) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(*.f64 (sqrt.f64 2) (+.f64 (fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)) (*.f64 (*.f64 re re) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 -1/16 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))))))
(*.f64 (sqrt.f64 2) (+.f64 (fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)) (*.f64 (*.f64 re re) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (*.f64 re -1/16))))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1)))))
(fma.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 (*.f64 1/2 im) (sqrt.f64 -1)) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 (*.f64 1/2 im) (sqrt.f64 -1))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 (*.f64 im im) (pow.f64 (sqrt.f64 -1) 3))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (/.f64 im (sqrt.f64 -1)) (/.f64 im -1))))))
(fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 (*.f64 im im) (sqrt.f64 -1))))))
(fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (*.f64 (/.f64 im (sqrt.f64 -1)) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 re))) (*.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (/.f64 im -1)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/16 (*.f64 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 (*.f64 im im) (pow.f64 (sqrt.f64 -1) 3))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (/.f64 im (sqrt.f64 -1)) (/.f64 im -1))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 (*.f64 im im) (sqrt.f64 -1))) (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)))))))
(+.f64 (fma.f64 (sqrt.f64 -1) (sqrt.f64 re) (*.f64 (/.f64 im (sqrt.f64 -1)) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 re))) (*.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (/.f64 im -1))))) (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (*.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 1 im))))
(fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))
(fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (fma.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (*.f64 -1/2 re) (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (fma.f64 (*.f64 -1/8 (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 re (*.f64 (sqrt.f64 (/.f64 1 im)) -1/2))))
(fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (fma.f64 -1/8 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (sqrt.f64 im)))
(fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (fma.f64 (*.f64 re re) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (sqrt.f64 im)))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(+.f64 (sqrt.f64 im) (fma.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(+.f64 (sqrt.f64 im) (fma.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 (pow.f64 re 3) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) -1/16)))))
(+.f64 (sqrt.f64 im) (fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (fma.f64 -1/8 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (pow.f64 re 3) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(+.f64 (fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)) (*.f64 (*.f64 re re) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 -1/16 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(+.f64 (fma.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) (sqrt.f64 im)) (*.f64 (*.f64 re re) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (*.f64 re -1/16)))))

localize12.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 20 to 16 computations (20% saved)

series2.0ms (0%)

Counts
1 → 0
Calls

3 calls:

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

rewrite65.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
510×pow1_binary64
498×add-sqr-sqrt_binary64
478×add-log-exp_binary64
478×log1p-expm1-u_binary64
478×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify6.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
18 → 18
Calls
Call 1
Inputs
Outputs

localize34.0ms (0.3%)

Local error

Found 4 expressions with local error:

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

Compiled 83 to 45 computations (45.8% saved)

series30.0ms (0.2%)

Counts
4 → 84
Calls

24 calls:

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

rewrite209.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
649×log-prod_binary64
587×fma-def_binary64
370×fma-neg_binary64
346×pow2_binary64
237×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify83.0ms (0.6%)

Algorithm
egg-herbie
Rules
716×associate-/r/_binary64
567×fma-neg_binary64
473×associate-/l/_binary64
372×associate-/r*_binary64
370×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0981503
12771482
29051436
346381418
Stop Event
node limit
Counts
441 → 391
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 (*.f64 (sqrt.f64 2) (sqrt.f64 -2)) (sqrt.f64 re))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -2)) (sqrt.f64 re)) (*.f64 -1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -2)) (sqrt.f64 re)) (+.f64 (*.f64 -1/32 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 4)) (pow.f64 (sqrt.f64 -2) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 7))))) (*.f64 -1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -2)) (sqrt.f64 re)) (+.f64 (*.f64 -1/128 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 6)) (pow.f64 (sqrt.f64 -2) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 11))))) (+.f64 (*.f64 -1/32 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 4)) (pow.f64 (sqrt.f64 -2) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 7))))) (*.f64 -1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) im)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) im)) (sqrt.f64 (/.f64 1 re))) (*.f64 (/.f64 (sqrt.f64 -2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) im)) (sqrt.f64 (/.f64 1 re))) (+.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 (pow.f64 re 3)))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) im)) (sqrt.f64 (/.f64 1 re))) (+.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 (/.f64 (sqrt.f64 -2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3))) (*.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 -1 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -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 1/2) (*.f64 (sqrt.f64 -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 1/2) (*.f64 (sqrt.f64 -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 1/2) (*.f64 (sqrt.f64 -2) im)) (sqrt.f64 (/.f64 1 re)))))))
(*.f64 -1/2 (/.f64 (pow.f64 im 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 -2 re))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -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 -2 re))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -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 -2 re))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -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 -2 re))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -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 -2 re))
(*.f64 -1/2 (/.f64 (pow.f64 im 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 -2 re))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(*.f64 -1 re)
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(*.f64 -1 re)
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(*.f64 -1 re)
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
Outputs
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -2)) (sqrt.f64 re))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -2) (sqrt.f64 re)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -2)) (sqrt.f64 re)) (*.f64 -1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))
(fma.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -2)) (sqrt.f64 re) (*.f64 -1/4 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -2) (*.f64 im im))) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (*.f64 -1/4 (*.f64 (/.f64 (*.f64 im im) (/.f64 (sqrt.f64 -2) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (*.f64 -1/4 (/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 -2) (*.f64 im im)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -2)) (*.f64 (*.f64 im im) -1/4))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -2)) (sqrt.f64 re)) (+.f64 (*.f64 -1/32 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 4)) (pow.f64 (sqrt.f64 -2) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 7))))) (*.f64 -1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(fma.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -2)) (sqrt.f64 re) (fma.f64 -1/32 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -2) 3) (pow.f64 im 4))) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))) (*.f64 -1/4 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -2) (*.f64 im im))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (fma.f64 -1/4 (*.f64 (/.f64 (*.f64 im im) (/.f64 (sqrt.f64 -2) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 -1/32 (*.f64 (*.f64 (/.f64 (pow.f64 im 4) (sqrt.f64 -2)) (/.f64 (sqrt.f64 2) -2)) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (fma.f64 -1/4 (/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 -2) (*.f64 im im)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 7))) (*.f64 1/64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -2) (pow.f64 im 4)))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -2)) (+.f64 (*.f64 (/.f64 (pow.f64 im 4) -2) (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 re 7))))) (*.f64 (*.f64 im im) (*.f64 -1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -2)) (sqrt.f64 re)) (+.f64 (*.f64 -1/128 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 6)) (pow.f64 (sqrt.f64 -2) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 11))))) (+.f64 (*.f64 -1/32 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 4)) (pow.f64 (sqrt.f64 -2) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 7))))) (*.f64 -1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(fma.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -2)) (sqrt.f64 re) (fma.f64 -1/128 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 (pow.f64 re 11)))) (pow.f64 (sqrt.f64 -2) 5)) (fma.f64 -1/32 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -2) 3) (pow.f64 im 4))) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))) (*.f64 -1/4 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -2) (*.f64 im im))) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (fma.f64 -1/128 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 6)) (/.f64 (pow.f64 (sqrt.f64 -2) 5) (sqrt.f64 (/.f64 1 (pow.f64 re 11))))) (fma.f64 -1/4 (*.f64 (/.f64 (*.f64 im im) (/.f64 (sqrt.f64 -2) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 -1/32 (*.f64 (*.f64 (/.f64 (pow.f64 im 4) (sqrt.f64 -2)) (/.f64 (sqrt.f64 2) -2)) (sqrt.f64 (/.f64 1 (pow.f64 re 7))))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 7))) (*.f64 1/64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -2) (pow.f64 im 4)))) (fma.f64 -1/4 (/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 -2) (*.f64 im im)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 11))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) -1/128) (pow.f64 (sqrt.f64 -2) 5)) (pow.f64 im 6))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (fma.f64 -1/128 (*.f64 (*.f64 (pow.f64 im 6) (/.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 -2) 5))) (sqrt.f64 (/.f64 1 (pow.f64 re 11)))) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -2)) (+.f64 (*.f64 (/.f64 (pow.f64 im 4) -2) (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 re 7))))) (*.f64 (*.f64 im im) (*.f64 -1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))))
(*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 im (sqrt.f64 -2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 -2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) im)) (sqrt.f64 (/.f64 1 re))) (*.f64 (/.f64 (sqrt.f64 -2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3))))
(fma.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 -2))) (sqrt.f64 (/.f64 1 re)) (*.f64 (/.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3))))
(fma.f64 (/.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3)) (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 (/.f64 1 re))))))
(fma.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 1/2))) (pow.f64 re 3/2)))
(fma.f64 (sqrt.f64 1/2) (*.f64 im (*.f64 (sqrt.f64 -2) (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) im) (pow.f64 re 3/2)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) im)) (sqrt.f64 (/.f64 1 re))) (+.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 (pow.f64 re 3)))))
(fma.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 -2))) (sqrt.f64 (/.f64 1 re)) (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 (pow.f64 re 3)))))
(fma.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) (*.f64 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 -1/2 (/.f64 (/.f64 (*.f64 (sqrt.f64 -2) (sqrt.f64 (pow.f64 re 7))) (pow.f64 im 3)) (*.f64 1/2 (sqrt.f64 1/2))))))
(fma.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (fma.f64 (/.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 1/2))) (pow.f64 re 3/2) (*.f64 (pow.f64 re 7/2) (*.f64 -1 (/.f64 (sqrt.f64 -2) (*.f64 (sqrt.f64 1/2) (pow.f64 im 3)))))))
(fma.f64 (pow.f64 re 7/2) (neg.f64 (/.f64 (sqrt.f64 -2) (*.f64 (sqrt.f64 1/2) (pow.f64 im 3)))) (fma.f64 (sqrt.f64 1/2) (*.f64 im (*.f64 (sqrt.f64 -2) (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) im) (pow.f64 re 3/2))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) im)) (sqrt.f64 (/.f64 1 re))) (+.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 (/.f64 (sqrt.f64 -2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (pow.f64 re 3))) (*.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 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 -2))) (sqrt.f64 (/.f64 1 re)) (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))) (fma.f64 (/.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3)) (*.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 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (fma.f64 -1/2 (/.f64 (/.f64 (*.f64 (sqrt.f64 -2) (sqrt.f64 (pow.f64 re 7))) (pow.f64 im 3)) (*.f64 1/2 (sqrt.f64 1/2))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 -2) (pow.f64 im 5)) (/.f64 (sqrt.f64 (pow.f64 re 11)) (pow.f64 (sqrt.f64 1/2) 5))) (*.f64 (/.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3))))))
(fma.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (fma.f64 1/2 (/.f64 (*.f64 (/.f64 (sqrt.f64 -2) (pow.f64 im 5)) (pow.f64 re 11/2)) (pow.f64 (sqrt.f64 1/2) 5)) (fma.f64 (/.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 1/2))) (pow.f64 re 3/2) (*.f64 (pow.f64 re 7/2) (*.f64 -1 (/.f64 (sqrt.f64 -2) (*.f64 (sqrt.f64 1/2) (pow.f64 im 3))))))))
(fma.f64 (sqrt.f64 1/2) (*.f64 im (*.f64 (sqrt.f64 -2) (sqrt.f64 (/.f64 1 re)))) (fma.f64 1/2 (/.f64 (*.f64 (sqrt.f64 -2) (/.f64 (pow.f64 re 11/2) (pow.f64 im 5))) (pow.f64 (sqrt.f64 1/2) 5)) (-.f64 (*.f64 (/.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) im) (pow.f64 re 3/2)) (/.f64 (*.f64 (sqrt.f64 -2) (pow.f64 re 7/2)) (*.f64 (sqrt.f64 1/2) (pow.f64 im 3))))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) im)) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 im (sqrt.f64 -2)) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 1/2) (neg.f64 (*.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 (/.f64 1 re))))))
(*.f64 (*.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (neg.f64 (sqrt.f64 1/2)))
(*.f64 (*.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im)))
(+.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 1/2) (*.f64 (sqrt.f64 -2) im)) (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (fma.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 -2))) (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 (/.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3)) (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))))
(neg.f64 (fma.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 1/2))) (pow.f64 re 3/2))))
(neg.f64 (fma.f64 (sqrt.f64 1/2) (*.f64 im (*.f64 (sqrt.f64 -2) (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) im) (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 1/2) (*.f64 (sqrt.f64 -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 (sqrt.f64 1/2) (*.f64 (*.f64 im (sqrt.f64 -2)) (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (neg.f64 (fma.f64 (/.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3)) (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 (/.f64 1 re))))))) (*.f64 1/2 (/.f64 (/.f64 (*.f64 (sqrt.f64 -2) (sqrt.f64 (pow.f64 re 7))) (pow.f64 im 3)) (*.f64 1/2 (sqrt.f64 1/2)))))
(-.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 1/2) (*.f64 (sqrt.f64 -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) (pow.f64 re 7/2)) (*.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (fma.f64 (sqrt.f64 1/2) (*.f64 im (*.f64 (sqrt.f64 -2) (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) im) (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 1/2) (*.f64 (sqrt.f64 -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 (sqrt.f64 1/2) (*.f64 (*.f64 im (sqrt.f64 -2)) (sqrt.f64 (/.f64 1 re))))))))
(fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 -2) (pow.f64 im 5)) (/.f64 (sqrt.f64 (pow.f64 re 11)) (pow.f64 (sqrt.f64 1/2) 5))) (+.f64 (neg.f64 (fma.f64 (/.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (pow.f64 re 3)) (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 (/.f64 1 re))))))) (*.f64 1/2 (/.f64 (/.f64 (*.f64 (sqrt.f64 -2) (sqrt.f64 (pow.f64 re 7))) (pow.f64 im 3)) (*.f64 1/2 (sqrt.f64 1/2))))))
(fma.f64 -1/2 (/.f64 (*.f64 (/.f64 (sqrt.f64 -2) (pow.f64 im 5)) (pow.f64 re 11/2)) (pow.f64 (sqrt.f64 1/2) 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 1/2) (*.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (sqrt.f64 -2) (*.f64 im (sqrt.f64 1/2))) (pow.f64 re 3/2)))))
(fma.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -2) (/.f64 (pow.f64 re 11/2) (pow.f64 im 5))) (pow.f64 (sqrt.f64 1/2) 5)) (-.f64 (/.f64 (*.f64 (sqrt.f64 -2) (pow.f64 re 7/2)) (*.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (fma.f64 (sqrt.f64 1/2) (*.f64 im (*.f64 (sqrt.f64 -2) (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (/.f64 (sqrt.f64 -2) (sqrt.f64 1/2)) im) (pow.f64 re 3/2)))))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(*.f64 -2 re)
(*.f64 re -2)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(*.f64 -2 re)
(*.f64 re -2)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(*.f64 -2 re)
(*.f64 re -2)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (*.f64 re -2))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 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 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 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 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 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 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (*.f64 im im) re))
(*.f64 -1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (*.f64 -1/2 (/.f64 (*.f64 im im) re)))
(-.f64 (*.f64 -1/2 (/.f64 im (/.f64 re im))) re)
(fma.f64 -1/2 (/.f64 im (/.f64 re im)) (neg.f64 re))

localize21.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 re im)
0.1b
(+.f64 re (hypot.f64 re im))
5.7b
(sqrt.f64 (*.f64 2 (/.f64 (*.f64 im im) (+.f64 re (hypot.f64 re im)))))
23.6b
(/.f64 (*.f64 im im) (+.f64 re (hypot.f64 re im)))
Compiler

Compiled 63 to 18 computations (71.4% saved)

series12.0ms (0.1%)

Counts
2 → 32
Calls

12 calls:

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

rewrite75.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
565×prod-diff_binary64
542×log-prod_binary64
352×pow-prod-down_binary64
281×pow2_binary64
204×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify71.0ms (0.5%)

Algorithm
egg-herbie
Rules
790×fma-def_binary64
748×associate-*l*_binary64
747×associate-*r*_binary64
568×times-frac_binary64
468×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01781191
15361120
218721015
Stop Event
node limit
Counts
105 → 123
Calls
Call 1
Inputs
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -5/128 (/.f64 (pow.f64 im 8) (pow.f64 re 7))))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) re)) (*.f64 -1/2 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) im)) im)))
(*.f64 -1 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) re)) (*.f64 -1/2 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/128 (pow.f64 im 8)) (*.f64 1/32 (pow.f64 im 8))) (pow.f64 re 7))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -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 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(+.f64 (*.f64 -2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 5/128 (/.f64 1 (pow.f64 re 7))) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 2) (-.f64 (*.f64 1/2 (/.f64 1 (pow.f64 im 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2)))) (sqrt.f64 (pow.f64 im 3))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 1/2 (/.f64 1 (pow.f64 im 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2)))) (sqrt.f64 im))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 2) (-.f64 (*.f64 1/2 (/.f64 1 (pow.f64 im 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2)))) (sqrt.f64 (pow.f64 im 3)))))))
Outputs
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (/.f64 -1/8 (/.f64 (pow.f64 re 3) (pow.f64 im 4))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 (/.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6)))))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/2 (/.f64 im (/.f64 re im)) (/.f64 (*.f64 1/16 (pow.f64 im 6)) (pow.f64 re 5))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -5/128 (/.f64 (pow.f64 im 8) (pow.f64 re 7))))))
(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)) (*.f64 -5/128 (/.f64 (pow.f64 im 8) (pow.f64 re 7))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 (*.f64 -5/128 (pow.f64 im 8)) (pow.f64 re 7)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (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 -5/128 (pow.f64 re 7)) (pow.f64 im 8)))))
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) im)) im))
(fma.f64 -1 re (fma.f64 -1 (/.f64 (*.f64 (*.f64 re re) -1/2) im) im))
(-.f64 (-.f64 im (/.f64 (*.f64 re re) (/.f64 im -1/2))) re)
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 re im) re) im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) re)) (*.f64 -1/2 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) im)) im)))
(fma.f64 -1 re (fma.f64 -1 (/.f64 (fma.f64 -1 (*.f64 re (*.f64 (*.f64 re re) -1/2)) (*.f64 (pow.f64 re 3) -1/2)) (*.f64 im im)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 re re) -1/2) im) im)))
(-.f64 (-.f64 (-.f64 im (/.f64 (*.f64 re re) (/.f64 im -1/2))) (/.f64 (-.f64 (*.f64 (pow.f64 re 3) -1/2) (*.f64 (pow.f64 re 3) -1/2)) (*.f64 im im))) re)
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 re im) re) im) (-.f64 (/.f64 0 (*.f64 im im)) re))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(*.f64 -1 (+.f64 re im))
(-.f64 (neg.f64 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) (*.f64 -1 (+.f64 (/.f64 (*.f64 re re) im) im))))
(-.f64 (-.f64 (*.f64 (/.f64 (*.f64 re re) im) -1/2) im) re)
(-.f64 (*.f64 (*.f64 (/.f64 re im) re) -1/2) (+.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) re)) (*.f64 -1/2 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))))
(fma.f64 -1 re (fma.f64 -1 (/.f64 (fma.f64 -1 (*.f64 re (*.f64 (*.f64 re re) -1/2)) (*.f64 (pow.f64 re 3) -1/2)) (*.f64 im im)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) (*.f64 -1 (+.f64 (/.f64 (*.f64 re re) im) im)))))
(-.f64 (-.f64 (-.f64 (*.f64 (/.f64 (*.f64 re re) im) -1/2) im) (/.f64 (-.f64 (*.f64 (pow.f64 re 3) -1/2) (*.f64 (pow.f64 re 3) -1/2)) (*.f64 im im))) re)
(-.f64 (fma.f64 (*.f64 (/.f64 re im) re) -1/2 (fma.f64 im -1 (/.f64 0 (*.f64 im im)))) re)
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1 re (fma.f64 -1 (/.f64 (*.f64 (*.f64 re re) -1/2) im) im))
(-.f64 (-.f64 im (/.f64 (*.f64 re re) (/.f64 im -1/2))) re)
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 re im) re) im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(fma.f64 -1 re (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)))
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)) re)
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) im)) re)
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (/.f64 -1/8 (/.f64 (pow.f64 re 3) (pow.f64 im 4))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 (/.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6)))))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/2 (/.f64 im (/.f64 re im)) (/.f64 (*.f64 1/16 (pow.f64 im 6)) (pow.f64 re 5))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/128 (pow.f64 im 8)) (*.f64 1/32 (pow.f64 im 8))) (pow.f64 re 7))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 -5/128 (/.f64 (pow.f64 im 8) (pow.f64 re 7))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 (*.f64 -5/128 (pow.f64 im 8)) (pow.f64 re 7)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (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 -5/128 (pow.f64 re 7)) (pow.f64 im 8)))))
(*.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 (/.f64 im (/.f64 re im)) -1/2 (*.f64 re -2))
(fma.f64 re -2 (/.f64 -1/2 (/.f64 re (*.f64 im im))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.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/4 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 (/.f64 im (/.f64 re im)) -1/2 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/4 (fma.f64 re -2 (/.f64 -1/8 (/.f64 (pow.f64 re 3) (pow.f64 im 4))))))
(fma.f64 (/.f64 im (/.f64 re im)) -1/2 (fma.f64 re -2 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8)))
(+.f64 (*.f64 -2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (pow.f64 im 4)) (*.f64 1/4 (pow.f64 im 4))) (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))))))
(fma.f64 -2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (*.f64 (*.f64 im im) (pow.f64 re 5))) (fma.f64 1/4 (/.f64 (*.f64 (pow.f64 im 4) 1/8) (/.f64 (pow.f64 re 5) (*.f64 im im))) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/4 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))))))
(fma.f64 -2 (/.f64 (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)) (*.f64 im (*.f64 im (pow.f64 re 5)))) (fma.f64 1/4 (/.f64 (*.f64 (pow.f64 im 6) 1/8) (pow.f64 re 5)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/4 (fma.f64 re -2 (/.f64 -1/8 (/.f64 (pow.f64 re 3) (pow.f64 im 4)))))))))
(+.f64 (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (fma.f64 re -2 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8)))) (fma.f64 -2 (/.f64 (/.f64 (*.f64 (pow.f64 im 8) 5/64) (pow.f64 re 5)) (*.f64 im im)) (/.f64 (*.f64 (pow.f64 im 6) 1/32) (pow.f64 re 5))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))) (sqrt.f64 2)))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/16 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))))
(fma.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 (*.f64 (*.f64 -1/16 (pow.f64 im 3)) (sqrt.f64 2)) (sqrt.f64 1/2))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (*.f64 -1/16 (/.f64 1 (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))) (fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5)) (*.f64 (sqrt.f64 re) 1/2)))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 5/128 (/.f64 1 (pow.f64 re 7))) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 re) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (+.f64 (/.f64 5/128 (pow.f64 re 7)) (*.f64 -1/16 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (*.f64 -1/16 (/.f64 1 (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 1/2) 2))))) (pow.f64 im 7))))) (fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (*.f64 -1/16 (/.f64 1 (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 re) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (+.f64 (/.f64 5/128 (pow.f64 re 7)) (*.f64 -1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re)))) (pow.f64 im 7)))) (fma.f64 -1/16 (*.f64 (/.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re))))))))
(fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (fma.f64 -1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re)) (/.f64 5/128 (pow.f64 re 7))) (*.f64 (pow.f64 im 7) (sqrt.f64 re)))) (fma.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))) (fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 1/2)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5)) (*.f64 (sqrt.f64 re) 1/2))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 2) (-.f64 (*.f64 1/2 (/.f64 1 (pow.f64 im 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2)))) (sqrt.f64 (pow.f64 im 3))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 (pow.f64 im 3)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2))) (sqrt.f64 (pow.f64 im 3)))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 1/2 (*.f64 (*.f64 (-.f64 (/.f64 1/2 (pow.f64 im 3)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 2))) (sqrt.f64 (pow.f64 im 3))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 (sqrt.f64 2) (*.f64 (+.f64 (/.f64 1/2 (pow.f64 im 3)) (*.f64 (/.f64 1 (pow.f64 im 3)) -1/4)) (*.f64 (*.f64 re (*.f64 re (pow.f64 im 3/2))) 1/2)) (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 1/2 (/.f64 1 (pow.f64 im 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2)))) (sqrt.f64 im))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 2) (-.f64 (*.f64 1/2 (/.f64 1 (pow.f64 im 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2)))) (sqrt.f64 (pow.f64 im 3)))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 1/4 (*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (-.f64 (/.f64 1/2 (pow.f64 im 3)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 (pow.f64 im 3)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2))) (sqrt.f64 (pow.f64 im 3))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 (pow.f64 im 3)) (*.f64 (*.f64 1/2 (*.f64 (*.f64 re re) (sqrt.f64 2))) (-.f64 (/.f64 1/2 (pow.f64 im 3)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2)))) (*.f64 (sqrt.f64 im) (+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (-.f64 (/.f64 1/2 (pow.f64 im 3)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 2))))) (sqrt.f64 2)))))
(fma.f64 (sqrt.f64 im) (fma.f64 (*.f64 1/4 (sqrt.f64 2)) (*.f64 (pow.f64 re 3) (+.f64 (/.f64 1/2 (pow.f64 im 3)) (*.f64 (/.f64 1 (pow.f64 im 3)) -1/4))) (sqrt.f64 2)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (pow.f64 im 3)) (*.f64 (/.f64 1 (pow.f64 im 3)) -1/4)) (*.f64 (*.f64 re (*.f64 re (pow.f64 im 3/2))) 1/2)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)))))

localize30.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 61 to 51 computations (16.4% saved)

series46.0ms (0.3%)

Counts
4 → 12
Calls

15 calls:

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

rewrite100.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
997×pow1_binary64
920×add-log-exp_binary64
920×log1p-expm1-u_binary64
920×expm1-log1p-u_binary64
122×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify42.0ms (0.3%)

Algorithm
egg-herbie
Rules
25×associate-*l*_binary64
16×*-commutative_binary64
15×associate-*r*_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
013228
122228
243228
383228
485228
Stop Event
saturated
Counts
104 → 73
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))

eval494.0ms (3.7%)

Compiler

Compiled 18090 to 11637 computations (35.7% saved)

prune179.0ms (1.3%)

Pruning

22 alts after pruning (15 fresh and 7 done)

PrunedKeptTotal
New78010790
Fresh7512
Picked101
Done178
Total78922811
Error
0b
Counts
811 → 22
Alt Table
Click to see full alt table
StatusErrorProgram
31.5b
(*.f64 1/2 (*.f64 (expm1.f64 (log1p.f64 (sqrt.f64 (-.f64 im re)))) (sqrt.f64 2)))
46.3b
(*.f64 1/2 (*.f64 (pow.f64 (*.f64 (pow.f64 2 1/4) (pow.f64 (/.f64 -1 re) -1/4)) 2) (sqrt.f64 2)))
42.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (/.f64 1 (+.f64 re (hypot.f64 im re))) (*.f64 im im)))))
56.0b
(*.f64 1/2 (sqrt.f64 (*.f64 (/.f64 1 re) (*.f64 im im))))
47.8b
(*.f64 1/2 (*.f64 (*.f64 im (sqrt.f64 (/.f64 1/2 re))) (sqrt.f64 2)))
13.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
29.8b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
53.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 im (/.f64 1/2 (/.f64 re im))))))
47.7b
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
29.9b
(*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2)))
47.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (-.f64 (*.f64 (/.f64 -1/2 re) (*.f64 im im)) re) re))))
49.1b
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 2 im)) (sqrt.f64 (*.f64 im (/.f64 1/2 re)))))
47.7b
(*.f64 1/2 (*.f64 im (/.f64 1 (sqrt.f64 re))))
31.5b
(*.f64 1/2 (*.f64 (pow.f64 (pow.f64 im 1/4) 2) (sqrt.f64 2)))
46.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 im im) (+.f64 re im)))))
32.0b
(*.f64 1/2 (*.f64 (hypot.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (neg.f64 re))) (sqrt.f64 2)))
52.5b
(*.f64 1/2 (*.f64 im (cbrt.f64 (/.f64 (pow.f64 re -1/2) re))))
31.4b
(*.f64 1/2 (*.f64 (sqrt.f64 im) (sqrt.f64 2)))
46.3b
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
47.8b
(*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 (pow.f64 re -1/2) im)) 2))
42.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 im im) (+.f64 re (hypot.f64 re im))))))
31.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 279 to 223 computations (20.1% saved)

regimes289.0ms (2.2%)

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

8 calls:

58.0ms
re
41.0ms
(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
35.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
35.0ms
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
31.0ms
im
Results
ErrorSegmentsBranch
7.3b2re
13.3b1im
6.5b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
6.5b2(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
6.6b2(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
6.6b2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
13.3b1(*.f64 im im)
13.3b1(*.f64 im im)
Compiler

Compiled 732 to 531 computations (27.5% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
3.3071686434081375e-153
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes249.0ms (1.9%)

Counts
23 → 7
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (pow.f64 (*.f64 re -4) 1/2))
(*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2)))
(*.f64 1/2 (*.f64 im (/.f64 1 (sqrt.f64 re))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (sqrt.f64 (*.f64 (/.f64 1 re) (*.f64 im im))))
(*.f64 1/2 (pow.f64 (*.f64 (*.f64 im im) (/.f64 1 re)) 1/2))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 im im) (+.f64 re im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 im (/.f64 1/2 (/.f64 re im))))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (/.f64 1/2 re) (*.f64 im im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (-.f64 (*.f64 (/.f64 -1/2 re) (*.f64 im im)) re) re))))
(*.f64 1/2 (*.f64 (sqrt.f64 im) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 (sqrt.f64 im) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 im (cbrt.f64 (/.f64 (pow.f64 re -1/2) re))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2)))
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 im (/.f64 1 (sqrt.f64 re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
Calls

4 calls:

90.0ms
im
70.0ms
re
43.0ms
(*.f64 im im)
39.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
13.4b7re
19.7b7im
22.8b6(*.f64 im im)
22.8b6(*.f64 im im)
Compiler

Compiled 221 to 157 computations (29% saved)

bsearch267.0ms (2%)

Algorithm
binary-search
Steps
TimeLeftRight
90.0ms
1.0527031489691478e+36
5.327581941792883e+48
51.0ms
6.821039101000745e-20
4.838123063700101e-18
48.0ms
2.2592245848169113e-58
7.289773388660975e-56
25.0ms
-810983252512360700.0
-5490555592951.64
27.0ms
-8.442788729239936e+135
-5.166829221768607e+131
25.0ms
-2.1329180973142227e+176
-5.886538995588546e+175
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes376.0ms (2.8%)

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

4 calls:

160.0ms
re
126.0ms
im
45.0ms
(*.f64 im im)
38.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
12.4b10re
19.9b7im
22.9b6(*.f64 im im)
22.9b6(*.f64 im im)
Compiler

Compiled 202 to 144 computations (28.7% saved)

bsearch573.0ms (4.3%)

Algorithm
binary-search
Steps
TimeLeftRight
142.0ms
1.0527031489691478e+36
5.327581941792883e+48
123.0ms
6.821039101000745e-20
4.838123063700101e-18
96.0ms
2.2592245848169113e-58
7.289773388660975e-56
48.0ms
-1.041582101861977e-62
-1.5979351074311208e-63
61.0ms
-2.2054652127399668e-60
-1.3135472364733818e-60
24.0ms
-6.5963888333294415e-43
-2.4062099400351227e-43
26.0ms
-810983252512360700.0
-5490555592951.64
24.0ms
-8.442788729239936e+135
-5.166829221768607e+131
27.0ms
-2.1329180973142227e+176
-5.886538995588546e+175
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes357.0ms (2.7%)

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

4 calls:

145.0ms
im
74.0ms
(*.f64 im im)
64.0ms
re
62.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
13.4b7re
19.9b7im
22.9b6(*.f64 im im)
22.9b6(*.f64 im im)
Compiler

Compiled 181 to 128 computations (29.3% saved)

bsearch304.0ms (2.3%)

Algorithm
binary-search
Steps
TimeLeftRight
66.0ms
1.0527031489691478e+36
5.327581941792883e+48
81.0ms
6.821039101000745e-20
4.838123063700101e-18
50.0ms
2.2592245848169113e-58
7.289773388660975e-56
26.0ms
-810983252512360700.0
-5490555592951.64
56.0ms
-8.442788729239936e+135
-5.166829221768607e+131
25.0ms
-2.1329180973142227e+176
-5.886538995588546e+175
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes61.0ms (0.5%)

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

2 calls:

32.0ms
re
27.0ms
im
Results
ErrorSegmentsBranch
13.4b7re
20.9b5im
Compiler

Compiled 42 to 33 computations (21.4% saved)

bsearch294.0ms (2.2%)

Algorithm
binary-search
Steps
TimeLeftRight
72.0ms
1.0527031489691478e+36
5.327581941792883e+48
54.0ms
6.821039101000745e-20
4.838123063700101e-18
54.0ms
2.2592245848169113e-58
7.289773388660975e-56
46.0ms
-810983252512360700.0
-5490555592951.64
35.0ms
-8.442788729239936e+135
-5.166829221768607e+131
32.0ms
-2.1329180973142227e+176
-5.886538995588546e+175
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes91.0ms (0.7%)

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

2 calls:

54.0ms
re
35.0ms
im
Results
ErrorSegmentsBranch
14.9b5re
20.3b7im
Compiler

Compiled 34 to 27 computations (20.6% saved)

bsearch161.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
67.0ms
1.0527031489691478e+36
5.327581941792883e+48
27.0ms
-1056878323960.99
-0.0005751802213867396
29.0ms
-8.442788729239936e+135
-5.166829221768607e+131
37.0ms
-1.828707653476246e+161
-1.3066763144531858e+156
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes31.0ms (0.2%)

Accuracy

Total -39.5b remaining (-175.8%)

Threshold costs -39.5b (-175.8%)

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

2 calls:

17.0ms
re
13.0ms
im
Results
ErrorSegmentsBranch
22.5b4re
24.5b4im
Compiler

Compiled 20 to 16 computations (20% saved)

bsearch84.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
29.0ms
-1056878323960.99
-0.0005751802213867396
28.0ms
-8.442788729239936e+135
-5.166829221768607e+131
27.0ms
-1.828707653476246e+161
-1.3066763144531858e+156
Compiler

Compiled 22 to 16 computations (27.3% saved)

simplify29.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
097669
1120669
2126669
3128669
4129669
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) 0) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 re -213291809731422272177743943222573458645768471861921885760582350659588970701355069784081293994885486409938140953226599682184201684735734050993824696505251403180799176660817543168) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re -810983252512360704) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 3193363461087139/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))) (if (<=.f64 re 5666697583371103/83076749736557242056487941267521536) (*.f64 1/2 (*.f64 im (/.f64 1 (sqrt.f64 re)))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))))
(if (<=.f64 re -213291809731422272177743943222573458645768471861921885760582350659588970701355069784081293994885486409938140953226599682184201684735734050993824696505251403180799176660817543168) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re -810983252512360704) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -1035155094824439/1569275433846670190958947355801916604025588861116008628224) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re -498780126412857/226156424291633194186662080095093570025917938800079226639565593765455331328) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -603034838433967/57896044618658097711785492504343953926634992332820282019728792003956564819968) (*.f64 1/2 (*.f64 (sqrt.f64 im) (sqrt.f64 2))) (if (<=.f64 re 3193363461087139/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re 5666697583371103/83076749736557242056487941267521536) (*.f64 1/2 (*.f64 im (/.f64 1 (sqrt.f64 re)))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2))))))))))))
(if (<=.f64 re -213291809731422272177743943222573458645768471861921885760582350659588970701355069784081293994885486409938140953226599682184201684735734050993824696505251403180799176660817543168) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re -810983252512360704) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 3193363461087139/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re 5666697583371103/83076749736557242056487941267521536) (*.f64 1/2 (*.f64 im (/.f64 1 (sqrt.f64 re)))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))))
(if (<=.f64 re -213291809731422272177743943222573458645768471861921885760582350659588970701355069784081293994885486409938140953226599682184201684735734050993824696505251403180799176660817543168) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re -810983252512360704) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 3193363461087139/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re 5666697583371103/83076749736557242056487941267521536) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))))
(if (<=.f64 re -182870765347624591882238623540851478780069275057554826459976468745343568701774221069035963407695383031445786495518478906018210373658767056685294686736237742522368) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re -4328973614944215/4096) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))
(if (<=.f64 re -182870765347624591882238623540851478780069275057554826459976468745343568701774221069035963407695383031445786495518478906018210373658767056685294686736237742522368) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re -4328973614944215/4096) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))))))
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
Outputs
(if (<=.f64 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) 0) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 re -213291809731422272177743943222573458645768471861921885760582350659588970701355069784081293994885486409938140953226599682184201684735734050993824696505251403180799176660817543168) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re -810983252512360704) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 3193363461087139/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))) (if (<=.f64 re 5666697583371103/83076749736557242056487941267521536) (*.f64 1/2 (*.f64 im (/.f64 1 (sqrt.f64 re)))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))))
(if (<=.f64 re -213291809731422272177743943222573458645768471861921885760582350659588970701355069784081293994885486409938140953226599682184201684735734050993824696505251403180799176660817543168) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -810983252512360704) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 3193363461087139/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))) (if (<=.f64 re 5666697583371103/83076749736557242056487941267521536) (*.f64 1/2 (*.f64 im (/.f64 1 (sqrt.f64 re)))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))))
(if (<=.f64 re -213291809731422272177743943222573458645768471861921885760582350659588970701355069784081293994885486409938140953226599682184201684735734050993824696505251403180799176660817543168) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re -810983252512360704) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -1035155094824439/1569275433846670190958947355801916604025588861116008628224) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re -498780126412857/226156424291633194186662080095093570025917938800079226639565593765455331328) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -603034838433967/57896044618658097711785492504343953926634992332820282019728792003956564819968) (*.f64 1/2 (*.f64 (sqrt.f64 im) (sqrt.f64 2))) (if (<=.f64 re 3193363461087139/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re 5666697583371103/83076749736557242056487941267521536) (*.f64 1/2 (*.f64 im (/.f64 1 (sqrt.f64 re)))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2))))))))))))
(if (<=.f64 re -213291809731422272177743943222573458645768471861921885760582350659588970701355069784081293994885486409938140953226599682184201684735734050993824696505251403180799176660817543168) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -810983252512360704) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -1035155094824439/1569275433846670190958947355801916604025588861116008628224) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -498780126412857/226156424291633194186662080095093570025917938800079226639565593765455331328) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -603034838433967/57896044618658097711785492504343953926634992332820282019728792003956564819968) (*.f64 1/2 (*.f64 (sqrt.f64 2) (sqrt.f64 im))) (if (<=.f64 re 3193363461087139/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 5666697583371103/83076749736557242056487941267521536) (*.f64 1/2 (*.f64 im (/.f64 1 (sqrt.f64 re)))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2))))))))))))
(if (<=.f64 re -213291809731422272177743943222573458645768471861921885760582350659588970701355069784081293994885486409938140953226599682184201684735734050993824696505251403180799176660817543168) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re -810983252512360704) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 3193363461087139/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re 5666697583371103/83076749736557242056487941267521536) (*.f64 1/2 (*.f64 im (/.f64 1 (sqrt.f64 re)))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))))
(if (<=.f64 re -213291809731422272177743943222573458645768471861921885760582350659588970701355069784081293994885486409938140953226599682184201684735734050993824696505251403180799176660817543168) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -810983252512360704) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 3193363461087139/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 5666697583371103/83076749736557242056487941267521536) (*.f64 1/2 (*.f64 im (/.f64 1 (sqrt.f64 re)))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))))
(if (<=.f64 re -213291809731422272177743943222573458645768471861921885760582350659588970701355069784081293994885486409938140953226599682184201684735734050993824696505251403180799176660817543168) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re -810983252512360704) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 3193363461087139/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 2))) (if (<=.f64 re 5666697583371103/83076749736557242056487941267521536) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))))
(if (<=.f64 re -213291809731422272177743943222573458645768471861921885760582350659588970701355069784081293994885486409938140953226599682184201684735734050993824696505251403180799176660817543168) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -810983252512360704) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 3193363461087139/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 5666697583371103/83076749736557242056487941267521536) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))))
(if (<=.f64 re -182870765347624591882238623540851478780069275057554826459976468745343568701774221069035963407695383031445786495518478906018210373658767056685294686736237742522368) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re -4328973614944215/4096) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re 1052703148969147751792062126914273280) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))
(if (<=.f64 re -182870765347624591882238623540851478780069275057554826459976468745343568701774221069035963407695383031445786495518478906018210373658767056685294686736237742522368) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (if (<=.f64 re -8442788729239935674439463323403226550675465700455729204679671775845715687360684370621404011485234589434128131969904551624497399322378240) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re -4328973614944215/4096) (*.f64 1/2 (sqrt.f64 (*.f64 re -4))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))))))
(*.f64 1/2 (sqrt.f64 (*.f64 re -4)))
Compiler

Compiled 463 to 355 computations (23.3% saved)

soundness331.0ms (2.5%)

Algorithm
egg-herbie
Rules
773×fma-def_binary64
703×associate-*r*_binary64
691×unswap-sqr_binary64
657×associate-*l*_binary64
645×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01315
12015
23315
35315
48015
510915
618015
728615
840715
949015
1060715
1167915
1270215
1374315
1479215
1585515
1689115
1790015
01741552
15331509
217241462
019416
142356
2112356
3408356
41676356
53925356
66059356
77781356
01315
12015
23315
35315
48015
510915
618015
728615
840715
949015
1060715
1167915
1270215
1374315
1479215
1585515
1689115
1790015
Stop Event
saturated
node limit
node limit
saturated
Compiler

Compiled 173 to 136 computations (21.4% saved)

end887.0ms (6.7%)

Compiler

Compiled 449 to 336 computations (25.2% saved)

Profiling

Loading profile data...