Details

Time bar (total: 13.3s)

analyze205.0ms (1.5%)

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

Compiled 18 to 13 computations (27.8% saved)

sample1.9s (14.4%)

Results
956.0ms6366×body256valid
397.0ms689×body2048valid
319.0ms547×body4096valid
156.0ms422×body1024valid
61.0ms232×body512valid

preprocess17.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

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

Compiled 19 to 14 computations (26.3% saved)

simplify10.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

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

eval1.0ms (0%)

Compiler

Compiled 27 to 19 computations (29.6% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 12 to 9 computations (25% saved)

localize12.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 39 to 16 computations (59% saved)

series14.0ms (0.1%)

Counts
2 → 32
Calls

12 calls:

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

rewrite64.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

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

simplify63.0ms (0.5%)

Algorithm
egg-herbie
Rules
753×distribute-rgt-in_binary64
620×associate-*r*_binary64
577×associate-*l*_binary64
572×fma-def_binary64
282×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0129926
1375872
21203816
35786778
Stop Event
node limit
Counts
87 → 101
Calls
Call 1
Inputs
im
(+.f64 re im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im)))
(*.f64 2 re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
(*.f64 2 re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
im
(+.f64 re im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im)))
(*.f64 -1 im)
(+.f64 re (*.f64 -1 im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
Outputs
im
(+.f64 re im)
(+.f64 im re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 im re))
(fma.f64 1/2 (/.f64 re (/.f64 im re)) (+.f64 im re))
(+.f64 im (fma.f64 1/2 (*.f64 (/.f64 re im) re) re))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 im re)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) (+.f64 im re)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (+.f64 im (fma.f64 1/2 (*.f64 (/.f64 re im) re) re)))
(*.f64 2 re)
(*.f64 re 2)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))
(fma.f64 re 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (*.f64 re 2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 re 2 (/.f64 -1/8 (/.f64 (pow.f64 re 3) (pow.f64 im 4)))))
(fma.f64 re 2 (fma.f64 1/2 (*.f64 (/.f64 im re) im) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 re 2 (/.f64 -1/8 (/.f64 (pow.f64 re 3) (pow.f64 im 4))))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 re 2 (*.f64 (pow.f64 im 6) (/.f64 1/16 (pow.f64 re 5))))))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 (*.f64 (/.f64 im re) im) -1/2)
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 (/.f64 (*.f64 im im) re) -1/2))
(fma.f64 (/.f64 im (/.f64 re im)) -1/2 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8))
(fma.f64 (*.f64 (/.f64 im re) im) -1/2 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.f64 (*.f64 im im) re) -1/2)))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (/.f64 -1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6)))))
(fma.f64 (*.f64 (/.f64 im re) im) -1/2 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (*.f64 (/.f64 -1/16 (pow.f64 re 5)) (pow.f64 im 6))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7)) (fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.f64 (*.f64 im im) re) -1/2))))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 1/2 (/.f64 (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)) (pow.f64 re 7)) (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (/.f64 -1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6))))))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 (*.f64 (/.f64 im re) im) -1/2 (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 im 8) 5/64) (pow.f64 re 7)) (*.f64 (/.f64 -1/16 (pow.f64 re 5)) (pow.f64 im 6)))))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) -1/16 (fma.f64 (*.f64 (/.f64 im re) im) -1/2 (/.f64 (*.f64 (pow.f64 im 8) 5/128) (pow.f64 re 7)))))
(*.f64 2 re)
(*.f64 re 2)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))
(fma.f64 re 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (*.f64 re 2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 re 2 (/.f64 -1/8 (/.f64 (pow.f64 re 3) (pow.f64 im 4)))))
(fma.f64 re 2 (fma.f64 1/2 (*.f64 (/.f64 im re) im) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 2 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 re 2 (/.f64 -1/8 (/.f64 (pow.f64 re 3) (pow.f64 im 4))))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 re 2 (*.f64 (pow.f64 im 6) (/.f64 1/16 (pow.f64 re 5))))))
im
(+.f64 re im)
(+.f64 im re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 im re))
(fma.f64 1/2 (/.f64 re (/.f64 im re)) (+.f64 im re))
(+.f64 im (fma.f64 1/2 (*.f64 (/.f64 re im) re) re))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 im re)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) (+.f64 im re)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (+.f64 im (fma.f64 1/2 (*.f64 (/.f64 re im) re) 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 (*.f64 (*.f64 re re) -1/2) im) im))
(-.f64 (fma.f64 (*.f64 (/.f64 re im) re) -1/2 re) im)
(-.f64 re (fma.f64 1/2 (*.f64 (/.f64 re im) re) im))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(fma.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (+.f64 re (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im))))
(+.f64 (-.f64 (/.f64 (*.f64 (*.f64 re re) -1/2) im) im) (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 re))
(fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (-.f64 (fma.f64 (*.f64 (/.f64 re im) re) -1/2 re) im))
(fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (-.f64 re (fma.f64 1/2 (*.f64 (/.f64 re im) re) im)))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 1/2 (*.f64 (*.f64 re (sqrt.f64 2)) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 1/2 (*.f64 re (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re 1/2))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 1/2 (*.f64 (sqrt.f64 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))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 2)))) (*.f64 (*.f64 1/2 re) (sqrt.f64 2)))))
(fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 (*.f64 re re) (+.f64 (/.f64 1/2 im) (*.f64 -1/2 (/.f64 1/2 im)))) re)) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 (*.f64 re re) (*.f64 1/2 (/.f64 1/2 im))) re))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (*.f64 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/4 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (pow.f64 re 3) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (fma.f64 1/2 (*.f64 (*.f64 re (sqrt.f64 2)) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (*.f64 re re) (sqrt.f64 2)))) (*.f64 (*.f64 1/2 re) (sqrt.f64 2))))) (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (pow.f64 re 3) (sqrt.f64 2))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) -1/4)))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 (*.f64 re re) (+.f64 (/.f64 1/2 im) (*.f64 -1/2 (/.f64 1/2 im)))) re))) (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (*.f64 -1/4 (+.f64 (/.f64 1/2 im) (*.f64 -1/2 (/.f64 1/2 im)))) (pow.f64 re 3))))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 (*.f64 re re) (*.f64 1/2 (/.f64 1/2 im))) re)) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (*.f64 -1/4 (*.f64 1/2 (/.f64 1/2 im))) (pow.f64 re 3))))))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(*.f64 2 (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 2 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (*.f64 im im) 1/4)))
(fma.f64 2 (sqrt.f64 re) (*.f64 (*.f64 im im) (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (*.f64 1/4 (/.f64 1 (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 im (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (fma.f64 2 (sqrt.f64 re) (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re))) -1/2))))
(fma.f64 2 (sqrt.f64 re) (fma.f64 (*.f64 im im) (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 2 (sqrt.f64 re) (fma.f64 (*.f64 im im) (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (*.f64 (/.f64 1 (pow.f64 re 3)) (+.f64 1/8 (*.f64 (/.f64 1/4 (sqrt.f64 2)) (/.f64 1/4 (sqrt.f64 2))))) (*.f64 -1/2 (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (*.f64 1/4 (/.f64 1 (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (*.f64 1/4 (/.f64 1 (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 2) 2))))) (*.f64 (pow.f64 im 6) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 4)) (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2))) (*.f64 (*.f64 1/2 (pow.f64 im 6)) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 re re))))))) (fma.f64 2 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (*.f64 im im) 1/4))))
(fma.f64 (sqrt.f64 (/.f64 1 re)) (fma.f64 -1/2 (*.f64 (pow.f64 im 4) (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2))) (*.f64 (pow.f64 im 6) (*.f64 1/2 (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/8 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 1/4 (sqrt.f64 2))) 2)) (*.f64 re re))))))) (fma.f64 2 (sqrt.f64 re) (*.f64 (*.f64 im im) (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(fma.f64 (sqrt.f64 (/.f64 1 re)) (fma.f64 -1/2 (*.f64 (*.f64 (pow.f64 im 4) (/.f64 1 (pow.f64 re 3))) (+.f64 1/8 (*.f64 (/.f64 1/4 (sqrt.f64 2)) (/.f64 1/4 (sqrt.f64 2))))) (*.f64 (pow.f64 im 6) (*.f64 1/2 (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/8 (/.f64 (*.f64 (/.f64 1 (pow.f64 re 3)) (+.f64 1/8 (*.f64 (/.f64 1/4 (sqrt.f64 2)) (/.f64 1/4 (sqrt.f64 2))))) (*.f64 re re))))))) (fma.f64 2 (sqrt.f64 re) (*.f64 (*.f64 im im) (*.f64 1/4 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))

eval43.0ms (0.3%)

Compiler

Compiled 2095 to 1417 computations (32.4% saved)

prune21.0ms (0.2%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New938101
Fresh000
Picked011
Done000
Total939102
Error
5.1b
Counts
102 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
44.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
52.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (/.f64 im re) im) -1/2))))
50.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
45.9b
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
13.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
42.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
54.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
14.3b
(*.f64 1/2 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3))
48.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
Compiler

Compiled 188 to 155 computations (17.6% saved)

localize23.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 63 to 30 computations (52.4% saved)

series56.0ms (0.4%)

Counts
3 → 56
Calls

18 calls:

TimeVariablePointExpression
12.0ms
re
@-inf
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)
10.0ms
re
@inf
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)
8.0ms
im
@0
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)
6.0ms
im
@-inf
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)
5.0ms
im
@inf
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3)

rewrite75.0ms (0.6%)

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

Useful iterations: 1 (0.0ms)

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

simplify159.0ms (1.2%)

