Details

Time bar (total: 8.0s)

analyze125.0ms (1.6%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%50%50%0%0%0%0
0%0%50%50%0%0%0%1
50%25%25%50%0%0%0%2
50%25%25%50%0%0%0%3
62.5%31.2%18.7%50%0%0%0%4
62.5%31.2%18.7%50%0%0%0%5
68.8%34.3%15.6%50%0%0%0%6
68.8%34.3%15.6%50%0%0%0%7
71.9%35.9%14%50%0%0%0%8
71.9%35.9%14%50%0%0%0%9
73.4%36.7%13.3%50%0%0%0%10
73.4%36.7%13.3%50%0%0%0%11
74.2%37.1%12.9%50%0%0%0%12
Compiler

Compiled 20 to 14 computations (30% saved)

sample2.4s (29.6%)

Results
1.3s6396×body256valid
397.0ms576×body4096valid
388.0ms647×body2048valid
239.0ms404×body1024valid
42.0ms233×body512valid
Bogosity

preprocess52.0ms (0.6%)

Algorithm
egg-herbie
Rules
884×fma-def
142×unsub-neg
140×distribute-lft-in
128×distribute-rgt-in
82×neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02158
13658
25458
39158
413858
518858
630858
747558
869258
983558
10107158
11123058
12124958
13125358
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)

simplify48.0ms (0.6%)

Algorithm
egg-herbie
Rules
608×fma-def
82×fma-neg
78×distribute-rgt-in
78×unsub-neg
76×distribute-lft-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01529
12329
23629
35829
48529
511429
618529
728629
841129
949029
1060629
1167829
1270229
1374229
1479129
1584829
1688329
1789329
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
Accurracy
78.6%
Counts
3 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
Compiler

Compiled 12 to 9 computations (25% saved)

localize11.0ms (0.1%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
99.6%
(-.f64 (hypot.f64 re im) re)
Compiler

Compiled 39 to 16 computations (59% saved)

series4.0ms (0%)

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
@inf
(-.f64 (hypot.f64 re im) re)
0.0ms
re
@0
(-.f64 (hypot.f64 re im) re)
0.0ms
im
@-inf
(-.f64 (hypot.f64 re im) re)

rewrite60.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1440×pow1
1332×add-exp-log
1332×log1p-expm1-u
1332×expm1-log1p-u
1304×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0613
113113
2178613
Stop Event
node limit
Counts
1 → 35
Calls
Call 1
Inputs
(-.f64 (hypot.f64 re im) re)
Outputs
(+.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 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/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)))
(exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re)))
(log1p.f64 (expm1.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))

simplify78.0ms (1%)

Algorithm
egg-herbie
Rules
1548×fma-def
1234×times-frac
1090×fma-neg
722×associate-/r*
654×associate-/l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01731929
14861821
216541807
371551807
Stop Event
node limit
Counts
59 → 97
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 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/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)))
(exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re)))
(log1p.f64 (expm1.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)
(fma.f64 1/2 (/.f64 (*.f64 re re) im) (-.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)) 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/2 (/.f64 (*.f64 re re) im) (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) im)) re)
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/2 (*.f64 (/.f64 im re) im)))
(+.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/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/2 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 1/16 (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 (*.f64 -1/2 (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64))) (pow.f64 re 7)))))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.f64 -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 im im) -1/2) 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 im im) -1/2) re)))
(fma.f64 re -2 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (*.f64 (*.f64 (/.f64 im re) im) -1/2)))
(+.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 im im) -1/2) re))))
(fma.f64 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) -1/16 (fma.f64 re -2 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (*.f64 (*.f64 (/.f64 im re) im) -1/2))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/2 (*.f64 (/.f64 im re) im)))
(+.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/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/2 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 1/16 (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/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (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)))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/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)
(fma.f64 1/2 (/.f64 (*.f64 re re) im) (-.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)) 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/2 (/.f64 (*.f64 re re) im) (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) im)) re)
(*.f64 -1 im)
(neg.f64 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(*.f64 -1 (+.f64 re 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 (-.f64 (*.f64 (/.f64 re (/.f64 im re)) -1/2) im) re)
(-.f64 (fma.f64 (/.f64 (*.f64 re re) im) -1/2 (neg.f64 im)) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(fma.f64 -1 re (fma.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im))))
(-.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (*.f64 (/.f64 re (/.f64 im re)) -1/2)) im) re)
(-.f64 (fma.f64 (/.f64 (*.f64 re re) im) -1/2 (*.f64 (/.f64 1/8 (pow.f64 im 3)) (pow.f64 re 4))) (+.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 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)
(-.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 (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)
(exp.f64 (log.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)
(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)

eval70.0ms (0.9%)

Compiler

Compiled 2071 to 1361 computations (34.3% saved)

prune17.0ms (0.2%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New92597
Fresh000
Picked011
Done000
Total92698
Accurracy
93.3%
Counts
98 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
55.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
26.4%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
19.0%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))))
19.0%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (*.f64 (/.f64 im re) im)))))
53.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 124 to 101 computations (18.5% saved)

localize9.0ms (0.1%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
100.0%
(sqrt.f64 (*.f64 2 (-.f64 im re)))
Compiler

Compiled 28 to 15 computations (46.4% saved)

series4.0ms (0.1%)

Counts
1 → 8
Calls

6 calls:

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

rewrite77.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1906×pow1
1766×add-exp-log
1764×log1p-expm1-u
1764×expm1-log1p-u
1730×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
119017
2240217
Stop Event
node limit
Counts
1 → 22
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (-.f64 im re)))
Outputs
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 1)
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(*.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (cbrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) (pow.f64 (*.f64 2 (-.f64 im re)) 1/4))
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 1/2))
(pow.f64 (*.f64 2 (-.f64 im re)) 1/2)
(pow.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 3)
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2) 1/3)
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) 2)
(fabs.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))

simplify52.0ms (0.7%)

