Details

Time bar (total: 6.3s)

analyze163.0ms (2.6%)

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

Compiled 20 to 14 computations (30% saved)

sample1.6s (25.8%)

Results
780.0ms6396×body256valid
302.0ms670×body2048valid
280.0ms502×body4096valid
176.0ms443×body1024valid
76.0ms245×body512valid
Bogosity

preprocess46.0ms (0.7%)

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

Useful iterations: 0 (0.0ms)

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

Compiled 19 to 14 computations (26.3% saved)

simplify31.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

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

eval1.0ms (0%)

Compiler

Compiled 27 to 19 computations (29.6% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 12 to 9 computations (25% saved)

localize11.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(-.f64 (hypot.f64 re im) re)
Compiler

Compiled 39 to 16 computations (59% saved)

series4.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

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

rewrite39.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
622×pow1_binary64
578×add-log-exp_binary64
578×log1p-expm1-u_binary64
578×expm1-log1p-u_binary64
565×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify55.0ms (0.9%)

Algorithm
egg-herbie
Rules
696×fma-def_binary64
623×fma-neg_binary64
617×times-frac_binary64
365×associate-/r*_binary64
355×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0170994
1487940
21662933
37187933
Stop Event
node limit
Counts
59 → 98
Calls
Call 1
Inputs
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -2 re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(*.f64 -1 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(+.f64 (hypot.f64 re im) (neg.f64 re))
(+.f64 (hypot.f64 re im) (*.f64 (neg.f64 re) 1))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re))
(+.f64 (neg.f64 re) (hypot.f64 re im))
(*.f64 (-.f64 (hypot.f64 re im) re) 1)
(*.f64 1 (-.f64 (hypot.f64 re im) re))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(*.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 1 (/.f64 (+.f64 re (hypot.f64 re im)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (neg.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (neg.f64 re) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (-.f64 (*.f64 (neg.f64 re) (neg.f64 re)) (*.f64 (hypot.f64 re im) (neg.f64 re)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (hypot.f64 re im) (neg.f64 re)))
(pow.f64 (-.f64 (hypot.f64 re im) re) 1)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/3)
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)
(pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 2)
(sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2))
(log.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))
(cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3))
(expm1.f64 (log1p.f64 (-.f64 (hypot.f64 re im) re)))
(log1p.f64 (expm1.f64 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re)))
(fma.f64 1 (hypot.f64 re im) (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)) (neg.f64 re))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))
Outputs
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(-.f64 (fma.f64 1/2 (/.f64 re (/.f64 im re)) im) re)
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 re im) re) im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(fma.f64 -1 re (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)))
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) im)) re)
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) im)) re)
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (/.f64 (pow.f64 im 4) (/.f64 (pow.f64 re 3) -1/8)))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 (*.f64 im im) (/.f64 re 1/2)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 -1/2 (/.f64 (pow.f64 re 7) (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)))))))
(fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 (/.f64 -1/2 (pow.f64 re 7)) (*.f64 (pow.f64 im 8) 5/64)))))
(*.f64 -2 re)
(*.f64 re -2)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 re -2 (/.f64 (*.f64 (*.f64 -1/2 im) im) re))
(fma.f64 re -2 (*.f64 (*.f64 (/.f64 im re) im) -1/2))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re)))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2)))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 re -2 (/.f64 (*.f64 (*.f64 -1/2 im) im) re)))
(fma.f64 re -2 (fma.f64 (*.f64 (/.f64 im re) im) -1/2 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) -1/16 (fma.f64 re -2 (/.f64 (*.f64 (*.f64 -1/2 im) im) re))))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 re -2 (fma.f64 (*.f64 (/.f64 im re) im) -1/2 (*.f64 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) -1/16))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (/.f64 (pow.f64 im 4) (/.f64 (pow.f64 re 3) -1/8)))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 (*.f64 im im) (/.f64 re 1/2)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 re (pow.f64 im 8))) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 re (pow.f64 im 8))) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 im 8) re) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6))))))
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(-.f64 (fma.f64 1/2 (/.f64 re (/.f64 im re)) im) re)
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 re im) re) im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(fma.f64 -1 re (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)))
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) im)) re)
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) im)) re)
(*.f64 -1 im)
(neg.f64 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(fma.f64 -1 re (neg.f64 im))
(-.f64 (neg.f64 im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 -1 re (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im)))
(-.f64 (fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im)) re)
(-.f64 (/.f64 (*.f64 re -1/2) (/.f64 im re)) (+.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(fma.f64 -1 re (fma.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im))))
(-.f64 (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im))) re)
(-.f64 (fma.f64 (*.f64 (/.f64 re im) re) -1/2 (*.f64 (/.f64 1/8 (pow.f64 im 3)) (pow.f64 re 4))) (+.f64 im re))
(-.f64 (fma.f64 (*.f64 (/.f64 re im) re) -1/2 (fma.f64 (/.f64 1/8 (pow.f64 im 3)) (pow.f64 re 4) (neg.f64 im))) re)
(+.f64 (hypot.f64 re im) (neg.f64 re))
(-.f64 (hypot.f64 re im) re)
(+.f64 (hypot.f64 re im) (*.f64 (neg.f64 re) 1))
(-.f64 (hypot.f64 re im) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (hypot.f64 re im) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (hypot.f64 re im) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re))
(-.f64 (hypot.f64 re im) re)
(+.f64 (neg.f64 re) (hypot.f64 re im))
(-.f64 (hypot.f64 re im) re)
(*.f64 (-.f64 (hypot.f64 re im) re) 1)
(-.f64 (hypot.f64 re im) re)
(*.f64 1 (-.f64 (hypot.f64 re im) re))
(-.f64 (hypot.f64 re im) re)
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))
(-.f64 (hypot.f64 re im) re)
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(*.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))
(-.f64 (hypot.f64 re im) re)
(/.f64 1 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))
(/.f64 1 (/.f64 (+.f64 re (hypot.f64 re im)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (neg.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (neg.f64 re) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (-.f64 (*.f64 (neg.f64 re) (neg.f64 re)) (*.f64 (hypot.f64 re im) (neg.f64 re)))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (hypot.f64 re im) (neg.f64 re)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(pow.f64 (-.f64 (hypot.f64 re im) re) 1)
(-.f64 (hypot.f64 re im) re)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/3)
(-.f64 (hypot.f64 re im) re)
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)
(-.f64 (hypot.f64 re im) re)
(pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 2)
(-.f64 (hypot.f64 re im) re)
(sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2))
(-.f64 (hypot.f64 re im) re)
(log.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3))
(-.f64 (hypot.f64 re im) re)
(expm1.f64 (log1p.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(log1p.f64 (expm1.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(fma.f64 1 (hypot.f64 re im) (neg.f64 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)) (neg.f64 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))
(-.f64 (hypot.f64 re im) re)

eval58.0ms (0.9%)

Compiler

Compiled 2096 to 1381 computations (34.1% saved)

prune20.0ms (0.3%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New92698
Fresh000
Picked011
Done000
Total92799
Error
4.8b
Counts
99 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
57.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6))))))))
54.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 im im) (/.f64 re 1/2)))))
13.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
28.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
48.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
51.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))))
29.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 188 to 151 computations (19.7% saved)

localize9.0ms (0.1%)

Compiler

Compiled 28 to 15 computations (46.4% saved)