Algorithm
egg-herbie
Rules
856×fma-def_binary64
363×associate-+r+_binary64
333×*-commutative_binary64
322×distribute-rgt-in_binary64
319×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
06676742
124175771
269975316
Stop Event
node limit
Counts
183 → 195
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (*.f64 1/3 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im)))))) re) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))))
(+.f64 (*.f64 (+.f64 (*.f64 1/9 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (*.f64 1/72 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))) (pow.f64 re 2)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (*.f64 1/3 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im)))))) re) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/9 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (*.f64 1/72 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))) (pow.f64 re 2)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (*.f64 1/3 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im)))))) re) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (*.f64 (+.f64 (*.f64 1/108 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (+.f64 (*.f64 1/216 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) (pow.f64 im 8)) 1/3)) (*.f64 -35/648 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) (pow.f64 im 8)) 1/3))) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))) (+.f64 (*.f64 -35/1296 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))) (*.f64 1/216 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))) (pow.f64 re 3)))))
(*.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (sqrt.f64 2)) (pow.f64 1 1/3))
(+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (sqrt.f64 2)) (pow.f64 1 1/3)) (*.f64 1/12 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3)))))
(+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 1/288 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 4))) (pow.f64 re 4)) (pow.f64 1 1/3))) (+.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (sqrt.f64 2)) (pow.f64 1 1/3)) (+.f64 (*.f64 1/12 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/576 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (pow.f64 im 4)))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))))))))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re))))))) (pow.f64 re 4)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4)))) (*.f64 1/1152 (pow.f64 im 4))))) (pow.f64 re 4)) (pow.f64 1 1/3)))))))
(+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 1/12 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4)))) (*.f64 1/1152 (pow.f64 im 4))) (pow.f64 im 2)))) (pow.f64 re 6)) (pow.f64 1 1/3))) (+.f64 (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))))) (pow.f64 im 2))))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (+.f64 (*.f64 1/82944 (pow.f64 im 6)) (+.f64 (*.f64 1/4320 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6))))) (*.f64 1/3456 (*.f64 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))) (pow.f64 im 2)))))))))) (pow.f64 re 6)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (*.f64 (+.f64 (*.f64 1/576 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (pow.f64 im 4)))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))))))))) (pow.f64 im 2))) (pow.f64 re 6)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))) (+.f64 (*.f64 1/12 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (+.f64 (*.f64 1/82944 (pow.f64 im 6)) (+.f64 (*.f64 1/4320 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6))))) (*.f64 1/3456 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))) (pow.f64 im 2))))) (sqrt.f64 2))) (pow.f64 re 6)) (pow.f64 1 1/3)) (+.f64 (*.f64 1/288 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 4))) (pow.f64 re 4)) (pow.f64 1 1/3))) (+.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (sqrt.f64 2)) (pow.f64 1 1/3)) (+.f64 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/576 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (pow.f64 im 4)))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))))))))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re))))))) (pow.f64 re 4)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4)))) (*.f64 1/1152 (pow.f64 im 4))))) (pow.f64 re 4)) (pow.f64 1 1/3)))))))))))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)) (pow.f64 1 1/3))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)) (pow.f64 1 1/3)) (+.f64 (*.f64 -1/12 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (*.f64 -1/24 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3)))))
(+.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))))) (pow.f64 re 4)) (pow.f64 1 1/3)) (+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (+.f64 (*.f64 1/576 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 4)))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2)))))) (pow.f64 re 4))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)) (pow.f64 1 1/3)) (+.f64 (*.f64 -1/24 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 -1/12 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (*.f64 1/288 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 4))) (pow.f64 re 4)) (pow.f64 1 1/3))))))))
(+.f64 (*.f64 -1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (*.f64 (+.f64 (*.f64 1/576 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 4)))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2))))) (pow.f64 im 2))) (pow.f64 re 6)))) (+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (+.f64 (*.f64 1/576 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 4)))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2)))))) (pow.f64 re 4))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)) (pow.f64 1 1/3)) (+.f64 (*.f64 -1/24 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 -1/12 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 -1/12 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2)))) (pow.f64 re 6)) (pow.f64 1 1/3))) (+.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))))) (pow.f64 re 4)) (pow.f64 1 1/3)) (+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (pow.f64 im 2))))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (+.f64 (*.f64 -1/82944 (pow.f64 im 6)) (+.f64 (*.f64 1/4320 (+.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 -1/3456 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2))))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) (pow.f64 re 6))) (+.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 -1/82944 (pow.f64 im 6)) (+.f64 (*.f64 1/4320 (+.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 -1/3456 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3))) (pow.f64 re 6)) (pow.f64 1 1/3)) (*.f64 1/288 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 4))) (pow.f64 re 4)) (pow.f64 1 1/3))))))))))))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 re)))
(+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 re))) (*.f64 (+.f64 (*.f64 1/12 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))) (*.f64 1/24 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))) (pow.f64 im 2)))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (*.f64 2 re) 1/6) (+.f64 (*.f64 1/576 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 11)) 1/3)) (*.f64 -17/576 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 11)) 1/3))))) (+.f64 (*.f64 -17/1152 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))))) (*.f64 1/288 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))))))) (pow.f64 im 4)) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 re))) (*.f64 (+.f64 (*.f64 1/12 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))) (*.f64 1/24 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))) (pow.f64 im 2))))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (*.f64 2 re) 1/6) (+.f64 (*.f64 1/576 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 11)) 1/3)) (*.f64 -17/576 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 11)) 1/3))))) (+.f64 (*.f64 -17/1152 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))))) (*.f64 1/288 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))))))) (pow.f64 im 4)) (+.f64 (*.f64 (+.f64 (*.f64 1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6) (+.f64 (*.f64 1/576 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 11)) 1/3)) (*.f64 -17/576 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 11)) 1/3)))))) (+.f64 (*.f64 -17/13824 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 11)))))) (+.f64 (*.f64 667/82944 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 11)))))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (+.f64 (*.f64 -17/13824 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 17)) 1/3)) (*.f64 667/41472 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 17)) 1/3))) (pow.f64 (*.f64 2 re) 1/6)))))) (pow.f64 im 6)) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 re))) (*.f64 (+.f64 (*.f64 1/12 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))) (*.f64 1/24 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))) (pow.f64 im 2)))))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im)))))))
(+.f64 (*.f64 1/18 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/6 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6) (+.f64 (*.f64 1/36 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (pow.f64 re 2))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))))))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))))))))
(+.f64 (*.f64 1/18 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (*.f64 re (+.f64 (*.f64 1/36 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (pow.f64 re 2))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))))) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6))))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (*.f64 (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) re))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (+.f64 (*.f64 1/36 (+.f64 (*.f64 -3 (pow.f64 re 3)) (*.f64 2 (pow.f64 re 3)))) (+.f64 (*.f64 1/72 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/1296 (pow.f64 re 3))))))) (*.f64 (sqrt.f64 1) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6)))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/6 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6) (+.f64 (*.f64 1/36 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (pow.f64 re 2))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))))))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))) (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/72 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 1/36 (+.f64 (*.f64 -3 (pow.f64 re 3)) (*.f64 2 (pow.f64 re 3)))) (*.f64 1/1296 (pow.f64 re 3))))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))))))))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/6 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))) (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))))) im)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/6 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))) (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))))) im)) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (+.f64 (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (*.f64 1/36 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (pow.f64 re 2)))))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 1/18 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (pow.f64 re 2))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/6 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))) (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))))) im)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (*.f64 -1 im) 1/6) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (*.f64 (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) re))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (+.f64 (*.f64 1/36 (+.f64 (*.f64 -3 (pow.f64 re 3)) (*.f64 2 (pow.f64 re 3)))) (+.f64 (*.f64 1/72 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/1296 (pow.f64 re 3))))))))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (*.f64 (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) re))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/72 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 1/36 (+.f64 (*.f64 -3 (pow.f64 re 3)) (*.f64 2 (pow.f64 re 3)))) (*.f64 1/1296 (pow.f64 re 3)))))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (*.f64 1/6 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (*.f64 -1 im) 1/6) (*.f64 re (+.f64 (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (*.f64 1/36 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (pow.f64 re 2))))))))))) (pow.f64 im 3))) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (+.f64 (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (*.f64 1/36 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (pow.f64 re 2)))))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 1/18 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (pow.f64 re 2))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))) (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))) (+.f64 (*.f64 1/72 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6))))) (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))) (+.f64 (*.f64 1/72 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6))) (*.f64 -35/1296 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 re 3) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6))))))))
(*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))
(+.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (*.f64 1/24 (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 im 2)) (pow.f64 re 2)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))))
(+.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 im 2)) (pow.f64 re 2)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))) (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))))) (pow.f64 re 4)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))))
(+.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (+.f64 (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (+.f64 (*.f64 1/82944 (pow.f64 im 6)) (+.f64 (*.f64 1/4320 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6))))) (*.f64 1/3456 (*.f64 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))) (pow.f64 im 2)))))) (pow.f64 re 6)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 im 2)) (pow.f64 re 2)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))) (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))))) (pow.f64 re 4)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)))))
(*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))))
(+.f64 (*.f64 -1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (pow.f64 im 2)) (pow.f64 re 2)))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))))
(+.f64 (*.f64 -1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.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 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) (pow.f64 re 4)))))
(+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (+.f64 (*.f64 -1/82944 (pow.f64 im 6)) (+.f64 (*.f64 1/4320 (+.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 -1/3456 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) (pow.f64 re 6))) (+.f64 (*.f64 -1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.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 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) (pow.f64 re 4))))))
(*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (pow.f64 (*.f64 2 re) 1/6))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6) (pow.f64 im 2)))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (pow.f64 (*.f64 2 re) 1/6)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6) (pow.f64 im 2)))) (+.f64 (*.f64 -17/1152 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 23)) 1/6) (pow.f64 im 4)))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (pow.f64 (*.f64 2 re) 1/6))))
(+.f64 (*.f64 667/82944 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 35)) 1/6) (pow.f64 im 6)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6) (pow.f64 im 2)))) (+.f64 (*.f64 -17/1152 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 23)) 1/6) (pow.f64 im 4)))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (pow.f64 (*.f64 2 re) 1/6)))))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))) (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6))) (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6))))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6))) (+.f64 (*.f64 (+.f64 (*.f64 1/36 (+.f64 (*.f64 -3 (pow.f64 re 3)) (*.f64 2 (pow.f64 re 3)))) (+.f64 (*.f64 1/72 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/1296 (pow.f64 re 3)))) (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6)))) (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6)))))))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) re))) (*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) re))) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) re))) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 17)) 1/6) (*.f64 (+.f64 (*.f64 1/36 (+.f64 (*.f64 -3 (pow.f64 re 3)) (*.f64 2 (pow.f64 re 3)))) (+.f64 (*.f64 1/72 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/1296 (pow.f64 re 3)))) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)))) (*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/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) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
Outputs
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (*.f64 1/3 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im)))))) re) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) 1/2) re (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) 1/2) re))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) 1/2)) re))
(+.f64 (*.f64 (+.f64 (*.f64 1/9 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (*.f64 1/72 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))) (pow.f64 re 2)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (*.f64 1/3 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im)))))) re) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 1/8) (*.f64 re re) (fma.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) 1/2) re (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 1/8) (*.f64 re re) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) 1/2) re)))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (sqrt.f64 2) 1/8)) (*.f64 re re) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) 1/2)) re)))
(+.f64 (*.f64 (+.f64 (*.f64 1/9 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (*.f64 1/72 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))) (pow.f64 re 2)) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (*.f64 1/3 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im)))))) re) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (*.f64 (+.f64 (*.f64 1/108 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (+.f64 (*.f64 1/216 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) (pow.f64 im 8)) 1/3)) (*.f64 -35/648 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) (pow.f64 im 8)) 1/3))) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))) (+.f64 (*.f64 -35/1296 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))) (*.f64 1/216 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))) (pow.f64 re 3)))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 1/8) (*.f64 re re) (+.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) 1/2) re (*.f64 (sqrt.f64 2) (sqrt.f64 im))) (*.f64 (fma.f64 1/108 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (*.f64 (cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 im 8))) -4/81) (pow.f64 im 1/6)) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) -29/1296))) (pow.f64 re 3))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) 1/8) (*.f64 re re) (fma.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))) 1/2) re (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (fma.f64 1/108 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (fma.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) -29/1296 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (cbrt.f64 (/.f64 2 (pow.f64 im 8))) -4/81)) (pow.f64 im 1/6)))) (pow.f64 re 3)))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (sqrt.f64 2) 1/8)) (*.f64 re re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) 1/2)) re (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (fma.f64 1/108 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (fma.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) -29/1296 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (cbrt.f64 (/.f64 2 (pow.f64 im 8))) -4/81)) (pow.f64 im 1/6)))) (pow.f64 re 3)))))
(*.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (sqrt.f64 2)) (pow.f64 1 1/3))
(*.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3))
(*.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3))
(*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3))
(+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (sqrt.f64 2)) (pow.f64 1 1/3)) (*.f64 1/12 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3)))))
(fma.f64 1/24 (*.f64 1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3) (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 2) (*.f64 im im))))) (+.f64 (*.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3)) (*.f64 (*.f64 1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3) (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 2) (*.f64 im im))))) 1/12)))
(fma.f64 1/24 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) re) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) re)) (fma.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) (/.f64 (*.f64 1/12 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3)) (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 2) (*.f64 im im))))))
(+.f64 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3)) (*.f64 (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3) re) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) re)) 1/8))
(+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 1/288 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 4))) (pow.f64 re 4)) (pow.f64 1 1/3))) (+.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (sqrt.f64 2)) (pow.f64 1 1/3)) (+.f64 (*.f64 1/12 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/576 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (pow.f64 im 4)))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))))))))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re))))))) (pow.f64 re 4)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4)))) (*.f64 1/1152 (pow.f64 im 4))))) (pow.f64 re 4)) (pow.f64 1 1/3)))))))
(fma.f64 1/24 (*.f64 1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3) (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 2) (*.f64 im im))))) (fma.f64 1/288 (*.f64 1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3) (/.f64 (pow.f64 re 4) (*.f64 (sqrt.f64 2) (pow.f64 im 4))))) (+.f64 (*.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3)) (fma.f64 1/12 (*.f64 1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3) (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 2) (*.f64 im im))))) (fma.f64 (/.f64 (fma.f64 1/576 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 2))) (*.f64 2 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 2) (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) -9/4))))))) (/.f64 (pow.f64 re 4) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))))) (cbrt.f64 (sqrt.f64 2)) (*.f64 1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3) (/.f64 (pow.f64 re 4) (*.f64 (sqrt.f64 2) (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) -9/4))))))))))))
(fma.f64 1/24 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) re) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) re)) (fma.f64 1/288 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) (/.f64 (pow.f64 re 4) (*.f64 (sqrt.f64 2) (pow.f64 im 4)))) (fma.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) (fma.f64 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) re) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) re)) 1/12 (fma.f64 (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) (/.f64 (pow.f64 re 4) (fma.f64 2 (*.f64 (cbrt.f64 2) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152)))) (*.f64 (*.f64 1/576 (cbrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 2)))))) (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) (/.f64 (/.f64 (pow.f64 re 4) (sqrt.f64 2)) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152)))))))))
(fma.f64 1/24 (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3) re) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) re)) (fma.f64 1/288 (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3) (pow.f64 re 4)) (*.f64 (sqrt.f64 2) (pow.f64 im 4))) (fma.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3) (fma.f64 (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3) re) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) re)) 1/12 (fma.f64 (/.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) (/.f64 (pow.f64 re 4) (fma.f64 2 (*.f64 (cbrt.f64 2) (*.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152)))) (*.f64 (*.f64 1/576 (cbrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 2)))))) (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3) (/.f64 (/.f64 (pow.f64 re 4) (sqrt.f64 2)) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152)))))))))
(+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 1/12 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4)))) (*.f64 1/1152 (pow.f64 im 4))) (pow.f64 im 2)))) (pow.f64 re 6)) (pow.f64 1 1/3))) (+.f64 (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))))) (pow.f64 im 2))))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (+.f64 (*.f64 1/82944 (pow.f64 im 6)) (+.f64 (*.f64 1/4320 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6))))) (*.f64 1/3456 (*.f64 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))) (pow.f64 im 2)))))))))) (pow.f64 re 6)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (*.f64 (+.f64 (*.f64 1/576 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (pow.f64 im 4)))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))))))))) (pow.f64 im 2))) (pow.f64 re 6)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))) (+.f64 (*.f64 1/12 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (+.f64 (*.f64 1/82944 (pow.f64 im 6)) (+.f64 (*.f64 1/4320 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6))))) (*.f64 1/3456 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4))) (pow.f64 im 2))))) (sqrt.f64 2))) (pow.f64 re 6)) (pow.f64 1 1/3)) (+.f64 (*.f64 1/288 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (pow.f64 im 4))) (pow.f64 re 4)) (pow.f64 1 1/3))) (+.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (sqrt.f64 2)) (pow.f64 1 1/3)) (+.f64 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/576 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (pow.f64 im 4)))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 2) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))))))))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re))))))) (pow.f64 re 4)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) 3) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 -3/2 (pow.f64 im 4)))) (*.f64 1/1152 (pow.f64 im 4))))) (pow.f64 re 4)) (pow.f64 1 1/3)))))))))))
(fma.f64 1/24 (*.f64 1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3) (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 2) (*.f64 im im))))) (fma.f64 1/12 (*.f64 1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3) (/.f64 (pow.f64 re 6) (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) -9/4)))) (*.f64 im im))))) (fma.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) (fma.f64 1/12 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 2) (*.f64 (*.f64 im im) (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) -9/4)))))) (*.f64 2 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 2) (fma.f64 1/82944 (pow.f64 im 6) (fma.f64 1/4320 (fma.f64 15/4 (pow.f64 im 6) (*.f64 (pow.f64 im 6) 135/4)) (*.f64 1/3456 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4)))))))))) (pow.f64 re 6)) (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/24 (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) (/.f64 (pow.f64 re 6) (*.f64 (*.f64 im im) (fma.f64 1/576 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 2))) (*.f64 2 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 2) (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) -9/4))))))))))) (fma.f64 1/12 (*.f64 1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3) (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 2) (*.f64 im im))))) (fma.f64 (/.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3) (*.f64 (sqrt.f64 2) (fma.f64 1/82944 (pow.f64 im 6) (fma.f64 1/4320 (fma.f64 15/4 (pow.f64 im 6) (*.f64 (pow.f64 im 6) 135/4)) (*.f64 1/3456 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4))))))) (pow.f64 re 6)) 1 (fma.f64 1/288 (*.f64 1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3) (/.f64 (pow.f64 re 4) (*.f64 (sqrt.f64 2) (pow.f64 im 4))))) (+.f64 (*.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3)) (fma.f64 (/.f64 (fma.f64 1/576 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 2))) (*.f64 2 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 2) (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) -9/4))))))) (/.f64 (pow.f64 re 4) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))))) (cbrt.f64 (sqrt.f64 2)) (*.f64 1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) 3) (/.f64 (pow.f64 re 4) (*.f64 (sqrt.f64 2) (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) -9/4))))))))))))))))
(fma.f64 1/24 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) re) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) re)) (fma.f64 1/12 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) (/.f64 (/.f64 (pow.f64 re 6) (sqrt.f64 2)) (*.f64 (*.f64 im im) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152))))) (+.f64 (+.f64 (fma.f64 1/288 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) (/.f64 (pow.f64 re 4) (*.f64 (sqrt.f64 2) (pow.f64 im 4)))) (fma.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) (fma.f64 (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) (/.f64 (pow.f64 re 4) (fma.f64 2 (*.f64 (cbrt.f64 2) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152)))) (*.f64 (*.f64 1/576 (cbrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 2)))))) (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) (/.f64 (/.f64 (pow.f64 re 4) (sqrt.f64 2)) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152))))))) (fma.f64 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) re) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) re)) 1/12 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 3) (/.f64 (/.f64 (pow.f64 re 6) (sqrt.f64 2)) (fma.f64 1/82944 (pow.f64 im 6) (fma.f64 1/4320 (*.f64 (pow.f64 im 6) 75/2) (*.f64 1/3456 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4))))))))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) (pow.f64 re 6)) (fma.f64 2 (*.f64 (cbrt.f64 2) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 2) (fma.f64 1/82944 (pow.f64 im 6) (fma.f64 1/4320 (*.f64 (pow.f64 im 6) 75/2) (*.f64 1/3456 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4))))))) (*.f64 (*.f64 1/12 (cbrt.f64 2)) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 2) (*.f64 (*.f64 im im) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152))))))) (*.f64 1/24 (*.f64 (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) (pow.f64 re 6)) (*.f64 (*.f64 im im) (fma.f64 2 (*.f64 (cbrt.f64 2) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152)))) (*.f64 (*.f64 1/576 (cbrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) 2))))))))))))
(fma.f64 1/24 (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3) re) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) re)) (fma.f64 1/12 (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3) (pow.f64 re 6)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im im) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152))))) (+.f64 (+.f64 (fma.f64 1/288 (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3) (pow.f64 re 4)) (*.f64 (sqrt.f64 2) (pow.f64 im 4))) (fma.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3) (fma.f64 (/.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) (/.f64 (pow.f64 re 4) (fma.f64 2 (*.f64 (cbrt.f64 2) (*.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152)))) (*.f64 (*.f64 1/576 (cbrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 2)))))) (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3) (/.f64 (/.f64 (pow.f64 re 4) (sqrt.f64 2)) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152))))))) (fma.f64 (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3) re) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) re)) 1/12 (/.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 3) (/.f64 (/.f64 (pow.f64 re 6) (sqrt.f64 2)) (fma.f64 1/82944 (pow.f64 im 6) (fma.f64 1/4320 (*.f64 (pow.f64 im 6) 75/2) (*.f64 1/3456 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4))))))))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) (pow.f64 re 6)) (fma.f64 2 (*.f64 (*.f64 (cbrt.f64 2) (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 2)) (fma.f64 1/82944 (pow.f64 im 6) (fma.f64 1/4320 (*.f64 (pow.f64 im 6) 75/2) (*.f64 1/3456 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4)))))) (*.f64 (*.f64 1/12 (cbrt.f64 2)) (*.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 2) (*.f64 (*.f64 im im) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152))))))) (*.f64 1/24 (*.f64 (/.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) (pow.f64 re 6)) (*.f64 (*.f64 im im) (fma.f64 2 (*.f64 (cbrt.f64 2) (*.f64 (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152)))) (*.f64 (*.f64 1/576 (cbrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) 2))))))))))))
(*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)) (pow.f64 1 1/3))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3) 1))
(*.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3))
(*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)) (pow.f64 1 1/3)) (+.f64 (*.f64 -1/12 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (*.f64 -1/24 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3)))))
(fma.f64 (*.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3)) 1 (*.f64 (*.f64 1 (/.f64 (sqrt.f64 2) (/.f64 (*.f64 re re) (*.f64 (*.f64 im im) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3))))) -1/8))
(fma.f64 (/.f64 (sqrt.f64 2) (/.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3))) -1/8 (*.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3)))
(fma.f64 (/.f64 (sqrt.f64 2) (/.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) -1/8 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3)))
(+.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))))) (pow.f64 re 4)) (pow.f64 1 1/3)) (+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (+.f64 (*.f64 1/576 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 4)))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2)))))) (pow.f64 re 4))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)) (pow.f64 1 1/3)) (+.f64 (*.f64 -1/24 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 -1/12 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (*.f64 1/288 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 4))) (pow.f64 re 4)) (pow.f64 1 1/3))))))))
(fma.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 re 4) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3) (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) 9/4)))))) 1 (fma.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (fma.f64 1/576 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2))) (*.f64 2 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) 9/4))) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2)))))) (pow.f64 re 4)) (fma.f64 (*.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3)) 1 (+.f64 (*.f64 (*.f64 1 (/.f64 (sqrt.f64 2) (/.f64 (*.f64 re re) (*.f64 (*.f64 im im) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3))))) -1/8) (*.f64 1/288 (*.f64 1 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 re 4) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3))))))))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 re 4)) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152)))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (pow.f64 re 4)) (fma.f64 2 (*.f64 (*.f64 (cbrt.f64 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152))) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2)) (*.f64 (*.f64 1/576 (cbrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2))))) (fma.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3) (fma.f64 (/.f64 (sqrt.f64 2) (/.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3))) -1/8 (/.f64 (*.f64 1/288 (sqrt.f64 2)) (/.f64 (pow.f64 re 4) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3))))))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 re 4)) (*.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152)))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (/.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) (pow.f64 re 4)) (fma.f64 2 (*.f64 (*.f64 (cbrt.f64 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152))) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 2)) (*.f64 (*.f64 1/576 (cbrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 2))))) (fma.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3) (fma.f64 (/.f64 (sqrt.f64 2) (/.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) -1/8 (/.f64 (*.f64 1/288 (sqrt.f64 2)) (/.f64 (pow.f64 re 4) (*.f64 (pow.f64 im 4) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))))))))
(+.f64 (*.f64 -1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (*.f64 (+.f64 (*.f64 1/576 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 4)))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2))))) (pow.f64 im 2))) (pow.f64 re 6)))) (+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (+.f64 (*.f64 1/576 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (pow.f64 im 4)))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2)))))) (pow.f64 re 4))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)) (pow.f64 1 1/3)) (+.f64 (*.f64 -1/24 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 -1/12 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2))) (pow.f64 re 2)) (pow.f64 1 1/3))) (+.f64 (*.f64 -1/12 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 2)))) (pow.f64 re 6)) (pow.f64 1 1/3))) (+.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))))) (pow.f64 re 4)) (pow.f64 1 1/3)) (+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2) (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (pow.f64 im 2))))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 1) 1/3) (*.f64 (+.f64 (*.f64 -1/82944 (pow.f64 im 6)) (+.f64 (*.f64 1/4320 (+.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 -1/3456 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 2))))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) (pow.f64 re 6))) (+.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 -1/82944 (pow.f64 im 6)) (+.f64 (*.f64 1/4320 (+.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 -1/3456 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))))) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3))) (pow.f64 re 6)) (pow.f64 1 1/3)) (*.f64 1/288 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3) (pow.f64 im 4))) (pow.f64 re 4)) (pow.f64 1 1/3))))))))))))
(fma.f64 -1/24 (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (/.f64 (pow.f64 re 6) (*.f64 (*.f64 im im) (fma.f64 1/576 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2))) (*.f64 2 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) 9/4))) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2))))))))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (fma.f64 1/576 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2))) (*.f64 2 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) 9/4))) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2)))))) (pow.f64 re 4)) (fma.f64 (*.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3)) 1 (+.f64 (*.f64 (*.f64 1 (/.f64 (sqrt.f64 2) (/.f64 (*.f64 re re) (*.f64 (*.f64 im im) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3))))) -1/8) (fma.f64 -1/12 (*.f64 1 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) 9/4)))) (*.f64 (*.f64 im im) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3))) (pow.f64 re 6))) (fma.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 re 4) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3) (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) 9/4)))))) 1 (fma.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (fma.f64 -1/12 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2) (*.f64 (*.f64 im im) (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) 9/4)))))) (*.f64 2 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 2) 2)) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2) (fma.f64 -1/82944 (pow.f64 im 6) (fma.f64 1/4320 (fma.f64 45/2 (pow.f64 im 6) (fma.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 im 4) -1/8) 2) (*.f64 (pow.f64 im 8) 1/16)) (*.f64 im im)) (*.f64 (pow.f64 im 6) -15/4))) (*.f64 (*.f64 -1/3456 (*.f64 (pow.f64 im 4) 9/4)) (*.f64 im im)))))))) (/.f64 (pow.f64 re 6) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))))) (fma.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 re 6) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3) (fma.f64 -1/82944 (pow.f64 im 6) (fma.f64 1/4320 (fma.f64 45/2 (pow.f64 im 6) (fma.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 im 4) -1/8) 2) (*.f64 (pow.f64 im 8) 1/16)) (*.f64 im im)) (*.f64 (pow.f64 im 6) -15/4))) (*.f64 (*.f64 -1/3456 (*.f64 (pow.f64 im 4) 9/4)) (*.f64 im im))))))) 1 (*.f64 1/288 (*.f64 1 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 re 4) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3))))))))))))))
(fma.f64 -1/24 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (pow.f64 re 6)) (*.f64 (*.f64 im im) (fma.f64 2 (*.f64 (*.f64 (cbrt.f64 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152))) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2)) (*.f64 (*.f64 1/576 (cbrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2))))))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (pow.f64 re 4)) (fma.f64 2 (*.f64 (*.f64 (cbrt.f64 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152))) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2)) (*.f64 (*.f64 1/576 (cbrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2))))) (fma.f64 (sqrt.f64 2) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3) (fma.f64 (/.f64 (sqrt.f64 2) (/.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3))) -1/8 (+.f64 (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (/.f64 (fma.f64 2 (*.f64 (cbrt.f64 2) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2) (fma.f64 (pow.f64 im 6) -1/82944 (fma.f64 1/4320 (fma.f64 (pow.f64 im 6) 45/2 (fma.f64 (pow.f64 im 6) -15/4 (/.f64 -720 (/.f64 (*.f64 im im) (fma.f64 (pow.f64 im 8) 1/16 (*.f64 (pow.f64 im 8) 1/64)))))) (*.f64 (*.f64 -1/3456 (*.f64 (pow.f64 im 4) 9/4)) (*.f64 im im)))))) (*.f64 (*.f64 -1/12 (cbrt.f64 2)) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 2) (*.f64 (*.f64 im im) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152)))))) (pow.f64 re 6)) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2))))) (fma.f64 1/288 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 re 4)) (*.f64 (pow.f64 im 4) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3))) (/.f64 (sqrt.f64 2) (/.f64 (/.f64 (pow.f64 re 6) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3)) (fma.f64 (pow.f64 im 6) -1/82944 (fma.f64 1/4320 (fma.f64 (pow.f64 im 6) 45/2 (fma.f64 (pow.f64 im 6) -15/4 (/.f64 -720 (/.f64 (*.f64 im im) (fma.f64 (pow.f64 im 8) 1/16 (*.f64 (pow.f64 im 8) 1/64)))))) (*.f64 (*.f64 -1/3456 (*.f64 (pow.f64 im 4) 9/4)) (*.f64 im im)))))))) (fma.f64 -1/12 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152))) (*.f64 (*.f64 im im) (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3))) (pow.f64 re 6)) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 re 4)) (*.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) 3) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152))))))))))
(fma.f64 -1/24 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (/.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) (pow.f64 re 6)) (*.f64 (*.f64 im im) (fma.f64 2 (*.f64 (*.f64 (cbrt.f64 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152))) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 2)) (*.f64 (*.f64 1/576 (cbrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 2))))))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (/.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) (pow.f64 re 4)) (fma.f64 2 (*.f64 (*.f64 (cbrt.f64 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152))) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 2)) (*.f64 (*.f64 1/576 (cbrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 2))))) (fma.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3) (fma.f64 (/.f64 (sqrt.f64 2) (/.f64 (*.f64 (/.f64 re im) (/.f64 re im)) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) -1/8 (+.f64 (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (/.f64 (fma.f64 2 (*.f64 (cbrt.f64 2) (*.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 2) (fma.f64 (pow.f64 im 6) -1/82944 (fma.f64 1/4320 (+.f64 (/.f64 -720 (/.f64 (*.f64 im im) (*.f64 (pow.f64 im 8) 5/64))) (*.f64 (pow.f64 im 6) 75/4)) (*.f64 (*.f64 -1/3456 (*.f64 (pow.f64 im 4) 9/4)) (*.f64 im im)))))) (*.f64 (*.f64 -1/12 (cbrt.f64 2)) (*.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 2) (*.f64 (*.f64 im im) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152)))))) (pow.f64 re 6)) (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6))) (fma.f64 1/288 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 re 4)) (*.f64 (pow.f64 im 4) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 re 6)) (*.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3) (fma.f64 (pow.f64 im 6) -1/82944 (fma.f64 1/4320 (+.f64 (/.f64 -720 (/.f64 (*.f64 im im) (*.f64 (pow.f64 im 8) 5/64))) (*.f64 (pow.f64 im 6) 75/4)) (*.f64 (*.f64 -1/3456 (*.f64 (pow.f64 im 4) 9/4)) (*.f64 im im)))))))) (fma.f64 -1/12 (/.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152))) (*.f64 (*.f64 im im) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) (pow.f64 re 6)) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 re 4)) (*.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3) (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152))))))))))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 re)))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(*.f64 2 (sqrt.f64 re))
(+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 re))) (*.f64 (+.f64 (*.f64 1/12 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))) (*.f64 1/24 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))) (pow.f64 im 2)))
(+.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 1/8)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) 1/4) (*.f64 2 (sqrt.f64 re)))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (*.f64 2 re) 1/6) (+.f64 (*.f64 1/576 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 11)) 1/3)) (*.f64 -17/576 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 11)) 1/3))))) (+.f64 (*.f64 -17/1152 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))))) (*.f64 1/288 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))))))) (pow.f64 im 4)) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 re))) (*.f64 (+.f64 (*.f64 1/12 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))) (*.f64 1/24 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))) (pow.f64 im 2))))
(fma.f64 (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (*.f64 2 re) 1/6) (*.f64 (cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 2) 2) (/.f64 (pow.f64 re 11) 2))) -1/36)) (*.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))) -13/1152)) (pow.f64 im 4) (+.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 1/8)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(fma.f64 (pow.f64 im 4) (fma.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 2 re) 1/6)) (*.f64 (cbrt.f64 (/.f64 4 (pow.f64 re 11))) -1/36) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 7))) -13/576)) (fma.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) 1/4) (*.f64 2 (sqrt.f64 re))))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (*.f64 2 re) 1/6) (+.f64 (*.f64 1/576 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 11)) 1/3)) (*.f64 -17/576 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 11)) 1/3))))) (+.f64 (*.f64 -17/1152 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))))) (*.f64 1/288 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))))))) (pow.f64 im 4)) (+.f64 (*.f64 (+.f64 (*.f64 1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6) (+.f64 (*.f64 1/576 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 11)) 1/3)) (*.f64 -17/576 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 11)) 1/3)))))) (+.f64 (*.f64 -17/13824 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 11)))))) (+.f64 (*.f64 667/82944 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 11)))))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (+.f64 (*.f64 -17/13824 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 17)) 1/3)) (*.f64 667/41472 (pow.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) 2) (pow.f64 re 17)) 1/3))) (pow.f64 (*.f64 2 re) 1/6)))))) (pow.f64 im 6)) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 re))) (*.f64 (+.f64 (*.f64 1/12 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))) (*.f64 1/24 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (pow.f64 1 1/3) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))) (pow.f64 im 2)))))
(fma.f64 (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (*.f64 2 re) 1/6) (*.f64 (cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 2) 2) (/.f64 (pow.f64 re 11) 2))) -1/36)) (*.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 (/.f64 1 (pow.f64 re 7)))) -13/1152)) (pow.f64 im 4) (fma.f64 (fma.f64 1/24 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6)) (*.f64 (cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 2) 2) (/.f64 (pow.f64 re 11) 2))) -1/36)) (fma.f64 -17/13824 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 (/.f64 1 (pow.f64 re 11)))) (fma.f64 667/82944 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 (/.f64 1 (pow.f64 re 11)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (*.f64 2 re) 1/6) (*.f64 (cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 2) 2) (/.f64 (pow.f64 re 17) 2))) 77/5184)))))) (pow.f64 im 6) (+.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 1/8)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(fma.f64 (pow.f64 im 4) (fma.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 2 re) 1/6)) (*.f64 (cbrt.f64 (/.f64 4 (pow.f64 re 11))) -1/36) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 7))) -13/576)) (fma.f64 (pow.f64 im 6) (fma.f64 1/24 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6)) (*.f64 (cbrt.f64 (/.f64 4 (pow.f64 re 11))) -1/36)) (+.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (*.f64 2 re) 1/6) (*.f64 (cbrt.f64 (/.f64 4 (pow.f64 re 17))) 77/5184))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 11))) 565/41472))) (fma.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) 1/4) (*.f64 2 (sqrt.f64 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im)))))))
(fma.f64 1/6 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) re) 1) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/3 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) re) 1) (sqrt.f64 (/.f64 1 im))))))
(fma.f64 1/6 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (*.f64 1/3 (*.f64 (sqrt.f64 2) re)) (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 1/2 (*.f64 (sqrt.f64 2) re)) (sqrt.f64 (/.f64 1 im))))
(+.f64 (*.f64 1/18 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/6 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6) (+.f64 (*.f64 1/36 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (pow.f64 re 2))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))))))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))))))))
(fma.f64 1/18 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (*.f64 1 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (fma.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re))))) (*.f64 1 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 1/6 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) re) 1) (sqrt.f64 (/.f64 1 im))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6) (fma.f64 1/36 (*.f64 (*.f64 re re) (cbrt.f64 (*.f64 im (pow.f64 (sqrt.f64 2) 2)))) (*.f64 (*.f64 2 (cbrt.f64 (*.f64 im (pow.f64 (sqrt.f64 2) 2)))) (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re))))))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/3 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) re) 1) (sqrt.f64 (/.f64 1 im)))))))))
(+.f64 (fma.f64 1/6 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6) (fma.f64 2 (*.f64 (fma.f64 1/72 (*.f64 re re) 0) (cbrt.f64 (*.f64 2 im))) (*.f64 (*.f64 1/36 (cbrt.f64 (*.f64 2 im))) (*.f64 re re)))) (fma.f64 (*.f64 1/3 (*.f64 (sqrt.f64 2) re)) (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 1/18 (*.f64 (sqrt.f64 2) (*.f64 re re))) (*.f64 (sqrt.f64 2) (fma.f64 1/72 (*.f64 re re) 0)))))
(+.f64 (+.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6) (fma.f64 2 (*.f64 (*.f64 1/72 (*.f64 re re)) (cbrt.f64 (*.f64 2 im))) (*.f64 (*.f64 1/36 (cbrt.f64 (*.f64 2 im))) (*.f64 re re))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 1/2 (*.f64 (sqrt.f64 2) re)) (sqrt.f64 (/.f64 1 im))))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 1/18 (*.f64 (sqrt.f64 2) (*.f64 re re))) (*.f64 (sqrt.f64 2) (*.f64 1/72 (*.f64 re re))))))
(+.f64 (*.f64 1/18 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (*.f64 re (+.f64 (*.f64 1/36 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (pow.f64 re 2))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))))) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6))))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (*.f64 (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) re))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (+.f64 (*.f64 1/36 (+.f64 (*.f64 -3 (pow.f64 re 3)) (*.f64 2 (pow.f64 re 3)))) (+.f64 (*.f64 1/72 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/1296 (pow.f64 re 3))))))) (*.f64 (sqrt.f64 1) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6)))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2)))))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/6 (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 im))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6) (+.f64 (*.f64 1/36 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (pow.f64 re 2))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 1 im)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))))))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))) (*.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/72 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 1/36 (+.f64 (*.f64 -3 (pow.f64 re 3)) (*.f64 2 (pow.f64 re 3)))) (*.f64 1/1296 (pow.f64 re 3))))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))))))))
(fma.f64 1/18 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (*.f64 1 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (fma.f64 1/6 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 re (*.f64 (fma.f64 1/36 (*.f64 (*.f64 re re) (cbrt.f64 (*.f64 im (pow.f64 (sqrt.f64 2) 2)))) (*.f64 (*.f64 2 (cbrt.f64 (*.f64 im (pow.f64 (sqrt.f64 2) 2)))) (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re)))))) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6) (fma.f64 1/3 (*.f64 (cbrt.f64 (*.f64 im (pow.f64 (sqrt.f64 2) 2))) (*.f64 re (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re)))))) (*.f64 2 (*.f64 (cbrt.f64 (*.f64 im (pow.f64 (sqrt.f64 2) 2))) (fma.f64 1/36 (*.f64 (pow.f64 re 3) -1) (fma.f64 1/72 (*.f64 re (*.f64 0 (*.f64 re re))) (*.f64 (pow.f64 re 3) 1/1296))))))) (fma.f64 1/3 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) re) 1) (sqrt.f64 (/.f64 1 im))) (fma.f64 (*.f64 (sqrt.f64 2) (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re))))) (*.f64 1 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 1/6 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) re) 1) (sqrt.f64 (/.f64 1 im))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6) (fma.f64 1/36 (*.f64 (*.f64 re re) (cbrt.f64 (*.f64 im (pow.f64 (sqrt.f64 2) 2)))) (*.f64 (*.f64 2 (cbrt.f64 (*.f64 im (pow.f64 (sqrt.f64 2) 2)))) (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re))))))) (fma.f64 1/3 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re))))) (*.f64 1 (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))) (*.f64 (*.f64 1 (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (*.f64 (sqrt.f64 2) (fma.f64 1/72 (*.f64 re (*.f64 0 (*.f64 re re))) (fma.f64 1/36 (*.f64 (pow.f64 re 3) -1) (*.f64 (pow.f64 re 3) 1/1296))))))))))))))
(fma.f64 1/18 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (fma.f64 1/6 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 re (*.f64 (fma.f64 2 (*.f64 (fma.f64 1/72 (*.f64 re re) 0) (cbrt.f64 (*.f64 2 im))) (*.f64 (*.f64 1/36 (cbrt.f64 (*.f64 2 im))) (*.f64 re re))) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6) (fma.f64 2 (*.f64 (cbrt.f64 (*.f64 2 im)) (fma.f64 1/72 (*.f64 re 0) (fma.f64 (pow.f64 re 3) 1/1296 (*.f64 1/36 (*.f64 (pow.f64 re 3) -1))))) (*.f64 (*.f64 1/3 (cbrt.f64 (*.f64 2 im))) (*.f64 re (fma.f64 1/72 (*.f64 re re) 0))))) (fma.f64 1/3 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (*.f64 (fma.f64 1/72 (*.f64 re re) 0) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 1/6 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6) (fma.f64 2 (*.f64 (fma.f64 1/72 (*.f64 re re) 0) (cbrt.f64 (*.f64 2 im))) (*.f64 (*.f64 1/36 (cbrt.f64 (*.f64 2 im))) (*.f64 re re)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (+.f64 (*.f64 1/3 (*.f64 (sqrt.f64 2) (*.f64 re (fma.f64 1/72 (*.f64 re re) 0)))) (*.f64 (sqrt.f64 2) (fma.f64 1/72 (*.f64 re 0) (fma.f64 (pow.f64 re 3) 1/1296 (*.f64 1/36 (*.f64 (pow.f64 re 3) -1)))))))))))))))
(fma.f64 1/18 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (fma.f64 1/6 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 re (*.f64 (fma.f64 2 (*.f64 (*.f64 1/72 (*.f64 re re)) (cbrt.f64 (*.f64 2 im))) (*.f64 (*.f64 1/36 (cbrt.f64 (*.f64 2 im))) (*.f64 re re))) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6) (fma.f64 2 (*.f64 (cbrt.f64 (*.f64 2 im)) (fma.f64 1/36 (*.f64 (pow.f64 re 3) -1) (fma.f64 (pow.f64 re 3) 1/1296 0))) (*.f64 (*.f64 1/3 (cbrt.f64 (*.f64 2 im))) (*.f64 re (*.f64 1/72 (*.f64 re re)))))) (fma.f64 1/3 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (*.f64 (*.f64 1/72 (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 1/6 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6) (fma.f64 2 (*.f64 (*.f64 1/72 (*.f64 re re)) (cbrt.f64 (*.f64 2 im))) (*.f64 (*.f64 1/36 (cbrt.f64 (*.f64 2 im))) (*.f64 re re)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (+.f64 (*.f64 1/3 (*.f64 (sqrt.f64 2) (*.f64 re (*.f64 1/72 (*.f64 re re))))) (*.f64 (sqrt.f64 2) (fma.f64 1/36 (*.f64 (pow.f64 re 3) -1) (fma.f64 (pow.f64 re 3) 1/1296 0)))))))))))))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (*.f64 1 (sqrt.f64 im))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/6 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))) (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))))) im)))
(fma.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 1 (sqrt.f64 im)) (neg.f64 (/.f64 (*.f64 (*.f64 (*.f64 1 (sqrt.f64 im)) (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1)))) 1/2) im)))
(-.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re (sqrt.f64 -1)) (sqrt.f64 im))) im) 1/2))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re (sqrt.f64 -1)) (sqrt.f64 im))) im) -1/2))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/6 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))) (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))))) im)) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (+.f64 (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (*.f64 1/36 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (pow.f64 re 2)))))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 1/18 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (pow.f64 re 2))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))))
(fma.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 1 (sqrt.f64 im)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 (*.f64 1 (sqrt.f64 im)) (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1)))) 1/2) im) (fma.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (fma.f64 2 (*.f64 (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re)))) (cbrt.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (neg.f64 im)))) (*.f64 1/36 (*.f64 (*.f64 re re) (cbrt.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (neg.f64 im))))))) (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re)))) (sqrt.f64 -1))) (*.f64 1 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 1/18 (*.f64 (*.f64 1 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 -1)))))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (-.f64 (fma.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/36 (*.f64 (*.f64 re re) (cbrt.f64 (*.f64 -2 im))) (*.f64 (*.f64 2 (cbrt.f64 (*.f64 -2 im))) (fma.f64 1/72 (*.f64 re re) 0)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 1/72 (*.f64 re re) 0) (sqrt.f64 -1))) (*.f64 1/18 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 -1))))))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re (sqrt.f64 -1)) (sqrt.f64 im))) im) 1/2)))
(+.f64 (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re (sqrt.f64 -1)) (sqrt.f64 im))) im) -1/2)) (fma.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/36 (*.f64 (*.f64 re re) (cbrt.f64 (*.f64 im -2))) (*.f64 (*.f64 2 (cbrt.f64 (*.f64 im -2))) (*.f64 1/72 (*.f64 re re))))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/72 (*.f64 re re)) (sqrt.f64 -1))) (*.f64 1/18 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 -1))))))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/6 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))) (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) re)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))))) im)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (*.f64 -1 im) 1/6) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (*.f64 (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) re))) (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (+.f64 (*.f64 1/36 (+.f64 (*.f64 -3 (pow.f64 re 3)) (*.f64 2 (pow.f64 re 3)))) (+.f64 (*.f64 1/72 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/1296 (pow.f64 re 3))))))))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (*.f64 (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) re))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/72 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 1/36 (+.f64 (*.f64 -3 (pow.f64 re 3)) (*.f64 2 (pow.f64 re 3)))) (*.f64 1/1296 (pow.f64 re 3)))))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im))) (*.f64 1/6 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (*.f64 -1 im) 1/6) (*.f64 re (+.f64 (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (*.f64 1/36 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (pow.f64 re 2))))))))))) (pow.f64 im 3))) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (+.f64 (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (*.f64 1/36 (*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 -1 im)) 1/3) (pow.f64 re 2)))))) (+.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 1/18 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (pow.f64 re 2))) (*.f64 (pow.f64 1 1/6) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))))
(fma.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 1 (sqrt.f64 im)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 (*.f64 1 (sqrt.f64 im)) (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 -1)))) 1/2) im) (fma.f64 -1 (/.f64 (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (neg.f64 im) 1/6) (fma.f64 1/3 (*.f64 (*.f64 re (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re))))) (cbrt.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (neg.f64 im)))) (*.f64 (*.f64 2 (cbrt.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (neg.f64 im)))) (fma.f64 1/36 (*.f64 (pow.f64 re 3) -1) (fma.f64 1/72 (*.f64 re (*.f64 0 (*.f64 re re))) (*.f64 (pow.f64 re 3) 1/1296)))))) (fma.f64 1/3 (*.f64 (*.f64 1 (sqrt.f64 im)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re)))) (sqrt.f64 -1)) re))) (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 1/72 (*.f64 re (*.f64 0 (*.f64 re re))) (fma.f64 1/36 (*.f64 (pow.f64 re 3) -1) (*.f64 (pow.f64 re 3) 1/1296))) (sqrt.f64 -1))) (*.f64 1 (sqrt.f64 im)) (*.f64 1/6 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (neg.f64 im) 1/6) (*.f64 re (fma.f64 2 (*.f64 (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re)))) (cbrt.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (neg.f64 im)))) (*.f64 1/36 (*.f64 (*.f64 re re) (cbrt.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (neg.f64 im))))))))))))) (pow.f64 im 3)) (fma.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (fma.f64 2 (*.f64 (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re)))) (cbrt.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (neg.f64 im)))) (*.f64 1/36 (*.f64 (*.f64 re re) (cbrt.f64 (*.f64 (pow.f64 (sqrt.f64 2) 2) (neg.f64 im))))))) (fma.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re)))) (sqrt.f64 -1))) (*.f64 1 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 1/18 (*.f64 (*.f64 1 (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 -1))))))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (-.f64 (-.f64 (fma.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/36 (*.f64 (*.f64 re re) (cbrt.f64 (*.f64 -2 im))) (*.f64 (*.f64 2 (cbrt.f64 (*.f64 -2 im))) (fma.f64 1/72 (*.f64 re re) 0)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 1/72 (*.f64 re re) 0) (sqrt.f64 -1))) (*.f64 1/18 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 -1))))))) (/.f64 (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (neg.f64 im) 1/6) (fma.f64 2 (*.f64 (fma.f64 1/72 (*.f64 re 0) (fma.f64 (pow.f64 re 3) 1/1296 (*.f64 1/36 (*.f64 (pow.f64 re 3) -1)))) (cbrt.f64 (*.f64 -2 im))) (*.f64 (*.f64 1/3 (cbrt.f64 (*.f64 -2 im))) (*.f64 re (fma.f64 1/72 (*.f64 re re) 0))))) (+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (neg.f64 im) 1/6)) (*.f64 re (fma.f64 1/36 (*.f64 (*.f64 re re) (cbrt.f64 (*.f64 -2 im))) (*.f64 (*.f64 2 (cbrt.f64 (*.f64 -2 im))) (fma.f64 1/72 (*.f64 re re) 0)))))) (*.f64 (sqrt.f64 im) (+.f64 (*.f64 1/3 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re (fma.f64 1/72 (*.f64 re re) 0)) (sqrt.f64 -1)))) (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 1/72 (*.f64 re 0) (fma.f64 (pow.f64 re 3) 1/1296 (*.f64 1/36 (*.f64 (pow.f64 re 3) -1)))) (sqrt.f64 -1))))))) (pow.f64 im 3))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re (sqrt.f64 -1)) (sqrt.f64 im))) im) 1/2)))
(+.f64 (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 im)) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re (sqrt.f64 -1)) (sqrt.f64 im))) im) -1/2)) (-.f64 (fma.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/36 (*.f64 (*.f64 re re) (cbrt.f64 (*.f64 im -2))) (*.f64 (*.f64 2 (cbrt.f64 (*.f64 im -2))) (*.f64 1/72 (*.f64 re re))))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 1/72 (*.f64 re re)) (sqrt.f64 -1))) (*.f64 1/18 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 -1))))))) (/.f64 (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (neg.f64 im) 1/6) (fma.f64 (*.f64 1/3 (cbrt.f64 (*.f64 im -2))) (*.f64 re (*.f64 1/72 (*.f64 re re))) (*.f64 (*.f64 2 (cbrt.f64 (*.f64 im -2))) (fma.f64 1/36 (*.f64 (pow.f64 re 3) -1) (fma.f64 (pow.f64 re 3) 1/1296 0))))) (+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (neg.f64 im) 1/6)) (*.f64 re (fma.f64 1/36 (*.f64 (*.f64 re re) (cbrt.f64 (*.f64 im -2))) (*.f64 (*.f64 2 (cbrt.f64 (*.f64 im -2))) (*.f64 1/72 (*.f64 re re))))))) (*.f64 (sqrt.f64 im) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (fma.f64 1/36 (*.f64 (pow.f64 re 3) -1) (fma.f64 (pow.f64 re 3) 1/1296 0)) (sqrt.f64 -1))) (*.f64 1/3 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re (*.f64 1/72 (*.f64 re re))) (sqrt.f64 -1)))))))) (pow.f64 im 3))))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (pow.f64 im 1/6) (cbrt.f64 (sqrt.f64 2)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))) (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6))))
(fma.f64 1/6 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))) (*.f64 (pow.f64 im 1/6) (cbrt.f64 (sqrt.f64 2))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))) (+.f64 (*.f64 1/72 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6))))) (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))))
(fma.f64 1/6 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))) (fma.f64 1/72 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (*.f64 re re) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6))) (*.f64 (pow.f64 im 1/6) (cbrt.f64 (sqrt.f64 2)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))) (+.f64 (*.f64 1/72 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6))) (*.f64 -35/1296 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (pow.f64 re 3) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6))))))))
(fma.f64 1/6 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))) (fma.f64 1/72 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (*.f64 re re) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 im 1/6) (*.f64 -35/1296 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 re 3) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6)))))))
(fma.f64 1/6 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))) (fma.f64 (*.f64 1/72 (cbrt.f64 (sqrt.f64 2))) (*.f64 (*.f64 re re) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6)) (fma.f64 (pow.f64 im 1/6) (cbrt.f64 (sqrt.f64 2)) (*.f64 (*.f64 -35/1296 (cbrt.f64 (sqrt.f64 2))) (*.f64 (pow.f64 re 3) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6))))))
(*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))
(*.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) (cbrt.f64 (sqrt.f64 2)))
(*.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) (cbrt.f64 (sqrt.f64 2)))
(*.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) (cbrt.f64 (sqrt.f64 2)))
(+.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (*.f64 1/24 (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 im 2)) (pow.f64 re 2)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))))
(fma.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) (cbrt.f64 (sqrt.f64 2)) (*.f64 1/24 (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) (/.f64 (*.f64 re re) (*.f64 im im))))))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) re))) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re)))))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) re))) (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6))))
(+.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 im 2)) (pow.f64 re 2)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))) (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))))) (pow.f64 re 4)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))))
(fma.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/24 (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) (/.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) (/.f64 (pow.f64 re 4) (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) -9/4))))))))
(fma.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) (cbrt.f64 (sqrt.f64 2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) re))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) (pow.f64 re 4)) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152))))))
(fma.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) (cbrt.f64 (sqrt.f64 2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) re))) (*.f64 (/.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) (pow.f64 re 4)) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152))))))
(+.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (+.f64 (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (+.f64 (*.f64 1/82944 (pow.f64 im 6)) (+.f64 (*.f64 1/4320 (+.f64 (*.f64 15/4 (pow.f64 im 6)) (+.f64 (*.f64 45/2 (pow.f64 im 6)) (*.f64 45/4 (pow.f64 im 6))))) (*.f64 1/3456 (*.f64 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4))) (pow.f64 im 2)))))) (pow.f64 re 6)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)) (+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (pow.f64 im 2)) (pow.f64 re 2)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))) (*.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 re)))))) (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/2 (pow.f64 im 4)) (*.f64 -3/4 (pow.f64 im 4)))))) (pow.f64 re 4)) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)))))
(fma.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) (cbrt.f64 (sqrt.f64 2)) (fma.f64 (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) (/.f64 (pow.f64 re 6) (fma.f64 1/82944 (pow.f64 im 6) (fma.f64 1/4320 (fma.f64 15/4 (pow.f64 im 6) (*.f64 (pow.f64 im 6) 135/4)) (*.f64 1/3456 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4))))))) (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/24 (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) (/.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (neg.f64 (neg.f64 (log.f64 re))))) (/.f64 (pow.f64 re 4) (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) -9/4)))))))))
(+.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) re))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) (pow.f64 re 4)) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152))))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 2) (log.f64 re))) (pow.f64 re 6)) (fma.f64 1/82944 (pow.f64 im 6) (fma.f64 1/4320 (*.f64 (pow.f64 im 6) 75/2) (*.f64 1/3456 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4)))))))))
(+.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (*.f64 1/24 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) re))) (*.f64 (/.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) (pow.f64 re 6)) (fma.f64 1/82944 (pow.f64 im 6) (fma.f64 1/4320 (*.f64 (pow.f64 im 6) 75/2) (*.f64 1/3456 (*.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) -9/4)))))))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)) (pow.f64 re 4)) (fma.f64 1/144 (*.f64 (pow.f64 im 4) -9/4) (*.f64 (pow.f64 im 4) 1/1152))) (*.f64 (pow.f64 2 1/6) (pow.f64 re 1/6)))))
(*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)))
(+.f64 (*.f64 -1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) (pow.f64 im 2)) (pow.f64 re 2)))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))))
(fma.f64 -1/24 (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (/.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2))))))
(fma.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (*.f64 (*.f64 -1/24 (cbrt.f64 (sqrt.f64 2))) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (*.f64 (/.f64 re im) (/.f64 re im)))))
(fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) (*.f64 (*.f64 -1/24 (cbrt.f64 (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) (*.f64 (/.f64 re im) (/.f64 re im)))))
(+.f64 (*.f64 -1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.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 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) (pow.f64 re 4)))))
(fma.f64 -1/24 (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (/.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (/.f64 (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) 9/4))) (/.f64 (pow.f64 re 4) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))))))))
(fma.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (*.f64 (/.f64 (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152)) (pow.f64 re 4)) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))))) (*.f64 (*.f64 -1/24 (cbrt.f64 (sqrt.f64 2))) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (*.f64 (/.f64 re im) (/.f64 re im)))))
(fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (+.f64 (/.f64 (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152)) (pow.f64 re 4)) 1) (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6))) (*.f64 (*.f64 -1/24 (cbrt.f64 (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) (*.f64 (/.f64 re im) (/.f64 re im)))))
(+.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (+.f64 (*.f64 -1/82944 (pow.f64 im 6)) (+.f64 (*.f64 1/4320 (+.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 -1/3456 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))) (pow.f64 im 2))))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) (pow.f64 re 6))) (+.f64 (*.f64 -1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.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 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (/.f64 (*.f64 (+.f64 (*.f64 1/1152 (pow.f64 im 4)) (*.f64 1/144 (+.f64 (*.f64 -3/4 (pow.f64 im 4)) (*.f64 3 (pow.f64 im 4))))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) (pow.f64 re 4))))))
(fma.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (fma.f64 -1/82944 (pow.f64 im 6) (fma.f64 1/4320 (fma.f64 45/2 (pow.f64 im 6) (fma.f64 -720 (/.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 im 4) -1/8) 2) (*.f64 (pow.f64 im 8) 1/16)) (*.f64 im im)) (*.f64 (pow.f64 im 6) -15/4))) (*.f64 (*.f64 -1/3456 (*.f64 (pow.f64 im 4) 9/4)) (*.f64 im im)))) (/.f64 (pow.f64 re 6) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))))) (fma.f64 -1/24 (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (/.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (/.f64 (fma.f64 1/1152 (pow.f64 im 4) (*.f64 1/144 (*.f64 (pow.f64 im 4) 9/4))) (/.f64 (pow.f64 re 4) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2))))))))))
(fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (/.f64 (fma.f64 (pow.f64 im 6) -1/82944 (fma.f64 1/4320 (fma.f64 (pow.f64 im 6) 45/2 (fma.f64 (pow.f64 im 6) -15/4 (/.f64 -720 (/.f64 (*.f64 im im) (fma.f64 (pow.f64 im 8) 1/16 (*.f64 (pow.f64 im 8) 1/64)))))) (*.f64 (*.f64 -1/3456 (*.f64 (pow.f64 im 4) 9/4)) (*.f64 im im)))) (pow.f64 re 6)) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2))))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (*.f64 (/.f64 (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152)) (pow.f64 re 4)) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))))) (*.f64 (*.f64 -1/24 (cbrt.f64 (sqrt.f64 2))) (/.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 (*.f64 im im) 1/2)))) (*.f64 (/.f64 re im) (/.f64 re im))))))
(fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (/.f64 (fma.f64 (pow.f64 im 6) -1/82944 (fma.f64 1/4320 (+.f64 (/.f64 -720 (/.f64 (*.f64 im im) (*.f64 (pow.f64 im 8) 5/64))) (*.f64 (pow.f64 im 6) 75/4)) (*.f64 (*.f64 -1/3456 (*.f64 (pow.f64 im 4) 9/4)) (*.f64 im im)))) (pow.f64 re 6)) (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (+.f64 (/.f64 (fma.f64 1/144 (*.f64 (pow.f64 im 4) 9/4) (*.f64 (pow.f64 im 4) 1/1152)) (pow.f64 re 4)) 1) (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6))) (*.f64 (*.f64 -1/24 (cbrt.f64 (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) (*.f64 (/.f64 re im) (/.f64 re im))))))
(*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (pow.f64 (*.f64 2 re) 1/6))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 2 re) 1/6))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6) (pow.f64 im 2)))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (pow.f64 (*.f64 2 re) 1/6)))
(fma.f64 1/24 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (*.f64 im im) (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 2 re) 1/6)))
(fma.f64 1/24 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6)) (*.f64 im im)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 2 re) 1/6)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6) (pow.f64 im 2)))) (+.f64 (*.f64 -17/1152 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 23)) 1/6) (pow.f64 im 4)))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (pow.f64 (*.f64 2 re) 1/6))))
(fma.f64 1/24 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (*.f64 im im) (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6))) (fma.f64 -17/1152 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (/.f64 2 (pow.f64 re 23)) 1/6))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 2 re) 1/6))))
(fma.f64 1/24 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6)) (*.f64 im im)) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 2 re) 1/6) (*.f64 (*.f64 -17/1152 (cbrt.f64 (sqrt.f64 2))) (*.f64 (pow.f64 im 4) (pow.f64 (/.f64 2 (pow.f64 re 23)) 1/6)))))
(+.f64 (*.f64 667/82944 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 35)) 1/6) (pow.f64 im 6)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6) (pow.f64 im 2)))) (+.f64 (*.f64 -17/1152 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (*.f64 (pow.f64 (/.f64 2 (pow.f64 re 23)) 1/6) (pow.f64 im 4)))) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (pow.f64 (*.f64 2 re) 1/6)))))
(fma.f64 667/82944 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 im 6) (pow.f64 (/.f64 2 (pow.f64 re 35)) 1/6))) (fma.f64 1/24 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (*.f64 im im) (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6))) (fma.f64 -17/1152 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 im 4) (pow.f64 (/.f64 2 (pow.f64 re 23)) 1/6))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 2 re) 1/6)))))
(fma.f64 667/82944 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 im 6) (pow.f64 (/.f64 2 (pow.f64 re 35)) 1/6))) (fma.f64 1/24 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (/.f64 2 (pow.f64 re 11)) 1/6)) (*.f64 im im)) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 2 re) 1/6) (*.f64 (*.f64 -17/1152 (cbrt.f64 (sqrt.f64 2))) (*.f64 (pow.f64 im 4) (pow.f64 (/.f64 2 (pow.f64 re 23)) 1/6))))))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (pow.f64 im 1/6) (cbrt.f64 (sqrt.f64 2)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))) (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6))))
(fma.f64 1/6 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))) (*.f64 (pow.f64 im 1/6) (cbrt.f64 (sqrt.f64 2))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6))) (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6))))))
(fma.f64 1/6 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (pow.f64 im 1/6) (*.f64 (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re)))) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6)))))
(fma.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (pow.f64 im 1/6) (*.f64 (fma.f64 1/72 (*.f64 re re) 0) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6))) (*.f64 (*.f64 1/6 (cbrt.f64 (sqrt.f64 2))) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))
(fma.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (pow.f64 im 1/6) (*.f64 (*.f64 1/72 (*.f64 re re)) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6))) (*.f64 (*.f64 1/6 (cbrt.f64 (sqrt.f64 2))) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6))) (+.f64 (*.f64 (+.f64 (*.f64 1/36 (+.f64 (*.f64 -3 (pow.f64 re 3)) (*.f64 2 (pow.f64 re 3)))) (+.f64 (*.f64 1/72 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/1296 (pow.f64 re 3)))) (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6)))) (*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (*.f64 (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6)))))))
(fma.f64 1/6 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 im 1/6) (fma.f64 (fma.f64 1/36 (*.f64 (pow.f64 re 3) -1) (fma.f64 1/72 (*.f64 re (*.f64 0 (*.f64 re re))) (*.f64 (pow.f64 re 3) 1/1296))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re)))) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6))))))
(+.f64 (fma.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (pow.f64 im 1/6) (*.f64 (fma.f64 1/72 (*.f64 re re) 0) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6))) (*.f64 (*.f64 1/6 (cbrt.f64 (sqrt.f64 2))) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6)))) (*.f64 (fma.f64 1/72 (*.f64 re 0) (fma.f64 (pow.f64 re 3) 1/1296 (*.f64 1/36 (*.f64 (pow.f64 re 3) -1)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6))))
(+.f64 (fma.f64 (cbrt.f64 (sqrt.f64 2)) (+.f64 (pow.f64 im 1/6) (*.f64 (*.f64 1/72 (*.f64 re re)) (pow.f64 (/.f64 1 (pow.f64 im 11)) 1/6))) (*.f64 (*.f64 1/6 (cbrt.f64 (sqrt.f64 2))) (*.f64 re (pow.f64 (/.f64 1 (pow.f64 im 5)) 1/6)))) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/36 (*.f64 (pow.f64 re 3) -1) (fma.f64 (pow.f64 re 3) 1/1296 0))) (pow.f64 (/.f64 1 (pow.f64 im 17)) 1/6)))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (neg.f64 im) 1/6))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) re))) (*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)))
(fma.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 re (cbrt.f64 (sqrt.f64 2)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (neg.f64 im) 1/6)))
(fma.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (neg.f64 im) 1/6) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 re (cbrt.f64 (sqrt.f64 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) re))) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))))
(fma.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 re (cbrt.f64 (sqrt.f64 2)))) (fma.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re))))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (neg.f64 im) 1/6))))
(fma.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 re (cbrt.f64 (sqrt.f64 2)))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (neg.f64 im) 1/6) (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/72 (*.f64 re re) 0)))))
(fma.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 re (cbrt.f64 (sqrt.f64 2)))) (fma.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (neg.f64 im) 1/6) (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 1/72 (*.f64 re re))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) re))) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (+.f64 (*.f64 1/72 (pow.f64 re 2)) (*.f64 1/12 (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 17)) 1/6) (*.f64 (+.f64 (*.f64 1/36 (+.f64 (*.f64 -3 (pow.f64 re 3)) (*.f64 2 (pow.f64 re 3)))) (+.f64 (*.f64 1/72 (*.f64 re (+.f64 (pow.f64 re 2) (*.f64 -1 (pow.f64 re 2))))) (*.f64 1/1296 (pow.f64 re 3)))) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)))) (*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3)))))
(fma.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 re (cbrt.f64 (sqrt.f64 2)))) (fma.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/72 (*.f64 re re) (*.f64 1/12 (*.f64 0 (*.f64 re re))))) (fma.f64 -1 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 17)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/36 (*.f64 (pow.f64 re 3) -1) (fma.f64 1/72 (*.f64 re (*.f64 0 (*.f64 re re))) (*.f64 (pow.f64 re 3) 1/1296))))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (neg.f64 im) 1/6)))))
(fma.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 re (cbrt.f64 (sqrt.f64 2)))) (fma.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/72 (*.f64 re re) 0)) (-.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (neg.f64 im) 1/6)) (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 17)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (fma.f64 1/72 (*.f64 re 0) (fma.f64 (pow.f64 re 3) 1/1296 (*.f64 1/36 (*.f64 (pow.f64 re 3) -1)))))))))
(fma.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 5)) 1/6) (*.f64 re (cbrt.f64 (sqrt.f64 2)))) (fma.f64 (pow.f64 (/.f64 -1 (pow.f64 im 11)) 1/6) (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 1/72 (*.f64 re re))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (-.f64 (pow.f64 (neg.f64 im) 1/6) (*.f64 (pow.f64 (/.f64 -1 (pow.f64 im 17)) 1/6) (fma.f64 1/36 (*.f64 (pow.f64 re 3) -1) (fma.f64 (pow.f64 re 3) 1/1296 0)))))))
(*.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/6 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) re) 1) (sqrt.f64 (/.f64 1 im))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/3 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) re) 1) (sqrt.f64 (/.f64 1 im))))))
(fma.f64 1/6 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (*.f64 1/3 (*.f64 (sqrt.f64 2) re)) (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 1/2 (*.f64 (sqrt.f64 2) re)) (sqrt.f64 (/.f64 1 im))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) 1/2) 2))))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) re)) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) 1/2) 2))))) (*.f64 1/2 (*.f64 (sqrt.f64 2) re)))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) 1/4)))) (*.f64 (sqrt.f64 2) re)))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) 1/2) 2))))) (fma.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 (sqrt.f64 (/.f64 1 im)) 1/2) 2))))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) re)) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) 1/2) 2))))) (*.f64 1/2 (*.f64 (sqrt.f64 2) re))))) (*.f64 -1/4 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (pow.f64 re 3) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) 1/2) 2))) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 im)) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) 1/4)))) (*.f64 (sqrt.f64 2) re))))) (*.f64 -1/4 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (pow.f64 re 3) (-.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) 1/4))) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))
(*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))
(*.f64 2 (sqrt.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 2 (sqrt.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (*.f64 1/4 (/.f64 1 (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (/.f64 1/4 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (*.f64 2 (sqrt.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (pow.f64 im 4)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 re 3))) (pow.f64 (*.f64 1/4 (*.f64 (/.f64 1 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 re 2))))) (pow.f64 im 6)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (*.f64 1/4 (/.f64 1 (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (pow.f64 im 4) (sqrt.f64 (/.f64 1 re)))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (pow.f64 im 6) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 -1/4 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (*.f64 1/4 (/.f64 1 (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 2) 2))))))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (sqrt.f64 re)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 4) (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (/.f64 1/4 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)))) (*.f64 1/2 (*.f64 (pow.f64 im 6) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (/.f64 1/4 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 re re)))))))) (fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 2 (sqrt.f64 re))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 4) (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (/.f64 1/4 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)))) (*.f64 1/2 (*.f64 (pow.f64 im 6) (+.f64 (/.f64 1/16 (pow.f64 re 5)) (*.f64 1/8 (/.f64 (+.f64 (/.f64 1/8 (pow.f64 re 3)) (pow.f64 (*.f64 (/.f64 1/4 (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) 2)) (*.f64 re re)))))))) (fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 2 (sqrt.f64 re))))