Algorithm
egg-herbie
Rules
1408×associate-*r/
1284×associate-/r*
1158×associate-*l/
908×associate-/r/
632×fma-def
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01161404
12721308
28051184
332621096
Stop Event
node limit
Counts
30 → 61
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 1)
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(*.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (cbrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) (pow.f64 (*.f64 2 (-.f64 im re)) 1/4))
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 1/2))
(pow.f64 (*.f64 2 (-.f64 im re)) 1/2)
(pow.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 3)
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2) 1/3)
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) 2)
(fabs.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) im) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (*.f64 im 1/2))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 im im))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) im) (sqrt.f64 (/.f64 1 re))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 -1 (sqrt.f64 -1))) (*.f64 im im)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 (*.f64 im im) (/.f64 (sqrt.f64 -1) (sqrt.f64 2)))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (+.f64 (*.f64 im (*.f64 1/2 (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (/.f64 im -1) im) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(fma.f64 1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 im im))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))))
(fma.f64 1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) im) (sqrt.f64 (/.f64 1 re))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 -1 (sqrt.f64 -1))) (*.f64 im im)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))) (fma.f64 1/16 (*.f64 (*.f64 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 (*.f64 im im) (/.f64 (sqrt.f64 -1) (sqrt.f64 2))))))))
(fma.f64 1/16 (*.f64 (*.f64 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (+.f64 (*.f64 im (*.f64 1/2 (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (/.f64 im -1) im) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (sqrt.f64 (/.f64 1 im)) -1/2)))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))) (*.f64 (*.f64 re re) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (+.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) -1/8) (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (fma.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 re re) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (pow.f64 re 3) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 re (+.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) -1/8) (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))))) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (*.f64 (pow.f64 re 3) -1/16)))))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (cbrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) (pow.f64 (*.f64 2 (-.f64 im re)) 1/4))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 3/2)
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 2 (-.f64 im re))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 3/2)
(pow.f64 (*.f64 2 (-.f64 im re)) 1/2)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 3)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2))
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) 2)
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(fabs.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(+.f64 1 (-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))

localize7.0ms (0.1%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

localize52.0ms (0.7%)

Compiler

Compiled 28 to 23 computations (17.9% saved)

localize14.0ms (0.2%)

Local Accuracy

Found 4 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 2 (*.f64 1/2 (*.f64 (/.f64 im re) im)))
99.7%
(*.f64 (/.f64 im re) im)
99.7%
(*.f64 1/2 (*.f64 (/.f64 im re) im))
76.0%
(sqrt.f64 (*.f64 2 (*.f64 1/2 (*.f64 (/.f64 im re) im))))
Compiler

Compiled 52 to 24 computations (53.8% saved)

series43.0ms (0.5%)

Counts
4 → 84
Calls

24 calls:

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

rewrite138.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
1150×log-prod
754×prod-exp
672×pow-prod-down
528×pow-unpow
516×pow-prod-up
Iterations

Useful iterations: 1 (0.0ms)

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

simplify113.0ms (1.4%)

Algorithm
egg-herbie
Rules
1966×fma-def
1178×associate-*l/
506×log-prod
460×times-frac
426×associate-/l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02593902
15533780
218183752
Stop Event
node limit
Counts
248 → 136
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 (/.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 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.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 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)))
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 (*.f64 im im) re) 1/2)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 3/2)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(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 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(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))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im 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))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) 2))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 0 (*.f64 1/2 (/.f64 (*.f64 im im) re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 im re))) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 im re))) im))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 im re))) im))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 im re))) im))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))) 1)
(/.f64 (*.f64 1/2 (*.f64 im im)) re)
(/.f64 (*.f64 (*.f64 im im) 1/2) re)
(pow.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) 3)
(pow.f64 (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/4) 1/2)
(pow.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) 3) 1/3)
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)
(sqrt.f64 (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/4))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 im re))) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))) 2))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 (*.f64 1/2 im) re))))
(exp.f64 (+.f64 (log.f64 (/.f64 (*.f64 1/2 im) re)) (*.f64 (log.f64 im) 1)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) (*.f64 1/2 (/.f64 (*.f64 im im) re)))
(+.f64 0 (/.f64 (*.f64 im im) re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 im im) re))) 1)
(/.f64 im (/.f64 re im))
(/.f64 1 (/.f64 re (*.f64 im im)))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(pow.f64 (/.f64 (*.f64 im im) re) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 3)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 6)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/2)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6) 1/3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 2/3)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 4)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4))
(log.f64 (pow.f64 (exp.f64 (/.f64 im re)) im))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 im im) re))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 im im) re)))
(exp.f64 (log.f64 (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1) 1))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) 2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4)) 1/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6)) 1/3))
(exp.f64 (+.f64 (log.f64 im) (*.f64 (log.f64 (/.f64 im re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 im re))))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (/.f64 im re)) 1)))
(exp.f64 (+.f64 (log.f64 (/.f64 im re)) (*.f64 (log.f64 im) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im re)) 1) (log.f64 im)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im re)) 1) (*.f64 (log.f64 im) 1)))
(exp.f64 (+.f64 (log.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2)))
(exp.f64 (+.f64 (log.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) (log.f64 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) (log.f64 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1)))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 im im) re)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) (*.f64 1/2 (/.f64 (*.f64 im im) re)))
(+.f64 0 (/.f64 (*.f64 im im) re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 im im) re))) 1)
(/.f64 im (/.f64 re im))
(/.f64 1 (/.f64 re (*.f64 im im)))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(pow.f64 (/.f64 (*.f64 im im) re) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 3)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 6)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/2)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6) 1/3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 2/3)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 4)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4))
(log.f64 (pow.f64 (exp.f64 (/.f64 im re)) im))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 im im) re))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 im im) re)))
(exp.f64 (log.f64 (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1) 1))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) 2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4)) 1/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6)) 1/3))
(exp.f64 (+.f64 (log.f64 im) (*.f64 (log.f64 (/.f64 im re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 im re))))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (/.f64 im re)) 1)))
(exp.f64 (+.f64 (log.f64 (/.f64 im re)) (*.f64 (log.f64 im) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im re)) 1) (log.f64 im)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im re)) 1) (*.f64 (log.f64 im) 1)))
(exp.f64 (+.f64 (log.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2)))
(exp.f64 (+.f64 (log.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) (log.f64 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) (log.f64 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1)))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 im 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 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.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 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (/.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 re) im)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))
(*.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)))
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))
(*.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))) (sqrt.f64 2))
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 (*.f64 im im) re) 1/2)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 3/2)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(/.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 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(/.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))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im 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 (log.f64 (/.f64 (*.f64 im im) re)) 1) 1/2))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im 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))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3)) 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))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(+.f64 0 (*.f64 1/2 (/.f64 (*.f64 im im) re)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 im re))) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 im re))) im))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 im re))) im))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 im re))) im))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 im re))) im))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 im re))) im))))
(*.f64 im (log.f64 (sqrt.f64 (exp.f64 (/.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))) 1)
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 1/2 (*.f64 im im)) re)
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 (*.f64 im im) 1/2) re)
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(pow.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) 1)
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) 3)
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(pow.f64 (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/4) 1/2)
(sqrt.f64 (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/4))
(fabs.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))
(pow.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) 3) 1/3)
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(sqrt.f64 (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/4))
(fabs.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 im re))) im))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 im re))) im))))
(*.f64 im (log.f64 (sqrt.f64 (exp.f64 (/.f64 im re)))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) 3))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) 1))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))) 1) 1))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))) 3))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)))) 1/3))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))) 2))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 (*.f64 1/2 im) re))))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(exp.f64 (+.f64 (log.f64 (/.f64 (*.f64 1/2 im) re)) (*.f64 (log.f64 im) 1)))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(*.f64 1/2 (*.f64 (/.f64 im re) im))
(*.f64 im (*.f64 (/.f64 1/2 re) im))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) (*.f64 1/2 (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.f64 0 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 im im) re))) 1)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 1 (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 (*.f64 im im) re) 1)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 3)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 6)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/2)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6) 1/3)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 2/3)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 4)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log.f64 (pow.f64 (exp.f64 (/.f64 im re)) im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (log.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1) 1))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) 2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) 2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) 3))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4)) 1/2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6)) 1/3))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 im) (*.f64 (log.f64 (/.f64 im re)) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 im re))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (/.f64 im re)) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 (/.f64 im re)) (*.f64 (log.f64 im) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im re)) 1) (log.f64 im)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im re)) 1) (*.f64 (log.f64 im) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) (log.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) (log.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 im im) re)) (*.f64 1/2 (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.f64 0 (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 im re)) im))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 im im) re))) 1)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 1 (/.f64 re (*.f64 im im)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 (*.f64 im im) re) 1)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) 3)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 6)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/2)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6) 1/3)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 2/3)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 4)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log.f64 (pow.f64 (exp.f64 (/.f64 im re)) im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 im im) re))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (log.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1) 1))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) 2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) 2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) 3))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4)) 1/2))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6)) 1/3))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 im) (*.f64 (log.f64 (/.f64 im re)) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (/.f64 im re))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (/.f64 im re)) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 (/.f64 im re)) (*.f64 (log.f64 im) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im re)) 1) (log.f64 im)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im re)) 1) (*.f64 (log.f64 im) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (log.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) (log.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) (log.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))

localize15.0ms (0.2%)

Local Accuracy

Found 4 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))))
99.8%
(/.f64 im (/.f64 re im))
99.7%
(*.f64 1/2 (/.f64 im (/.f64 re im)))
76.0%
(sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 im (/.f64 re im)))))
Compiler

Compiled 52 to 24 computations (53.8% saved)

series5.0ms (0.1%)

Counts
4 → 72
Calls

24 calls:

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

rewrite125.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1338×log-prod
706×pow-prod-down
622×pow-unpow
576×pow-prod-up
512×pow-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01372
127672
2325172
Stop Event
node limit
Counts
4 → 170
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 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))))
Outputs
(+.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im 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 (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 (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 1/2 (*.f64 im (/.f64 im re)))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (*.f64 im (/.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 (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)) 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 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 2)
(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 im (/.f64 im re)) 3/2))
(expm1.f64 (log1p.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 (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))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2)) 1/3))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 im (/.f64 im re)))) 2))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(+.f64 0 (*.f64 1/2 (*.f64 im (/.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 (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 1/2 (*.f64 im (/.f64 im re))))) 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 1/2 (neg.f64 im)) (/.f64 (neg.f64 re) im))
(/.f64 (*.f64 (neg.f64 im) 1/2) (/.f64 (neg.f64 re) im))
(/.f64 (/.f64 (*.f64 1/2 im) re) (pow.f64 im -1))
(/.f64 (/.f64 (*.f64 1/2 im) 1) (/.f64 re im))
(/.f64 (/.f64 (*.f64 1/2 im) (cbrt.f64 (pow.f64 (/.f64 im re) -2))) (cbrt.f64 (/.f64 re im)))
(/.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)
(pow.f64 (/.f64 (/.f64 re im) (*.f64 1/2 im)) -1)
(pow.f64 (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 3)
(pow.f64 (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) (pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3)) 1/3)
(pow.f64 (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (sqrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 2)
(pow.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) 3)
(pow.f64 (*.f64 (pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3) (pow.f64 (*.f64 im (/.f64 im re)) 3/2)) 1/3)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) (pow.f64 (*.f64 im (/.f64 im re)) 1/4)) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2))
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 2))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(+.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) (*.f64 1/2 (*.f64 im (/.f64 im re))))
(+.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 1/2 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (*.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 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 (*.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 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 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 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2))
(*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (neg.f64 im) (/.f64 1 (/.f64 (neg.f64 re) im)))
(*.f64 (/.f64 im re) im)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(*.f64 (sqrt.f64 (/.f64 im re)) (/.f64 im (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 re) (*.f64 im 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) re) (*.f64 (cbrt.f64 im) im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 (/.f64 im re) -2))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (sqrt.f64 im) re) (pow.f64 im 3/2))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (pow.f64 (/.f64 im re) -2))) (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 (*.f64 2 (*.f64 im (/.f64 im re))) 1/2)
(*.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.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 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 (*.f64 (/.f64 im re) 1) im)
(*.f64 (*.f64 (/.f64 im re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (*.f64 (/.f64 im re) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(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)) 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 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 4)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(pow.f64 (/.f64 (/.f64 re (*.f64 im im)) 1) -1)
(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))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 2))
(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 (log.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) 3))
(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 (/.f64 re (*.f64 im im))) -1))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(+.f64 0 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))))
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 1)
(pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) 3)
(pow.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4) 1/2)
(pow.f64 (pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) 2)
(sqrt.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4))
(log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(exp.f64 (log.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 2))
(log1p.f64 (expm1.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))))

simplify103.0ms (1.3%)