localize16.0ms (0.3%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

localize11.0ms (0.2%)

Compiler

Compiled 28 to 23 computations (17.9% saved)

localize15.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 52 to 24 computations (53.8% saved)

series12.0ms (0.2%)

Counts
4 → 84
Calls

24 calls:

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

rewrite65.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
516×log-prod_binary64
388×exp-prod_binary64
315×prod-exp_binary64
264×pow-prod-down_binary64
256×pow-unpow_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify92.0ms (1.5%)

Algorithm
egg-herbie
Rules
462×hypot-def_binary64
429×log-prod_binary64
257×cube-prod_binary64
229×associate-*l*_binary64
216×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04093038
19552971
233662968
Stop Event
node limit
Counts
318 → 235
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (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 0 (sqrt.f64 (*.f64 im (/.f64 im re))))
(+.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)))))))
(+.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)))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))) 1)
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(*.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 (neg.f64 re) im)))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(pow.f64 (exp.f64 1/2) (log.f64 (*.f64 im (/.f64 im re))))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/4)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/6)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) 1/3)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 2)
(pow.f64 (/.f64 re (*.f64 im im)) -1/2)
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(pow.f64 (sqrt.f64 (/.f64 re (*.f64 im im))) -1)
(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))))))
(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))))))
(fabs.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 (*.f64 im (/.f64 im re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) 3))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 im (/.f64 im re)))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) 1))
(+.f64 0 (*.f64 (/.f64 im re) (*.f64 1/2 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))))
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))) (log.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))) 1)
(/.f64 1/2 (/.f64 re (*.f64 im im)))
(/.f64 1 (/.f64 (/.f64 re im) (*.f64 1/2 im)))
(/.f64 (*.f64 1/2 im) (/.f64 re im))
(/.f64 (neg.f64 (*.f64 1/2 im)) (/.f64 (neg.f64 re) im))
(/.f64 (/.f64 (*.f64 1/2 im) re) (/.f64 1 im))
(/.f64 (/.f64 (*.f64 1/2 im) 1) (/.f64 re im))
(/.f64 (/.f64 (*.f64 1/2 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 re im)))
(/.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (neg.f64 im) 1/2) (/.f64 (neg.f64 re) im))
(/.f64 (*.f64 1/2 (neg.f64 im)) (/.f64 (neg.f64 re) im))
(pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 1)
(pow.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) 3)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) 2)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(pow.f64 (/.f64 (/.f64 re im) (*.f64 1/2 im)) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))) (sqrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))))
(sqrt.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 2))
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 3))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(exp.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) 1))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))) 3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) 1) 1))
(exp.f64 (-.f64 (log.f64 (*.f64 1/2 im)) (*.f64 (log.f64 (/.f64 re im)) 1)))
(+.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) (*.f64 (/.f64 im re) (*.f64 1/2 im)))
(+.f64 0 (*.f64 im (/.f64 im re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 2 (*.f64 (/.f64 im re) (*.f64 1/2 im)))
(*.f64 1/2 (*.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 2)
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 2)) (*.f64 (cbrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) 2))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) (*.f64 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) 2))
(*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 3/4))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 1 (/.f64 (neg.f64 re) im)))
(*.f64 (/.f64 im re) im)
(*.f64 (sqrt.f64 (/.f64 im re)) (/.f64 im (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 re) (*.f64 im im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (*.f64 (cbrt.f64 im) im))
(*.f64 (/.f64 (sqrt.f64 im) re) (pow.f64 im 3/2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re im)) -2) (/.f64 im (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(*.f64 (*.f64 2 (*.f64 im (/.f64 im re))) 1/2)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(*.f64 (*.f64 2 (cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 2))) (cbrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))) (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) 2) 1/2) (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(*.f64 (*.f64 (/.f64 im re) 1) im)
(*.f64 (*.f64 (/.f64 im re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (*.f64 (/.f64 im re) (sqrt.f64 im)) (sqrt.f64 im))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) 2/3)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 6)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 4)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 im (/.f64 im re))))
(pow.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)) 1/3)
(pow.f64 (/.f64 (/.f64 re (*.f64 im im)) 1) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))) 2)) (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re))))) (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 im (/.f64 im re)))) 1/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) 3))
(exp.f64 (*.f64 (log.f64 (/.f64 re (*.f64 im im))) -1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) 2))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 re im))))
(exp.f64 (-.f64 (log.f64 im) (*.f64 (log.f64 (/.f64 re im)) 1)))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (/.f64 re im)) 1)))
(exp.f64 (-.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 re) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 im re))))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)))
(exp.f64 (+.f64 (log.f64 (/.f64 im re)) (*.f64 (log.f64 im) 1)))
(+.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) (*.f64 (/.f64 im re) (*.f64 1/2 im)))
(+.f64 0 (*.f64 im (/.f64 im re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(/.f64 im (/.f64 re im))
(/.f64 1 (/.f64 re (*.f64 im im)))
(/.f64 1 (/.f64 (/.f64 re (*.f64 im im)) 1))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (/.f64 re im) (cbrt.f64 im)))
(/.f64 (sqrt.f64 im) (/.f64 (/.f64 re im) (sqrt.f64 im)))
(/.f64 (neg.f64 im) (/.f64 (neg.f64 re) im))
(/.f64 (/.f64 im re) (/.f64 1 im))
(/.f64 -1 (neg.f64 (/.f64 re (*.f64 im im))))
(/.f64 (neg.f64 (neg.f64 im)) (neg.f64 (/.f64 (neg.f64 re) im)))
(/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(/.f64 (/.f64 im 1) (/.f64 re im))
(/.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (*.f64 1/2 im) 2) (/.f64 re im))
(/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re im))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) 2/3)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 6)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 4)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 im (/.f64 im re))))
(pow.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)) 1/3)
(pow.f64 (/.f64 (/.f64 re (*.f64 im im)) 1) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))) 2)) (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re))))) (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 im (/.f64 im re)))) 1/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) 3))
(exp.f64 (*.f64 (log.f64 (/.f64 re (*.f64 im im))) -1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) 2))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 re im))))
(exp.f64 (-.f64 (log.f64 im) (*.f64 (log.f64 (/.f64 re im)) 1)))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (/.f64 re im)) 1)))
(exp.f64 (-.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 re) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 im re))))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)))
(exp.f64 (+.f64 (log.f64 (/.f64 im re)) (*.f64 (log.f64 im) 1)))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.f64 0 (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(+.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)))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 im (/.f64 re im)))))))
(+.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)))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 im (/.f64 re im)))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))) 1)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(*.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(*.f64 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) (sqrt.f64 2))
(*.f64 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2))) (sqrt.f64 2))
(*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (sqrt.f64 2))
(*.f64 (sqrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(*.f64 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2))) (sqrt.f64 2))
(*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (sqrt.f64 2))
(*.f64 (sqrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))) (sqrt.f64 2))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (sqrt.f64 (/.f64 (/.f64 re im) im)))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 (neg.f64 re) im)))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 re (neg.f64 im))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(pow.f64 (exp.f64 1/2) (log.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/4)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/6)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) 1/3)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3/2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(pow.f64 (/.f64 re (*.f64 im im)) -1/2)
(pow.f64 (/.f64 (/.f64 re im) im) -1/2)
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(pow.f64 (sqrt.f64 (/.f64 re (*.f64 im im))) -1)
(/.f64 1 (sqrt.f64 (/.f64 (/.f64 re im) im)))
(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))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 im (/.f64 re im))))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 im (/.f64 re im))))))
(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))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 im (/.f64 re im)))))) (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 im (/.f64 re im))))))
(fabs.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 (*.f64 im (/.f64 im re)))) 1/3))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) 3))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 im (/.f64 im re)))) 2))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1/2))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) 1))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) 1))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(+.f64 0 (*.f64 (/.f64 im re) (*.f64 1/2 im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))) (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))))
(*.f64 3 (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))))
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))) (log.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))))
(*.f64 2 (log.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))) 1)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 1/2 (/.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 1 (/.f64 (/.f64 re im) (*.f64 1/2 im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 im) (/.f64 re im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (neg.f64 (*.f64 1/2 im)) (/.f64 (neg.f64 re) im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 im) re) (/.f64 1 im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 im) 1) (/.f64 re im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 re im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (neg.f64 im) 1/2) (/.f64 (neg.f64 re) im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 (neg.f64 im)) (/.f64 (neg.f64 re) im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 1)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 2) 1/2)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 3) 1/3)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) 3)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) 2)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(pow.f64 (/.f64 (/.f64 re im) (*.f64 1/2 im)) -1)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 2)) (cbrt.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))))) 2)) (cbrt.f64 (log.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))) (sqrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2))))) (sqrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))) (sqrt.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))))) (sqrt.f64 (log.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))))))
(sqrt.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 2))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))
(*.f64 (/.f64 im (*.f64 2 re)) im)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 3))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(exp.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) 1))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))) 1/3))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))) 3))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))) 2))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) 1) 1))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(exp.f64 (-.f64 (log.f64 (*.f64 1/2 im)) (*.f64 (log.f64 (/.f64 re im)) 1)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(+.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) (*.f64 (/.f64 im re) (*.f64 1/2 im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.f64 0 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 2 (*.f64 (/.f64 im re) (*.f64 1/2 im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 1/2 (*.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 2)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 2)) (*.f64 (cbrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) 2))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)) 2)) (*.f64 2 (cbrt.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)))))
(*.f64 2 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2))))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))) (*.f64 2 (cbrt.f64 (*.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) (*.f64 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 (*.f64 im 1/2) (*.f64 im (/.f64 im re))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 2 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 2 (*.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2)))))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 3/4))
(*.f64 (pow.f64 (/.f64 im (/.f64 re im)) 1/4) (pow.f64 (/.f64 im (/.f64 re im)) 3/4))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (neg.f64 im) (/.f64 1 (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (sqrt.f64 (/.f64 im re)) (/.f64 im (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 re) (*.f64 im im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (*.f64 (cbrt.f64 im) im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 (sqrt.f64 im) re) (pow.f64 im 3/2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re im)) -2) (/.f64 im (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 2 (*.f64 im (/.f64 im re))) 1/2)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 3/4))
(*.f64 (pow.f64 (/.f64 im (/.f64 re im)) 1/4) (pow.f64 (/.f64 im (/.f64 re im)) 3/4))
(*.f64 (*.f64 2 (cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) 2))) (cbrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)) 2)) (*.f64 2 (cbrt.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)))))
(*.f64 2 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2))))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))) (*.f64 2 (cbrt.f64 (*.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2)))))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))) (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (pow.f64 (*.f64 im (/.f64 im re)) 5/6))
(*.f64 (pow.f64 (/.f64 im (/.f64 re im)) 1/6) (pow.f64 (/.f64 im (/.f64 re im)) 5/6))
(*.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) 2) 1/2) (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im))))
(*.f64 (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2))) (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) 2))))
(*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (sqrt.f64 (*.f64 2 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))) (sqrt.f64 (*.f64 2 (/.f64 im (/.f64 re im)))))
(*.f64 (*.f64 (/.f64 im re) 1) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 (/.f64 im re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 (/.f64 im re) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) 2/3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 6)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 4)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)) 1/3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 (/.f64 re (*.f64 im im)) 1) -1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))) 2)) (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 im (/.f64 re im)))) 2)) (cbrt.f64 (log.f64 (/.f64 im (/.f64 re im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re))))) (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 im (/.f64 re im))))) (sqrt.f64 (log.f64 (/.f64 im (/.f64 re im)))))
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 im (/.f64 im re)))) 1/2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3)) 1/3))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) 3))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (/.f64 re (*.f64 im im))) -1))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 re im))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (-.f64 (log.f64 im) (*.f64 (log.f64 (/.f64 re im)) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (/.f64 re im)) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (-.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 re) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 (/.f64 im re)) (*.f64 (log.f64 im) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)) (*.f64 (/.f64 im re) (*.f64 1/2 im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.f64 0 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 1 (/.f64 re (*.f64 im im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 1 (/.f64 (/.f64 re (*.f64 im im)) 1))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 (/.f64 re im) (cbrt.f64 im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (sqrt.f64 im) (/.f64 (/.f64 re im) (sqrt.f64 im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (neg.f64 im) (/.f64 (neg.f64 re) im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 im re) (/.f64 1 im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 -1 (neg.f64 (/.f64 re (*.f64 im im))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (neg.f64 (neg.f64 im)) (neg.f64 (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 im 1) (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 (*.f64 1/2 im) 2) (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) 2/3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 6)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 4)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)) 1/3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 (/.f64 re (*.f64 im im)) 1) -1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))) 2)) (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 im (/.f64 re im)))) 2)) (cbrt.f64 (log.f64 (/.f64 im (/.f64 re im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re))))) (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 im (/.f64 re im))))) (sqrt.f64 (log.f64 (/.f64 im (/.f64 re im)))))
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 im (/.f64 im re)))) 1/2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3)) 1/3))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) 3))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (/.f64 re (*.f64 im im))) -1))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 re im))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (-.f64 (log.f64 im) (*.f64 (log.f64 (/.f64 re im)) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (/.f64 re im)) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (-.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 re) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 (/.f64 im re)) (*.f64 (log.f64 im) 1)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))

localize19.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (/.f64 (*.f64 im im) (/.f64 re 1/2)))
8.6b
(/.f64 (*.f64 im im) (/.f64 re 1/2))
15.8b
(sqrt.f64 (*.f64 2 (/.f64 (*.f64 im im) (/.f64 re 1/2))))
Compiler

Compiled 50 to 29 computations (42% saved)

series4.0ms (0.1%)

Counts
3 → 60
Calls

18 calls:

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

rewrite63.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
537×log-prod_binary64
410×exp-prod_binary64
287×pow-prod-down_binary64
259×pow2_binary64
204×pow-unpow_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify65.0ms (1%)