localize8.0ms (0.1%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

localize10.0ms (0.1%)

Compiler

Compiled 23 to 15 computations (34.8% saved)

localize11.0ms (0.1%)

Compiler

Compiled 28 to 15 computations (46.4% saved)

localize30.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
0.0b
(*.f64 2 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
9.7b
(/.f64 (pow.f64 im 2) re)
16.5b
(sqrt.f64 (*.f64 2 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
Compiler

Compiled 53 to 40 computations (24.5% saved)

series25.0ms (0.2%)

Counts
4 → 36
Calls

24 calls:

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

rewrite122.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
893×pow1_binary64
830×add-log-exp_binary64
829×log1p-expm1-u_binary64
829×expm1-log1p-u_binary64
812×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify83.0ms (0.6%)

Algorithm
egg-herbie
Rules
977×fma-def_binary64
502×distribute-rgt-neg-in_binary64
453×fma-neg_binary64
407×distribute-lft-neg-in_binary64
257×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
015392
133392
277392
3178392
4437392
51414392
63101392
75294392
86968392
Stop Event
node limit
Counts
168 → 122
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
Outputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))

eval321.0ms (2.4%)

Compiler

Compiled 14332 to 11234 computations (21.6% saved)

prune78.0ms (0.6%)

Pruning

17 alts after pruning (12 fresh and 5 done)

PrunedKeptTotal
New37011381
Fresh213
Picked101
Done055
Total37317390
Error
3.0b
Counts
390 → 17
Alt Table
Click to see full alt table
StatusErrorProgram
60.8b
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
52.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 -1/2 (*.f64 (/.f64 im (/.f64 re im)) 1)))))
50.7b
(*.f64 1/2 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2))) 3))
13.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
45.9b
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
45.0b
(*.f64 1/2 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 im 2))) 3))
14.3b
(*.f64 1/2 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3))
53.0b
(*.f64 1/2 (pow.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6))) 3))
48.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
54.2b
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im (neg.f64 im)) re)))
53.1b
(*.f64 1/2 (pow.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) 3))
50.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
52.8b
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re))))
42.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
44.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
53.0b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3)))
53.1b
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)) (pow.f64 1 1/3)))
Compiler