Algorithm
egg-herbie
Rules
1248×hypot-def
1120×log-prod
994×times-frac
684×cube-prod
576×associate-*r*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03804706
18614556
234034556
Stop Event
node limit
Counts
242 → 215
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 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(+.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im 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 (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 (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 1/2 (*.f64 im (/.f64 im re)))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (*.f64 im (/.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 (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)) 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 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 2)
(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 im (/.f64 im re)) 3/2))
(expm1.f64 (log1p.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 (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))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2)) 1/3))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 im (/.f64 im re)))) 2))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(+.f64 0 (*.f64 1/2 (*.f64 im (/.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 (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 1/2 (*.f64 im (/.f64 im re))))) 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 1/2 (neg.f64 im)) (/.f64 (neg.f64 re) im))
(/.f64 (*.f64 (neg.f64 im) 1/2) (/.f64 (neg.f64 re) im))
(/.f64 (/.f64 (*.f64 1/2 im) re) (pow.f64 im -1))
(/.f64 (/.f64 (*.f64 1/2 im) 1) (/.f64 re im))
(/.f64 (/.f64 (*.f64 1/2 im) (cbrt.f64 (pow.f64 (/.f64 im re) -2))) (cbrt.f64 (/.f64 re im)))
(/.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)
(pow.f64 (/.f64 (/.f64 re im) (*.f64 1/2 im)) -1)
(pow.f64 (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 3)
(pow.f64 (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) (pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3)) 1/3)
(pow.f64 (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (sqrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 2)
(pow.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) 3)
(pow.f64 (*.f64 (pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3) (pow.f64 (*.f64 im (/.f64 im re)) 3/2)) 1/3)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) (pow.f64 (*.f64 im (/.f64 im re)) 1/4)) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2))
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 2))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(+.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) (*.f64 1/2 (*.f64 im (/.f64 im re))))
(+.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 1/2 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (*.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 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 (*.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 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 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 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2))
(*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (neg.f64 im) (/.f64 1 (/.f64 (neg.f64 re) im)))
(*.f64 (/.f64 im re) im)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/4) (pow.f64 (*.f64 im (/.f64 im re)) 1/4))
(*.f64 (sqrt.f64 (/.f64 im re)) (/.f64 im (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 re) (*.f64 im 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) re) (*.f64 (cbrt.f64 im) im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 (/.f64 im re) -2))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (sqrt.f64 im) re) (pow.f64 im 3/2))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (pow.f64 (/.f64 im re) -2))) (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 (*.f64 2 (*.f64 im (/.f64 im re))) 1/2)
(*.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.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 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 (*.f64 (/.f64 im re) 1) im)
(*.f64 (*.f64 (/.f64 im re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (*.f64 (/.f64 im re) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(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)) 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 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 4)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(pow.f64 (/.f64 (/.f64 re (*.f64 im im)) 1) -1)
(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))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 2))
(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 (log.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) 3))
(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 (/.f64 re (*.f64 im im))) -1))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(+.f64 0 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))))
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 1)
(pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) 3)
(pow.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4) 1/2)
(pow.f64 (pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) 2)
(sqrt.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4))
(log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(exp.f64 (log.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 2))
(log1p.f64 (expm1.f64 (*.f64 1/2 (sqrt.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 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(+.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(+.f64 0 (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im 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 (*.f64 im im) re))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))) 1)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(*.f64 1 (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(*.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 (*.f64 im im) re))
(*.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 (*.f64 im im) re))
(*.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 (*.f64 im im) re))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (sqrt.f64 2))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (/.f64 re im)))) (sqrt.f64 2))
(*.f64 (sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/2 re))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (sqrt.f64 2))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (/.f64 re im)))) (sqrt.f64 2))
(*.f64 (sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/2 re))) (sqrt.f64 2))
(*.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 (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)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 1)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3/2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/4)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/6)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) 1/3)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(pow.f64 (/.f64 re (*.f64 im im)) -1/2)
(pow.f64 (sqrt.f64 (/.f64 re (*.f64 im im))) -1)
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(fabs.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1/2))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) 1))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(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 (*.f64 im im) re))
(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 (*.f64 im im) re))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2)) 1/3))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 im (/.f64 im re)))) 2))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(+.f64 0 (*.f64 1/2 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 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 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 1/2 (*.f64 im (/.f64 im re))))) 1)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(/.f64 1/2 (/.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 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 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(/.f64 (*.f64 1/2 im) (/.f64 re im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 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 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 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 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 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 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(/.f64 (/.f64 (*.f64 1/2 im) re) (pow.f64 im -1))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 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 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(/.f64 (/.f64 (*.f64 1/2 im) (cbrt.f64 (pow.f64 (/.f64 im re) -2))) (cbrt.f64 (/.f64 re im)))
(/.f64 (*.f64 im 1/2) (*.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 (pow.f64 (/.f64 im re) -2))))
(*.f64 (/.f64 im (cbrt.f64 (/.f64 re im))) (/.f64 1/2 (cbrt.f64 (pow.f64 (/.f64 im re) -2))))
(/.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 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 3)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2) 1/2)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3) 1/3)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 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 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(pow.f64 (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 3)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(pow.f64 (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) (pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3)) 1/3)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(pow.f64 (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (sqrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 2)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(pow.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) 3)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(pow.f64 (*.f64 (pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3) (pow.f64 (*.f64 im (/.f64 im re)) 3/2)) 1/3)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) (pow.f64 (*.f64 im (/.f64 im re)) 1/4)) 2)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 1))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 1) 1))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 3))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 1/3))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 2))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 1/2 (/.f64 re im)))
(*.f64 (*.f64 im im) (/.f64 1/2 re))
(+.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) (*.f64 1/2 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(+.f64 0 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(*.f64 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 (*.f64 im im) re)
(*.f64 2 (*.f64 1/2 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 1/2 (*.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) (pow.f64 (*.f64 im (/.f64 im re)) 3/4))
(*.f64 (pow.f64 (/.f64 (*.f64 im im) re) 1/4) (pow.f64 (/.f64 (*.f64 im im) re) 3/4))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (sqrt.f64 2) (pow.f64 (*.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (pow.f64 (*.f64 im (/.f64 im re)) 2))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 im im) re) 2))))
(*.f64 (neg.f64 im) (/.f64 1 (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.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 (*.f64 im im) re) 1/4) (pow.f64 (/.f64 (*.f64 im im) re) 3/4))
(*.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 (*.f64 im im) re)
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re im)) -2) (/.f64 im (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (*.f64 (cbrt.f64 im) im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 (/.f64 im re) -2))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 (/.f64 im re) -2))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 (/.f64 im re) -2))))
(*.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 (*.f64 im im) re)
(*.f64 (/.f64 (sqrt.f64 im) re) (pow.f64 im 3/2))
(/.f64 (sqrt.f64 im) (/.f64 re (pow.f64 im 3/2)))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (pow.f64 (/.f64 im re) -2))) (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))))
(/.f64 (/.f64 im (cbrt.f64 (/.f64 re im))) (cbrt.f64 (pow.f64 (/.f64 im re) -2)))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 2 (*.f64 im (/.f64 im re))) 1/2)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.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 (*.f64 im im) re) 1/6) (pow.f64 (/.f64 (*.f64 im im) re) 5/6))
(*.f64 (pow.f64 (*.f64 (*.f64 im (/.f64 im re)) 2) 1/2) (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) 2))))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (/.f64 re im)))) (sqrt.f64 (*.f64 2 (/.f64 (*.f64 im im) re))))
(*.f64 (sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/2 re))) (sqrt.f64 (*.f64 2 (/.f64 (*.f64 im im) re))))
(*.f64 (*.f64 (/.f64 im re) 1) im)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 (/.f64 im re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 (/.f64 im re) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 6)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3/2) 2/3)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/4) 4)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (/.f64 (/.f64 re (*.f64 im im)) 1) -1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2) 2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1) 2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) 3))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 im (/.f64 im re)))) 1/2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3)) 1/3))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (*.f64 (log.f64 (/.f64 re (*.f64 im im))) -1))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(+.f64 0 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))))
(*.f64 3 (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)))))))
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))))
(*.f64 2 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))))
(*.f64 2 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 1)
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(pow.f64 (cbrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) 3)
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(pow.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4) 1/2)
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(pow.f64 (pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3) 1/3)
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(pow.f64 (sqrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) 2)
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(sqrt.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 im im) re)))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(cbrt.f64 (pow.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))) 3))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(exp.f64 (log.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) 1))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))) 1) 1))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 3))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 1/3))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re)))))) 2))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))

eval244.0ms (3%)

Compiler

Compiled 6684 to 4205 computations (37.1% saved)

prune100.0ms (1.2%)

Pruning

10 alts after pruning (6 fresh and 4 done)

PrunedKeptTotal
New4066412
Fresh000
Picked101
Done145
Total40810418
Accurracy
100.0%
Counts
418 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
25.9%
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
25.5%
(*.f64 1/2 (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3))
23.8%
(*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
25.8%
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
55.2%
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
19.0%
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
78.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
55.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
26.4%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
53.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 162 to 127 computations (21.6% saved)

localize11.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
100.0%
(sqrt.f64 (-.f64 im re))
99.4%
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
Compiler

Compiled 31 to 16 computations (48.4% saved)

series4.0ms (0%)

Counts
2 → 16
Calls

12 calls:

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

rewrite71.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
926×log-prod
746×prod-exp
718×prod-diff
630×pow-prod-down
482×pow-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01028
121028
2258828
Stop Event
node limit
Counts
2 → 74
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
(sqrt.f64 (-.f64 im re))
Outputs
(+.f64 0 (sqrt.f64 (*.f64 (-.f64 im re) 2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 1)
(pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 1)
(pow.f64 (pow.f64 (*.f64 (-.f64 im re) 2) 1/6) 3)
(pow.f64 (*.f64 (-.f64 im re) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (-.f64 im re) 2) 3/2) 1/3)
(pow.f64 (pow.f64 (*.f64 (-.f64 im re) 2) 1/4) 2)
(sqrt.f64 (*.f64 (-.f64 im re) 2))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 im re) 2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 1) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 im re) 2) 1/6)) 3))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 im re) 2)) 1/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 im re) 2) 3/2)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 im re) 2) 1/4)) 2))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (-.f64 im re))) (*.f64 (log.f64 (sqrt.f64 2)) 1)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (-.f64 im re))) (*.f64 (log.f64 2) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (-.f64 im re)) 1/2) (log.f64 (sqrt.f64 2))))
(exp.f64 (+.f64 (*.f64 (log.f64 (-.f64 im re)) 1/2) (*.f64 (log.f64 (sqrt.f64 2)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (-.f64 im re)) 1/2) (*.f64 (log.f64 2) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 im re))) 1) (log.f64 (sqrt.f64 2))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 im re))) 1) (*.f64 (log.f64 (sqrt.f64 2)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 im re))) 1) (*.f64 (log.f64 2) 1/2)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 2)) (*.f64 (log.f64 (-.f64 im re)) 1/2)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 2)) (*.f64 (log.f64 (sqrt.f64 (-.f64 im re))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 2)) 1) (log.f64 (sqrt.f64 (-.f64 im re)))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 2)) 1) (*.f64 (log.f64 (-.f64 im re)) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 2)) 1) (*.f64 (log.f64 (sqrt.f64 (-.f64 im re))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 2) 1/2) (log.f64 (sqrt.f64 (-.f64 im re)))))
(exp.f64 (+.f64 (*.f64 (log.f64 2) 1/2) (*.f64 (log.f64 (-.f64 im re)) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 2) 1/2) (*.f64 (log.f64 (sqrt.f64 (-.f64 im re))) 1)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(+.f64 0 (sqrt.f64 (-.f64 im re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (-.f64 im re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (-.f64 im re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (-.f64 im re))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (-.f64 im re))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 im re)))) 1)
(*.f64 (sqrt.f64 (-.f64 im re)) 1)
(*.f64 1 (sqrt.f64 (-.f64 im re)))
(*.f64 (cbrt.f64 (-.f64 im re)) (pow.f64 (-.f64 im re) 1/6))
(*.f64 (pow.f64 (-.f64 im re) 1/6) (cbrt.f64 (-.f64 im re)))
(*.f64 (pow.f64 (-.f64 im re) 1/4) (pow.f64 (-.f64 im re) 1/4))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (hypot.f64 im (sqrt.f64 (*.f64 re (+.f64 im re)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (sqrt.f64 (+.f64 im re)))
(pow.f64 (-.f64 im re) 1/2)
(pow.f64 (sqrt.f64 (-.f64 im re)) 1)
(pow.f64 (cbrt.f64 (-.f64 im re)) 3/2)
(pow.f64 (pow.f64 (-.f64 im re) 1/6) 3)
(pow.f64 (pow.f64 (-.f64 im re) 2) 1/4)
(pow.f64 (pow.f64 (-.f64 im re) 3) 1/6)
(pow.f64 (pow.f64 (-.f64 im re) 3/2) 1/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))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (-.f64 im re)))))
(cbrt.f64 (pow.f64 (-.f64 im re) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (-.f64 im re))))
(hypot.f64 (sqrt.f64 im) (sqrt.f64 (neg.f64 re)))
(hypot.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 im))
(exp.f64 (log.f64 (sqrt.f64 (-.f64 im re))))
(exp.f64 (*.f64 (log.f64 (-.f64 im re)) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 im re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 im re)) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 im re)) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 im re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 im re) 1/6)) 3))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 (-.f64 im re))) 1/3))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (-.f64 im re))) 2))
(log1p.f64 (expm1.f64 (sqrt.f64 (-.f64 im re))))