Algorithm
egg-herbie
Rules
813×fma-def_binary64
569×times-frac_binary64
348×distribute-rgt-in_binary64
315×distribute-lft-in_binary64
246×log-prod_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03482179
18732130
226922130
Stop Event
node limit
Counts
206 → 200
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(/.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 0 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))) 1)
(*.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)) 1)
(*.f64 1 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)) (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/6))
(*.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/6) (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(*.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 im (sqrt.f64 (+.f64 re re))))
(*.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/4) (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/4))
(/.f64 (sqrt.f64 (*.f64 (*.f64 2 im) im)) (sqrt.f64 (+.f64 re re)))
(pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/2)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)) 1)
(pow.f64 (exp.f64 1/2) (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 2) 1/4)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 3) 1/6)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 3/2) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)) 3/2)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/6) 3)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/4) 2)
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))))
(fabs.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))
(exp.f64 (*.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 1))
(exp.f64 (*.f64 (*.f64 3/2 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/6)) 3))
(exp.f64 (*.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)) 2))
(exp.f64 (*.f64 (*.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 1) 1))
(+.f64 0 (*.f64 im (*.f64 im (/.f64 1/2 re))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 im (/.f64 re im))))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 im (/.f64 re im)))))))
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 im (/.f64 re im)))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 im (/.f64 re im)))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))) 1)
(*.f64 im (/.f64 1 (/.f64 re (/.f64 im 2))))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))) 1)
(*.f64 1 (*.f64 im (*.f64 im (/.f64 1/2 re))))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))) (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4)) (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))
(*.f64 (*.f64 (cbrt.f64 im) im) (*.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 1/2 re)))
(*.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) (/.f64 im (sqrt.f64 (+.f64 re re))))
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 1 (*.f64 re -2)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (/.f64 im (/.f64 re im)) 1/2)
(*.f64 (/.f64 im re) (/.f64 im 2))
(*.f64 (/.f64 1 re) (/.f64 (*.f64 im im) 2))
(*.f64 (/.f64 (*.f64 (cbrt.f64 im) im) re) (/.f64 (pow.f64 (cbrt.f64 im) 2) 2))
(*.f64 (/.f64 im 1) (/.f64 im (+.f64 re re)))
(*.f64 (/.f64 im (+.f64 re re)) im)
(*.f64 (/.f64 (*.f64 (cbrt.f64 im) im) 1) (/.f64 (pow.f64 (cbrt.f64 im) 2) (+.f64 re re)))
(*.f64 (/.f64 im (cbrt.f64 (*.f64 (*.f64 re re) 4))) (/.f64 im (cbrt.f64 (+.f64 re re))))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 re re)) -2) (/.f64 (*.f64 im im) (cbrt.f64 (+.f64 re re))))
(*.f64 (/.f64 (*.f64 (cbrt.f64 im) im) (cbrt.f64 (*.f64 (*.f64 re re) 4))) (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))
(*.f64 (pow.f64 (+.f64 re re) -1/2) (/.f64 (*.f64 im im) (sqrt.f64 (+.f64 re re))))
(*.f64 (/.f64 (*.f64 (cbrt.f64 im) im) (sqrt.f64 (+.f64 re re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 (+.f64 re re))))
(*.f64 (/.f64 (*.f64 im im) 1) (/.f64 1/2 re))
(*.f64 (/.f64 (*.f64 im im) (neg.f64 re)) -1/2)
(pow.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))) 1)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4) 1/2)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 6) 1/3)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))) 3)
(pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 2)
(pow.f64 (/.f64 (+.f64 re re) (*.f64 im im)) -1)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))
(pow.f64 (/.f64 (pow.f64 im 6) (pow.f64 (+.f64 re re) 3)) 1/3)
(pow.f64 (/.f64 (/.f64 (+.f64 re re) (*.f64 im im)) 1) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))) 2)) (cbrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))) (sqrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))))
(neg.f64 (/.f64 (*.f64 im im) (*.f64 re -2)))
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4))
(log.f64 (sqrt.f64 (exp.f64 (/.f64 im (/.f64 re im)))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 6))
(cbrt.f64 (/.f64 (pow.f64 im 6) (pow.f64 (+.f64 re re) 3)))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))
(exp.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 6)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))) 3))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 (+.f64 re re)))) 2))
(exp.f64 (*.f64 (log.f64 (/.f64 (+.f64 re re) (*.f64 im im))) -1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))) 1) 1))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 re (/.f64 im 2)))))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 2) (log.f64 (+.f64 re re))))
(exp.f64 (-.f64 (*.f64 (*.f64 2 (log.f64 im)) 1) (log.f64 (+.f64 re re))))
(exp.f64 (-.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 (+.f64 re re)) 1)))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 2) (*.f64 (log.f64 (+.f64 re re)) 1)))
(exp.f64 (-.f64 (*.f64 (*.f64 2 (log.f64 im)) 1) (*.f64 (log.f64 (+.f64 re re)) 1)))
(+.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))) (*.f64 im (*.f64 im (/.f64 1/2 re))))
(+.f64 0 (*.f64 (/.f64 im (/.f64 re im)) 1))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 1)
(/.f64 2 (/.f64 (+.f64 re re) (*.f64 im im)))
(/.f64 1 (/.f64 (+.f64 re re) (*.f64 (*.f64 2 im) im)))
(/.f64 (*.f64 (*.f64 2 im) im) (+.f64 re re))
(/.f64 (neg.f64 (*.f64 (*.f64 2 im) im)) (*.f64 re -2))
(/.f64 (/.f64 (*.f64 (*.f64 2 im) im) re) 2)
(/.f64 (/.f64 (*.f64 (*.f64 2 im) im) 1) (+.f64 re re))
(/.f64 (/.f64 (*.f64 (*.f64 2 im) im) (cbrt.f64 (*.f64 (*.f64 re re) 4))) (cbrt.f64 (+.f64 re re)))
(/.f64 (/.f64 (*.f64 (*.f64 2 im) im) (sqrt.f64 (+.f64 re re))) (sqrt.f64 (+.f64 re re)))
(/.f64 (*.f64 im 2) (/.f64 re (/.f64 im 2)))
(/.f64 (*.f64 (*.f64 im (neg.f64 im)) 2) (*.f64 re -2))
(/.f64 (*.f64 2 im) (/.f64 re (/.f64 im 2)))
(/.f64 (*.f64 2 (*.f64 im (neg.f64 im))) (*.f64 re -2))
(pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)) 2)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 3) 1/3)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 3/2) 2/3)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)) 3)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/6) 6)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/4) 4)
(pow.f64 (exp.f64 1) (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0))
(pow.f64 (/.f64 (+.f64 re re) (*.f64 (*.f64 2 im) im)) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)) 2)) (cbrt.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)))
(pow.f64 (exp.f64 (sqrt.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0))) (sqrt.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)))
(sqrt.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 2))
(log.f64 (exp.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 3))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(exp.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0))
(exp.f64 (*.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0) 1))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 2))
(exp.f64 (*.f64 (*.f64 2 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)) 1/2))
(exp.f64 (*.f64 (*.f64 3 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 3))
(exp.f64 (*.f64 (*.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0) 1) 1))
(exp.f64 (*.f64 (*.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0) 1/2) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 1) 2))
(exp.f64 (-.f64 (log.f64 (*.f64 (*.f64 2 im) im)) (*.f64 (log.f64 (+.f64 re re)) 1)))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(+.f64 0 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 im (/.f64 re im))))))) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 im (/.f64 re im)))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 im (/.f64 re im)))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))) 1)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)) 1)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 1 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)) (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/6))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/6) (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 im (sqrt.f64 (+.f64 re re))))
(*.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) (sqrt.f64 2))
(*.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/4) (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/4))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(/.f64 (sqrt.f64 (*.f64 (*.f64 2 im) im)) (sqrt.f64 (+.f64 re re)))
(/.f64 (sqrt.f64 (*.f64 im (*.f64 im 2))) (sqrt.f64 (+.f64 re re)))
(/.f64 (sqrt.f64 (*.f64 im (+.f64 im im))) (sqrt.f64 (+.f64 re re)))
(pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/2)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)) 1)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (exp.f64 1/2) (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 2) 1/4)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 3) 1/6)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 3/2) 1/3)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)) 3/2)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/6) 3)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/4) 2)
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 im (/.f64 re im))))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 im (/.f64 re im))))))
(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))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 im (/.f64 re im)))))) (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 im (/.f64 re im))))))
(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))))))
(fabs.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 3/2))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (*.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0) 1/2))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 1))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (*.f64 (*.f64 3/2 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)) 1/3))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/6)) 3))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (*.f64 (*.f64 1/4 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)) 2))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (*.f64 (*.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0) 1) 1/2))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (*.f64 (*.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0) 1/2) 1))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 1) 1))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(+.f64 0 (*.f64 im (*.f64 im (/.f64 1/2 re))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 im (/.f64 re im))))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 im (/.f64 re im)))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 im (/.f64 re im))))))) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 im (/.f64 re im)))))))
(*.f64 3 (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im)))))
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 im (/.f64 re im)))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 im (/.f64 re im)))))))
(*.f64 2 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 im (/.f64 re im)))))))
(*.f64 2 (log.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))) 1)
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 im (/.f64 1 (/.f64 re (/.f64 im 2))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))) 1)
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 1 (*.f64 im (*.f64 im (/.f64 1/2 re))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))) (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 1/2 re) (*.f64 im im))) (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im (/.f64 im 2)) re)) (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 (/.f64 im re) 2))) (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4)) (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 1/2 re) (*.f64 im im))) (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im (/.f64 im 2)) re)) (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 (/.f64 im re) 2))) (cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4)))
(*.f64 (*.f64 (cbrt.f64 im) im) (*.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 1/2 re)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) (/.f64 im (sqrt.f64 (+.f64 re re))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 1 (*.f64 re -2)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (/.f64 im (/.f64 re im)) 1/2)
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (/.f64 im re) (/.f64 im 2))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (/.f64 1 re) (/.f64 (*.f64 im im) 2))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (/.f64 (*.f64 (cbrt.f64 im) im) re) (/.f64 (pow.f64 (cbrt.f64 im) 2) 2))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (/.f64 im 1) (/.f64 im (+.f64 re re)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (/.f64 im (+.f64 re re)) im)
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (/.f64 (*.f64 (cbrt.f64 im) im) 1) (/.f64 (pow.f64 (cbrt.f64 im) 2) (+.f64 re re)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (/.f64 im (cbrt.f64 (*.f64 (*.f64 re re) 4))) (/.f64 im (cbrt.f64 (+.f64 re re))))
(*.f64 (/.f64 im (cbrt.f64 (*.f64 re (*.f64 re 4)))) (/.f64 im (cbrt.f64 (+.f64 re re))))
(/.f64 (/.f64 (*.f64 im im) (cbrt.f64 (+.f64 re re))) (cbrt.f64 (*.f64 re (*.f64 re 4))))
(/.f64 (/.f64 (*.f64 im im) (cbrt.f64 (*.f64 4 (*.f64 re re)))) (cbrt.f64 (+.f64 re re)))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 re re)) -2) (/.f64 (*.f64 im im) (cbrt.f64 (+.f64 re re))))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 re re)) -2) (/.f64 im (/.f64 (cbrt.f64 (+.f64 re re)) im)))
(*.f64 (/.f64 (*.f64 (cbrt.f64 im) im) (cbrt.f64 (*.f64 (*.f64 re re) 4))) (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 1/2 re) (*.f64 im im))) (/.f64 (*.f64 im (cbrt.f64 im)) (cbrt.f64 (*.f64 re (*.f64 re 4)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im (/.f64 im 2)) re)) (/.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (*.f64 re (*.f64 re 4))) im)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 (/.f64 im re) 2))) (*.f64 (/.f64 im (cbrt.f64 (*.f64 4 (*.f64 re re)))) (cbrt.f64 im)))
(*.f64 (pow.f64 (+.f64 re re) -1/2) (/.f64 (*.f64 im im) (sqrt.f64 (+.f64 re re))))
(/.f64 (*.f64 (*.f64 im im) (pow.f64 (+.f64 re re) -1/2)) (sqrt.f64 (+.f64 re re)))
(*.f64 (/.f64 (*.f64 (cbrt.f64 im) im) (sqrt.f64 (+.f64 re re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 (+.f64 re re))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (/.f64 (*.f64 im im) 1) (/.f64 1/2 re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(*.f64 (/.f64 (*.f64 im im) (neg.f64 re)) -1/2)
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(pow.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))) 1)
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4) 1/2)
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 6) 1/3)
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))) 3)
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 2)
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(pow.f64 (/.f64 (+.f64 re re) (*.f64 im im)) -1)
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(pow.f64 (/.f64 (pow.f64 im 6) (pow.f64 (+.f64 re re) 3)) 1/3)
(cbrt.f64 (/.f64 (pow.f64 im 6) (pow.f64 (+.f64 re re) 3)))
(cbrt.f64 (/.f64 (pow.f64 im 6) (*.f64 8 (pow.f64 re 3))))
(pow.f64 (/.f64 (/.f64 (+.f64 re re) (*.f64 im im)) 1) -1)
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))) 2)) (cbrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 1/2 re) (*.f64 im im)))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 1/2 re) (*.f64 im im)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (*.f64 im (/.f64 im 2)) re))) 2)) (cbrt.f64 (log.f64 (/.f64 (*.f64 im (/.f64 im 2)) re))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (/.f64 (/.f64 im re) 2)))) 2)) (cbrt.f64 (log.f64 (*.f64 im (/.f64 (/.f64 im re) 2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))) (sqrt.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 1/2 re) (*.f64 im im))))) (sqrt.f64 (log.f64 (*.f64 (/.f64 1/2 re) (*.f64 im im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (*.f64 im (/.f64 im 2)) re)))) (sqrt.f64 (log.f64 (/.f64 (*.f64 im (/.f64 im 2)) re))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (/.f64 (/.f64 im re) 2))))) (sqrt.f64 (log.f64 (*.f64 im (/.f64 (/.f64 im re) 2)))))
(neg.f64 (/.f64 (*.f64 im im) (*.f64 re -2)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 4))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(log.f64 (sqrt.f64 (exp.f64 (/.f64 im (/.f64 re im)))))
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 6))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(cbrt.f64 (/.f64 (pow.f64 im 6) (pow.f64 (+.f64 re re) 3)))
(cbrt.f64 (/.f64 (pow.f64 im 6) (*.f64 8 (pow.f64 re 3))))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(exp.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))) 1))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 (+.f64 re re))) 6)) 1/3))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))) 3))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 (+.f64 re re)))) 2))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(exp.f64 (*.f64 (log.f64 (/.f64 (+.f64 re re) (*.f64 im im))) -1))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))) 1) 1))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 re (/.f64 im 2)))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 2) (log.f64 (+.f64 re re))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(exp.f64 (-.f64 (*.f64 (*.f64 2 (log.f64 im)) 1) (log.f64 (+.f64 re re))))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(exp.f64 (-.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 (+.f64 re re)) 1)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(exp.f64 (-.f64 (*.f64 (log.f64 im) 2) (*.f64 (log.f64 (+.f64 re re)) 1)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(exp.f64 (-.f64 (*.f64 (*.f64 2 (log.f64 im)) 1) (*.f64 (log.f64 (+.f64 re re)) 1)))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(/.f64 (*.f64 im (/.f64 im 2)) re)
(*.f64 im (/.f64 (/.f64 im re) 2))
(+.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))) (*.f64 im (*.f64 im (/.f64 1/2 re))))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(+.f64 0 (*.f64 (/.f64 im (/.f64 re im)) 1))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (/.f64 im (/.f64 re im)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 im (/.f64 re im))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 1)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 2 (/.f64 (+.f64 re re) (*.f64 im im)))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 1 (/.f64 (+.f64 re re) (*.f64 (*.f64 2 im) im)))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (*.f64 2 im) im) (+.f64 re re))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (neg.f64 (*.f64 (*.f64 2 im) im)) (*.f64 re -2))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 (*.f64 2 im) im) re) 2)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 (*.f64 2 im) im) 1) (+.f64 re re))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 (*.f64 2 im) im) (cbrt.f64 (*.f64 (*.f64 re re) 4))) (cbrt.f64 (+.f64 re re)))
(/.f64 (/.f64 (*.f64 im (*.f64 im 2)) (cbrt.f64 (*.f64 re (*.f64 re 4)))) (cbrt.f64 (+.f64 re re)))
(*.f64 (/.f64 im (cbrt.f64 (+.f64 re re))) (/.f64 (+.f64 im im) (cbrt.f64 (*.f64 re (*.f64 re 4)))))
(*.f64 (/.f64 im (cbrt.f64 (*.f64 4 (*.f64 re re)))) (/.f64 (+.f64 im im) (cbrt.f64 (+.f64 re re))))
(/.f64 (/.f64 (*.f64 (*.f64 2 im) im) (sqrt.f64 (+.f64 re re))) (sqrt.f64 (+.f64 re re)))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im 2) (/.f64 re (/.f64 im 2)))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (*.f64 im (neg.f64 im)) 2) (*.f64 re -2))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 2 im) (/.f64 re (/.f64 im 2)))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 2 (*.f64 im (neg.f64 im))) (*.f64 re -2))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)) 2)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 2) 1/2)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 3) 1/3)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 3/2) 2/3)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)) 3)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/6) 6)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 1/4) 4)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(pow.f64 (exp.f64 1) (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 (+.f64 re re) (*.f64 (*.f64 2 im) im)) -1)
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)) 2)) (cbrt.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 im (/.f64 re im)))) 2)) (cbrt.f64 (log.f64 (/.f64 im (/.f64 re im)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))) 2)) (cbrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(pow.f64 (exp.f64 (sqrt.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0))) (sqrt.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 im (/.f64 re im))))) (sqrt.f64 (log.f64 (/.f64 im (/.f64 re im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re))))) (sqrt.f64 (log.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 2))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(log.f64 (exp.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (/.f64 re im)) 1) 3))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (/.f64 re im)) 1)))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(exp.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0) 1))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 2))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (*.f64 2 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)) 1/2))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (*.f64 3 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0)) 1/3))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 3))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (*.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0) 1) 1))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (*.f64 (+.f64 (log.f64 (/.f64 im (/.f64 re im))) 0) 1/2) 2))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1))) 1) 2))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(exp.f64 (-.f64 (log.f64 (*.f64 (*.f64 2 im) im)) (*.f64 (log.f64 (+.f64 re re)) 1)))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))

eval195.0ms (3.1%)

Compiler

Compiled 7123 to 4177 computations (41.4% saved)

prune117.0ms (1.9%)

Pruning

14 alts after pruning (10 fresh and 4 done)

PrunedKeptTotal
New42510435
Fresh101
Picked101
Done145
Total42814442
Error
0.1b
Counts
442 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
48.3b
(*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
48.1b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im)))
47.0b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
51.8b
(*.f64 1/2 (sqrt.f64 (/.f64 im (/.f64 re im))))
51.8b
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
52.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2))))))))
13.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
28.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
48.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
51.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 im (*.f64 im (/.f64 1/2 re))))))
52.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 im (/.f64 re im)) 1/6) (pow.f64 (/.f64 im (/.f64 re im)) 5/6))))))
52.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (exp.f64 (-.f64 (*.f64 (log.f64 im) 2) (log.f64 (+.f64 re re)))))))
52.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (exp.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))))))
29.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 344 to 261 computations (24.1% saved)

localize25.0ms (0.4%)

Local error

Found 2 expressions with local error:

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

Compiled 27 to 19 computations (29.6% saved)

series3.0ms (0.1%)

Counts
2 → 0
Calls

9 calls:

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

rewrite41.0ms (0.7%)

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

Useful iterations: 1 (0.0ms)

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

simplify47.0ms (0.8%)