Compiled 430 to 366 computations (14.9% saved)

localize11.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 28 to 15 computations (46.4% saved)

series5.0ms (0%)

Counts
1 → 8
Calls

6 calls:

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

rewrite59.0ms (0.4%)

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

Useful iterations: 0 (0.0ms)

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

simplify152.0ms (1.1%)

Algorithm
egg-herbie
Rules
650×associate-/r*_binary64
634×sqr-pow_binary64
449×*-commutative_binary64
439×distribute-lft-out_binary64
408×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
060304
1159304
2439284
31572256
42629256
53622256
65357256
75745256
86164256
96467256
106875256
117519256
Stop Event
node limit
Counts
30 → 36
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 re))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re)))))))
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 1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 1/2 re))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 1/2 re) (sqrt.f64 2)))))
(fma.f64 (sqrt.f64 2) (*.f64 -1/8 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) (*.f64 -1/8 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(fma.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (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) (*.f64 1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))))))
(fma.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (*.f64 -1/8 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 (sqrt.f64 im) (*.f64 1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))) (*.f64 (*.f64 re re) (+.f64 (*.f64 1/16 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (+.f64 (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) (*.f64 -1/8 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (*.f64 1/16 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (+.f64 (*.f64 1/16 (*.f64 re (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) (*.f64 -1/8 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (*.f64 1/16 (pow.f64 re 3))) (+.f64 (sqrt.f64 im) (*.f64 re (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 im))) (*.f64 -1/8 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 re))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1 re))))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))) 1/2)))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 1/2 (*.f64 im (sqrt.f64 (/.f64 1 re))))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 -1/8 (*.f64 (*.f64 im im) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))) 1/2))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 -1/8 (*.f64 im im))) (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 1/2 (*.f64 im (sqrt.f64 (/.f64 1 re)))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 im (+.f64 (*.f64 -1/8 (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 1/2 (sqrt.f64 (/.f64 1 re)))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 im (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 re))) (*.f64 -1/8 (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im im)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (fma.f64 1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 im 3) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 (/.f64 1 re))))))))
(fma.f64 -1/8 (*.f64 (*.f64 im im) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (fma.f64 1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 im 3) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 re) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))) 1/2)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 re) (*.f64 1/2 (*.f64 im (sqrt.f64 (/.f64 1 re)))))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 -1/8 (*.f64 im im))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 (pow.f64 im 3) 1/16)))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 (pow.f64 im 3) 1/16))) (*.f64 im (+.f64 (*.f64 -1/8 (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 1/2 (sqrt.f64 (/.f64 1 re)))))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 1/16 (*.f64 im (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))) (+.f64 (sqrt.f64 re) (*.f64 1/2 (*.f64 im (sqrt.f64 (/.f64 1 re)))))))