simplify83.0ms (1%)

Algorithm
egg-herbie
Rules
1410×fma-def
1092×associate-*r*
914×associate-*l*
764×log-prod
750×exp-prod
Iterations

Useful iterations: 2 (0.0ms)

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

localize6.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
99.8%
(/.f64 im (sqrt.f64 re))
Compiler

Compiled 17 to 7 computations (58.8% saved)

series3.0ms (0%)

Counts
2 → 24
Calls

12 calls:

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

rewrite68.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1786×pow1
1646×add-exp-log
1646×log1p-expm1-u
1646×expm1-log1p-u
1608×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0928
118428
2224428
Stop Event
node limit
Counts
2 → 51
Calls
Call 1
Inputs
(/.f64 im (sqrt.f64 re))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
Outputs
(-.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 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))
(*.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 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (neg.f64 im) (/.f64 1 (neg.f64 (sqrt.f64 re))))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.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) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.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 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/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))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 re 3/2)))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (+.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1)
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 im 1/2)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 (neg.f64 (*.f64 im 1/2)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 (neg.f64 im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (neg.f64 im) 1/2) (neg.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im 1/2) 1) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im 1/2) (pow.f64 re 1/4)) (pow.f64 re 1/4))
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 1)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 3)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 2)
(sqrt.f64 (*.f64 1/4 (/.f64 (*.f64 im im) re)))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))

simplify70.0ms (0.9%)

Algorithm
egg-herbie
Rules
2052×fma-def
1360×log-prod
968×associate-*r/
818×associate-/l*
792×associate-*l/
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01311785
13131545
211251317
364571317
Stop Event
node limit
Counts
75 → 76
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 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.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 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))
(*.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 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (neg.f64 im) (/.f64 1 (neg.f64 (sqrt.f64 re))))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.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) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.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 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/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))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 re 3/2)))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (+.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1)
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 im 1/2)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 (neg.f64 (*.f64 im 1/2)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 (neg.f64 im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (neg.f64 im) 1/2) (neg.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im 1/2) 1) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im 1/2) (pow.f64 re 1/4)) (pow.f64 re 1/4))
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 1)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 3)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 2)
(sqrt.f64 (*.f64 1/4 (/.f64 (*.f64 im im) re)))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
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 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(-.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 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))
(*.f64 im (pow.f64 re -1/2))
(*.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 (/.f64 im 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 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.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 (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 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.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) 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 (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 (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) 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 (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 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (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 (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 (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 (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 (/.f64 im 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))
(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))
(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))
(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))
(-.f64 (+.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1)
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 im 1/2)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (neg.f64 (*.f64 im 1/2)) (neg.f64 (sqrt.f64 re)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 (neg.f64 im)) (neg.f64 (sqrt.f64 re)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 (neg.f64 im) 1/2) (neg.f64 (sqrt.f64 re)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im 1/2) 1) (sqrt.f64 re))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (cbrt.f64 (sqrt.f64 re))) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 im (cbrt.f64 re)) (/.f64 1/2 (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 (*.f64 im 1/2) (pow.f64 re 1/4)) (pow.f64 re 1/4))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 1)
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 3)
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3) 1/3)
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 2)
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(sqrt.f64 (*.f64 1/4 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1/4))
(sqrt.f64 (*.f64 (*.f64 (/.f64 im re) im) 1/4))
(sqrt.f64 (*.f64 (/.f64 1/4 re) (*.f64 im im)))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))

localize46.0ms (0.6%)

Local Accuracy

Found 3 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
99.7%
(*.f64 im (/.f64 im re))
76.0%
(sqrt.f64 (*.f64 im (/.f64 im re)))
Compiler

Compiled 27 to 8 computations (70.4% saved)

series2.0ms (0%)

Counts
3 → 48
Calls

18 calls:

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

rewrite82.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1968×pow1
1810×add-exp-log
1810×log1p-expm1-u
1810×expm1-log1p-u
202×add-sqr-sqrt
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01053
120441
2249441
Stop Event
node limit
Counts
3 → 61
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
Outputs
(-.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 (/.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 (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 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/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))))
(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))
(log1p.f64 (expm1.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 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (neg.f64 (*.f64 im 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 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/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))
(cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 im re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 im re) 3) (pow.f64 im 3)))
(expm1.f64 (log1p.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))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(-.f64 (+.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1)
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 1)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 3)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 2)
(sqrt.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))

simplify86.0ms (1.1%)

Algorithm
egg-herbie
Rules
1878×log-prod
1264×unswap-sqr
824×times-frac
690×associate-*r/
656×fma-neg
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01422121
13221929
212591739
374241739
Stop Event
node limit
Counts
109 → 85
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 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.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 (/.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 (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 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/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))))
(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))
(log1p.f64 (expm1.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 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (neg.f64 (*.f64 im 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 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/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))
(cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 im re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 im re) 3) (pow.f64 im 3)))
(expm1.f64 (log1p.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))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(-.f64 (+.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1)
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 1)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 3)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 2)
(sqrt.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
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 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(-.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 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 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 (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 (/.f64 im re)) (sqrt.f64 im))
(*.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 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im 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 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im 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 (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 (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 (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))
(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))
(exp.f64 (*.f64 (log.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))
(exp.f64 (*.f64 (log.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))
(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))
(-.f64 (+.f64 1 (*.f64 im (/.f64 im re))) 1)
(/.f64 im (/.f64 re im))
(*.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 re im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 im re) 3)))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 im re) 3) (pow.f64 im 3)))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(-.f64 (+.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1)
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 1)
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 3)
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3) 1/3)
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 2)
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(sqrt.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4))
(sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1/4))
(sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) 1/4)))
(fabs.f64 (/.f64 im (*.f64 2 (sqrt.f64 re))))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(/.f64 im (*.f64 2 (sqrt.f64 re)))