Algorithm
egg-herbie
Rules
532×log-prod_binary64
430×fma-neg_binary64
324×log-div_binary64
276×fma-def_binary64
236×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
082410
1168323
2518242
32289242
47026242
Stop Event
node limit
Counts
38 → 43
Calls
Call 1
Inputs
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (+.f64 1 (pow.f64 re -1/2)) 1)
(*.f64 1 (pow.f64 re -1/2))
(*.f64 (pow.f64 re -1/2) 1)
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (/.f64 1 (cbrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (cbrt.f64 (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re))))
(*.f64 (pow.f64 1 1/2) (pow.f64 re -1/2))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 re -2)) 1/2) (pow.f64 (/.f64 1 (cbrt.f64 re)) 1/2))
(/.f64 1 (sqrt.f64 re))
(/.f64 1 (/.f64 (sqrt.f64 re) 1))
(/.f64 -1 (neg.f64 (sqrt.f64 re)))
(/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re)))
(pow.f64 re -1/2)
(pow.f64 (/.f64 1 re) 1/2)
(pow.f64 (pow.f64 re -1/2) 1)
(pow.f64 (/.f64 (pow.f64 re -1/2) re) 1/3)
(pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3)
(pow.f64 (sqrt.f64 re) -1)
(pow.f64 (sqrt.f64 (pow.f64 re -1/2)) 2)
(fabs.f64 (pow.f64 re -1/2))
(log.f64 (exp.f64 (pow.f64 re -1/2)))
(cbrt.f64 (/.f64 (pow.f64 re -1/2) re))
(expm1.f64 (log1p.f64 (pow.f64 re -1/2)))
(log1p.f64 (expm1.f64 (pow.f64 re -1/2)))
(exp.f64 (log.f64 (pow.f64 re -1/2)))
Outputs
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(/.f64 im (sqrt.f64 re))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(-.f64 (+.f64 1 (pow.f64 re -1/2)) 1)
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(*.f64 1 (pow.f64 re -1/2))
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(*.f64 (pow.f64 re -1/2) 1)
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (/.f64 1 (cbrt.f64 re)))
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re))
(*.f64 (/.f64 1 (cbrt.f64 re)) (cbrt.f64 (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (/.f64 1 (cbrt.f64 re)))
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re))
(*.f64 (sqrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (pow.f64 re -1/2)))
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re))))
(*.f64 (pow.f64 1 1/2) (pow.f64 re -1/2))
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 re -2)) 1/2) (pow.f64 (/.f64 1 (cbrt.f64 re)) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re))))
(/.f64 1 (sqrt.f64 re))
(/.f64 1 (/.f64 (sqrt.f64 re) 1))
(/.f64 1 (sqrt.f64 re))
(/.f64 -1 (neg.f64 (sqrt.f64 re)))
(/.f64 1 (sqrt.f64 re))
(/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re)))
(pow.f64 re -1/2)
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 (/.f64 1 re) 1/2)
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(pow.f64 (pow.f64 re -1/2) 1)
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(pow.f64 (/.f64 (pow.f64 re -1/2) re) 1/3)
(cbrt.f64 (/.f64 (pow.f64 re -1/2) re))
(pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3)
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(pow.f64 (sqrt.f64 re) -1)
(/.f64 1 (sqrt.f64 re))
(pow.f64 (sqrt.f64 (pow.f64 re -1/2)) 2)
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(fabs.f64 (pow.f64 re -1/2))
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(log.f64 (exp.f64 (pow.f64 re -1/2)))
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(cbrt.f64 (/.f64 (pow.f64 re -1/2) re))
(expm1.f64 (log1p.f64 (pow.f64 re -1/2)))
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(log1p.f64 (expm1.f64 (pow.f64 re -1/2)))
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(exp.f64 (log.f64 (pow.f64 re -1/2)))
(+.f64 (+.f64 1 (pow.f64 re -1/2)) -1)
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 27 to 8 computations (70.4% saved)

series3.0ms (0%)

Counts
2 → 36
Calls

12 calls:

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

rewrite59.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
647×pow1_binary64
600×add-log-exp_binary64
600×log1p-expm1-u_binary64
600×expm1-log1p-u_binary64
585×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify67.0ms (1.1%)

Algorithm
egg-herbie
Rules
590×fma-def_binary64
546×log-prod_binary64
489×unswap-sqr_binary64
421×log-div_binary64
300×cube-prod_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0100705
1224642
2816579
34743579
Stop Event
node limit
Counts
80 → 52
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (+.f64 1 (*.f64 im (/.f64 im re))) 1)
(/.f64 im (/.f64 re im))
(/.f64 1 (/.f64 re (*.f64 im im)))
(/.f64 (*.f64 im im) re)
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(/.f64 im (sqrt.f64 re))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(-.f64 (+.f64 1 (*.f64 im (/.f64 im re))) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 1 (/.f64 re (*.f64 im im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))

localize65.0ms (1%)

Local error

Found 4 expressions with local error:

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

Compiled 52 to 35 computations (32.7% saved)

series7.0ms (0.1%)

Counts
4 → 84
Calls

24 calls:

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

rewrite62.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
526×log-prod_binary64
388×exp-prod_binary64
382×prod-exp_binary64
323×pow-prod-down_binary64
264×pow-unpow_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify110.0ms (1.7%)

Algorithm
egg-herbie
Rules
479×times-frac_binary64
428×associate-/l*_binary64
394×associate-*l/_binary64
364×log-prod_binary64
328×associate-*r/_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
10.1b
(sqrt.f64 (/.f64 re im))
Compiler

Compiled 30 to 9 computations (70% saved)

series6.0ms (0.1%)

Counts
2 → 12
Calls

12 calls:

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

rewrite64.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
818×pow1_binary64
762×add-log-exp_binary64
762×log1p-expm1-u_binary64
762×expm1-log1p-u_binary64
741×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify59.0ms (0.9%)

Algorithm
egg-herbie
Rules
621×times-frac_binary64
392×fma-def_binary64
368×associate-*l*_binary64
345×associate-*r*_binary64
328×associate-/r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01531037
1332895
21051747
35913733
Stop Event
node limit
Counts
76 → 93
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 (+.f64 1 (sqrt.f64 (/.f64 re im))) 1)
(*.f64 (sqrt.f64 (/.f64 re im)) 1)
(*.f64 1 (sqrt.f64 (/.f64 re im)))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 re im))) (cbrt.f64 (/.f64 re im)))
(*.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 (sqrt.f64 (/.f64 re im))))
(*.f64 (pow.f64 (/.f64 re im) 1/4) (pow.f64 (/.f64 re im) 1/4))
(*.f64 (sqrt.f64 re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (sqrt.f64 re) (pow.f64 (/.f64 1 im) 1/2))
(*.f64 (sqrt.f64 re) (/.f64 1 (sqrt.f64 im)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 re im))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (/.f64 re im)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 re im)) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 re im)) 1/2))
(/.f64 1 (sqrt.f64 (/.f64 im re)))
(/.f64 1 (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(/.f64 (sqrt.f64 re) (sqrt.f64 im))
(/.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (neg.f64 im)))
(/.f64 (neg.f64 (sqrt.f64 re)) (neg.f64 (sqrt.f64 im)))
(/.f64 (/.f64 (sqrt.f64 re) 1) (sqrt.f64 im))
(/.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 im)) (cbrt.f64 (sqrt.f64 im)))
(/.f64 (/.f64 (sqrt.f64 re) (pow.f64 im 1/4)) (pow.f64 im 1/4))
(pow.f64 (/.f64 re im) 1/2)
(pow.f64 (sqrt.f64 (/.f64 re im)) 1)
(pow.f64 (pow.f64 (/.f64 re im) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 re im))) 3)
(pow.f64 (pow.f64 (/.f64 re im) 1/4) 2)
(fabs.f64 (sqrt.f64 (/.f64 re im)))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))
(cbrt.f64 (pow.f64 (/.f64 re im) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 re im))))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 re im))))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 re im))))
(-.f64 (+.f64 1 (/.f64 1 (/.f64 (sqrt.f64 re) im))) 1)
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 re im) -1/2))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(*.f64 1 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 im) (*.f64 (cbrt.f64 (sqrt.f64 im)) (pow.f64 (/.f64 re im) -1/2)))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (pow.f64 im 1/4) (*.f64 (pow.f64 im 1/4) (pow.f64 (/.f64 re im) -1/2)))
(*.f64 (sqrt.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))))
(*.f64 (neg.f64 (sqrt.f64 im)) (/.f64 1 (neg.f64 (sqrt.f64 (/.f64 re im)))))
(*.f64 (pow.f64 (/.f64 re im) -1/2) (sqrt.f64 im))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (sqrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 re im))) (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (/.f64 (cbrt.f64 im) 1) (/.f64 (cbrt.f64 (sqrt.f64 im)) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (pow.f64 im 1/4) 1) (/.f64 (pow.f64 im 1/4) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 re im))) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 (/.f64 re im)))))
(*.f64 (/.f64 (pow.f64 im 1/4) (cbrt.f64 (/.f64 re im))) (/.f64 (pow.f64 im 1/4) (cbrt.f64 (sqrt.f64 (/.f64 re im)))))
(*.f64 (/.f64 1 (pow.f64 (/.f64 re im) 1/4)) (/.f64 (sqrt.f64 im) (pow.f64 (/.f64 re im) 1/4)))
(*.f64 (/.f64 (cbrt.f64 im) (pow.f64 (/.f64 re im) 1/4)) (/.f64 (cbrt.f64 (sqrt.f64 im)) (pow.f64 (/.f64 re im) 1/4)))
(pow.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(pow.f64 (pow.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 3) 1/3)
(pow.f64 (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))) 3)
(pow.f64 (sqrt.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))) 2)
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(neg.f64 (/.f64 (sqrt.f64 im) (neg.f64 (sqrt.f64 (/.f64 re im)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log.f64 (exp.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))))
(cbrt.f64 (pow.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 3))
(cbrt.f64 (/.f64 (pow.f64 im 3/2) (pow.f64 (/.f64 re im) 3/2)))
(expm1.f64 (log1p.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))))
(log1p.f64 (expm1.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))))
(exp.f64 (neg.f64 (log.f64 (/.f64 (sqrt.f64 re) im))))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(-.f64 (+.f64 1 (sqrt.f64 (/.f64 re im))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(*.f64 (sqrt.f64 (/.f64 re im)) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(*.f64 1 (sqrt.f64 (/.f64 re im)))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 re im))) (cbrt.f64 (/.f64 re im)))
(*.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 (sqrt.f64 (/.f64 re im))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 re im))) (cbrt.f64 (/.f64 re im)))
(*.f64 (pow.f64 (/.f64 re im) 1/4) (pow.f64 (/.f64 re im) 1/4))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(*.f64 (sqrt.f64 re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (sqrt.f64 re) (pow.f64 (/.f64 1 im) 1/2))
(*.f64 (sqrt.f64 re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (sqrt.f64 re) (/.f64 1 (sqrt.f64 im)))
(/.f64 (*.f64 (sqrt.f64 re) 1) (sqrt.f64 im))
(/.f64 (sqrt.f64 re) (sqrt.f64 im))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 re im))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 re im))) (sqrt.f64 (cbrt.f64 (/.f64 re im))))
(*.f64 (cbrt.f64 (/.f64 re im)) (sqrt.f64 (cbrt.f64 (/.f64 re im))))
(pow.f64 (cbrt.f64 (/.f64 re im)) 3/2)
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (/.f64 re im)))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 re im)) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 re im)) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 re im))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 re im))) (sqrt.f64 (cbrt.f64 (/.f64 re im))))
(*.f64 (cbrt.f64 (/.f64 re im)) (sqrt.f64 (cbrt.f64 (/.f64 re im))))
(pow.f64 (cbrt.f64 (/.f64 re im)) 3/2)
(/.f64 1 (sqrt.f64 (/.f64 im re)))
(/.f64 1 (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 re) 1) (sqrt.f64 im))
(/.f64 (sqrt.f64 re) (sqrt.f64 im))
(/.f64 (sqrt.f64 re) (sqrt.f64 im))
(/.f64 (*.f64 (sqrt.f64 re) 1) (sqrt.f64 im))
(/.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (neg.f64 im)))
(/.f64 (neg.f64 (sqrt.f64 re)) (neg.f64 (sqrt.f64 im)))
(/.f64 (*.f64 (sqrt.f64 re) 1) (sqrt.f64 im))
(/.f64 (sqrt.f64 re) (sqrt.f64 im))
(/.f64 (/.f64 (sqrt.f64 re) 1) (sqrt.f64 im))
(/.f64 (*.f64 (sqrt.f64 re) 1) (sqrt.f64 im))
(/.f64 (sqrt.f64 re) (sqrt.f64 im))
(/.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 im)) (cbrt.f64 (sqrt.f64 im)))
(/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 im)) (cbrt.f64 im)))
(/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 im))))
(/.f64 (/.f64 (sqrt.f64 re) (pow.f64 im 1/4)) (pow.f64 im 1/4))
(/.f64 (*.f64 (sqrt.f64 re) 1) (sqrt.f64 im))
(/.f64 (sqrt.f64 re) (sqrt.f64 im))
(pow.f64 (/.f64 re im) 1/2)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(pow.f64 (sqrt.f64 (/.f64 re im)) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(pow.f64 (pow.f64 (/.f64 re im) 3/2) 1/3)
(cbrt.f64 (pow.f64 (/.f64 re im) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 re im))) 3)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(pow.f64 (pow.f64 (/.f64 re im) 1/4) 2)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(fabs.f64 (sqrt.f64 (/.f64 re im)))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(cbrt.f64 (pow.f64 (/.f64 re im) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 re im))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 re im))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 re im))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 re im)) 1))
(+.f64 (sqrt.f64 (/.f64 re im)) 0)
(sqrt.f64 (/.f64 re im))
(-.f64 (+.f64 1 (/.f64 1 (/.f64 (sqrt.f64 re) im))) 1)
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 re im) -1/2))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (cbrt.f64 im) (*.f64 (cbrt.f64 (sqrt.f64 im)) (pow.f64 (/.f64 re im) -1/2)))
(*.f64 (pow.f64 (/.f64 re im) -1/2) (*.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 im))))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (pow.f64 im 1/4) (*.f64 (pow.f64 im 1/4) (pow.f64 (/.f64 re im) -1/2)))
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 re im) -1/2))
(*.f64 (sqrt.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))))
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (neg.f64 (sqrt.f64 im)) (/.f64 1 (neg.f64 (sqrt.f64 (/.f64 re im)))))
(*.f64 1 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(*.f64 (pow.f64 (/.f64 re im) -1/2) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 re im) -1/2))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (sqrt.f64 im))
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 re im))) (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (/.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 re im))))
(/.f64 (/.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 re im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (cbrt.f64 im) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re im))))
(/.f64 (cbrt.f64 im) (*.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (/.f64 (cbrt.f64 im) 1) (/.f64 (cbrt.f64 (sqrt.f64 im)) (sqrt.f64 (/.f64 re im))))
(*.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (sqrt.f64 im)) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (pow.f64 im 1/4) 1) (/.f64 (pow.f64 im 1/4) (sqrt.f64 (/.f64 re im))))
(*.f64 (neg.f64 (sqrt.f64 im)) (/.f64 1 (neg.f64 (sqrt.f64 (/.f64 re im)))))
(*.f64 1 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 re im))) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 (/.f64 re im)))))
(/.f64 (*.f64 (/.f64 1 (cbrt.f64 (/.f64 re im))) (sqrt.f64 im)) (cbrt.f64 (sqrt.f64 (/.f64 re im))))
(/.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 (/.f64 re im)))) (cbrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 im) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 re im))) (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (pow.f64 im 1/4) (cbrt.f64 (/.f64 re im))) (/.f64 (pow.f64 im 1/4) (cbrt.f64 (sqrt.f64 (/.f64 re im)))))
(/.f64 (*.f64 (/.f64 1 (cbrt.f64 (/.f64 re im))) (sqrt.f64 im)) (cbrt.f64 (sqrt.f64 (/.f64 re im))))
(/.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 (/.f64 re im)))) (cbrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 im) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 re im))) (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (pow.f64 (/.f64 re im) 1/4)) (/.f64 (sqrt.f64 im) (pow.f64 (/.f64 re im) 1/4)))
(*.f64 (neg.f64 (sqrt.f64 im)) (/.f64 1 (neg.f64 (sqrt.f64 (/.f64 re im)))))
(*.f64 1 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(*.f64 (/.f64 (cbrt.f64 im) (pow.f64 (/.f64 re im) 1/4)) (/.f64 (cbrt.f64 (sqrt.f64 im)) (pow.f64 (/.f64 re im) 1/4)))
(*.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (sqrt.f64 im)) (sqrt.f64 (/.f64 re im))))
(pow.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 3) 1/3)
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))) 3)
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))) 2)
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(neg.f64 (/.f64 (sqrt.f64 im) (neg.f64 (sqrt.f64 (/.f64 re im)))))
(*.f64 (neg.f64 (sqrt.f64 im)) (/.f64 1 (neg.f64 (sqrt.f64 (/.f64 re im)))))
(*.f64 1 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log.f64 (exp.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))))
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 3))
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (/.f64 (pow.f64 im 3/2) (pow.f64 (/.f64 re im) 3/2)))
(expm1.f64 (log1p.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))))
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))))
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))
(exp.f64 (neg.f64 (log.f64 (/.f64 (sqrt.f64 re) im))))
(+.f64 1 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im) 1))
(+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0)
(/.f64 im (sqrt.f64 re))