localize7.0ms (0.1%)

Compiler

Compiled 17 to 11 computations (35.3% saved)

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(*.f64 im (/.f64 (neg.f64 im) re))
16.5b
(sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
Compiler

Compiled 33 to 9 computations (72.7% saved)

series8.0ms (0.1%)

Counts
2 → 36
Calls

12 calls:

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

rewrite57.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
663×pow1_binary64
615×add-log-exp_binary64
614×log1p-expm1-u_binary64
614×expm1-log1p-u_binary64
600×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify80.0ms (0.6%)

Algorithm
egg-herbie
Rules
977×fma-def_binary64
502×distribute-rgt-neg-in_binary64
453×fma-neg_binary64
407×distribute-lft-neg-in_binary64
257×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
015392
133392
277392
3178392
4437392
51414392
63101392
75294392
86968392
Stop Event
node limit
Counts
81 → 51
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
Outputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))

localize23.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 69 to 36 computations (47.8% saved)

series7.0ms (0.1%)

Counts
4 → 84
Calls

24 calls:

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

rewrite83.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
526×log-prod_binary64
391×exp-prod_binary64
307×pow-unpow_binary64
259×pow-prod-down_binary64
243×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify91.0ms (0.7%)

Algorithm
egg-herbie
Rules
1012×fma-def_binary64
445×distribute-lft-neg-in_binary64
433×distribute-rgt-neg-in_binary64
390×associate-*l/_binary64
360×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
017800
138800
287800
3201800
4512800
51751800
63933800
76343800
Stop Event
node limit
Counts
312 → 193
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -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 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1) (neg.f64 im)))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 -1) (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1) (neg.f64 im)))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 -1) (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1) (neg.f64 im)))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 -1) (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 -1) (neg.f64 im)))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 -1) (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) -1/2) re)
(*.f64 (/.f64 (*.f64 im im) re) -1/2)
(*.f64 (*.f64 im im) (/.f64 -1/2 re))
(*.f64 im (*.f64 im (/.f64 -1/2 re)))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)