localize13.0ms (0.2%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
99.9%
(sqrt.f64 (/.f64 1 re))
99.8%
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
Compiler

Compiled 24 to 17 computations (29.2% saved)

series2.0ms (0%)

Counts
2 → 12
Calls

9 calls:

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

rewrite86.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1894×pow1
1736×add-exp-log
1736×log1p-expm1-u
1736×expm1-log1p-u
1694×add-log-exp
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01134
121824
2247924
Stop Event
node limit
Counts
2 → 40
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(sqrt.f64 (/.f64 1 re))
Outputs
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 2))
(log.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) 1/2))
(cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3))
(cbrt.f64 (*.f64 (/.f64 (pow.f64 re -1/2) re) (pow.f64 (*.f64 im 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im 1/2) 3) (/.f64 (pow.f64 re -1/2) re)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.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 (/.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 (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 (pow.f64 re -1) 1/2)
(pow.f64 (pow.f64 re -1/2) 1)
(pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3)
(pow.f64 (/.f64 (pow.f64 re -1/2) re) 1/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)))
(exp.f64 (log.f64 (pow.f64 re -1/2)))
(log1p.f64 (expm1.f64 (pow.f64 re -1/2)))

simplify49.0ms (0.6%)

Algorithm
egg-herbie
Rules
998×fma-def
858×associate-*r/
766×associate-*l/
766×distribute-rgt-in
750×distribute-lft-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0971204
1208970
2755796
32811796
Stop Event
node limit
Counts
52 → 54
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 2))
(log.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) 1/2))
(cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3))
(cbrt.f64 (*.f64 (/.f64 (pow.f64 re -1/2) re) (pow.f64 (*.f64 im 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im 1/2) 3) (/.f64 (pow.f64 re -1/2) re)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.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 (/.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 (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 (pow.f64 re -1) 1/2)
(pow.f64 (pow.f64 re -1/2) 1)
(pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3)
(pow.f64 (/.f64 (pow.f64 re -1/2) re) 1/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)))
(exp.f64 (log.f64 (pow.f64 re -1/2)))
(log1p.f64 (expm1.f64 (pow.f64 re -1/2)))
Outputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 1)
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 3)
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(pow.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3) 1/3)
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 2)
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(sqrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 2))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(log.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) 1/2))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(cbrt.f64 (*.f64 (/.f64 (pow.f64 re -1/2) re) (pow.f64 (*.f64 im 1/2) 3)))
(cbrt.f64 (*.f64 (/.f64 (pow.f64 re -1/2) re) (*.f64 (pow.f64 im 3) 1/8)))
(cbrt.f64 (*.f64 (pow.f64 im 3) (*.f64 1/8 (/.f64 (pow.f64 re -1/2) re))))
(cbrt.f64 (*.f64 (pow.f64 im 3) (*.f64 (/.f64 (pow.f64 re -1/2) re) 1/8)))
(cbrt.f64 (/.f64 (*.f64 (pow.f64 re -1/2) (pow.f64 im 3)) (/.f64 re 1/8)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im 1/2) 3) (/.f64 (pow.f64 re -1/2) re)))
(cbrt.f64 (*.f64 (/.f64 (pow.f64 re -1/2) re) (*.f64 (pow.f64 im 3) 1/8)))
(cbrt.f64 (*.f64 (pow.f64 im 3) (*.f64 1/8 (/.f64 (pow.f64 re -1/2) re))))
(cbrt.f64 (*.f64 (pow.f64 im 3) (*.f64 (/.f64 (pow.f64 re -1/2) re) 1/8)))
(cbrt.f64 (/.f64 (*.f64 (pow.f64 re -1/2) (pow.f64 im 3)) (/.f64 re 1/8)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(-.f64 (+.f64 1 (pow.f64 re -1/2)) 1)
(+.f64 1 (-.f64 (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 1 (-.f64 (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 1 (-.f64 (pow.f64 re -1/2) 1))
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(*.f64 (/.f64 1 (cbrt.f64 re)) (cbrt.f64 (pow.f64 re -1/2)))
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re))
(*.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 (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 1 (-.f64 (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 1 (-.f64 (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 1 (-.f64 (pow.f64 re -1/2) 1))
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 (pow.f64 re -1) 1/2)
(+.f64 1 (-.f64 (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 1 (-.f64 (pow.f64 re -1/2) 1))
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3)
(+.f64 1 (-.f64 (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)
(+.f64 1 (-.f64 (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 1 (-.f64 (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 1 (-.f64 (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 1 (-.f64 (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))
(+.f64 1 (-.f64 (pow.f64 re -1/2) 1))
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)
(expm1.f64 (log1p.f64 (pow.f64 re -1/2)))
(+.f64 1 (-.f64 (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 1 (-.f64 (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 1 (-.f64 (pow.f64 re -1/2) 1))
(+.f64 (pow.f64 re -1/2) 0)
(pow.f64 re -1/2)

localize9.0ms (0.1%)

Local Accuracy

Found 3 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
99.8%
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
89.2%
(sqrt.f64 (/.f64 re im))
Compiler

Compiled 30 to 9 computations (70% saved)

series37.0ms (0.5%)

Counts
3 → 24
Calls

18 calls:

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

rewrite98.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
1188×log-prod
818×prod-exp
666×pow-prod-down
564×pow-prod-up
526×pow-exp
Iterations

Useful iterations: 1 (0.0ms)

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

simplify90.0ms (1.1%)

Algorithm
egg-herbie
Rules
1002×associate-/r*
944×associate-/l*
668×log-prod
664×hypot-def
512×*-commutative
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02913407
16373029
218482651
369392615
Stop Event
node limit
Counts
149 → 169
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 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(+.f64 0 (sqrt.f64 (/.f64 re im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 re im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 re im)))) 1)
(*.f64 (sqrt.f64 (/.f64 re im)) 1)
(*.f64 1 (sqrt.f64 (/.f64 re im)))
(*.f64 (cbrt.f64 (/.f64 re im)) (pow.f64 (/.f64 re im) 1/6))
(*.f64 (pow.f64 (/.f64 re im) 1/6) (cbrt.f64 (/.f64 re im)))
(*.f64 (pow.f64 (/.f64 re im) 1/4) (pow.f64 (/.f64 re im) 1/4))
(*.f64 (sqrt.f64 re) (pow.f64 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)) (pow.f64 im 1/6))
(/.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 (cbrt.f64 (/.f64 re im)) 3/2)
(pow.f64 (pow.f64 (/.f64 re im) 1/6) 3)
(pow.f64 (pow.f64 (/.f64 re im) 2) 1/4)
(pow.f64 (pow.f64 (/.f64 re im) 3) 1/6)
(pow.f64 (pow.f64 (/.f64 re im) 3/2) 1/3)
(pow.f64 (pow.f64 (/.f64 re im) 1/4) 2)
(pow.f64 (sqrt.f64 (/.f64 im re)) -1)
(pow.f64 (/.f64 im re) -1/2)
(pow.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) -1)
(fabs.f64 (sqrt.f64 (/.f64 re im)))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 re im)))))
(cbrt.f64 (pow.f64 (/.f64 re im) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 re im))))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 re im))))
(exp.f64 (*.f64 (log.f64 (/.f64 re im)) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 re im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 re im)) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 re im)) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 re im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 re im) 1/6)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 re im) 3/2)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 re im) 1/4)) 2))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 re im))))
(+.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)) (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))
(+.f64 0 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)))) 1)
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(*.f64 1 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 im) (*.f64 (pow.f64 im 1/6) (sqrt.f64 (/.f64 im re))))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.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 im 1/4) (*.f64 (pow.f64 im 1/4) (sqrt.f64 (/.f64 im re))))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -1/2) (pow.f64 (/.f64 (sqrt.f64 re) im) -1/2))
(*.f64 (neg.f64 (sqrt.f64 im)) (/.f64 1 (neg.f64 (sqrt.f64 (/.f64 re im)))))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 re im))) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 re im))) (/.f64 (sqrt.f64 im) (pow.f64 (/.f64 re im) 1/6)))
(*.f64 (pow.f64 (/.f64 re im) -1/4) (/.f64 (sqrt.f64 im) (pow.f64 (/.f64 re im) 1/4)))
(*.f64 (/.f64 (cbrt.f64 im) 1) (/.f64 (pow.f64 im 1/6) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (cbrt.f64 im) (pow.f64 (/.f64 re im) 1/4)) (/.f64 (pow.f64 im 1/6) (pow.f64 (/.f64 re im) 1/4)))
(*.f64 (/.f64 (pow.f64 im 1/4) 1) (/.f64 (pow.f64 im 1/4) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (pow.f64 im 1/4) (cbrt.f64 (/.f64 re im))) (/.f64 (pow.f64 im 1/4) (pow.f64 (/.f64 re im) 1/6)))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (sqrt.f64 im))
(pow.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) 3)
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -3) 1/3)
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -1/2) 2)
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(pow.f64 (/.f64 (pow.f64 im 3/2) (pow.f64 (/.f64 re im) 3/2)) 1/3)
(pow.f64 (/.f64 (/.f64 (sqrt.f64 re) im) 1) -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))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)))))
(cbrt.f64 (pow.f64 (/.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))))
(exp.f64 (neg.f64 (log.f64 (/.f64 (sqrt.f64 re) im))))
(exp.f64 (*.f64 (neg.f64 (log.f64 (/.f64 (sqrt.f64 re) im))) 1))
(exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (/.f64 (sqrt.f64 re) im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -3)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -1/2)) 2))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 re) im)) -1))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1/2) (log.f64 (sqrt.f64 (/.f64 im re)))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 im)) 1) (log.f64 (sqrt.f64 (/.f64 im re)))))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (/.f64 im re))) (*.f64 (log.f64 im) 1/2)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (/.f64 im re))) (*.f64 (log.f64 (sqrt.f64 im)) 1)))
(log1p.f64 (expm1.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))))
(+.f64 0 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))) 1)
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 1 (/.f64 (sqrt.f64 (/.f64 re im)) (*.f64 (sqrt.f64 im) 1/2)))
(/.f64 (*.f64 (sqrt.f64 im) 1/2) (sqrt.f64 (/.f64 re im)))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 im) 1/2)) (neg.f64 (sqrt.f64 (/.f64 re im))))
(/.f64 (*.f64 1/2 (neg.f64 (sqrt.f64 im))) (neg.f64 (sqrt.f64 (/.f64 re im))))
(/.f64 (*.f64 (neg.f64 (sqrt.f64 im)) 1/2) (neg.f64 (sqrt.f64 (/.f64 re im))))
(/.f64 (/.f64 (*.f64 (sqrt.f64 im) 1/2) 1) (sqrt.f64 (/.f64 re im)))
(/.f64 (/.f64 (*.f64 (sqrt.f64 im) 1/2) (cbrt.f64 (/.f64 re im))) (pow.f64 (/.f64 re im) 1/6))
(/.f64 (/.f64 (*.f64 (sqrt.f64 im) 1/2) (pow.f64 (/.f64 re im) 1/4)) (pow.f64 (/.f64 re im) 1/4))
(pow.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)) 1)
(pow.f64 (cbrt.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))) 3)
(pow.f64 (*.f64 1/4 (*.f64 im (/.f64 im re))) 1/2)
(pow.f64 (pow.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)) 3) 1/3)
(pow.f64 (sqrt.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))) 2)
(pow.f64 (/.f64 (sqrt.f64 (/.f64 re im)) (*.f64 (sqrt.f64 im) 1/2)) -1)
(sqrt.f64 (*.f64 1/4 (*.f64 im (/.f64 im re))))
(log.f64 (exp.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))))
(cbrt.f64 (pow.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)) 3))
(expm1.f64 (log1p.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))))
(exp.f64 (log.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))) 2))
(log1p.f64 (expm1.f64 (/.f64 1/2 (/.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 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(+.f64 0 (sqrt.f64 (/.f64 re im)))
(sqrt.f64 (/.f64 re im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 re im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 re im)))))) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))))
(*.f64 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))) 3)
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 re im)))) 1)
(sqrt.f64 (/.f64 re im))
(*.f64 (sqrt.f64 (/.f64 re im)) 1)
(sqrt.f64 (/.f64 re im))
(*.f64 1 (sqrt.f64 (/.f64 re im)))
(sqrt.f64 (/.f64 re im))
(*.f64 (cbrt.f64 (/.f64 re im)) (pow.f64 (/.f64 re im) 1/6))
(sqrt.f64 (/.f64 re im))
(*.f64 (pow.f64 (/.f64 re im) 1/6) (cbrt.f64 (/.f64 re im)))
(sqrt.f64 (/.f64 re im))
(*.f64 (pow.f64 (/.f64 re im) 1/4) (pow.f64 (/.f64 re im) 1/4))
(sqrt.f64 (/.f64 re im))
(*.f64 (sqrt.f64 re) (pow.f64 im -1/2))
(/.f64 1 (sqrt.f64 (/.f64 im re)))
(/.f64 1 (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 1 (sqrt.f64 im)) (sqrt.f64 re))
(*.f64 (sqrt.f64 re) (/.f64 1 (sqrt.f64 im)))
(/.f64 (sqrt.f64 re) (sqrt.f64 im))
(/.f64 (sqrt.f64 re) (sqrt.f64 im))
(*.f64 (/.f64 1 (sqrt.f64 im)) (sqrt.f64 re))
(*.f64 (sqrt.f64 re) (/.f64 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 1 (sqrt.f64 im)) (sqrt.f64 re))
(*.f64 (sqrt.f64 re) (/.f64 1 (sqrt.f64 im)))
(/.f64 (sqrt.f64 re) (sqrt.f64 im))
(/.f64 (/.f64 (sqrt.f64 re) 1) (sqrt.f64 im))
(*.f64 (/.f64 1 (sqrt.f64 im)) (sqrt.f64 re))
(*.f64 (sqrt.f64 re) (/.f64 1 (sqrt.f64 im)))
(/.f64 (sqrt.f64 re) (sqrt.f64 im))
(/.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 im)) (pow.f64 im 1/6))
(/.f64 (sqrt.f64 re) (*.f64 (pow.f64 im 1/6) (cbrt.f64 im)))
(/.f64 (sqrt.f64 re) (*.f64 (cbrt.f64 im) (pow.f64 im 1/6)))
(/.f64 (/.f64 (sqrt.f64 re) (pow.f64 im 1/4)) (pow.f64 im 1/4))
(*.f64 (/.f64 1 (sqrt.f64 im)) (sqrt.f64 re))
(*.f64 (sqrt.f64 re) (/.f64 1 (sqrt.f64 im)))
(/.f64 (sqrt.f64 re) (sqrt.f64 im))
(pow.f64 (/.f64 re im) 1/2)
(sqrt.f64 (/.f64 re im))
(pow.f64 (sqrt.f64 (/.f64 re im)) 1)
(sqrt.f64 (/.f64 re im))
(pow.f64 (cbrt.f64 (/.f64 re im)) 3/2)
(pow.f64 (pow.f64 (/.f64 re im) 1/6) 3)
(sqrt.f64 (/.f64 re im))
(pow.f64 (pow.f64 (/.f64 re im) 2) 1/4)
(pow.f64 (pow.f64 (/.f64 re im) 3) 1/6)
(pow.f64 (pow.f64 (/.f64 re im) 3/2) 1/3)
(sqrt.f64 (/.f64 re im))
(pow.f64 (pow.f64 (/.f64 re im) 1/4) 2)
(sqrt.f64 (/.f64 re im))
(pow.f64 (sqrt.f64 (/.f64 im re)) -1)
(/.f64 1 (sqrt.f64 (/.f64 im re)))
(pow.f64 (/.f64 im re) -1/2)
(pow.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) -1)
(*.f64 (/.f64 1 (sqrt.f64 im)) (sqrt.f64 re))
(*.f64 (sqrt.f64 re) (/.f64 1 (sqrt.f64 im)))
(/.f64 (sqrt.f64 re) (sqrt.f64 im))
(fabs.f64 (sqrt.f64 (/.f64 re im)))
(sqrt.f64 (/.f64 re im))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 re im))))
(sqrt.f64 (/.f64 re im))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 re im)))))
(sqrt.f64 (/.f64 re im))
(cbrt.f64 (pow.f64 (/.f64 re im) 3/2))
(sqrt.f64 (/.f64 re im))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 re im))))
(sqrt.f64 (/.f64 re im))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 re im))))
(sqrt.f64 (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (/.f64 re im)) 1/2))
(sqrt.f64 (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 re im))) 1))
(sqrt.f64 (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 re im)) 1) 1/2))
(sqrt.f64 (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 re im)) 1/2) 1))
(sqrt.f64 (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 re im))) 1) 1))
(sqrt.f64 (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 re im) 1/6)) 3))
(sqrt.f64 (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 re im) 3/2)) 1/3))
(sqrt.f64 (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 re im) 1/4)) 2))
(sqrt.f64 (/.f64 re im))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 re im))))
(sqrt.f64 (/.f64 re im))
(+.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)) (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(+.f64 0 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) im)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)))) 1)
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(*.f64 (cbrt.f64 im) (*.f64 (pow.f64 im 1/6) (sqrt.f64 (/.f64 im re))))
(*.f64 (cbrt.f64 im) (*.f64 (sqrt.f64 (/.f64 im re)) (pow.f64 im 1/6)))
(*.f64 (sqrt.f64 (/.f64 im re)) (*.f64 (cbrt.f64 im) (pow.f64 im 1/6)))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.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))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (pow.f64 im 1/4) (*.f64 (pow.f64 im 1/4) (sqrt.f64 (/.f64 im re))))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -1/2) (pow.f64 (/.f64 (sqrt.f64 re) im) -1/2))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(*.f64 (neg.f64 (sqrt.f64 im)) (/.f64 1 (neg.f64 (sqrt.f64 (/.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)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 re im))) (pow.f64 (*.f64 im (/.f64 im re)) 1/6))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (/.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 re im))) (/.f64 (sqrt.f64 im) (pow.f64 (/.f64 re im) 1/6)))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (pow.f64 (/.f64 re im) -1/4) (/.f64 (sqrt.f64 im) (pow.f64 (/.f64 re im) 1/4)))
(/.f64 (pow.f64 (/.f64 re im) -1/4) (/.f64 (pow.f64 (/.f64 re im) 1/4) (sqrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 im) 1) (/.f64 (pow.f64 im 1/6) (sqrt.f64 (/.f64 re im))))
(*.f64 (cbrt.f64 im) (/.f64 (pow.f64 im 1/6) (sqrt.f64 (/.f64 re im))))
(/.f64 (*.f64 (cbrt.f64 im) (pow.f64 im 1/6)) (sqrt.f64 (/.f64 re im)))
(*.f64 (/.f64 (cbrt.f64 im) (pow.f64 (/.f64 re im) 1/4)) (/.f64 (pow.f64 im 1/6) (pow.f64 (/.f64 re im) 1/4)))
(*.f64 (cbrt.f64 im) (/.f64 (pow.f64 im 1/6) (sqrt.f64 (/.f64 re im))))
(/.f64 (*.f64 (cbrt.f64 im) (pow.f64 im 1/6)) (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 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (/.f64 (pow.f64 im 1/4) (cbrt.f64 (/.f64 re im))) (/.f64 (pow.f64 im 1/4) (pow.f64 (/.f64 re im) 1/6)))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (sqrt.f64 im))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 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))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -3) 1/3)
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -1/2) 2)
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 (pow.f64 im 3/2) (pow.f64 (/.f64 re im) 3/2)) 1/3)
(cbrt.f64 (/.f64 (pow.f64 im 3/2) (pow.f64 (/.f64 re im) 3/2)))
(pow.f64 (/.f64 (/.f64 (sqrt.f64 re) im) 1) -1)
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(neg.f64 (/.f64 (sqrt.f64 im) (neg.f64 (sqrt.f64 (/.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 im re)))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(log.f64 (exp.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im)))))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -3))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.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 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(exp.f64 (neg.f64 (log.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (neg.f64 (log.f64 (/.f64 (sqrt.f64 re) im))) 1))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (/.f64 (sqrt.f64 re) im))) 1) 1))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.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))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -3)) 1/3))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -1/2)) 2))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 1/6) (cbrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 re) im)) -1))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1/2) (log.f64 (sqrt.f64 (/.f64 im re)))))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 im)) 1) (log.f64 (sqrt.f64 (/.f64 im re)))))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (/.f64 im re))) (*.f64 (log.f64 im) 1/2)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (/.f64 im re))) (*.f64 (log.f64 (sqrt.f64 im)) 1)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(log1p.f64 (expm1.f64 (/.f64 1 (/.f64 (sqrt.f64 re) im))))
(*.f64 2 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))
(/.f64 im (sqrt.f64 re))
(+.f64 0 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))) 1)
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 1 (/.f64 (sqrt.f64 (/.f64 re im)) (*.f64 (sqrt.f64 im) 1/2)))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (*.f64 1/2 (sqrt.f64 im)))
(*.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 1/2 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(/.f64 (*.f64 (sqrt.f64 im) 1/2) (sqrt.f64 (/.f64 re im)))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (*.f64 1/2 (sqrt.f64 im)))
(*.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 1/2 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 im) 1/2)) (neg.f64 (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (*.f64 1/2 (sqrt.f64 im)))
(*.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 1/2 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(/.f64 (*.f64 1/2 (neg.f64 (sqrt.f64 im))) (neg.f64 (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (*.f64 1/2 (sqrt.f64 im)))
(*.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 1/2 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(/.f64 (*.f64 (neg.f64 (sqrt.f64 im)) 1/2) (neg.f64 (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (*.f64 1/2 (sqrt.f64 im)))
(*.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 1/2 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(/.f64 (/.f64 (*.f64 (sqrt.f64 im) 1/2) 1) (sqrt.f64 (/.f64 re im)))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (*.f64 1/2 (sqrt.f64 im)))
(*.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 1/2 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(/.f64 (/.f64 (*.f64 (sqrt.f64 im) 1/2) (cbrt.f64 (/.f64 re im))) (pow.f64 (/.f64 re im) 1/6))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (*.f64 1/2 (sqrt.f64 im)))
(*.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 1/2 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(/.f64 (/.f64 (*.f64 (sqrt.f64 im) 1/2) (pow.f64 (/.f64 re im) 1/4)) (pow.f64 (/.f64 re im) 1/4))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (*.f64 1/2 (sqrt.f64 im)))
(*.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 1/2 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(pow.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)) 1)
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))) 3)
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(pow.f64 (*.f64 1/4 (*.f64 im (/.f64 im re))) 1/2)
(sqrt.f64 (*.f64 1/4 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) 1/4)))
(sqrt.f64 (*.f64 im (*.f64 1/4 (/.f64 im re))))
(pow.f64 (pow.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)) 3) 1/3)
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))) 2)
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(pow.f64 (/.f64 (sqrt.f64 (/.f64 re im)) (*.f64 (sqrt.f64 im) 1/2)) -1)
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (*.f64 1/2 (sqrt.f64 im)))
(*.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 1 (sqrt.f64 (/.f64 re im))))
(/.f64 1/2 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 1/4 (*.f64 im (/.f64 im re))))
(sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) 1/4)))
(sqrt.f64 (*.f64 im (*.f64 1/4 (/.f64 im re))))
(log.f64 (exp.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)) 3))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))) 1))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))) 1) 1))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))) 3))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))) 1/3))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)))) 2))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))