localize44.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 im (/.f64 re im))
9.7b
(sqrt.f64 (*.f64 2 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 im (/.f64 re im)) 1/6) (pow.f64 (/.f64 im (/.f64 re im)) 5/6)))))
16.0b
(pow.f64 (/.f64 im (/.f64 re im)) 5/6)
27.0b
(pow.f64 (/.f64 im (/.f64 re im)) 1/6)
Compiler

Compiled 123 to 55 computations (55.3% saved)

series99.0ms (1.6%)

Counts
3 → 60
Calls

18 calls:

TimeVariablePointExpression
34.0ms
re
@-inf
(pow.f64 (/.f64 im (/.f64 re im)) 1/6)
25.0ms
re
@0
(pow.f64 (/.f64 im (/.f64 re im)) 1/6)
21.0ms
im
@0
(pow.f64 (/.f64 im (/.f64 re im)) 1/6)
7.0ms
re
@inf
(pow.f64 (/.f64 im (/.f64 re im)) 1/6)
6.0ms
im
@inf
(pow.f64 (/.f64 im (/.f64 re im)) 1/6)

rewrite66.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
716×log-prod_binary64
394×pow-unpow_binary64
335×pow2_binary64
273×pow-pow_binary64
232×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01529
133529
2363729
Stop Event
node limit
Counts
3 → 93
Calls
Call 1
Inputs
(pow.f64 (/.f64 im (/.f64 re im)) 1/6)
(pow.f64 (/.f64 im (/.f64 re im)) 5/6)
(sqrt.f64 (*.f64 2 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 im (/.f64 re im)) 1/6) (pow.f64 (/.f64 im (/.f64 re im)) 5/6)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/18) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (pow.f64 (*.f64 im (/.f64 im re)) 1/18))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 1/6) (pow.f64 2 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) (pow.f64 (*.f64 im (/.f64 im re)) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 im 1/6) (pow.f64 (/.f64 im re) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/36) (pow.f64 (*.f64 im (/.f64 im re)) 5/36))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 2 1/6) (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 im re) 1/6) (pow.f64 im 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 1/6 (log.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/6 (log.f64 (*.f64 im (/.f64 im re)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/18) (pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/18) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/18) 2) (pow.f64 (*.f64 im (/.f64 im re)) 5/18))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/12) (pow.f64 (*.f64 im (/.f64 im re)) 5/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) (pow.f64 (*.f64 im (/.f64 im re)) 25/36))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 im 5/6) (pow.f64 (/.f64 re im) -5/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 25/36) (pow.f64 (*.f64 im (/.f64 im re)) 5/36))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 2 5/6) (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 5/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 5/6) (pow.f64 2 5/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 5/6) (pow.f64 (*.f64 im (/.f64 im re)) 5/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2)) 5/6) (pow.f64 (*.f64 im (/.f64 im re)) 5/18))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 re im) -5/6) (pow.f64 im 5/6))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 5))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 5/6 (log.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 5/6 (log.f64 (*.f64 im (/.f64 im re)))) 1))))))
((#(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 (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 (*.f64 im (/.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (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/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))))) (#(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 (*.f64 1/2 im) (/.f64 im re))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/12) (pow.f64 (*.f64 im (/.f64 im re)) 5/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))) (pow.f64 (*.f64 im (/.f64 im re)) 1/18))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (*.f64 im (/.f64 im re)) 1/12)) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 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 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 re (*.f64 im im)) -3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 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 (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/18) 9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/12) 6)))) (#(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 (sqrt.f64 (/.f64 re (*.f64 im im))) -1)))) (#(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))))))

simplify108.0ms (1.7%)

Algorithm
egg-herbie
Rules
807×fma-def_binary64
425×associate-*l*_binary64
404×associate-*r*_binary64
331×sqr-pow_binary64
285×exp-prod_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02682419
15572006
214191916
344611822
Stop Event
node limit
Counts
153 → 162
Calls
Call 1
Inputs
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(*.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 0 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))) 1)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1)
(*.f64 1 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/18) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (pow.f64 (*.f64 im (/.f64 im re)) 1/18))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 1/6) (pow.f64 2 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) (pow.f64 (*.f64 im (/.f64 im re)) 1/36))
(*.f64 (pow.f64 im 1/6) (pow.f64 (/.f64 im re) 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/36) (pow.f64 (*.f64 im (/.f64 im re)) 5/36))
(*.f64 (pow.f64 2 1/6) (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 1/6))
(*.f64 (pow.f64 1 1/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (/.f64 im re) 1/6) (pow.f64 im 1/6))
(sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))
(log.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))))
(cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(exp.f64 (*.f64 1/6 (log.f64 (*.f64 im (/.f64 im re)))))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 (*.f64 im (/.f64 im re)))) 1))
(+.f64 0 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))) 1)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6) 1)
(*.f64 1 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/18) (pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/18) 2))
(*.f64 (pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/18) 2) (pow.f64 (*.f64 im (/.f64 im re)) 5/18))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/12) (pow.f64 (*.f64 im (/.f64 im re)) 5/12))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) (pow.f64 (*.f64 im (/.f64 im re)) 25/36))
(*.f64 (pow.f64 im 5/6) (pow.f64 (/.f64 re im) -5/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 25/36) (pow.f64 (*.f64 im (/.f64 im re)) 5/36))
(*.f64 (pow.f64 2 5/6) (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 5/6))
(*.f64 (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 5/6) (pow.f64 2 5/6))
(*.f64 (pow.f64 1 5/6) (pow.f64 (*.f64 im (/.f64 im re)) 5/6))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2)) 5/6) (pow.f64 (*.f64 im (/.f64 im re)) 5/18))
(*.f64 (pow.f64 (/.f64 re im) -5/6) (pow.f64 im 5/6))
(sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 5))
(log.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/2))
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))
(exp.f64 (*.f64 5/6 (log.f64 (*.f64 im (/.f64 im re)))))
(exp.f64 (*.f64 (*.f64 5/6 (log.f64 (*.f64 im (/.f64 im re)))) 1))
(+.f64 0 (sqrt.f64 (*.f64 im (/.f64 im re))))
(+.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)))))))
(+.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)))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))) 1)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(*.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re))))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/12) (pow.f64 (*.f64 im (/.f64 im re)) 5/12))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))) (pow.f64 (*.f64 im (/.f64 im re)) 1/18))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (*.f64 im (/.f64 im re)) 1/12)) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 (neg.f64 re) im)))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(pow.f64 (pow.f64 (/.f64 re (*.f64 im im)) -3/2) 1/3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/4)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/6)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/18) 9)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/12) 6)
(pow.f64 (/.f64 re (*.f64 im im)) -1/2)
(pow.f64 (sqrt.f64 (/.f64 re (*.f64 im im))) -1)
(fabs.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(cbrt.f64 (pow.f64 (/.f64 re (*.f64 im im)) -3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1))
Outputs
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 re -1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 im))))
(pow.f64 (/.f64 (pow.f64 (/.f64 -1 im) -2) re) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 re -1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 im))))
(pow.f64 (/.f64 (pow.f64 (/.f64 -1 im) -2) re) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 re -1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 im))))
(pow.f64 (/.f64 (pow.f64 (/.f64 -1 im) -2) re) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 re -1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 im))))
(pow.f64 (/.f64 (pow.f64 (/.f64 -1 im) -2) re) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 im (neg.f64 im)) 1/6))
(pow.f64 (*.f64 (*.f64 im (neg.f64 im)) (/.f64 -1 re)) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 im (neg.f64 im)) 1/6))
(pow.f64 (*.f64 (*.f64 im (neg.f64 im)) (/.f64 -1 re)) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 im (neg.f64 im)) 1/6))
(pow.f64 (*.f64 (*.f64 im (neg.f64 im)) (/.f64 -1 re)) 1/6)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (/.f64 -1 re) 1/6) (pow.f64 (*.f64 im (neg.f64 im)) 1/6))
(pow.f64 (*.f64 (*.f64 im (neg.f64 im)) (/.f64 -1 re)) 1/6)
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 (exp.f64 -5/3) (log.f64 (/.f64 -1 im))) (pow.f64 re -5/6))
(pow.f64 (/.f64 (pow.f64 (/.f64 -1 im) -2) re) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 (exp.f64 -5/3) (log.f64 (/.f64 -1 im))) (pow.f64 re -5/6))
(pow.f64 (/.f64 (pow.f64 (/.f64 -1 im) -2) re) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 (exp.f64 -5/3) (log.f64 (/.f64 -1 im))) (pow.f64 re -5/6))
(pow.f64 (/.f64 (pow.f64 (/.f64 -1 im) -2) re) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 (exp.f64 -5/3) (log.f64 (/.f64 -1 im))) (pow.f64 re -5/6))
(pow.f64 (/.f64 (pow.f64 (/.f64 -1 im) -2) re) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 5/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 5/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (/.f64 -1 re) 5/6) (pow.f64 (*.f64 im (neg.f64 im)) 5/6))
(pow.f64 (*.f64 (*.f64 im (neg.f64 im)) (/.f64 -1 re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 5/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 5/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (/.f64 -1 re) 5/6) (pow.f64 (*.f64 im (neg.f64 im)) 5/6))
(pow.f64 (*.f64 (*.f64 im (neg.f64 im)) (/.f64 -1 re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 5/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 5/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (/.f64 -1 re) 5/6) (pow.f64 (*.f64 im (neg.f64 im)) 5/6))
(pow.f64 (*.f64 (*.f64 im (neg.f64 im)) (/.f64 -1 re)) 5/6)
(exp.f64 (*.f64 5/6 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 5/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 5/6) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (/.f64 -1 re) 5/6) (pow.f64 (*.f64 im (neg.f64 im)) 5/6))
(pow.f64 (*.f64 (*.f64 im (neg.f64 im)) (/.f64 -1 re)) 5/6)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(+.f64 0 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))
(*.f64 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))) 3)
(*.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 re -1/6)) (cbrt.f64 im)))) 3)
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))) 1)
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 1)
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(*.f64 1 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/18) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (pow.f64 (*.f64 im (/.f64 im re)) 1/18))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/18) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 1/6))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)) 1/6))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))) 1/6))
(*.f64 (cbrt.f64 (sqrt.f64 2)) (pow.f64 (*.f64 im (/.f64 im (/.f64 re 1/2))) 1/6))
(*.f64 (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 1/6) (pow.f64 2 1/6))
(*.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)) 1/6) (pow.f64 2 1/6))
(*.f64 (pow.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))) 1/6) (pow.f64 2 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im (/.f64 re 1/2))) 1/6) (pow.f64 2 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) (pow.f64 (*.f64 im (/.f64 im re)) 1/36))
(*.f64 (pow.f64 im 1/6) (pow.f64 (/.f64 im re) 1/6))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/36) (pow.f64 (*.f64 im (/.f64 im re)) 5/36))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) (pow.f64 (*.f64 im (/.f64 im re)) 1/36))
(*.f64 (pow.f64 2 1/6) (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)) 1/6) (pow.f64 2 1/6))
(*.f64 (pow.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))) 1/6) (pow.f64 2 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im (/.f64 re 1/2))) 1/6) (pow.f64 2 1/6))
(*.f64 (pow.f64 1 1/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(*.f64 (pow.f64 (/.f64 im re) 1/6) (pow.f64 im 1/6))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))
(log.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 1/6 (log.f64 (*.f64 im (/.f64 im re)))))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 (*.f64 im (/.f64 im re)))) 1))
(pow.f64 (exp.f64 1/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/6)
(*.f64 (pow.f64 re -1/6) (cbrt.f64 im))
(+.f64 0 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))))
(*.f64 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))) 3)
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))) 1)
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6) 1)
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(*.f64 1 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/18) (pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/18) 2))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/18) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) 6)
(*.f64 (pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/18) 2) (pow.f64 (*.f64 im (/.f64 im re)) 5/18))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/18) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) 6)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/12) (pow.f64 (*.f64 im (/.f64 im re)) 5/12))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) (pow.f64 (*.f64 im (/.f64 im re)) 25/36))
(*.f64 (pow.f64 im 5/6) (pow.f64 (/.f64 re im) -5/6))
(*.f64 (pow.f64 (/.f64 re im) -5/6) (pow.f64 im 5/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 25/36) (pow.f64 (*.f64 im (/.f64 im re)) 5/36))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) (pow.f64 (*.f64 im (/.f64 im re)) 25/36))
(*.f64 (pow.f64 2 5/6) (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 5/6))
(*.f64 (pow.f64 2 5/6) (pow.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)) 5/6))
(*.f64 (pow.f64 2 5/6) (pow.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))) 5/6))
(*.f64 (pow.f64 2 5/6) (pow.f64 (*.f64 im (/.f64 im (/.f64 re 1/2))) 5/6))
(*.f64 (pow.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re)) 5/6) (pow.f64 2 5/6))
(*.f64 (pow.f64 2 5/6) (pow.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)) 5/6))
(*.f64 (pow.f64 2 5/6) (pow.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))) 5/6))
(*.f64 (pow.f64 2 5/6) (pow.f64 (*.f64 im (/.f64 im (/.f64 re 1/2))) 5/6))
(*.f64 (pow.f64 1 5/6) (pow.f64 (*.f64 im (/.f64 im re)) 5/6))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2)) 5/6) (pow.f64 (*.f64 im (/.f64 im re)) 5/18))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/18) (pow.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2)) 5/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/18) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re))) 5/6))
(*.f64 (pow.f64 (/.f64 re im) -5/6) (pow.f64 im 5/6))
(*.f64 (pow.f64 im 5/6) (pow.f64 (/.f64 re im) -5/6))
(sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 5))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 5/2)
(log.f64 (exp.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/2))
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 5/6 (log.f64 (*.f64 im (/.f64 im re)))))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(exp.f64 (*.f64 (*.f64 5/6 (log.f64 (*.f64 im (/.f64 im re)))) 1))
(pow.f64 (exp.f64 5/6) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/6)
(+.f64 0 (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(+.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)))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))))
(*.f64 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 3)
(+.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)))))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))) 1)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3)
(pow.f64 (*.f64 (pow.f64 re -1/6) (cbrt.f64 im)) 3)
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3)
(pow.f64 (*.f64 (pow.f64 re -1/6) (cbrt.f64 im)) 3)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/12) (pow.f64 (*.f64 im (/.f64 im re)) 5/12))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 im (/.f64 im (/.f64 re 1/2)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (*.f64 1/2 im) (/.f64 im re))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 im (/.f64 im (/.f64 re 1/2)))))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/12) (pow.f64 (*.f64 im (/.f64 im re)) 5/12))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3)
(pow.f64 (*.f64 (pow.f64 re -1/6) (cbrt.f64 im)) 3)
(*.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))) (pow.f64 (*.f64 im (/.f64 im re)) 1/18))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/18) (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (*.f64 im (/.f64 im re)) 1/12)) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3)
(pow.f64 (*.f64 (pow.f64 re -1/6) (cbrt.f64 im)) 3)
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (sqrt.f64 (/.f64 (/.f64 re im) im)))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 (neg.f64 re) im)))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(pow.f64 (*.f64 (pow.f64 re -1/6) (cbrt.f64 im)) 3)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (/.f64 re (*.f64 im im)) -3/2) 1/3)
(cbrt.f64 (pow.f64 (/.f64 (/.f64 re im) im) -3/2))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/4)
(pow.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) 1/4)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/6)
(pow.f64 (/.f64 (pow.f64 im 6) (pow.f64 re 3)) 1/6)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/18) 9)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/12) 6)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3)
(pow.f64 (*.f64 (pow.f64 re -1/6) (cbrt.f64 im)) 3)
(pow.f64 (/.f64 re (*.f64 im im)) -1/2)
(pow.f64 (/.f64 (/.f64 re im) im) -1/2)
(pow.f64 (sqrt.f64 (/.f64 re (*.f64 im im))) -1)
(/.f64 1 (sqrt.f64 (/.f64 (/.f64 re im) im)))
(fabs.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(cbrt.f64 (pow.f64 (/.f64 re (*.f64 im im)) -3/2))
(cbrt.f64 (pow.f64 (/.f64 (/.f64 re im) im) -3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1))
(sqrt.f64 (*.f64 im (/.f64 im re)))

eval372.0ms (5.9%)

Compiler

Compiled 15704 to 9567 computations (39.1% saved)

prune211.0ms (3.4%)

Pruning

13 alts after pruning (7 fresh and 6 done)

PrunedKeptTotal
New7786784
Fresh415
Picked101
Done268
Total78513798
Error
0.1b
Counts
798 → 13
Alt Table
Click to see full alt table
StatusErrorProgram
48.0b
(*.f64 1/2 (pow.f64 (*.f64 (pow.f64 re -1/6) (cbrt.f64 im)) 3))
48.3b
(*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
47.0b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
47.0b
(*.f64 1/2 (+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0))
52.4b
(*.f64 1/2 (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12)))
47.0b
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
48.1b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im)))
51.8b
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
13.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
28.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
48.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
59.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 im (-.f64 (exp.f64 (log1p.f64 (/.f64 im (*.f64 re 2)))) 1)))))
29.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 239 to 182 computations (23.8% saved)