localize22.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.3b
(cbrt.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2)))
0.4b
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2))) 3)
Compiler

Compiled 41 to 29 computations (29.3% saved)

series47.0ms (0.4%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
35.0ms
im
@0
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2))) 3)
9.0ms
im
@inf
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2))) 3)
2.0ms
im
@-inf
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2))) 3)
0.0ms
im
@0
(cbrt.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2)))
0.0ms
im
@inf
(cbrt.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2)))

rewrite58.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
606×pow1_binary64
574×add-log-exp_binary64
572×log1p-expm1-u_binary64
572×expm1-log1p-u_binary64
560×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify171.0ms (1.3%)

Algorithm
egg-herbie
Rules
1984×unswap-sqr_binary64
939×sqr-pow_binary64
334×pow-sqr_binary64
319×*-commutative_binary64
277×cube-prod_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
028292
170256
2147256
3313256
41071256
52021256
62108256
72256256
82439256
92622256
102852256
113144256
123477256
133876256
144315256
154779256
164919256
175039256
185111256
195195256
205219256
Stop Event
node limit
Counts
71 → 55
Calls
Call 1
Inputs
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))
Outputs
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 1 (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 -2) (sqrt.f64 im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 1 (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 -2) (sqrt.f64 im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 1 (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 -2) (sqrt.f64 im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 1 (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 -2) (sqrt.f64 im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 1 (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 -2) (sqrt.f64 im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 1 (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 -2) (sqrt.f64 im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 1 (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 -2) (sqrt.f64 im))
(*.f64 (pow.f64 1 1/6) (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 1 (*.f64 (sqrt.f64 -2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 -2) (sqrt.f64 im))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 2)) (*.f64 1 (sqrt.f64 im)))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 -1) (sqrt.f64 2)))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 2)) (*.f64 1 (sqrt.f64 im)))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 -1) (sqrt.f64 2)))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 2)) (*.f64 1 (sqrt.f64 im)))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 -1) (sqrt.f64 2)))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 2)) (*.f64 1 (sqrt.f64 im)))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 -1) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 -2)) (pow.f64 im 1/6))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 -2)) (pow.f64 im 1/6))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 -2)) (pow.f64 im 1/6))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 -2)) (pow.f64 im 1/6))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 -2)) (pow.f64 im 1/6))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 -2)) (pow.f64 im 1/6))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 -2)) (pow.f64 im 1/6))
(*.f64 (sqrt.f64 1) (*.f64 (pow.f64 (sqrt.f64 -2) 1/3) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 -2)) (pow.f64 im 1/6))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))
(*.f64 (pow.f64 (neg.f64 im) 1/6) (cbrt.f64 (sqrt.f64 2)))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))
(*.f64 (pow.f64 (neg.f64 im) 1/6) (cbrt.f64 (sqrt.f64 2)))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))
(*.f64 (pow.f64 (neg.f64 im) 1/6) (cbrt.f64 (sqrt.f64 2)))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3))
(*.f64 (pow.f64 (neg.f64 im) 1/6) (cbrt.f64 (sqrt.f64 2)))

eval96.0ms (0.7%)

Compiler

Compiled 5017 to 3308 computations (34.1% saved)

prune63.0ms (0.5%)

Pruning

18 alts after pruning (9 fresh and 9 done)

PrunedKeptTotal
New3323335
Fresh167
Picked011
Done189
Total33418352
Error
3.0b
Counts
352 → 18
Alt Table
Click to see full alt table
StatusErrorProgram
13.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
60.8b
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
45.9b
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
45.0b
(*.f64 1/2 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 im 2))) 3))
14.3b
(*.f64 1/2 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3))
50.2b
(*.f64 1/2 (cbrt.f64 (pow.f64 (*.f64 im 2) 3/2)))
53.0b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3)))
53.0b
(*.f64 1/2 (pow.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6))) 3))
48.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
54.2b
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im (neg.f64 im)) re)))
53.1b
(*.f64 1/2 (pow.f64 (*.f64 (pow.f64 (*.f64 (sqrt.f64 2) 1) 1/3) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))) 3))
50.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
52.8b
(*.f64 1/2 (sqrt.f64 (/.f64 (neg.f64 im) (/.f64 re im))))
50.7b
(*.f64 1/2 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2))) 3))
52.8b
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re))))
42.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
44.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
53.1b
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)) (pow.f64 1 1/3)))
Compiler

Compiled 399 to 340 computations (14.8% saved)

localize18.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.3b
(cbrt.f64 (sqrt.f64 (*.f64 im 2)))
0.4b
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 im 2))) 3)
Compiler

Compiled 34 to 28 computations (17.6% saved)

series3.0ms (0%)

Counts
2 → 24
Calls

6 calls:

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

rewrite211.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
575×pow1_binary64
543×add-log-exp_binary64
542×log1p-expm1-u_binary64
542×expm1-log1p-u_binary64
529×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify185.0ms (1.4%)

Algorithm
egg-herbie
Rules
1984×unswap-sqr_binary64
939×sqr-pow_binary64
334×pow-sqr_binary64
328×*-commutative_binary64
281×cube-prod_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
027292
170256
2148256
3311256
41052256
52011256
62100256
72248256
82431256
92614256
102844256
113138256
123471256
133868256
144307256
154771256
164911256
175031256
185103256
195187256
205211256
Stop Event
node limit
Counts
71 → 54
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 1 (sqrt.f64 -2)) 1/3))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 1 (sqrt.f64 -2)) 1/3))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 1 (sqrt.f64 -2)) 1/3))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 1 (sqrt.f64 -2)) 1/3))
Outputs
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 1 (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 1 (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 1 (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 1 (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 1 (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 1 (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 1 (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (*.f64 1 (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 1 (sqrt.f64 im)) (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)))
(*.f64 (sqrt.f64 -2) (*.f64 (sqrt.f64 im) (sqrt.f64 -1)))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 1 (sqrt.f64 im)) (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)))
(*.f64 (sqrt.f64 -2) (*.f64 (sqrt.f64 im) (sqrt.f64 -1)))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 1 (sqrt.f64 im)) (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)))
(*.f64 (sqrt.f64 -2) (*.f64 (sqrt.f64 im) (sqrt.f64 -1)))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)) (*.f64 (pow.f64 1 1/6) (sqrt.f64 im)))
(*.f64 (*.f64 1 (sqrt.f64 im)) (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 -1) (sqrt.f64 -2)))
(*.f64 (sqrt.f64 -2) (*.f64 (sqrt.f64 im) (sqrt.f64 -1)))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 im 1/6))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 im 1/6))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 im 1/6))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 im 1/6))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 im 1/6))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 im 1/6))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 im 1/6))
(*.f64 (pow.f64 (sqrt.f64 2) 1/3) (*.f64 (sqrt.f64 1) (pow.f64 im 1/6)))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 im 1/6))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 1 (sqrt.f64 -2)) 1/3))
(*.f64 (pow.f64 (neg.f64 im) 1/6) (cbrt.f64 (sqrt.f64 -2)))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 1 (sqrt.f64 -2)) 1/3))
(*.f64 (pow.f64 (neg.f64 im) 1/6) (cbrt.f64 (sqrt.f64 -2)))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 1 (sqrt.f64 -2)) 1/3))
(*.f64 (pow.f64 (neg.f64 im) 1/6) (cbrt.f64 (sqrt.f64 -2)))
(*.f64 (pow.f64 (*.f64 -1 im) 1/6) (pow.f64 (*.f64 1 (sqrt.f64 -2)) 1/3))
(*.f64 (pow.f64 (neg.f64 im) 1/6) (cbrt.f64 (sqrt.f64 -2)))

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
9.7b
(/.f64 (*.f64 im im) re)
17.2b
(sqrt.f64 (/.f64 (*.f64 im im) re))
Compiler

Compiled 27 to 8 computations (70.4% saved)

series16.0ms (0.1%)

Counts
2 → 36
Calls

12 calls:

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

rewrite56.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
649×pow1_binary64
605×add-log-exp_binary64
605×log1p-expm1-u_binary64
605×expm1-log1p-u_binary64
588×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify140.0ms (1.1%)

Algorithm
egg-herbie
Rules
688×fma-def_binary64
618×fma-neg_binary64
477×associate-*l*_binary64
434×unswap-sqr_binary64
423×associate-*r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
012284
123284
242284
378284
4181284
5564284
62025284
74865284
86506284
97954284
Stop Event
node limit
Counts
103 → 72
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
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 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.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 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.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 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.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 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
9.7b
(/.f64 (*.f64 im (neg.f64 im)) re)
16.5b
(sqrt.f64 (/.f64 (*.f64 im (neg.f64 im)) re))
Compiler

Compiled 33 to 9 computations (72.7% saved)

series6.0ms (0%)

Counts
2 → 36
Calls

12 calls:

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

rewrite59.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
649×pow1_binary64
603×add-log-exp_binary64
602×log1p-expm1-u_binary64
602×expm1-log1p-u_binary64
588×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify133.0ms (1%)

Algorithm
egg-herbie
Rules
977×fma-def_binary64
502×distribute-rgt-neg-in_binary64
453×fma-neg_binary64
407×distribute-lft-neg-in_binary64
257×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
015392
133392
277392
3178392
4437392
51414392
63101392
75294392
86968392
Stop Event
node limit
Counts
103 → 73
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
Outputs
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 -1) im) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (sqrt.f64 -1) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 -1) im) (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 -1))))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 -1))))
(*.f64 (sqrt.f64 -1) (*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(*.f64 -1 (/.f64 (pow.f64 im 2) re))
(neg.f64 (/.f64 (*.f64 im im) re))
(neg.f64 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))

localize51.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))
0.3b
(pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3)
1.9b
(pow.f64 (/.f64 -1 re) 1/6)
31.9b
(pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)
Compiler

Compiled 100 to 72 computations (28% saved)

series133.0ms (1%)

Counts
4 → 44
Calls

18 calls:

TimeVariablePointExpression
43.0ms
re
@0
(pow.f64 (/.f64 -1 re) 1/6)
22.0ms
re
@0
(pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3)
14.0ms
im
@0
(pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)
10.0ms
re
@inf
(pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3)
10.0ms
re
@-inf
(pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3)

rewrite102.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
754×log-prod_binary64
399×pow2_binary64
363×pow-unpow_binary64
270×expm1-udef_binary64
270×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify65.0ms (0.5%)