eval434.0ms (5.4%)

Compiler

Compiled 6934 to 4333 computations (37.5% saved)

prune105.0ms (1.3%)

Pruning

10 alts after pruning (3 fresh and 7 done)

PrunedKeptTotal
New5153518
Fresh101
Picked101
Done178
Total51810528
Accurracy
100.0%
Counts
528 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
25.3%
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
25.9%
(*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))
25.8%
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
25.8%
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
55.2%
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
19.0%
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
78.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
55.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
26.4%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
53.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 94 to 74 computations (21.3% saved)

localize6.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
99.8%
(/.f64 1/2 (sqrt.f64 re))
99.8%
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
Compiler

Compiled 17 to 9 computations (47.1% saved)

series43.0ms (0.5%)

Counts
2 → 12
Calls

9 calls:

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

rewrite59.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1714×pow1
1578×add-exp-log
1578×log1p-expm1-u
1578×expm1-log1p-u
1542×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0928
118528
2219328
Stop Event
node limit
Counts
2 → 43
Calls
Call 1
Inputs
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(/.f64 1/2 (sqrt.f64 re))
Outputs
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 im (*.f64 (sqrt.f64 re) 2))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 1/2 im)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(/.f64 (neg.f64 (*.f64 1/2 im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im -1/2) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 -1/2 im) (neg.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 1/2 im) 1) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 1/2 im) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 1/2 im) (pow.f64 re 1/4)) (pow.f64 re 1/4))
(pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 2)
(sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 1/2 (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3) (pow.f64 im 3)))
(cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(-.f64 (+.f64 1 (/.f64 1/2 (sqrt.f64 re))) 1)
(*.f64 1/2 (pow.f64 re -1/2))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (/.f64 1/4 re)))
(*.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 -1/2 (/.f64 1 (neg.f64 (sqrt.f64 re))))
(*.f64 (pow.f64 re -1/2) 1/2)
(pow.f64 (/.f64 1/2 (sqrt.f64 re)) 1)
(pow.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) 2)
(pow.f64 (*.f64 (sqrt.f64 re) 2) -1)
(sqrt.f64 (/.f64 1/4 re))
(log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 1/2 (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 1/2 (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 1/2 (sqrt.f64 re))))