localize7.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 17 to 7 computations (58.8% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

6 calls:

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

rewrite39.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
533×pow1_binary64
511×add-sqr-sqrt_binary64
496×add-log-exp_binary64
496×log1p-expm1-u_binary64
496×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify37.0ms (0.6%)

Algorithm
egg-herbie
Rules
522×log-prod_binary64
412×associate-*l*_binary64
383×associate-*r*_binary64
314×fma-def_binary64
262×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
083484
1192418
2609364
34020352
Stop Event
node limit
Counts
42 → 44
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/2)))
(*.f64 (neg.f64 im) (/.f64 1 (neg.f64 (sqrt.f64 re))))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(neg.f64 (/.f64 im (neg.f64 (sqrt.f64 re))))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/2)))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (neg.f64 im) (/.f64 1 (neg.f64 (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 im (*.f64 (pow.f64 re 1/4) (pow.f64 re 1/4)))
(/.f64 im (pow.f64 re 1/2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 im (*.f64 (pow.f64 re 1/4) (pow.f64 re 1/4)))
(/.f64 im (pow.f64 re 1/2))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(neg.f64 (/.f64 im (neg.f64 (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))

localize12.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

Compiled 21 to 14 computations (33.3% saved)

series3.0ms (0%)

Counts
1 → 12
Calls

6 calls:

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

rewrite274.0ms (4.3%)

Algorithm
batch-egg-rewrite
Rules
551×pow1_binary64
511×add-log-exp_binary64
511×log1p-expm1-u_binary64
511×expm1-log1p-u_binary64
499×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify44.0ms (0.7%)

Algorithm
egg-herbie
Rules
1119×log-prod_binary64
496×distribute-rgt-in_binary64
488×distribute-lft-in_binary64
383×associate-*l*_binary64
333×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
040207
197207
2334161
32215161
47278161
Stop Event
node limit
Counts
23 → 13
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (+.f64 1 (*.f64 (pow.f64 re -1/2) im)) 1)
(pow.f64 (*.f64 (pow.f64 re -1/2) im) 1)
(pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) im)) 3)
(pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 re -1/4)) 2)
(sqrt.f64 (*.f64 (*.f64 im im) (pow.f64 re -1)))
(log.f64 (pow.f64 (exp.f64 im) (pow.f64 re -1/2)))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im)))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) im)))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(-.f64 (+.f64 1 (*.f64 (pow.f64 re -1/2) im)) 1)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (*.f64 (pow.f64 re -1/2) im) 1)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3) 1/3)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) im)) 3)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 re -1/4)) 2)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(sqrt.f64 (*.f64 (*.f64 im im) (pow.f64 re -1)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(log.f64 (pow.f64 (exp.f64 im) (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))

localize13.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 37 to 19 computations (48.6% saved)

series5.0ms (0.1%)

Counts
2 → 24
Calls

12 calls:

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

rewrite47.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
690×pow1_binary64
640×add-log-exp_binary64
640×log1p-expm1-u_binary64
640×expm1-log1p-u_binary64
623×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify52.0ms (0.8%)

Algorithm
egg-herbie
Rules
690×log-div_binary64
666×fma-def_binary64
475×fma-neg_binary64
428×associate-*l/_binary64
394×unswap-sqr_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0162873
1387780
21368702
36724702
Stop Event
node limit
Counts
91 → 80
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 2) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 -1 (/.f64 1 (/.f64 (neg.f64 (sqrt.f64 re)) im)))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 (pow.f64 re -1/2) (pow.f64 (/.f64 1 im) -1))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1) (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/4)) (/.f64 (sqrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 1 (neg.f64 (sqrt.f64 re))) (neg.f64 im))
(*.f64 (*.f64 (pow.f64 re -1/2) 1) im)
(*.f64 (*.f64 (pow.f64 re -1/2) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (*.f64 (pow.f64 re -1/2) (sqrt.f64 im)) (sqrt.f64 im))
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -2))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 re 3/2)))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (+.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(*.f64 1 (/.f64 (sqrt.f64 re) im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (/.f64 (sqrt.f64 re) im) 1)
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 1 im)))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (pow.f64 re 1/4) (*.f64 (pow.f64 re 1/4) (/.f64 1 im)))
(*.f64 (neg.f64 (sqrt.f64 re)) (/.f64 1 (neg.f64 im)))
(*.f64 (/.f64 1 im) (sqrt.f64 re))
(*.f64 (/.f64 (cbrt.f64 re) 1) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (/.f64 (pow.f64 re 1/4) 1) (/.f64 (pow.f64 re 1/4) im))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(*.f64 (/.f64 1 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 re) (sqrt.f64 im)) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(pow.f64 (/.f64 (sqrt.f64 re) im) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) -1)
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) 3)
(pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) 2)
(neg.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))
(sqrt.f64 (/.f64 re (*.f64 im im)))
(log.f64 (exp.f64 (/.f64 (sqrt.f64 re) im)))
(cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3))
(cbrt.f64 (/.f64 (pow.f64 re 3/2) (pow.f64 im 3)))
(expm1.f64 (log1p.f64 (/.f64 (sqrt.f64 re) im)))
(log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 re) im)))
(exp.f64 (log.f64 (/.f64 (sqrt.f64 re) im)))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (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 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 2))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 2) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 -1 (/.f64 1 (/.f64 (neg.f64 (sqrt.f64 re)) im)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (pow.f64 re -1/2) (pow.f64 (/.f64 1 im) -1))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 re (*.f64 im im)))) (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1) (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/4)) (/.f64 (sqrt.f64 im) (pow.f64 re 1/4)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 1 (neg.f64 (sqrt.f64 re))) (neg.f64 im))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (*.f64 (pow.f64 re -1/2) 1) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (*.f64 (pow.f64 re -1/2) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (*.f64 (pow.f64 re -1/2) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -2))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 re 3/2)))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(-.f64 (+.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(/.f64 (sqrt.f64 re) im)
(*.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (sqrt.f64 re) im) 1)
(/.f64 (sqrt.f64 re) im)
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 1 im)))
(*.f64 (cbrt.f64 re) (*.f64 (/.f64 1 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (pow.f64 re 1/4) (*.f64 (pow.f64 re 1/4) (/.f64 1 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (neg.f64 (sqrt.f64 re)) (/.f64 1 (neg.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 1 im) (sqrt.f64 re))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (cbrt.f64 re) 1) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (cbrt.f64 re) (*.f64 (/.f64 1 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (/.f64 (pow.f64 re 1/4) 1) (/.f64 (pow.f64 re 1/4) im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (cbrt.f64 re) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 1 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (cbrt.f64 re) (sqrt.f64 im)) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(*.f64 (cbrt.f64 re) (*.f64 (/.f64 1 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(pow.f64 (/.f64 (sqrt.f64 re) im) 1)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (/.f64 im (sqrt.f64 re)) -1)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3) 1/3)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) 3)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) 2)
(/.f64 (sqrt.f64 re) im)
(neg.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))
(/.f64 (sqrt.f64 re) im)
(sqrt.f64 (/.f64 re (*.f64 im im)))
(log.f64 (exp.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3))
(/.f64 (sqrt.f64 re) im)
(cbrt.f64 (/.f64 (pow.f64 re 3/2) (pow.f64 im 3)))
(expm1.f64 (log1p.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(exp.f64 (log.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)

localize10.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 30 to 9 computations (70% saved)

series8.0ms (0.1%)

Counts
2 → 12
Calls

12 calls:

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

rewrite45.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
714×pow1_binary64
661×add-log-exp_binary64
661×log1p-expm1-u_binary64
661×expm1-log1p-u_binary64
642×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify49.0ms (0.8%)

Algorithm
egg-herbie
Rules
373×fma-neg_binary64
318×log-prod_binary64
318×log-div_binary64
312×*-commutative_binary64
284×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0111661
1222565
2651486
32708472
47538472
Stop Event
node limit
Counts
57 → 59
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 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(-.f64 (+.f64 1 (sqrt.f64 (/.f64 im re))) 1)
(*.f64 (sqrt.f64 (/.f64 im re)) 1)
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1 re) 1/2))
(*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 re)))
(*.f64 1 (sqrt.f64 (/.f64 im re)))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im re))) (cbrt.f64 (/.f64 im re)))
(*.f64 (cbrt.f64 (/.f64 im re)) (cbrt.f64 (sqrt.f64 (/.f64 im re))))
(*.f64 (pow.f64 (/.f64 im re) 1/4) (pow.f64 (/.f64 im re) 1/4))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 im re))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (/.f64 im re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 im re)) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 im re)) 1/2))
(/.f64 (sqrt.f64 im) (sqrt.f64 re))
(/.f64 1 (sqrt.f64 (/.f64 re im)))
(/.f64 1 (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 re) (cbrt.f64 (sqrt.f64 im))))
(/.f64 (pow.f64 im 1/4) (/.f64 (sqrt.f64 re) (pow.f64 im 1/4)))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (neg.f64 re)))
(/.f64 (neg.f64 (sqrt.f64 im)) (neg.f64 (sqrt.f64 re)))
(pow.f64 (/.f64 im re) 1/2)
(pow.f64 (sqrt.f64 (/.f64 im re)) 1)
(pow.f64 (pow.f64 (/.f64 im re) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 im re))) 3)
(pow.f64 (pow.f64 (/.f64 im re) 1/4) 2)
(fabs.f64 (sqrt.f64 (/.f64 im re)))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 im re))))
(cbrt.f64 (pow.f64 (/.f64 im re) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 im re))))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 im re))))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 im re))))
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 im re) 3/2) (pow.f64 im 3/2)))
(cbrt.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 (/.f64 im re) 3/2)))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
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 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (+.f64 1 (sqrt.f64 (/.f64 im re))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(*.f64 (sqrt.f64 (/.f64 im re)) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 1 re) 1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 re)))
(/.f64 (sqrt.f64 im) (sqrt.f64 re))
(*.f64 1 (sqrt.f64 (/.f64 im re)))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im re))) (cbrt.f64 (/.f64 im re)))
(*.f64 (cbrt.f64 (/.f64 im re)) (cbrt.f64 (sqrt.f64 (/.f64 im re))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im re))) (cbrt.f64 (/.f64 im re)))
(*.f64 (pow.f64 (/.f64 im re) 1/4) (pow.f64 (/.f64 im re) 1/4))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 im re))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 im re))) (sqrt.f64 (cbrt.f64 (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 im re)) (sqrt.f64 (cbrt.f64 (/.f64 im re))))
(pow.f64 (cbrt.f64 (/.f64 im re)) 3/2)
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (/.f64 im re)))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 im re)) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 im re)) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 im re)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 im re))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 im re))) (sqrt.f64 (cbrt.f64 (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 im re)) (sqrt.f64 (cbrt.f64 (/.f64 im re))))
(pow.f64 (cbrt.f64 (/.f64 im re)) 3/2)
(/.f64 (sqrt.f64 im) (sqrt.f64 re))
(*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 re)))
(/.f64 1 (sqrt.f64 (/.f64 re im)))
(/.f64 1 (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 re)))
(/.f64 (sqrt.f64 im) (sqrt.f64 re))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 re) (cbrt.f64 (sqrt.f64 im))))
(*.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 re)) (cbrt.f64 (sqrt.f64 im)))
(*.f64 (cbrt.f64 (sqrt.f64 im)) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(/.f64 (pow.f64 im 1/4) (/.f64 (sqrt.f64 re) (pow.f64 im 1/4)))
(*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 re)))
(/.f64 (sqrt.f64 im) (sqrt.f64 re))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (neg.f64 re)))
(/.f64 (neg.f64 (sqrt.f64 im)) (neg.f64 (sqrt.f64 re)))
(*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 re)))
(/.f64 (sqrt.f64 im) (sqrt.f64 re))
(pow.f64 (/.f64 im re) 1/2)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(pow.f64 (sqrt.f64 (/.f64 im re)) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(pow.f64 (pow.f64 (/.f64 im re) 3/2) 1/3)
(cbrt.f64 (pow.f64 (/.f64 im re) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 im re))) 3)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(pow.f64 (pow.f64 (/.f64 im re) 1/4) 2)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(fabs.f64 (sqrt.f64 (/.f64 im re)))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 im re))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(cbrt.f64 (pow.f64 (/.f64 im re) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 im re))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 im re))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 im re))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 im re)) 1))
(+.f64 (sqrt.f64 (/.f64 im re)) 0)
(sqrt.f64 (/.f64 im re))
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(/.f64 im (sqrt.f64 re))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 im re) 3/2) (pow.f64 im 3/2)))
(cbrt.f64 (*.f64 (pow.f64 im 3/2) (pow.f64 (/.f64 im re) 3/2)))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 im re) 3/2) (pow.f64 im 3/2)))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))