Algorithm
egg-herbie
Rules
639×fma-def_binary64
503×associate-*l*_binary64
417×associate-*r*_binary64
239×associate-+l-_binary64
229×distribute-rgt-in_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
070812
1184720
2466652
31215556
43744520
Stop Event
node limit
Counts
137 → 107
Calls
Call 1
Inputs
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (log.f64 (/.f64 1 re)))))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 re))))) 3) im))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 re))))) 3) im))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 re))))) 3) im))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 re))))) 3) im))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (log.f64 (/.f64 1 re))))) 3) im))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (log.f64 (/.f64 1 re))))) 3) im))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (log.f64 (/.f64 1 re))))) 3) im))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (log.f64 (/.f64 1 re))))) 3) im))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))) 3) im))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))) 3) im))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))) 3) im))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))) 3) im))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
Outputs
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(*.f64 (pow.f64 1/2 1/6) (pow.f64 (exp.f64 1/3) (log.f64 im)))
(*.f64 (pow.f64 1/2 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(*.f64 (pow.f64 1/2 1/6) (pow.f64 (exp.f64 1/3) (log.f64 im)))
(*.f64 (pow.f64 1/2 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(*.f64 (pow.f64 1/2 1/6) (pow.f64 (exp.f64 1/3) (log.f64 im)))
(*.f64 (pow.f64 1/2 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(*.f64 (pow.f64 1/2 1/6) (pow.f64 (exp.f64 1/3) (log.f64 im)))
(*.f64 (pow.f64 1/2 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(*.f64 (pow.f64 1/2 1/6) (pow.f64 (exp.f64 1/3) (log.f64 im)))
(*.f64 (pow.f64 1/2 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(*.f64 (pow.f64 1/2 1/6) (pow.f64 (exp.f64 1/3) (log.f64 im)))
(*.f64 (pow.f64 1/2 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(*.f64 (pow.f64 1/2 1/6) (pow.f64 (exp.f64 1/3) (log.f64 im)))
(*.f64 (pow.f64 1/2 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(*.f64 (pow.f64 1/2 1/6) (pow.f64 (exp.f64 1/3) (log.f64 im)))
(*.f64 (pow.f64 1/2 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(*.f64 (pow.f64 1/2 1/6) (pow.f64 (exp.f64 1/3) (log.f64 im)))
(*.f64 (pow.f64 1/2 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(*.f64 (pow.f64 1/2 1/6) (pow.f64 (exp.f64 1/3) (log.f64 im)))
(*.f64 (pow.f64 1/2 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(*.f64 (pow.f64 1/2 1/6) (pow.f64 (exp.f64 1/3) (log.f64 im)))
(*.f64 (pow.f64 1/2 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(*.f64 (pow.f64 1/2 1/6) (pow.f64 (exp.f64 1/3) (log.f64 im)))
(*.f64 (pow.f64 1/2 1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (neg.f64 (log.f64 re))))
(pow.f64 (exp.f64 1/6) (log.f64 (/.f64 -1 re)))
(pow.f64 (/.f64 -1 re) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (neg.f64 (log.f64 re))))
(pow.f64 (exp.f64 1/6) (log.f64 (/.f64 -1 re)))
(pow.f64 (/.f64 -1 re) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (neg.f64 (log.f64 re))))
(pow.f64 (exp.f64 1/6) (log.f64 (/.f64 -1 re)))
(pow.f64 (/.f64 -1 re) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (neg.f64 (log.f64 re))))
(pow.f64 (exp.f64 1/6) (log.f64 (/.f64 -1 re)))
(pow.f64 (/.f64 -1 re) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (neg.f64 (log.f64 re))))
(pow.f64 (exp.f64 1/6) (log.f64 (/.f64 -1 re)))
(pow.f64 (/.f64 -1 re) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (neg.f64 (log.f64 re))))
(pow.f64 (exp.f64 1/6) (log.f64 (/.f64 -1 re)))
(pow.f64 (/.f64 -1 re) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (neg.f64 (log.f64 re))))
(pow.f64 (exp.f64 1/6) (log.f64 (/.f64 -1 re)))
(pow.f64 (/.f64 -1 re) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (neg.f64 (log.f64 re))))
(pow.f64 (exp.f64 1/6) (log.f64 (/.f64 -1 re)))
(pow.f64 (/.f64 -1 re) 1/6)
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 re))))) 3) im))
(*.f64 1 (*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (neg.f64 (log.f64 re)) (log.f64 -1/2))) 3)))
(*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (-.f64 (log.f64 -1/2) (log.f64 re))) 3))
(*.f64 im (pow.f64 (*.f64 (pow.f64 re -1/6) (pow.f64 -1/2 1/6)) 3))
(*.f64 im (pow.f64 (pow.f64 (/.f64 -1/2 re) 1/6) 3))
(*.f64 im (pow.f64 (/.f64 -1/2 re) 1/2))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 re))))) 3) im))
(*.f64 1 (*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (neg.f64 (log.f64 re)) (log.f64 -1/2))) 3)))
(*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (-.f64 (log.f64 -1/2) (log.f64 re))) 3))
(*.f64 im (pow.f64 (*.f64 (pow.f64 re -1/6) (pow.f64 -1/2 1/6)) 3))
(*.f64 im (pow.f64 (pow.f64 (/.f64 -1/2 re) 1/6) 3))
(*.f64 im (pow.f64 (/.f64 -1/2 re) 1/2))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 re))))) 3) im))
(*.f64 1 (*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (neg.f64 (log.f64 re)) (log.f64 -1/2))) 3)))
(*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (-.f64 (log.f64 -1/2) (log.f64 re))) 3))
(*.f64 im (pow.f64 (*.f64 (pow.f64 re -1/6) (pow.f64 -1/2 1/6)) 3))
(*.f64 im (pow.f64 (pow.f64 (/.f64 -1/2 re) 1/6) 3))
(*.f64 im (pow.f64 (/.f64 -1/2 re) 1/2))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 re))))) 3) im))
(*.f64 1 (*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (neg.f64 (log.f64 re)) (log.f64 -1/2))) 3)))
(*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (-.f64 (log.f64 -1/2) (log.f64 re))) 3))
(*.f64 im (pow.f64 (*.f64 (pow.f64 re -1/6) (pow.f64 -1/2 1/6)) 3))
(*.f64 im (pow.f64 (pow.f64 (/.f64 -1/2 re) 1/6) 3))
(*.f64 im (pow.f64 (/.f64 -1/2 re) 1/2))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (log.f64 (/.f64 1 re))))) 3) im))
(*.f64 1 (*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (neg.f64 (log.f64 re)) (log.f64 -1/2))) 3)))
(*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (-.f64 (log.f64 -1/2) (log.f64 re))) 3))
(*.f64 im (pow.f64 (*.f64 (pow.f64 re -1/6) (pow.f64 -1/2 1/6)) 3))
(*.f64 im (pow.f64 (pow.f64 (/.f64 -1/2 re) 1/6) 3))
(*.f64 im (pow.f64 (/.f64 -1/2 re) 1/2))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (log.f64 (/.f64 1 re))))) 3) im))
(*.f64 1 (*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (neg.f64 (log.f64 re)) (log.f64 -1/2))) 3)))
(*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (-.f64 (log.f64 -1/2) (log.f64 re))) 3))
(*.f64 im (pow.f64 (*.f64 (pow.f64 re -1/6) (pow.f64 -1/2 1/6)) 3))
(*.f64 im (pow.f64 (pow.f64 (/.f64 -1/2 re) 1/6) 3))
(*.f64 im (pow.f64 (/.f64 -1/2 re) 1/2))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (log.f64 (/.f64 1 re))))) 3) im))
(*.f64 1 (*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (neg.f64 (log.f64 re)) (log.f64 -1/2))) 3)))
(*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (-.f64 (log.f64 -1/2) (log.f64 re))) 3))
(*.f64 im (pow.f64 (*.f64 (pow.f64 re -1/6) (pow.f64 -1/2 1/6)) 3))
(*.f64 im (pow.f64 (pow.f64 (/.f64 -1/2 re) 1/6) 3))
(*.f64 im (pow.f64 (/.f64 -1/2 re) 1/2))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1/2) (log.f64 (/.f64 1 re))))) 3) im))
(*.f64 1 (*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (neg.f64 (log.f64 re)) (log.f64 -1/2))) 3)))
(*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (-.f64 (log.f64 -1/2) (log.f64 re))) 3))
(*.f64 im (pow.f64 (*.f64 (pow.f64 re -1/6) (pow.f64 -1/2 1/6)) 3))
(*.f64 im (pow.f64 (pow.f64 (/.f64 -1/2 re) 1/6) 3))
(*.f64 im (pow.f64 (/.f64 -1/2 re) 1/2))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))) 3) im))
(*.f64 1 (*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (neg.f64 (log.f64 re)) (log.f64 -1/2))) 3)))
(*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (-.f64 (log.f64 -1/2) (log.f64 re))) 3))
(*.f64 im (pow.f64 (*.f64 (pow.f64 re -1/6) (pow.f64 -1/2 1/6)) 3))
(*.f64 im (pow.f64 (pow.f64 (/.f64 -1/2 re) 1/6) 3))
(*.f64 im (pow.f64 (/.f64 -1/2 re) 1/2))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))) 3) im))
(*.f64 1 (*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (neg.f64 (log.f64 re)) (log.f64 -1/2))) 3)))
(*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (-.f64 (log.f64 -1/2) (log.f64 re))) 3))
(*.f64 im (pow.f64 (*.f64 (pow.f64 re -1/6) (pow.f64 -1/2 1/6)) 3))
(*.f64 im (pow.f64 (pow.f64 (/.f64 -1/2 re) 1/6) 3))
(*.f64 im (pow.f64 (/.f64 -1/2 re) 1/2))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))) 3) im))
(*.f64 1 (*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (neg.f64 (log.f64 re)) (log.f64 -1/2))) 3)))
(*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (-.f64 (log.f64 -1/2) (log.f64 re))) 3))
(*.f64 im (pow.f64 (*.f64 (pow.f64 re -1/6) (pow.f64 -1/2 1/6)) 3))
(*.f64 im (pow.f64 (pow.f64 (/.f64 -1/2 re) 1/6) 3))
(*.f64 im (pow.f64 (/.f64 -1/2 re) 1/2))
(*.f64 (pow.f64 1 1/3) (*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))) 3) im))
(*.f64 1 (*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (neg.f64 (log.f64 re)) (log.f64 -1/2))) 3)))
(*.f64 im (pow.f64 (pow.f64 (exp.f64 1/6) (-.f64 (log.f64 -1/2) (log.f64 re))) 3))
(*.f64 im (pow.f64 (*.f64 (pow.f64 re -1/6) (pow.f64 -1/2 1/6)) 3))
(*.f64 im (pow.f64 (pow.f64 (/.f64 -1/2 re) 1/6) 3))
(*.f64 im (pow.f64 (/.f64 -1/2 re) 1/2))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1/2) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1/2) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1/2) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1/2) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1/2) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1/2) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1/2) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 -1/2) (*.f64 im (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 -1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2)))))
(*.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (sqrt.f64 2) (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 -1/2) (*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 -1/2) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 2)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2)))))
(*.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (sqrt.f64 2) (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 -1/2) (*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 -1/2) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 2)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2)))))
(*.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (sqrt.f64 2) (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 -1/2) (*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 -1/2) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 2)))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1/2) im)) (sqrt.f64 (/.f64 1 re))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 -1/2))) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 (sqrt.f64 -1/2) (*.f64 im (sqrt.f64 2)))))
(*.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (sqrt.f64 2) (neg.f64 (sqrt.f64 (/.f64 1 re)))))
(*.f64 (sqrt.f64 -1/2) (*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 -1/2) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im (neg.f64 (sqrt.f64 2)))))

localize88.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))
0.3b
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)
1.9b
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))
29.9b
(log.f64 (*.f64 1/2 (pow.f64 im 2)))
Compiler

Compiled 158 to 137 computations (13.3% saved)

series46.0ms (0.3%)

Counts
4 → 72
Calls

21 calls:

TimeVariablePointExpression
14.0ms
im
@0
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))
13.0ms
re
@0
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))
8.0ms
re
@inf
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)
1.0ms
im
@inf
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)
1.0ms
im
@0
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2)))))) 3)

rewrite95.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
714×log-prod_binary64
595×prod-diff_binary64
297×fma-def_binary64
283×expm1-udef_binary64
283×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify91.0ms (0.7%)

Algorithm
egg-herbie
Rules
654×exp-sum_binary64
365×fma-def_binary64
361×associate-+l+_binary64
343×associate-*l*_binary64
321×associate-+r+_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0621644
11801412
24151412
313591132
45197972
Stop Event
node limit
Counts
223 → 175
Calls
Call 1
Inputs
(+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))
(+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))
(+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))
(+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re)))))) 3)
(*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re)))))) 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))))
(*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re)))))) 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))))
(*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re)))))) 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))))
(*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re)))))) 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))
(+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))
(+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))
(+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))
(+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))
Outputs
(+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))
(fma.f64 2 (log.f64 im) (log.f64 1/2))
(log.f64 (*.f64 im (*.f64 im 1/2)))
(log.f64 (*.f64 1/2 (*.f64 im im)))
(+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))
(fma.f64 2 (log.f64 im) (log.f64 1/2))
(log.f64 (*.f64 im (*.f64 im 1/2)))
(log.f64 (*.f64 1/2 (*.f64 im im)))
(+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))
(fma.f64 2 (log.f64 im) (log.f64 1/2))
(log.f64 (*.f64 im (*.f64 im 1/2)))
(log.f64 (*.f64 1/2 (*.f64 im im)))
(+.f64 (*.f64 2 (log.f64 im)) (log.f64 1/2))
(fma.f64 2 (log.f64 im) (log.f64 1/2))
(log.f64 (*.f64 im (*.f64 im 1/2)))
(log.f64 (*.f64 1/2 (*.f64 im im)))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))
(fma.f64 2 (log.f64 im) (log.f64 1/2))
(log.f64 (*.f64 im (*.f64 im 1/2)))
(log.f64 (*.f64 1/2 (*.f64 im im)))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))
(fma.f64 2 (log.f64 im) (log.f64 1/2))
(log.f64 (*.f64 im (*.f64 im 1/2)))
(log.f64 (*.f64 1/2 (*.f64 im im)))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))
(fma.f64 2 (log.f64 im) (log.f64 1/2))
(log.f64 (*.f64 im (*.f64 im 1/2)))
(log.f64 (*.f64 1/2 (*.f64 im im)))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 1 im))))
(fma.f64 2 (log.f64 im) (log.f64 1/2))
(log.f64 (*.f64 im (*.f64 im 1/2)))
(log.f64 (*.f64 1/2 (*.f64 im im)))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))
(fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 1/2))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))
(fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 1/2))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))
(fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 1/2))
(+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))
(fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 1/2))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re)))))
(*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6))
(*.f64 (cbrt.f64 im) (pow.f64 (/.f64 -1/2 re) 1/6))
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re)))))) 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))))
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re)))))) 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))))
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re)))))) 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))))
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(*.f64 (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re)))))) 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (+.f64 (log.f64 (/.f64 1 re)) (log.f64 (*.f64 1/2 (pow.f64 im 2))))))))
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re)))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))) 3)
(pow.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))) 3)
(pow.f64 (*.f64 (cbrt.f64 im) (pow.f64 (*.f64 1/2 (/.f64 -1 re)) 1/6)) 3)
(pow.f64 (*.f64 im (*.f64 im (/.f64 -1/2 re))) 1/2)
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (pow.f64 im 2))) (log.f64 (/.f64 1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (*.f64 2 (log.f64 im)) (+.f64 (log.f64 1/2) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 -1) (+.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (log.f64 re))))
(+.f64 (log.f64 (*.f64 im (*.f64 im 1/2))) (log.f64 (/.f64 -1 re)))
(+.f64 (log.f64 1/2) (fma.f64 2 (log.f64 im) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 -1 re))))
(+.f64 (log.f64 1/2) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1 re))))

eval218.0ms (1.6%)

Compiler

Compiled 9984 to 7558 computations (24.3% saved)

prune89.0ms (0.7%)

Pruning

21 alts after pruning (9 fresh and 12 done)

PrunedKeptTotal
New4738481
Fresh314
Picked101
Done11213
Total47821499
Error
0.3b
Counts
499 → 21
Alt Table
Click to see full alt table
StatusErrorProgram
55.2b
(*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re))))
50.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
13.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))
60.8b
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
45.9b
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
53.0b
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (exp.f64 (*.f64 1/6 (log.f64 (/.f64 -1 re)))) (exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 1/6))) 3)) (pow.f64 1 1/3)))
53.0b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 -1 re))) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3)))
52.8b
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re))))
42.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
56.5b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))))) 3)))
56.5b
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (+.f64 (log.f64 1/2) (*.f64 -2 (log.f64 (/.f64 -1 im))))))) 3)) (pow.f64 1 1/3)))
53.0b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3)))
54.2b
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im (neg.f64 im)) re)))
62.8b
(*.f64 1/2 (/.f64 im (neg.f64 (sqrt.f64 re))))
52.8b
(*.f64 1/2 (sqrt.f64 (/.f64 (neg.f64 im) (/.f64 re im))))
53.1b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (exp.f64 (*.f64 1/6 (log.f64 (/.f64 -1 re)))) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3)))
50.7b
(*.f64 1/2 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (neg.f64 im) 2))) 3))
44.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
14.3b
(*.f64 1/2 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 3))
52.9b
(*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) 1/2)))) 3)))
48.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
Compiler

Compiled 322 to 273 computations (15.2% saved)

regimes306.0ms (2.3%)

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

8 calls:

64.0ms
re
54.0ms
im
36.0ms
(*.f64 im im)
34.0ms
(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
31.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Results
ErrorSegmentsBranch
7.6b4re
12.3b3im
9.2b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
9.2b2(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
9.2b3(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
9.2b3(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
12.1b3(*.f64 im im)
12.1b3(*.f64 im im)
Compiler

Compiled 511 to 391 computations (23.5% saved)

bsearch180.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
47.0ms
-1.6992380219034422e-38
-2.0087041583850468e-56
60.0ms
-8.591521564765006e+29
-3.0112397204726454e+25
73.0ms
-4.317793734724897e+101
-1.6188421724699319e+96
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes287.0ms (2.2%)

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

8 calls:

131.0ms
re
25.0ms
(*.f64 im im)
24.0ms
(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
23.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
21.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
7.7b4re
13.3b1im
9.2b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
9.2b2(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
9.2b3(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
9.2b3(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
12.2b3(*.f64 im im)
12.2b3(*.f64 im im)
Compiler

Compiled 317 to 221 computations (30.3% saved)

bsearch296.0ms (2.2%)

Algorithm
binary-search
Steps
TimeLeftRight
145.0ms
-1.6992380219034422e-38
-2.0087041583850468e-56
79.0ms
-8.591521564765006e+29
-3.0112397204726454e+25
72.0ms
-4.317793734724897e+101
-1.6188421724699319e+96
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes440.0ms (3.3%)

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

8 calls:

169.0ms
(*.f64 im im)
61.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
47.0ms
(*.f64 im im)
45.0ms
re
45.0ms
(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
ErrorSegmentsBranch
7.7b4re
13.3b1im
9.2b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
9.2b2(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
9.2b3(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
9.2b3(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
12.2b3(*.f64 im im)
12.2b3(*.f64 im im)
Compiler

Compiled 297 to 205 computations (31% saved)

bsearch255.0ms (1.9%)

Algorithm
binary-search
Steps
TimeLeftRight
83.0ms
-1.6992380219034422e-38
-2.0087041583850468e-56
98.0ms
-8.591521564765006e+29
-3.0112397204726454e+25
73.0ms
-4.317793734724897e+101
-1.6188421724699319e+96
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes577.0ms (4.3%)

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

8 calls:

159.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
152.0ms
im
62.0ms
(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
58.0ms
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
57.0ms
(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
Results
ErrorSegmentsBranch
9.4b2re
13.3b1im
9.2b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
9.2b2(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
9.2b3(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
9.2b3(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
13.3b1(*.f64 im im)
13.3b1(*.f64 im im)
Compiler

Compiled 277 to 189 computations (31.8% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
8.248023454238067e-298
0.0ms
-3.2417409647920724e-301
0.0
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes549.0ms (4.1%)

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

4 calls:

176.0ms
re
163.0ms
(*.f64 im im)
103.0ms
(*.f64 im im)
99.0ms
im
Results
ErrorSegmentsBranch
23.4b3re
23.6b7im
36.2b7(*.f64 im im)
36.2b7(*.f64 im im)
Compiler

Compiled 150 to 101 computations (32.7% saved)

bsearch76.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
28.0ms
1.774028530533559e-38
1.9372298031295404e-38
48.0ms
-3.4753067000748696e-58
-5.380513839019052e-87
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes177.0ms (1.3%)

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

4 calls:

72.0ms
im
53.0ms
(*.f64 im im)
27.0ms
re
22.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
24.9b3re
23.6b7im
37.3b4(*.f64 im im)
37.3b4(*.f64 im im)
Compiler

Compiled 89 to 60 computations (32.6% saved)

bsearch498.0ms (3.8%)

Algorithm
binary-search
Steps
TimeLeftRight
79.0ms
2.4266711991997106e-196
4.974140148710496e-196
70.0ms
1.511204576013951e-268
6.927455012302507e-258
118.0ms
2.7929388547969235e-305
1.9574375314633678e-292
82.0ms
-3.351982922660714e-37
-1.554607263627544e-39
81.0ms
-4.4609744313465935e+22
-4135781824461223400.0
67.0ms
-1.44300434402997e+82
-7.20359300498583e+75
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes293.0ms (2.2%)

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

4 calls:

163.0ms
(*.f64 im im)
75.0ms
im
31.0ms
re
20.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
24.9b3re
23.7b7im
37.3b4(*.f64 im im)
37.3b4(*.f64 im im)
Compiler

Compiled 81 to 54 computations (33.3% saved)

bsearch667.0ms (5%)

Algorithm
binary-search
Steps
TimeLeftRight
83.0ms
2.4266711991997106e-196
4.974140148710496e-196
98.0ms
1.511204576013951e-268
6.927455012302507e-258
165.0ms
2.7929388547969235e-305
1.9574375314633678e-292
111.0ms
-3.351982922660714e-37
-1.554607263627544e-39
37.0ms
-4.4609744313465935e+22
-4135781824461223400.0
173.0ms
-1.44300434402997e+82
-7.20359300498583e+75
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes315.0ms (2.4%)

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

4 calls:

105.0ms
im
100.0ms
re
67.0ms
(*.f64 im im)
38.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
25.2b3re
24.2b7im
38.4b4(*.f64 im im)
38.4b4(*.f64 im im)
Compiler

Compiled 73 to 48 computations (34.2% saved)

bsearch958.0ms (7.2%)

Algorithm
binary-search
Steps
TimeLeftRight
88.0ms
3.3460103925569644e-189
2.1959243794079435e-188
225.0ms
1.511204576013951e-268
6.927455012302507e-258
283.0ms
2.7929388547969235e-305
1.9574375314633678e-292
82.0ms
-3.351982922660714e-37
-1.554607263627544e-39
212.0ms
-4.4609744313465935e+22
-4135781824461223400.0
66.0ms
-1.44300434402997e+82
-7.20359300498583e+75
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes169.0ms (1.3%)

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

2 calls:

151.0ms
re
17.0ms
im
Results
ErrorSegmentsBranch
25.2b3re
32.4b4im
Compiler

Compiled 40 to 29 computations (27.5% saved)

bsearch71.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
24.0ms
2.993897023552852e-140
7.820071534534256e-135
46.0ms
-5.380513839019052e-87
-3.663463543340055e-90
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes93.0ms (0.7%)

Accuracy

Total -30.9b remaining (-96.7%)

Threshold costs -30.9b (-96.7%)

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

2 calls:

81.0ms
im
10.0ms
re
Results
ErrorSegmentsBranch
31.9b2re
33.7b2im
Compiler

Compiled 26 to 20 computations (23.1% saved)

bsearch27.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
26.0ms
2.993897023552852e-140
7.820071534534256e-135
Compiler

Compiled 22 to 16 computations (27.3% saved)

simplify42.0ms (0.3%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
0130855
1170847
2189847
3203847
4208847
5209847
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 re -431779373472489717289679855672332270298785864252262339395735612502415497686819451410789916515338551296) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 -1 re))) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) (if (<=.f64 re -859152156476500581165796687872) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 re -6510186728591997/383123885216472214589586756787577295904684780545900544) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) 1/2)))) 3))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(if (<=.f64 re -431779373472489717289679855672332270298785864252262339395735612502415497686819451410789916515338551296) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 -1 re))) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) (if (<=.f64 re -859152156476500581165796687872) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 re -6510186728591997/383123885216472214589586756787577295904684780545900544) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(if (<=.f64 re -431779373472489717289679855672332270298785864252262339395735612502415497686819451410789916515338551296) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) (if (<=.f64 re -859152156476500581165796687872) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 re -6510186728591997/383123885216472214589586756787577295904684780545900544) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(if (<=.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) -4825645764048353/24128228820241763395368498172630942708201009006994023127186460259846489377974909173483894312553062974832901700057603348659254161999916252716423678391067804088773420366831584139402736156236316721587153396424382337160349784305655085875761908966202683012582070411724897569696118189719975296519556940632582457459891765248) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 0) (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(if (<=.f64 re -4912268353785549/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (sqrt.f64 (/.f64 (neg.f64 im) (/.f64 re im)))) (if (<=.f64 re 6796727031028861/383123885216472214589586756787577295904684780545900544) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re)))))
(if (<=.f64 im -14430043440299699854131872368500432246209558077397933377691679623242048489822093312) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 im -44609744313465935233024) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im -4013202251590745/11972621413014756705924586149611790497021399392059392) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 im 2760239831838071/98829225247710262867429368515096341332791332892647518728955741224331220492185227974590031104217345944915565363435943316108305047551656971126471386689813725547615929822542168634993607295943953291620980311754270053008792716515963231747120779125566189619536160406425180445475300105093018814544105228831057745755716670455808) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im 5617966891754361/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (if (<=.f64 im 5105848118465537/21040543606193494028963959531520514662201359211292695437993123612274928617188323288454666145110353804907931875424712870852077729000735215452511259082607523399820894684513778392766655031537290869085173006943125504) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))))))
(if (<=.f64 im -14430043440299699854131872368500432246209558077397933377691679623242048489822093312) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im -44609744313465935233024) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im -4013202251590745/11972621413014756705924586149611790497021399392059392) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im 2760239831838071/98829225247710262867429368515096341332791332892647518728955741224331220492185227974590031104217345944915565363435943316108305047551656971126471386689813725547615929822542168634993607295943953291620980311754270053008792716515963231747120779125566189619536160406425180445475300105093018814544105228831057745755716670455808) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im 5617966891754361/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (if (<=.f64 im 5105848118465537/21040543606193494028963959531520514662201359211292695437993123612274928617188323288454666145110353804907931875424712870852077729000735215452511259082607523399820894684513778392766655031537290869085173006943125504) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))))))
(if (<=.f64 im -14430043440299699854131872368500432246209558077397933377691679623242048489822093312) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im -44609744313465935233024) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im -4013202251590745/11972621413014756705924586149611790497021399392059392) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im 2760239831838071/98829225247710262867429368515096341332791332892647518728955741224331220492185227974590031104217345944915565363435943316108305047551656971126471386689813725547615929822542168634993607295943953291620980311754270053008792716515963231747120779125566189619536160406425180445475300105093018814544105228831057745755716670455808) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im 5617966891754361/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (if (<=.f64 im 2098139452081067/627057063764139831929324851379409869378845668175598843037877190478889006888518431438644711527536922839520331484815861906173161536477065546885468336421475511783984145060592245840032548652210559519683510272) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im)))))))))
(if (<=.f64 re -6025488790578917/1119872371088902105278721140284222139060822748617324767449994550481895935590080472690438746635803557888) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (if (<=.f64 re 6422655400611755/214524926879081553593184399971293538039669853129478294043576983099548224481176751628829988770670454843040509730983776813660062124991145119142938384097345536) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re)))))
(if (<=.f64 re 6422655400611755/214524926879081553593184399971293538039669853129478294043576983099548224481176751628829988770670454843040509730983776813660062124991145119142938384097345536) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))))
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
Outputs
(if (<=.f64 re -431779373472489717289679855672332270298785864252262339395735612502415497686819451410789916515338551296) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 -1 re))) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) (if (<=.f64 re -859152156476500581165796687872) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 re -6510186728591997/383123885216472214589586756787577295904684780545900544) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) 1/2)))) 3))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(if (<=.f64 re -431779373472489717289679855672332270298785864252262339395735612502415497686819451410789916515338551296) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 -1 re))) (pow.f64 (*.f64 1/2 (*.f64 im im)) 1/6)) 3))) (if (<=.f64 re -859152156476500581165796687872) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 re -6510186728591997/383123885216472214589586756787577295904684780545900544) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (sqrt.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))))) 3))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(if (<=.f64 re -431779373472489717289679855672332270298785864252262339395735612502415497686819451410789916515338551296) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 -1 re))) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) (if (<=.f64 re -859152156476500581165796687872) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 re -6510186728591997/383123885216472214589586756787577295904684780545900544) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(if (<=.f64 re -431779373472489717289679855672332270298785864252262339395735612502415497686819451410789916515338551296) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 -1 re))) (pow.f64 (*.f64 1/2 (*.f64 im im)) 1/6)) 3))) (if (<=.f64 re -859152156476500581165796687872) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 re -6510186728591997/383123885216472214589586756787577295904684780545900544) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (*.f64 1/2 (*.f64 im im)) 1/6) (pow.f64 (/.f64 -1 re) 1/6)) 3))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(if (<=.f64 re -431779373472489717289679855672332270298785864252262339395735612502415497686819451410789916515338551296) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) (if (<=.f64 re -859152156476500581165796687872) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 re -6510186728591997/383123885216472214589586756787577295904684780545900544) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 (*.f64 im im) 1/2) 1/6)) 3))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(if (<=.f64 re -431779373472489717289679855672332270298785864252262339395735612502415497686819451410789916515338551296) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (*.f64 1/2 (*.f64 im im)) 1/6) (pow.f64 (/.f64 -1 re) 1/6)) 3))) (if (<=.f64 re -859152156476500581165796687872) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 re -6510186728591997/383123885216472214589586756787577295904684780545900544) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (pow.f64 (*.f64 1/2 (*.f64 im im)) 1/6) (pow.f64 (/.f64 -1 re) 1/6)) 3))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))))))
(if (<=.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) -4825645764048353/24128228820241763395368498172630942708201009006994023127186460259846489377974909173483894312553062974832901700057603348659254161999916252716423678391067804088773420366831584139402736156236316721587153396424382337160349784305655085875761908966202683012582070411724897569696118189719975296519556940632582457459891765248) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 0) (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(if (<=.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re)))) -4825645764048353/24128228820241763395368498172630942708201009006994023127186460259846489377974909173483894312553062974832901700057603348659254161999916252716423678391067804088773420366831584139402736156236316721587153396424382337160349784305655085875761908966202683012582070411724897569696118189719975296519556940632582457459891765248) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im))))) (if (<=.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re)))) 0) (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 (neg.f64 im) re)))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re (hypot.f64 re im)))))))
(if (<=.f64 re -4912268353785549/14134776518227074636666380005943348126619871175004951664972849610340958208) (*.f64 1/2 (sqrt.f64 (/.f64 (neg.f64 im) (/.f64 re im)))) (if (<=.f64 re 6796727031028861/383123885216472214589586756787577295904684780545900544) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re)))))
(if (<=.f64 im -14430043440299699854131872368500432246209558077397933377691679623242048489822093312) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 im -44609744313465935233024) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im -4013202251590745/11972621413014756705924586149611790497021399392059392) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im)))) (if (<=.f64 im 2760239831838071/98829225247710262867429368515096341332791332892647518728955741224331220492185227974590031104217345944915565363435943316108305047551656971126471386689813725547615929822542168634993607295943953291620980311754270053008792716515963231747120779125566189619536160406425180445475300105093018814544105228831057745755716670455808) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im 5617966891754361/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (if (<=.f64 im 5105848118465537/21040543606193494028963959531520514662201359211292695437993123612274928617188323288454666145110353804907931875424712870852077729000735215452511259082607523399820894684513778392766655031537290869085173006943125504) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))))))
(if (<=.f64 im -14430043440299699854131872368500432246209558077397933377691679623242048489822093312) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im -44609744313465935233024) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im -4013202251590745/11972621413014756705924586149611790497021399392059392) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im 2760239831838071/98829225247710262867429368515096341332791332892647518728955741224331220492185227974590031104217345944915565363435943316108305047551656971126471386689813725547615929822542168634993607295943953291620980311754270053008792716515963231747120779125566189619536160406425180445475300105093018814544105228831057745755716670455808) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im 5617966891754361/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (if (<=.f64 im 5105848118465537/21040543606193494028963959531520514662201359211292695437993123612274928617188323288454666145110353804907931875424712870852077729000735215452511259082607523399820894684513778392766655031537290869085173006943125504) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))))))
(if (<=.f64 im -14430043440299699854131872368500432246209558077397933377691679623242048489822093312) (*.f64 1/2 (sqrt.f64 (*.f64 im -2))) (if (<=.f64 im -44609744313465935233024) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im -4013202251590745/11972621413014756705924586149611790497021399392059392) (*.f64 1/2 (sqrt.f64 (*.f64 im -2))) (if (<=.f64 im 2760239831838071/98829225247710262867429368515096341332791332892647518728955741224331220492185227974590031104217345944915565363435943316108305047551656971126471386689813725547615929822542168634993607295943953291620980311754270053008792716515963231747120779125566189619536160406425180445475300105093018814544105228831057745755716670455808) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im 5617966891754361/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (if (<=.f64 im 5105848118465537/21040543606193494028963959531520514662201359211292695437993123612274928617188323288454666145110353804907931875424712870852077729000735215452511259082607523399820894684513778392766655031537290869085173006943125504) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))))))))
(if (<=.f64 im -14430043440299699854131872368500432246209558077397933377691679623242048489822093312) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im -44609744313465935233024) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im -4013202251590745/11972621413014756705924586149611790497021399392059392) (*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im)))) (if (<=.f64 im 2760239831838071/98829225247710262867429368515096341332791332892647518728955741224331220492185227974590031104217345944915565363435943316108305047551656971126471386689813725547615929822542168634993607295943953291620980311754270053008792716515963231747120779125566189619536160406425180445475300105093018814544105228831057745755716670455808) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im 5617966891754361/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (if (<=.f64 im 2098139452081067/627057063764139831929324851379409869378845668175598843037877190478889006888518431438644711527536922839520331484815861906173161536477065546885468336421475511783984145060592245840032548652210559519683510272) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im)))))))))
(if (<=.f64 im -14430043440299699854131872368500432246209558077397933377691679623242048489822093312) (*.f64 1/2 (sqrt.f64 (*.f64 im -2))) (if (<=.f64 im -44609744313465935233024) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im -4013202251590745/11972621413014756705924586149611790497021399392059392) (*.f64 1/2 (sqrt.f64 (*.f64 im -2))) (if (<=.f64 im 2760239831838071/98829225247710262867429368515096341332791332892647518728955741224331220492185227974590031104217345944915565363435943316108305047551656971126471386689813725547615929822542168634993607295943953291620980311754270053008792716515963231747120779125566189619536160406425180445475300105093018814544105228831057745755716670455808) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (if (<=.f64 im 5617966891754361/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (if (<=.f64 im 2098139452081067/627057063764139831929324851379409869378845668175598843037877190478889006888518431438644711527536922839520331484815861906173161536477065546885468336421475511783984145060592245840032548652210559519683510272) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im)))))))))
(if (<=.f64 re -6025488790578917/1119872371088902105278721140284222139060822748617324767449994550481895935590080472690438746635803557888) (*.f64 1/2 (/.f64 im (sqrt.f64 (neg.f64 re)))) (if (<=.f64 re 6422655400611755/214524926879081553593184399971293538039669853129478294043576983099548224481176751628829988770670454843040509730983776813660062124991145119142938384097345536) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re)))))
(if (<=.f64 re 6422655400611755/214524926879081553593184399971293538039669853129478294043576983099548224481176751628829988770670454843040509730983776813660062124991145119142938384097345536) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 2 (sqrt.f64 re))))
(*.f64 1/2 (*.f64 2 (sqrt.f64 re)))
Compiler

Compiled 582 to 431 computations (25.9% saved)

soundness347.0ms (2.6%)

Algorithm
egg-herbie
Rules
856×fma-def_binary64
856×fma-def_binary64
363×associate-+r+_binary64
363×associate-+r+_binary64
333×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01315
12515
23415
33615
06676742
124175771
269975316
01315
12515
23415
33615
01315
12515
23415
33615
06676742
124175771
269975316
Stop Event
node limit
saturated
saturated
node limit
saturated
Compiler

Compiled 542 to 463 computations (14.6% saved)

end408.0ms (3.1%)

Compiler

Compiled 562 to 384 computations (31.7% saved)

Profiling

Loading profile data...