simplify54.0ms (0.7%)

Algorithm
egg-herbie
Rules
1434×fma-def
1278×distribute-lft-in
1004×log-prod
704×log-div
644×unswap-sqr
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01041383
12331167
2897951
34121951
Stop Event
node limit
Counts
55 → 54
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 im (*.f64 (sqrt.f64 re) 2))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 1/2 im)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(/.f64 (neg.f64 (*.f64 1/2 im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im -1/2) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 -1/2 im) (neg.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 1/2 im) 1) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 1/2 im) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 1/2 im) (pow.f64 re 1/4)) (pow.f64 re 1/4))
(pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 2)
(sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 1/2 (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3) (pow.f64 im 3)))
(cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(-.f64 (+.f64 1 (/.f64 1/2 (sqrt.f64 re))) 1)
(*.f64 1/2 (pow.f64 re -1/2))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (/.f64 1/4 re)))
(*.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 -1/2 (/.f64 1 (neg.f64 (sqrt.f64 re))))
(*.f64 (pow.f64 re -1/2) 1/2)
(pow.f64 (/.f64 1/2 (sqrt.f64 re)) 1)
(pow.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) 2)
(pow.f64 (*.f64 (sqrt.f64 re) 2) -1)
(sqrt.f64 (/.f64 1/4 re))
(log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 1/2 (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 1/2 (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 1/2 (sqrt.f64 re))))
Outputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 1)
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 im (*.f64 (sqrt.f64 re) 2))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 1/2 im)))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (neg.f64 (*.f64 1/2 im)) (neg.f64 (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 im -1/2) (neg.f64 (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 -1/2 im) (neg.f64 (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (/.f64 (*.f64 1/2 im) 1) (sqrt.f64 re))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (/.f64 (*.f64 1/2 im) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(/.f64 1/2 (*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 1/2 (cbrt.f64 (sqrt.f64 re))) (/.f64 im (cbrt.f64 re)))
(/.f64 (/.f64 (*.f64 1/2 im) (pow.f64 re 1/4)) (pow.f64 re 1/4))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 3)
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(pow.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3) 1/3)
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 2)
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 1/2 (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3) (pow.f64 im 3)))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(cbrt.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3)))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(+.f64 1 (-.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1))
(+.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 0)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(-.f64 (+.f64 1 (/.f64 1/2 (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(*.f64 1/2 (pow.f64 re -1/2))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(*.f64 1 (/.f64 1/2 (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (/.f64 1/4 re)))
(*.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (/.f64 1/4 re)))
(*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(*.f64 -1/2 (/.f64 1 (neg.f64 (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(*.f64 (pow.f64 re -1/2) 1/2)
(*.f64 1/2 (pow.f64 re -1/2))
(pow.f64 (/.f64 1/2 (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) 3)
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3) 1/3)
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) 2)
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(pow.f64 (*.f64 (sqrt.f64 re) 2) -1)
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(sqrt.f64 (/.f64 1/4 re))
(log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3))
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 1/2 (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 1/2 (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 1/2 (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 1/2 (sqrt.f64 re)) 1))
(+.f64 (/.f64 1/2 (sqrt.f64 re)) 0)
(/.f64 1/2 (sqrt.f64 re))

localize16.0ms (0.2%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
99.8%
(*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))
Compiler

Compiled 19 to 13 computations (31.6% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

6 calls:

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

rewrite87.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1634×pow1
1508×add-exp-log
1508×log1p-expm1-u
1508×expm1-log1p-u
1478×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
118719
2211419
Stop Event
node limit
Counts
1 → 13
Calls
Call 1
Inputs
(*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))
Outputs
(-.f64 (+.f64 1 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 1)
(pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 3) 1/3)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/4)) 2)
(sqrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/4) (pow.f64 re -1)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) im) (pow.f64 re -1/2)))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 re -1/2) 3) (pow.f64 (*.f64 im 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (pow.f64 re -1/2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))

simplify68.0ms (0.8%)

Algorithm
egg-herbie
Rules
1522×associate-*r*
1322×associate-*l*
1174×distribute-rgt-in
1158×distribute-lft-in
600×fma-def
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
054575
1134575
2494475
33692475
Stop Event
node limit
Counts
25 → 17
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (+.f64 1 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 1)
(pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 3) 1/3)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/4)) 2)
(sqrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/4) (pow.f64 re -1)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) im) (pow.f64 re -1/2)))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 re -1/2) 3) (pow.f64 (*.f64 im 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (pow.f64 re -1/2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
Outputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(-.f64 (+.f64 1 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 1)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 1)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 3)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 3) 1/3)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(pow.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/4)) 2)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(sqrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/4) (pow.f64 re -1)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) im) (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 3))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 re -1/2) 3) (pow.f64 (*.f64 im 1/2) 3)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (pow.f64 re -1/2) 3)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (fabs.f64 (pow.f64 re -1/2)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))

localize6.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
99.8%
(/.f64 (sqrt.f64 re) im)
99.2%
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
Compiler

Compiled 17 to 7 computations (58.8% saved)

series3.0ms (0%)

Counts
2 → 24
Calls

12 calls:

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

rewrite83.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1878×pow1
1736×add-exp-log
1736×log1p-expm1-u
1736×expm1-log1p-u
1696×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0928
119128
2240728
Stop Event
node limit
Counts
2 → 57
Calls
Call 1
Inputs
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (sqrt.f64 re) im)
Outputs
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 1 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))))
(*.f64 (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))) (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(*.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(*.f64 -1/2 (/.f64 1 (/.f64 (neg.f64 (sqrt.f64 re)) im)))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) 1) im)
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 (/.f64 1/2 (neg.f64 (sqrt.f64 re))) (neg.f64 im))
(pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 2)
(pow.f64 (/.f64 (sqrt.f64 re) (*.f64 1/2 im)) -1)
(sqrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im))))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(-.f64 (+.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (/.f64 (sqrt.f64 re) im) 1)
(*.f64 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 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 1 (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 (/.f64 1 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 re) 1) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 (cbrt.f64 re) (sqrt.f64 im)) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(*.f64 (/.f64 (pow.f64 re 1/4) 1) (/.f64 (pow.f64 re 1/4) im))
(*.f64 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(pow.f64 (/.f64 (sqrt.f64 re) im) 1)
(pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) 3)
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3) 1/3)
(pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) 2)
(pow.f64 (/.f64 im (sqrt.f64 re)) -1)
(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)))
(exp.f64 (log.f64 (/.f64 (sqrt.f64 re) im)))
(log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 re) im)))

simplify77.0ms (1%)