localize21.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 im (/.f64 im re))
0.1b
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))
25.3b
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
26.9b
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
Compiler

Compiled 61 to 23 computations (62.3% saved)

series9.0ms (0.1%)

Counts
3 → 60
Calls

18 calls:

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

rewrite71.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
553×log-prod_binary64
407×exp-prod_binary64
341×pow-prod-down_binary64
286×pow2_binary64
253×pow-unpow_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01030
122726
2285024
Stop Event
node limit
Counts
3 → 88
Calls
Call 1
Inputs
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/36) (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (pow.f64 (*.f64 im (/.f64 im re)) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 im 1/12) (pow.f64 (/.f64 re im) -1/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 re im) -1/12) (pow.f64 im 1/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/12) (pow.f64 (/.f64 im (sqrt.f64 re)) 1/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4)) 1/24))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/36)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/12)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1/12))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/24) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)) (pow.f64 (*.f64 im (/.f64 im re)) 5/36))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 im 5/12) (pow.f64 (/.f64 re im) -5/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 re im) -5/12) (pow.f64 im 5/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/12) (pow.f64 (/.f64 im (sqrt.f64 re)) 5/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 5/6) (pow.f64 (*.f64 im (/.f64 im re)) 5/36))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4)) 5/24))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/12)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 5/12))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 5/24) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (sqrt.f64 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 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) 6)))) (#(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)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6) 1/6)))) (#(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 (cbrt.f64 (*.f64 im (/.f64 im re))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 im (sqrt.f64 re))))))) (#(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 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 im (sqrt.f64 re)))) 2)) (cbrt.f64 (log.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 im (sqrt.f64 re))))) (sqrt.f64 (log.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 im (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x 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 exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 im (sqrt.f64 re)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) 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 (/.f64 im (sqrt.f64 re))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) 3))))))

simplify70.0ms (1.1%)

Algorithm
egg-herbie
Rules
348×unswap-sqr_binary64
340×exp-sum_binary64
337×exp-prod_binary64
314×log-prod_binary64
301×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02712157
16011683
215721611
354871516
Stop Event
node limit
Counts
148 → 132
Calls
Call 1
Inputs
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(*.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 0 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))) 1)
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) 1)
(*.f64 1 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/36) (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (pow.f64 (*.f64 im (/.f64 im re)) 1/36))
(*.f64 (pow.f64 im 1/12) (pow.f64 (/.f64 re im) -1/12))
(*.f64 (pow.f64 (/.f64 re im) -1/12) (pow.f64 im 1/12))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/12) (pow.f64 (/.f64 im (sqrt.f64 re)) 1/12))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/36))
(sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(log.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))))
(cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(expm1.f64 (log1p.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))
(log1p.f64 (expm1.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))
(exp.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4)) 1/24))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/36)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/12)) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1/12))
(exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/24) 2))
(+.f64 0 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))) 1)
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6) 1)
(*.f64 1 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)) (pow.f64 (*.f64 im (/.f64 im re)) 5/36))
(*.f64 (pow.f64 im 5/12) (pow.f64 (/.f64 re im) -5/12))
(*.f64 (pow.f64 (/.f64 re im) -5/12) (pow.f64 im 5/12))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/12) (pow.f64 (/.f64 im (sqrt.f64 re)) 5/12))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 5/6) (pow.f64 (*.f64 im (/.f64 im re)) 5/36))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))
(log.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/2))
(expm1.f64 (log1p.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))
(log1p.f64 (expm1.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))
(exp.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4)) 5/24))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/2)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/12)) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 5/12))
(exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 5/24) 2))
(+.f64 0 (/.f64 im (sqrt.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) 6)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/4)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6) 1/6)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3/2)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(pow.f64 (exp.f64 1) (log.f64 (/.f64 im (sqrt.f64 re))))
(pow.f64 (exp.f64 1/2) (log.f64 (*.f64 im (/.f64 im re))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 im (sqrt.f64 re)))) 2)) (cbrt.f64 (log.f64 (/.f64 im (sqrt.f64 re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 im (sqrt.f64 re))))) (sqrt.f64 (log.f64 (/.f64 im (sqrt.f64 re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 im (sqrt.f64 re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) 3))
Outputs
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 re -1/12) (pow.f64 (/.f64 -1 im) -1/6))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 re -1/12) (pow.f64 (/.f64 -1 im) -1/6))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 re -1/12) (pow.f64 (/.f64 -1 im) -1/6))
(exp.f64 (*.f64 1/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 re -1/12) (pow.f64 (/.f64 -1 im) -1/6))
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 1/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (*.f64 im (neg.f64 im)) 1/12) (pow.f64 (/.f64 -1 re) 1/12))
(pow.f64 (*.f64 (/.f64 -1 re) (*.f64 im (neg.f64 im))) 1/12)
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 1/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (*.f64 im (neg.f64 im)) 1/12) (pow.f64 (/.f64 -1 re) 1/12))
(pow.f64 (*.f64 (/.f64 -1 re) (*.f64 im (neg.f64 im))) 1/12)
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 1/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (*.f64 im (neg.f64 im)) 1/12) (pow.f64 (/.f64 -1 re) 1/12))
(pow.f64 (*.f64 (/.f64 -1 re) (*.f64 im (neg.f64 im))) 1/12)
(exp.f64 (*.f64 1/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 1/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 1/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (*.f64 im (neg.f64 im)) 1/12) (pow.f64 (/.f64 -1 re) 1/12))
(pow.f64 (*.f64 (/.f64 -1 re) (*.f64 im (neg.f64 im))) 1/12)
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 2 (log.f64 im)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 re -5/12) (pow.f64 (/.f64 -1 im) -5/6))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 re -5/12) (pow.f64 (/.f64 -1 im) -5/6))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 re -5/12) (pow.f64 (/.f64 -1 im) -5/6))
(exp.f64 (*.f64 5/12 (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 im))) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (neg.f64 (log.f64 re))))
(*.f64 (pow.f64 re -5/12) (pow.f64 (/.f64 -1 im) -5/6))
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (*.f64 -1 (log.f64 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (pow.f64 im 2)) (log.f64 (/.f64 1 re)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 5/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 5/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (/.f64 -1 re) 5/12) (pow.f64 (*.f64 im (neg.f64 im)) 5/12))
(pow.f64 (*.f64 (/.f64 -1 re) (*.f64 im (neg.f64 im))) 5/12)
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 5/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 5/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (/.f64 -1 re) 5/12) (pow.f64 (*.f64 im (neg.f64 im)) 5/12))
(pow.f64 (*.f64 (/.f64 -1 re) (*.f64 im (neg.f64 im))) 5/12)
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 5/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 5/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (/.f64 -1 re) 5/12) (pow.f64 (*.f64 im (neg.f64 im)) 5/12))
(pow.f64 (*.f64 (/.f64 -1 re) (*.f64 im (neg.f64 im))) 5/12)
(exp.f64 (*.f64 5/12 (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 -1 (pow.f64 im 2))))))
(pow.f64 (exp.f64 5/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (neg.f64 (*.f64 im im)))))
(pow.f64 (exp.f64 5/12) (+.f64 (log.f64 (/.f64 -1 re)) (log.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (pow.f64 (/.f64 -1 re) 5/12) (pow.f64 (*.f64 im (neg.f64 im)) 5/12))
(pow.f64 (*.f64 (/.f64 -1 re) (*.f64 im (neg.f64 im))) 5/12)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(+.f64 0 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))))
(*.f64 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))) 3)
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))) 1)
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) 1)
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(*.f64 1 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/36) (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (pow.f64 (*.f64 im (/.f64 im re)) 1/36))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/36) (cbrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (pow.f64 im 1/12) (pow.f64 (/.f64 re im) -1/12))
(*.f64 (pow.f64 (/.f64 re im) -1/12) (pow.f64 im 1/12))
(*.f64 (pow.f64 (/.f64 re im) -1/12) (pow.f64 im 1/12))
(*.f64 (pow.f64 im 1/12) (pow.f64 (/.f64 re im) -1/12))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/12) (pow.f64 (/.f64 im (sqrt.f64 re)) 1/12))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/6) (pow.f64 (*.f64 im (/.f64 im re)) 1/36))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/36) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/6))
(sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(log.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6))))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(expm1.f64 (log1p.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(log1p.f64 (expm1.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)) 1))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4)) 1/24))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) 1/3))
(cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/36)) 3))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/12)) 2))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1/12))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)) 1) 1))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/24) 2))
(pow.f64 (exp.f64 1/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/12)
(*.f64 (pow.f64 re -1/12) (pow.f64 im 1/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1/6)
(+.f64 0 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))) 1)
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6) 1)
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(*.f64 1 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)) (pow.f64 (*.f64 im (/.f64 im re)) 5/36))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) (cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6)))
(*.f64 (pow.f64 im 5/12) (pow.f64 (/.f64 re im) -5/12))
(*.f64 (pow.f64 (/.f64 re im) -5/12) (pow.f64 im 5/12))
(*.f64 (pow.f64 (/.f64 re im) -5/12) (pow.f64 im 5/12))
(*.f64 (pow.f64 im 5/12) (pow.f64 (/.f64 re im) -5/12))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/12) (pow.f64 (/.f64 im (sqrt.f64 re)) 5/12))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 5/6) (pow.f64 (*.f64 im (/.f64 im re)) 5/36))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 5/6))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/6))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(log.f64 (exp.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6))))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/2))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(expm1.f64 (log1p.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(log1p.f64 (expm1.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)) 1))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4)) 5/24))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/2)) 1/3))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/36)) 3))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/12)) 2))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 5/12))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)) 1) 1))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 5/24) 2))
(pow.f64 (exp.f64 5/12) (fma.f64 2 (log.f64 im) (neg.f64 (log.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 5/12)
(*.f64 (pow.f64 re -5/12) (pow.f64 im 5/6))
(pow.f64 (/.f64 im (sqrt.f64 re)) 5/6)
(+.f64 0 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 1/6) 6)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/4)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6) 1/6)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3/2)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(/.f64 im (sqrt.f64 re))
(pow.f64 (exp.f64 1) (log.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(pow.f64 (exp.f64 1/2) (log.f64 (*.f64 im (/.f64 im re))))
(/.f64 im (sqrt.f64 re))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 im (sqrt.f64 re)))) 2)) (cbrt.f64 (log.f64 (/.f64 im (sqrt.f64 re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 im (sqrt.f64 re))))) (sqrt.f64 (log.f64 (/.f64 im (sqrt.f64 re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(/.f64 im (sqrt.f64 re))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 im (sqrt.f64 re)))) 1/3))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) 2))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1/2))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) 1))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) 1))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) 3))
(/.f64 im (sqrt.f64 re))

eval89.0ms (1.4%)

Compiler

Compiled 5576 to 2935 computations (47.4% saved)

prune66.0ms (1%)

Pruning

14 alts after pruning (3 fresh and 11 done)

PrunedKeptTotal
New3731374
Fresh022
Picked011
Done01010
Total37314387
Error
0.1b
Counts
387 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
48.0b
(*.f64 1/2 (pow.f64 (*.f64 (pow.f64 re -1/6) (cbrt.f64 im)) 3))
48.3b
(*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
47.0b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
47.0b
(*.f64 1/2 (+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0))
52.4b
(*.f64 1/2 (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12)))
47.0b
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
59.9b
(*.f64 1/2 (*.f64 (-.f64 (+.f64 1 (sqrt.f64 (/.f64 im re))) 1) (sqrt.f64 im)))
48.1b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im)))
51.8b
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
13.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
28.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
48.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
59.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 im (-.f64 (exp.f64 (log1p.f64 (/.f64 im (*.f64 re 2)))) 1)))))
29.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 165 to 127 computations (23% saved)

regimes147.0ms (2.3%)

Counts
25 → 3
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (+.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 0))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 im (*.f64 im (/.f64 1/2 re))))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 im im) (/.f64 re 1/2)))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im)))
(*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.f64 1/2 (*.f64 (-.f64 (+.f64 1 (sqrt.f64 (/.f64 im re))) 1) (sqrt.f64 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 5/12) (pow.f64 (*.f64 im (/.f64 im re)) 1/12)))
(*.f64 1/2 (pow.f64 (*.f64 (pow.f64 re -1/6) (cbrt.f64 im)) 3))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (exp.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 1/2 im)))))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 im (-.f64 (exp.f64 (log1p.f64 (/.f64 im (*.f64 re 2)))) 1)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 im (/.f64 re im)) 1/6) (pow.f64 (/.f64 im (/.f64 re im)) 5/6))))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (exp.f64 (-.f64 (*.f64 (log.f64 im) 2) (log.f64 (+.f64 re re)))))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6))))))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2)))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 im re) (*.f64 im 1/2))))))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
Calls

7 calls:

43.0ms
re
23.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
23.0ms
(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
16.0ms
(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
15.0ms
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Results
ErrorSegmentsBranch
6.0b4re
13.0b1im
5.5b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
5.5b2(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
5.5b3(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
5.5b3(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
13.0b1(*.f64 im im)
Compiler

Compiled 383 to 257 computations (32.9% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
7.538064924702586e-271
0.0ms
-2.3309350420543083e-287
0.0
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes96.0ms (1.5%)

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

3 calls:

48.0ms
re
23.0ms
im
20.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
11.3b7re
23.6b2im
23.6b2(*.f64 im im)
Compiler

Compiled 136 to 93 computations (31.6% saved)

bsearch119.0ms (1.9%)

Algorithm
binary-search
Steps
TimeLeftRight
14.0ms
1.4780377641713318e+23
2.916325779111241e+23
28.0ms
6.30752225474304e-46
4.04656338520992e-42
28.0ms
1.2903869654134814e-103
1.76105595998544e-103
20.0ms
-9.472605182030073e-73
-1.0152556305761446e-80
14.0ms
-2.205978773566805e-47
-2.5319611155259434e-48
15.0ms
-9.599808118988774e+30
-4.5897323424313354e+29
Results
81.0ms506×body256valid
14.0ms37×body2048valid
11.0ms32×body1024valid
3.0ms13×body512valid
2.0msbody4096valid
Compiler

Compiled 782 to 662 computations (15.3% saved)

regimes63.0ms (1%)

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

2 calls:

41.0ms
re
21.0ms
im
Results
ErrorSegmentsBranch
11.6b7re
23.1b3im
Compiler

Compiled 35 to 27 computations (22.9% saved)

bsearch162.0ms (2.6%)

Algorithm
binary-search
Steps
TimeLeftRight
34.0ms
1.4780377641713318e+23
2.916325779111241e+23
24.0ms
6.30752225474304e-46
4.04656338520992e-42
25.0ms
3.5707892050735046e-94
9.932249986512515e-91
21.0ms
-9.472605182030073e-73
-1.0152556305761446e-80
43.0ms
-2.205978773566805e-47
-2.5319611155259434e-48
15.0ms
-9.599808118988774e+30
-4.5897323424313354e+29
Results
98.0ms564×body256valid
17.0ms46×body2048valid
13.0ms43×body1024valid
4.0ms18×body512valid
0.0msbody4096valid
Compiler

Compiled 822 to 712 computations (13.4% saved)

regimes23.0ms (0.4%)

Accuracy

Total -41.8b remaining (-208.1%)

Threshold costs -41.8b (-208.1%)

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

2 calls:

13.0ms
re
9.0ms
im
Results
ErrorSegmentsBranch
20.1b4re
24.3b2im
Compiler

Compiled 27 to 20 computations (25.9% saved)

bsearch79.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
22.0ms
1.4780377641713318e+23
2.916325779111241e+23
29.0ms
6.30752225474304e-46
4.04656338520992e-42
28.0ms
3.5707892050735046e-94
9.932249986512515e-91
Results
24.0ms182×body256valid
21.0ms56×body2048valid
19.0ms49×body1024valid
8.0ms29×body512valid
2.0msbody4096valid
Compiler

Compiled 382 to 316 computations (17.3% saved)

simplify13.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
080358
195358
2101358
3103358
4104358
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) -6857655085992111/342882754299605542703496015699200579379649539745770754382000124278512336359979559197823481221022674600830295333617006984059886491421540493951506482390354393725906168794375391533474387361995876540094533828897487199474622120556760561893297406274466013266278287285969349365133754612883980378790581378220032) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (if (<=.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 0) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(if (<=.f64 re -2199999999999999987451179302912) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -1090146769225299/102844034832575377634685573909834406561420991602098741459288064) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -3340739001188557/8148143905337944345073782753637512644205873574663745002544561797417525199053346824733589504) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 5648671608315113/40347654345107946713373737062547060536401653012956617387979052445947619094013143666088208645002153616185987062074179584) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 6829486688100709/100433627766186892221372630771322662657637687111424552206336) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 269999999999999987417088) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))))
(if (<=.f64 re -460000000000000020405926494208) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -4113761393303015/205688069665150755269371147819668813122841983204197482918576128) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re -55948864096101/62165404551223330269422781018352605012557018849668464680057997111644937126566671941632) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 2660458394548483/9173994463960286046443283581208347763186259956673124494950355357547691504353939232280074212440502746218496) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 8741742960768907/12855504354071922204335696738729300820177623950262342682411008) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 240000000000000000000000) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))))
(if (<=.f64 re 2660458394548483/9173994463960286046443283581208347763186259956673124494950355357547691504353939232280074212440502746218496) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 728143801304855/12554203470773361527671578846415332832204710888928069025792) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 150000000000000004194304) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re))))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Outputs
(if (<=.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) -6857655085992111/342882754299605542703496015699200579379649539745770754382000124278512336359979559197823481221022674600830295333617006984059886491421540493951506482390354393725906168794375391533474387361995876540094533828897487199474622120556760561893297406274466013266278287285969349365133754612883980378790581378220032) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (if (<=.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 0) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))
(if (<=.f64 re -2199999999999999987451179302912) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -1090146769225299/102844034832575377634685573909834406561420991602098741459288064) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -3340739001188557/8148143905337944345073782753637512644205873574663745002544561797417525199053346824733589504) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 5648671608315113/40347654345107946713373737062547060536401653012956617387979052445947619094013143666088208645002153616185987062074179584) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 6829486688100709/100433627766186892221372630771322662657637687111424552206336) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 269999999999999987417088) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))))
(if (<=.f64 re -2199999999999999987451179302912) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -1090146769225299/102844034832575377634685573909834406561420991602098741459288064) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -3340739001188557/8148143905337944345073782753637512644205873574663745002544561797417525199053346824733589504) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 5648671608315113/40347654345107946713373737062547060536401653012956617387979052445947619094013143666088208645002153616185987062074179584) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 6829486688100709/100433627766186892221372630771322662657637687111424552206336) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 269999999999999987417088) (*.f64 1/2 (sqrt.f64 (*.f64 im 2))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))))
(if (<=.f64 re -460000000000000020405926494208) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -4113761393303015/205688069665150755269371147819668813122841983204197482918576128) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re -55948864096101/62165404551223330269422781018352605012557018849668464680057997111644937126566671941632) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 2660458394548483/9173994463960286046443283581208347763186259956673124494950355357547691504353939232280074212440502746218496) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 8741742960768907/12855504354071922204335696738729300820177623950262342682411008) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 240000000000000000000000) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))))
(if (<=.f64 re -460000000000000020405926494208) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -4113761393303015/205688069665150755269371147819668813122841983204197482918576128) (*.f64 1/2 (sqrt.f64 (*.f64 im 2))) (if (<=.f64 re -55948864096101/62165404551223330269422781018352605012557018849668464680057997111644937126566671941632) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 2660458394548483/9173994463960286046443283581208347763186259956673124494950355357547691504353939232280074212440502746218496) (*.f64 1/2 (sqrt.f64 (*.f64 im 2))) (if (<=.f64 re 8741742960768907/12855504354071922204335696738729300820177623950262342682411008) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 240000000000000000000000) (*.f64 1/2 (sqrt.f64 (*.f64 im 2))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))))
(if (<=.f64 re 2660458394548483/9173994463960286046443283581208347763186259956673124494950355357547691504353939232280074212440502746218496) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 728143801304855/12554203470773361527671578846415332832204710888928069025792) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 150000000000000004194304) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re))))))
(if (<=.f64 re 2660458394548483/9173994463960286046443283581208347763186259956673124494950355357547691504353939232280074212440502746218496) (*.f64 1/2 (sqrt.f64 (*.f64 im 2))) (if (<=.f64 re 728143801304855/12554203470773361527671578846415332832204710888928069025792) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 150000000000000004194304) (*.f64 1/2 (sqrt.f64 (*.f64 im 2))) (*.f64 1/2 (/.f64 im (sqrt.f64 re))))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 im 2)))
Compiler

Compiled 248 to 174 computations (29.8% saved)

soundness234.0ms (3.7%)

Algorithm
egg-herbie
Rules
696×fma-def_binary64
623×fma-neg_binary64
617×times-frac_binary64
532×log-prod_binary64
430×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01315
12015
23315
35315
48015
510915
618015
728615
840715
949015
1060715
1167915
1270215
1374315
1479215
1585515
1689115
1790015
01315
12015
23315
35315
48015
510915
618015
728615
840715
949015
1060715
1167915
1270215
1374315
1479215
1585515
1689115
1790015
0170994
1487940
21662933
37187933
082410
1168323
2518242
32289242
47026242
Stop Event
node limit
node limit
saturated
saturated
Compiler

Compiled 129 to 95 computations (26.4% saved)

end122.0ms (1.9%)

Compiler

Compiled 240 to 160 computations (33.3% saved)

Profiling

Loading profile data...