Algorithm
egg-herbie
Rules
1940×fma-def
1396×log-prod
824×log-div
680×times-frac
566×unswap-sqr
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01381685
13261529
211851391
354551391
Stop Event
node limit
Counts
81 → 73
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.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 1/2 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 1 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))))
(*.f64 (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))) (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(*.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(*.f64 -1/2 (/.f64 1 (/.f64 (neg.f64 (sqrt.f64 re)) im)))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) 1) im)
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 (/.f64 1/2 (neg.f64 (sqrt.f64 re))) (neg.f64 im))
(pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 2)
(pow.f64 (/.f64 (sqrt.f64 re) (*.f64 1/2 im)) -1)
(sqrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im))))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(-.f64 (+.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (/.f64 (sqrt.f64 re) im) 1)
(*.f64 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 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 1 (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 (/.f64 1 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 re) 1) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 (cbrt.f64 re) (sqrt.f64 im)) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(*.f64 (/.f64 (pow.f64 re 1/4) 1) (/.f64 (pow.f64 re 1/4) im))
(*.f64 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(pow.f64 (/.f64 (sqrt.f64 re) im) 1)
(pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) 3)
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3) 1/3)
(pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) 2)
(pow.f64 (/.f64 im (sqrt.f64 re)) -1)
(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)))
(exp.f64 (log.f64 (/.f64 (sqrt.f64 re) im)))
(log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 re) im)))
Outputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.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 1/2 (/.f64 im (sqrt.f64 re)))) 1)
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (cbrt.f64 (*.f64 (/.f64 1/4 re) (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re)))))
(*.f64 (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))) (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (cbrt.f64 (*.f64 (/.f64 1/4 re) (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re)))))
(*.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 -1/2 (/.f64 1 (/.f64 (neg.f64 (sqrt.f64 re)) im)))
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) 1) im)
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 im))
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (/.f64 1/2 (neg.f64 (sqrt.f64 re))) (neg.f64 im))
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 3)
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3) 1/3)
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 2)
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (/.f64 (sqrt.f64 re) (*.f64 1/2 im)) -1)
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(sqrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im))))
(sqrt.f64 (*.f64 (/.f64 1/4 re) (*.f64 im im)))
(sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))
(sqrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re))))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3))
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(+.f64 1 (-.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1))
(+.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 0)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(-.f64 (+.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(/.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 1 (/.f64 (sqrt.f64 re) im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 (/.f64 re im) im)))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 (/.f64 re im) 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 1 (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (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) 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 (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 (/.f64 (sqrt.f64 re) im)) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)))
(*.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))
(*.f64 (/.f64 (pow.f64 re 1/4) 1) (/.f64 (pow.f64 re 1/4) im))
(/.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)
(pow.f64 (/.f64 (sqrt.f64 re) im) 1)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) 3)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3) 1/3)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) 2)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (/.f64 im (sqrt.f64 re)) -1)
(/.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)))
(sqrt.f64 (/.f64 (/.f64 re 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)))
(/.f64 (sqrt.f64 re) im)
(expm1.f64 (log1p.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)
(log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)

eval118.0ms (1.5%)

Compiler

Compiled 1369 to 787 computations (42.5% saved)

prune20.0ms (0.2%)

Pruning

9 alts after pruning (1 fresh and 8 done)

PrunedKeptTotal
New1431144
Fresh000
Picked011
Done279
Total1459154
Accurracy
100.0%
Counts
154 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
25.3%
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
25.9%
(*.f64 (sqrt.f64 (/.f64 1/4 re)) im)
25.8%
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
55.2%
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
19.0%
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
78.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
55.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
26.4%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
53.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 85 to 67 computations (21.2% saved)

regimes174.0ms (2.2%)

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

7 calls:

55.0ms
(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
33.0ms
re
26.0ms
im
18.0ms
(*.f64 im im)
12.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Results
AccuracySegmentsBranch
89.3%2re
80.4%3im
91.9%2(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
91.9%2(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
92.4%2(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
92.4%2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
80.4%3(*.f64 im im)
Compiler

Compiled 216 to 145 computations (32.9% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
1.0889086001966235e-297
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes110.0ms (1.4%)

Counts
14 → 5
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) im)
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))
(*.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 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (*.f64 (/.f64 im re) im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))))
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
(*.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 (pow.f64 re -1/2) (*.f64 im 1/2))
Calls

2 calls:

54.0ms
im
48.0ms
re
Results
AccuracySegmentsBranch
81.2%5re
63.8%2im
Compiler

Compiled 119 to 82 computations (31.1% saved)

bsearch102.0ms (1.3%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
58.0ms
5.373604069017531e-21
1.6553772637247055e-19
19.0ms
-1.0872026846006439e+40
-4.791753276972449e+32
6.0ms
-1.1921004013552276e+120
-8.845844628643658e+119
19.0ms
-6.119518272804934e+146
-7.692843428794098e+142
Results
47.0ms393×body256valid
39.0msbody1024valid
7.0ms22×body2048valid
1.0msbody512valid
Compiler

Compiled 609 to 515 computations (15.4% saved)

regimes82.0ms (1%)

Counts
7 → 5
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) im)
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))
(*.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 (pow.f64 re -1/2) (*.f64 im 1/2))
Calls

2 calls:

67.0ms
re
14.0ms
im
Results
AccuracySegmentsBranch
81.0%5re
62.8%2im
Compiler

Compiled 53 to 37 computations (30.2% saved)

bsearch68.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
21.0ms
5.373604069017531e-21
1.6553772637247055e-19
20.0ms
-1.0872026846006439e+40
-4.791753276972449e+32
6.0ms
-1.1921004013552276e+120
-8.845844628643658e+119
21.0ms
-6.119518272804934e+146
-7.692843428794098e+142
Results
47.0ms394×body256valid
6.0ms16×body2048valid
3.0ms11×body1024valid
2.0ms11×body512valid
Compiler

Compiled 555 to 488 computations (12.1% saved)

regimes59.0ms (0.7%)

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

2 calls:

44.0ms
re
14.0ms
im
Results
AccuracySegmentsBranch
66.0%2re
62.8%2im
Compiler

Compiled 45 to 30 computations (33.3% saved)

bsearch22.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
21.0ms
5.373604069017531e-21
1.6553772637247055e-19
Results
9.0ms75×body256valid
7.0ms23×body2048valid
3.0msbody1024valid
1.0msbody512valid
Compiler

Compiled 155 to 128 computations (17.4% saved)

regimes52.0ms (0.6%)

Accuracy

Total -40.4b remaining (-185.6%)

Threshold costs -40.4b (-185.6%)

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

2 calls:

39.0ms
im
12.0ms
re
Results
AccuracySegmentsBranch
66.0%2re
62.8%2im
Compiler

Compiled 38 to 25 computations (34.2% saved)

bsearch22.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
22.0ms
5.373604069017531e-21
1.6553772637247055e-19
Results
9.0ms69×body256valid
8.0ms23×body2048valid
3.0ms10×body1024valid
2.0ms10×body512valid
Compiler

Compiled 148 to 121 computations (18.2% saved)

simplify14.0ms (0.2%)

Algorithm
egg-herbie
Rules
26×*-commutative
10×+-commutative
sub-neg
neg-mul-1
neg-sub0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068472
185472
291472
393472
494472
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 0) (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 re -78000000000000000985684444562031574259620885825923553299043683061335839763502735718248696311596489742096983684895910898477132801812810166173696) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -1160000000000000028407742142753882381979284168057486049021544298010021285063566207744920456509699411690957692187877310464) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -20499999999999998877374706206736646144) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 4486144485774091/166153499473114484112975882535043072) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))))
(if (<=.f64 re -78000000000000000985684444562031574259620885825923553299043683061335839763502735718248696311596489742096983684895910898477132801812810166173696) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -1160000000000000028407742142753882381979284168057486049021544298010021285063566207744920456509699411690957692187877310464) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re -170000000000000005735768827686289408) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 3219224052291593/20769187434139310514121985316880384) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))))
(if (<=.f64 re 1713457963316493/10384593717069655257060992658440192) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)))
(if (<=.f64 re 2201533868018767/20769187434139310514121985316880384) (*.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) 0) (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 re -78000000000000000985684444562031574259620885825923553299043683061335839763502735718248696311596489742096983684895910898477132801812810166173696) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -1160000000000000028407742142753882381979284168057486049021544298010021285063566207744920456509699411690957692187877310464) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -20499999999999998877374706206736646144) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 4486144485774091/166153499473114484112975882535043072) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))))
(if (<=.f64 re -78000000000000000985684444562031574259620885825923553299043683061335839763502735718248696311596489742096983684895910898477132801812810166173696) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -1160000000000000028407742142753882381979284168057486049021544298010021285063566207744920456509699411690957692187877310464) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re -170000000000000005735768827686289408) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 3219224052291593/20769187434139310514121985316880384) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))))
(if (<=.f64 re -78000000000000000985684444562031574259620885825923553299043683061335839763502735718248696311596489742096983684895910898477132801812810166173696) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -1160000000000000028407742142753882381979284168057486049021544298010021285063566207744920456509699411690957692187877310464) (*.f64 1/2 (sqrt.f64 (*.f64 im 2))) (if (<=.f64 re -170000000000000005735768827686289408) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 3219224052291593/20769187434139310514121985316880384) (*.f64 1/2 (sqrt.f64 (*.f64 im 2))) (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))))
(if (<=.f64 re 1713457963316493/10384593717069655257060992658440192) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)))
(if (<=.f64 re 1713457963316493/10384593717069655257060992658440192) (*.f64 1/2 (sqrt.f64 (*.f64 im 2))) (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)))
(if (<=.f64 re 2201533868018767/20769187434139310514121985316880384) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re))))
(if (<=.f64 re 2201533868018767/20769187434139310514121985316880384) (*.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 187 to 145 computations (22.5% saved)

soundness1.1s (13.9%)

Rules
1966×fma-def
1894×pow1
1736×add-exp-log
1736×log1p-expm1-u
1736×expm1-log1p-u
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01529
12329
23629
35829
48529
511429
618529
728629
841129
949029
1060629
1167829
1270229
1374229
1479129
1584829
1688329
1789329
01731929
14861821
216541807
371551807
03804706
18614556
234034556
01134
121824
2247924
0971204
1208970
2755796
32811796
01731929
14861821
216541807
371551807
01262
125156
2279156
02593902
15533780
218183752
01731929
14861821
216541807
371551807
01731929
14861821
216541807
371551807
Stop Event
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
saturated
Compiler

Compiled 526 to 392 computations (25.5% saved)

end172.0ms (2.1%)

Compiler

Compiled 177 to 135 computations (23.7% saved)

Profiling

Loading profile data...