Details

Time bar (total: 8.6s)

analyze176.0ms (2%)

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

Compiled 20 to 14 computations (30% saved)

sample1.9s (21.9%)

Results
1.1s6371×body256valid
325.0ms547×body4096valid
269.0ms647×body2048valid
149.0ms420×body1024valid
55.0ms271×body512valid
Bogosity

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

simplify49.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
77.7%
Counts
3 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
77.7%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
Compiler

Compiled 12 to 9 computations (25% saved)

localize12.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

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

Compiled 39 to 16 computations (59% saved)

series11.0ms (0.1%)

Counts
2 → 32
Calls

12 calls:

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

rewrite75.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
956×log-prod
820×prod-diff
670×prod-exp
600×pow-prod-down
500×pow-prod-up
Iterations

Useful iterations: 0 (0.0ms)

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

simplify173.0ms (2%)

Algorithm
egg-herbie
Rules
1874×times-frac
786×distribute-lft-in
750×distribute-rgt-in
518×fma-def
474×unswap-sqr
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04045133
110314891
231984857
Stop Event
node limit
Counts
159 → 221
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 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(+.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) (+.f64 (neg.f64 re) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 -1 re re))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) re))
(+.f64 (neg.f64 re) (hypot.f64 re im))
(+.f64 0 (-.f64 (hypot.f64 re im) re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (hypot.f64 re im) re))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))))
(*.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 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 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 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 1 (/.f64 (+.f64 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)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (neg.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (neg.f64 (+.f64 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 (pow.f64 (neg.f64 re) 2) (*.f64 (hypot.f64 re im) (neg.f64 re)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (pow.f64 (neg.f64 re) 2)) (-.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) 2) 1/2)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/3)
(pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 2)
(pow.f64 (/.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) -1)
(pow.f64 (/.f64 (+.f64 re (hypot.f64 re im)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) -1)
(sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2))
(log.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))
(log.f64 (+.f64 1 (expm1.f64 (-.f64 (hypot.f64 re im) re))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 re im))) (exp.f64 (neg.f64 re))))
(log.f64 (*.f64 (exp.f64 (neg.f64 re)) (+.f64 1 (expm1.f64 (hypot.f64 re im)))))
(log.f64 (/.f64 (exp.f64 (hypot.f64 re im)) (+.f64 1 (expm1.f64 re))))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (hypot.f64 re im))) (exp.f64 re)))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (hypot.f64 re im))) (+.f64 1 (expm1.f64 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)))
(exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (-.f64 (hypot.f64 re im) re))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 2))
(log1p.f64 (expm1.f64 (-.f64 (hypot.f64 re im) re)))
(fma.f64 (hypot.f64 re im) 1 (neg.f64 re))
(fma.f64 (hypot.f64 re im) 1 (*.f64 (neg.f64 re) 1))
(fma.f64 (-.f64 (hypot.f64 re im) re) 1 (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (-.f64 (hypot.f64 re im) re) 1 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (-.f64 (hypot.f64 re im) re) 1 (+.f64 (neg.f64 re) re))
(fma.f64 1 (hypot.f64 re im) (neg.f64 re))
(fma.f64 1 (hypot.f64 re im) (*.f64 (neg.f64 re) 1))
(fma.f64 1 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 1 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 1 (-.f64 (hypot.f64 re im) re) (+.f64 (neg.f64 re) re))
(fma.f64 1 (neg.f64 re) (hypot.f64 re im))
(fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (neg.f64 re))
(fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (*.f64 (neg.f64 re) 1))
(fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)) (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)) (*.f64 (neg.f64 re) 1))
(fma.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (+.f64 (neg.f64 re) re))
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (+.f64 (neg.f64 re) re))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (neg.f64 (cbrt.f64 re)) (hypot.f64 re im))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (*.f64 (neg.f64 re) 1))
(fma.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (+.f64 (neg.f64 re) re))
(fma.f64 (sqrt.f64 re) (neg.f64 (sqrt.f64 re)) (hypot.f64 re im))
(fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (neg.f64 re) re))
(fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))) (+.f64 (neg.f64 re) re))
(fma.f64 (pow.f64 (cbrt.f64 (neg.f64 re)) 2) (cbrt.f64 (neg.f64 re)) (hypot.f64 re im))
(fma.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (neg.f64 re)) (hypot.f64 re im))
(fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) (hypot.f64 re im))
(fma.f64 -1 re (hypot.f64 re im))
(fma.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (+.f64 (neg.f64 re) re))
(fma.f64 (neg.f64 (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (hypot.f64 re im))
(+.f64 0 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 1)
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)
(*.f64 1 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(*.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/6))
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/6) (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2))
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))
(pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/2)
(pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3/2)
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/6) 3)
(pow.f64 (*.f64 4 (pow.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/4)
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3) 1/6)
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2) 1/3)
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2)
(fabs.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 1) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/6)) 3))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) 2))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
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 (*.f64 re re) im) im) re)
(-.f64 (fma.f64 1/2 (/.f64 re (/.f64 im re)) im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(fma.f64 -1 re (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)))
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)) re)
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) im)) re)
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 1/2 (*.f64 im im)) re)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/2 (/.f64 im (/.f64 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)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 -1/2 (/.f64 (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)) (pow.f64 re 7))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 -1/2 (/.f64 (pow.f64 re 7) (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/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 im (/.f64 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 im (/.f64 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 im (/.f64 re im)) -1/2))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 1/2 (*.f64 im im)) re)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/2 (/.f64 im (/.f64 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)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 re (pow.f64 im 8))) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re) (pow.f64 im 8)) (fma.f64 -1/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 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))))))
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 re re) im) im) re)
(-.f64 (fma.f64 1/2 (/.f64 re (/.f64 im re)) im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(fma.f64 -1 re (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)))
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)) re)
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) 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 (*.f64 re re) im) -1/2) im) re)
(-.f64 (*.f64 (/.f64 re (/.f64 im re)) -1/2) (+.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 (*.f64 re re) im) -1/2)) im) re)
(-.f64 (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im))) re)
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 (*.f64 re (sqrt.f64 2)) (sqrt.f64 (/.f64 1 im))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (sqrt.f64 2)) re) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 re (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im))))))
(fma.f64 -1/2 (*.f64 (*.f64 re (sqrt.f64 2)) (sqrt.f64 (/.f64 1 im))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))) (sqrt.f64 (/.f64 1 im)))))))
(fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (sqrt.f64 2)) re) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (sqrt.f64 (/.f64 1 im))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 re (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (*.f64 (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)) (sqrt.f64 (/.f64 1 im))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(fma.f64 -1/2 (*.f64 (*.f64 re (sqrt.f64 2)) (sqrt.f64 (/.f64 1 im))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (*.f64 re re) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (pow.f64 re 3) (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2))) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))
(fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (sqrt.f64 2)) re) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (sqrt.f64 (/.f64 1 im))))) (*.f64 (*.f64 1/4 (sqrt.f64 2)) (*.f64 (-.f64 (/.f64 1/2 im) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))
(fma.f64 -1/2 (*.f64 re (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (fma.f64 1/4 (*.f64 (*.f64 (pow.f64 re 3) (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4))) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (*.f64 (*.f64 re re) (*.f64 (sqrt.f64 2) (+.f64 (/.f64 1/2 im) (*.f64 (/.f64 1 im) -1/4)))) (*.f64 1/2 (sqrt.f64 (/.f64 1 im)))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))
(*.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re))))
(fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (*.f64 -1/16 (/.f64 1 (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) 2)) (pow.f64 im 5)))) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2))) (/.f64 (sqrt.f64 1/2) (pow.f64 im 5))) (sqrt.f64 re)) (*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5))) (sqrt.f64 re)) (*.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 -1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) re)) (*.f64 -1/16 (/.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (pow.f64 re 2))))) (pow.f64 im 7))) (sqrt.f64 1/2)) (sqrt.f64 re))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/16 (/.f64 1 (pow.f64 re 5))) (pow.f64 (*.f64 -1/16 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) 2)) (pow.f64 im 5))) (sqrt.f64 1/2)) (sqrt.f64 re))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 -1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (sqrt.f64 re) (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re)) (*.f64 1/16 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (*.f64 -1/16 (/.f64 1 (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) 2)) (*.f64 (*.f64 re re) (pow.f64 (sqrt.f64 1/2) 2))))) (pow.f64 im 7))))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (*.f64 -1/16 (/.f64 1 (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) 2)) (pow.f64 im 5)))) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re))))))
(+.f64 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 2) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 im 7)) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re)) (*.f64 -1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re))))))) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2))) (/.f64 (sqrt.f64 1/2) (pow.f64 im 5)))))) (fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))))
(+.f64 (*.f64 (sqrt.f64 re) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) re) (*.f64 1/8 (/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (*.f64 re re)))) (pow.f64 im 7)))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 5)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (/.f64 -1/16 (sqrt.f64 1/2))) 2)) (pow.f64 im 5)))))) (fma.f64 -1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 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) (+.f64 (neg.f64 re) re))
(-.f64 (hypot.f64 re im) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 -1 re re))
(-.f64 (hypot.f64 re im) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) re))
(-.f64 (hypot.f64 re im) re)
(+.f64 (neg.f64 re) (hypot.f64 re im))
(-.f64 (hypot.f64 re im) re)
(+.f64 0 (-.f64 (hypot.f64 re im) re))
(-.f64 (hypot.f64 re im) re)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (hypot.f64 re im) re))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (-.f64 (hypot.f64 re im) re))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (-.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 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))))
(/.f64 1 (/.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (-.f64 (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) 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 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (-.f64 (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 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)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 1 (/.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (-.f64 (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 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))))
(/.f64 1 (/.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (-.f64 (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 (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 (pow.f64 (neg.f64 re) 2) (*.f64 (hypot.f64 re im) (neg.f64 re)))))
(/.f64 1 (/.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (-.f64 (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) 2) (pow.f64 (neg.f64 re) 2)) (-.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) 2) 1/2)
(-.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)
(pow.f64 (/.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) -1)
(/.f64 1 (/.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (-.f64 (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)))
(pow.f64 (/.f64 (+.f64 re (hypot.f64 re im)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) -1)
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 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)))
(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)
(log.f64 (+.f64 1 (expm1.f64 (-.f64 (hypot.f64 re im) re))))
(-.f64 (hypot.f64 re im) re)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 re im))) (exp.f64 (neg.f64 re))))
(-.f64 (hypot.f64 re im) re)
(log.f64 (*.f64 (exp.f64 (neg.f64 re)) (+.f64 1 (expm1.f64 (hypot.f64 re im)))))
(-.f64 (hypot.f64 re im) re)
(log.f64 (/.f64 (exp.f64 (hypot.f64 re im)) (+.f64 1 (expm1.f64 re))))
(-.f64 (hypot.f64 re im) re)
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (hypot.f64 re im))) (exp.f64 re)))
(-.f64 (hypot.f64 re im) re)
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (hypot.f64 re im))) (+.f64 1 (expm1.f64 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)
(exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1))
(-.f64 (hypot.f64 re im) re)
(exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1) 1))
(-.f64 (hypot.f64 re im) re)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re))) 3))
(-.f64 (hypot.f64 re im) re)
(exp.f64 (*.f64 (*.f64 3 (log.f64 (-.f64 (hypot.f64 re im) re))) 1/3))
(-.f64 (hypot.f64 re im) re)
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 2))
(-.f64 (hypot.f64 re im) re)
(log1p.f64 (expm1.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (hypot.f64 re im) 1 (neg.f64 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (hypot.f64 re im) 1 (*.f64 (neg.f64 re) 1))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (-.f64 (hypot.f64 re im) re) 1 (fma.f64 (neg.f64 re) 1 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (-.f64 (hypot.f64 re im) re) 1 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (-.f64 (hypot.f64 re im) re) 1 (+.f64 (neg.f64 re) 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 1 (hypot.f64 re im) (*.f64 (neg.f64 re) 1))
(-.f64 (hypot.f64 re im) re)
(fma.f64 1 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 1 (-.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)
(fma.f64 1 (-.f64 (hypot.f64 re im) re) (+.f64 (neg.f64 re) re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 1 (neg.f64 re) (hypot.f64 re im))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (neg.f64 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (*.f64 (neg.f64 re) 1))
(-.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 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)) (*.f64 (neg.f64 re) 1))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (+.f64 (neg.f64 re) re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.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)
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (+.f64 (neg.f64 re) re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (neg.f64 (cbrt.f64 re)) (hypot.f64 re im))
(-.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)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (*.f64 (neg.f64 re) 1))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.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)
(fma.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (+.f64 (neg.f64 re) re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (sqrt.f64 re) (neg.f64 (sqrt.f64 re)) (hypot.f64 re im))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (fma.f64 (neg.f64 re) 1 re))
(/.f64 1 (/.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (-.f64 (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)))
(fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(/.f64 1 (/.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (-.f64 (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)))
(fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (neg.f64 re) re))
(/.f64 1 (/.f64 (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (-.f64 (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)))
(fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))) (fma.f64 (neg.f64 re) 1 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)))
(fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) 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)))
(fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))) (+.f64 (neg.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)))
(fma.f64 (pow.f64 (cbrt.f64 (neg.f64 re)) 2) (cbrt.f64 (neg.f64 re)) (hypot.f64 re im))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (neg.f64 re)) (hypot.f64 re im))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) (hypot.f64 re im))
(-.f64 (hypot.f64 re im) re)
(fma.f64 -1 re (hypot.f64 re im))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (+.f64 (neg.f64 re) re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (neg.f64 (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (hypot.f64 re im))
(-.f64 (hypot.f64 re im) re)
(+.f64 0 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))))) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 1)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 1 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/6))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/6) (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/2)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 3/2)
(pow.f64 (cbrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))) 3/2)
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/6) 3)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (*.f64 4 (pow.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/4)
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3) 1/6)
(pow.f64 (pow.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)) 3) 1/6)
(pow.f64 (*.f64 8 (pow.f64 (-.f64 (hypot.f64 re im) re) 3)) 1/6)
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2) 1/3)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2)
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(fabs.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 1))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1) 1/2))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2) 1))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 1) 1))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/6)) 3))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 1/3))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) 2))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))

eval137.0ms (1.6%)

Compiler

Compiled 5230 to 3473 computations (33.6% saved)

prune40.0ms (0.5%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New2138221
Fresh000
Picked011
Done000
Total2139222
Accurracy
99.9%
Counts
222 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
27.8%
(*.f64 1/2 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 1 re))))
77.2%
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2)))
27.9%
(*.f64 1/2 (*.f64 (sqrt.f64 2) (*.f64 im (*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re))))))
15.9%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 1/2 (*.f64 im im)) re))))
77.7%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
57.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
21.3%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
19.1%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))))
55.5%
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 214 to 177 computations (17.3% saved)

localize13.0ms (0.1%)

Local Accuracy

Found 3 expressions with local accuracy:

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

Compiled 42 to 17 computations (59.5% saved)

series39.0ms (0.5%)

Counts
2 → 16
Calls

12 calls:

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

rewrite66.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1014×log-prod
820×prod-diff
686×pow-prod-down
532×pow-exp
528×pow-prod-up
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01140
123140
2283840
Stop Event
node limit
Counts
2 → 58
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
Outputs
(+.f64 0 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))) 1)
(pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1)
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/6) 3)
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2) 1/3)
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4) 2)
(pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/2)
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)))))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))) 1) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/6)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 3/2)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)) 2))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2)) 1/2))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) 2))))
(+.f64 0 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))) 1)
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1)
(*.f64 1 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (hypot.f64 (hypot.f64 re im) (sqrt.f64 (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (sqrt.f64 (+.f64 re (hypot.f64 re im))))
(pow.f64 (-.f64 (hypot.f64 re im) re) 1/2)
(pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 1)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6) 3)
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3/2)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2) 1/3)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2) 1/4)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/6)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/4) 2)
(fabs.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(log.f64 (exp.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))
(cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(hypot.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (neg.f64 re)))
(hypot.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (hypot.f64 re im)))
(exp.f64 (log.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 1/6)) 3))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 (-.f64 (hypot.f64 re im) re))) 1/3))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (-.f64 (hypot.f64 re im) re))) 2))
(log1p.f64 (expm1.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))

simplify94.0ms (1.1%)

Algorithm
egg-herbie
Rules
1534×fma-def
1492×associate-*l*
662×*-commutative
618×times-frac
544×associate-/l*
Iterations

Useful iterations: 2 (0.0ms)

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

localize7.0ms (0.1%)

Compiler

Compiled 18 to 14 computations (22.2% 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%)

Counts
1 → 8
Calls

6 calls:

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

rewrite71.0ms (0.8%)

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

simplify129.0ms (1.5%)

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

localize17.0ms (0.2%)

Local Accuracy

Found 4 expressions with local accuracy:

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

Compiled 52 to 29 computations (44.2% saved)

series7.0ms (0.1%)

Counts
4 → 72
Calls

21 calls:

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

rewrite166.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
1244×log-prod
682×pow-prod-down
566×pow-prod-up
508×pow-exp
492×pow-unpow
Iterations

Useful iterations: 1 (0.0ms)

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

simplify154.0ms (1.8%)

Algorithm
egg-herbie
Rules
1798×fma-def
932×distribute-lft-in
866×distribute-rgt-in
558×log-prod
392×exp-prod
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03364100
17753966
226623958
Stop Event
node limit
Counts
222 → 198
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 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 0 (/.f64 im (sqrt.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 (/.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 (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)))
(/.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 re (pow.f64 im -2))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))))) 1)
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 im im) (*.f64 1/2 (/.f64 1 re)))
(*.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 1 re))
(*.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 1)
(*.f64 1 (/.f64 1/2 (*.f64 re (pow.f64 im -2))))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 1 re)))
(*.f64 (cbrt.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))) (cbrt.f64 (pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))
(*.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (/.f64 1 re)))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)))
(*.f64 (*.f64 (*.f64 im im) -1/2) (/.f64 1 (neg.f64 re)))
(*.f64 (/.f64 1 re) (*.f64 1/2 (*.f64 im im)))
(*.f64 (*.f64 1/2 im) (*.f64 im (/.f64 1 re)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 im im) 1) (/.f64 1/2 re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 1/2 (cbrt.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (/.f64 (*.f64 1/2 (*.f64 im im)) (cbrt.f64 re)))
(*.f64 (pow.f64 re -1/2) (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) 1) (/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (sqrt.f64 re)) (/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) 1) (/.f64 (*.f64 im (sqrt.f64 1/2)) re))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 im) 1) (/.f64 im re))
(*.f64 (/.f64 (*.f64 1/2 im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 1)
(pow.f64 (cbrt.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))) 3)
(pow.f64 (pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 2) 1/2)
(pow.f64 (pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 3) 1/3)
(pow.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) 2)
(pow.f64 (/.f64 (*.f64 re (pow.f64 im -2)) 1/2) -1)
(pow.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6) (pow.f64 re 3)) 1/3)
(pow.f64 (/.f64 (/.f64 (*.f64 re (pow.f64 im -2)) 1/2) 1) -1)
(neg.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (neg.f64 re)))
(sqrt.f64 (pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 2))
(log.f64 (exp.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))))))
(cbrt.f64 (pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 3))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))
(exp.f64 (log.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))))) 1/3))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re))) 2))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 re (pow.f64 im -2)) 1/2)) -1))
(log1p.f64 (expm1.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))
(+.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) (/.f64 1/2 (*.f64 re (pow.f64 im -2))))
(+.f64 0 (/.f64 (*.f64 im im) re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 im im) re))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 im im) re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 im im) re)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 im im) re)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 im im) re))) 1)
(/.f64 2 (/.f64 (*.f64 re (pow.f64 im -2)) 1/2))
(/.f64 (*.f64 im im) re)
(/.f64 1 (*.f64 re (pow.f64 im -2)))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.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 2 (*.f64 (*.f64 im im) -1/2)) (neg.f64 re))
(/.f64 (*.f64 (*.f64 (*.f64 im im) -1/2) 2) (neg.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 (pow.f64 im -2)) -1)
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4))
(log.f64 (exp.f64 (/.f64 (*.f64 im im) re)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 im im) re))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 im im) re)))
(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))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 im im) re)))
(+.f64 0 (*.f64 1/2 (*.f64 im im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (*.f64 im im)))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (*.f64 im im))))))
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (*.f64 im im))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (*.f64 im im))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im)))) 1)
(pow.f64 (*.f64 1/2 (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) 3)
(pow.f64 (*.f64 1/4 (pow.f64 im 4)) 1/2)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 2)
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(log.f64 (sqrt.f64 (exp.f64 (*.f64 im im))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im im))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6)) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 1/2))) 2))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im 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 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) 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 (pow.f64 im 2) re)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(+.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 im (/.f64 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 (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 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 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (sqrt.f64 2))
(*.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))) (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)))
(*.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 1/2))) (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 im (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 re (pow.f64 im -2))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))))))
(*.f64 3 (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (*.f64 im (*.f64 im (/.f64 1/2 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 re (pow.f64 im -2))))) 1)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (*.f64 im im) (*.f64 1/2 (/.f64 1 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 1 re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 1)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 1 (/.f64 1/2 (*.f64 re (pow.f64 im -2))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 1 re)))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 (/.f64 1 re) (cbrt.f64 (*.f64 (*.f64 im 1/2) im))))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (/.f64 (cbrt.f64 (*.f64 im (*.f64 im 1/2))) re))
(*.f64 (cbrt.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))) (cbrt.f64 (pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 2)))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))) (cbrt.f64 (pow.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))) 2)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 (*.f64 im 1/2) re))) (cbrt.f64 (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/4)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 2)) (cbrt.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))
(*.f64 (cbrt.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))) (cbrt.f64 (pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 2)))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))) (cbrt.f64 (pow.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))) 2)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 (*.f64 im 1/2) re))) (cbrt.f64 (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/4)))
(*.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (/.f64 1 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (*.f64 (*.f64 im im) -1/2) (/.f64 1 (neg.f64 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (/.f64 1 re) (*.f64 1/2 (*.f64 im im)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (*.f64 1/2 im) (*.f64 im (/.f64 1 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (*.f64 (/.f64 im (cbrt.f64 re)) im))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (/.f64 (*.f64 im im) 1) (/.f64 1/2 re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (/.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 1/2 (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (*.f64 (/.f64 im (cbrt.f64 re)) im))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (/.f64 (*.f64 1/2 (*.f64 im im)) (cbrt.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (/.f64 1/2 (/.f64 (cbrt.f64 re) (*.f64 im im))))
(*.f64 (pow.f64 (cbrt.f64 re) -2) (/.f64 (*.f64 im (*.f64 im 1/2)) (cbrt.f64 re)))
(*.f64 (pow.f64 re -1/2) (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)))
(/.f64 (*.f64 (pow.f64 re -1/2) (*.f64 (*.f64 im 1/2) im)) (sqrt.f64 re))
(*.f64 (pow.f64 re -1/2) (*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 im 1/2)))
(*.f64 (pow.f64 re -1/2) (*.f64 im (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) 1) (/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) re))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 (/.f64 1 re) (cbrt.f64 (*.f64 (*.f64 im 1/2) im))))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (/.f64 (cbrt.f64 (*.f64 im (*.f64 im 1/2))) re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))
(*.f64 (cbrt.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))) (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2)))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/2 re)))) (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 (*.f64 im 1/2) re))) (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (sqrt.f64 re)) (/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (sqrt.f64 re)) (/.f64 (cbrt.f64 (*.f64 (*.f64 im 1/2) im)) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (sqrt.f64 re)) (/.f64 (cbrt.f64 (*.f64 im (*.f64 im 1/2))) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) 1) (/.f64 (*.f64 im (sqrt.f64 1/2)) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (*.f64 (/.f64 im (cbrt.f64 re)) im))
(*.f64 (/.f64 (*.f64 1/2 im) 1) (/.f64 im re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(*.f64 (/.f64 (*.f64 1/2 im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (*.f64 (/.f64 im (cbrt.f64 re)) im))
(*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 1)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(pow.f64 (cbrt.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))) 3)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(pow.f64 (pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 2) 1/2)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(pow.f64 (pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 3) 1/3)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(pow.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) 2)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(pow.f64 (/.f64 (*.f64 re (pow.f64 im -2)) 1/2) -1)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(pow.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6) (pow.f64 re 3)) 1/3)
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6) (pow.f64 re 3)))
(pow.f64 (/.f64 (/.f64 (*.f64 re (pow.f64 im -2)) 1/2) 1) -1)
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(neg.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (neg.f64 re)))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(sqrt.f64 (pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 2))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(log.f64 (exp.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(cbrt.f64 (pow.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) 3))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(exp.f64 (log.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))) 1))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))) 1) 1))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))))) 3))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))))) 1/3))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re))) 2))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 re (pow.f64 im -2)) 1/2)) -1))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(log1p.f64 (expm1.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2)))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 im (/.f64 (*.f64 im 1/2) re))
(+.f64 (/.f64 1/2 (*.f64 re (pow.f64 im -2))) (/.f64 1/2 (*.f64 re (pow.f64 im -2))))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(+.f64 0 (/.f64 (*.f64 im im) re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 im im) re))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 im im) re)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 im (/.f64 re im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 im (/.f64 re im))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (*.f64 im (/.f64 im re))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 im im) re)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 im im) re)))))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 im im) re))) 1)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 2 (/.f64 (*.f64 re (pow.f64 im -2)) 1/2))
(/.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 1 (*.f64 re (pow.f64 im -2)))
(/.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) (sqrt.f64 re)) (sqrt.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 2 (*.f64 (*.f64 im im) -1/2)) (neg.f64 re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (*.f64 (*.f64 im im) -1/2) 2) (neg.f64 re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 (*.f64 im 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 (*.f64 im im) re)) 3)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 6)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4) 1/2)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6) 1/3)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 2/3)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 4)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(pow.f64 (*.f64 re (pow.f64 im -2)) -1)
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(log.f64 (exp.f64 (/.f64 (*.f64 im im) re)))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 im im) re))))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 im im) re)))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (log.f64 (/.f64 (*.f64 im im) re)))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1) 1))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 2))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 im im) re)) 1/2) 2))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1) 2))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) 3))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 4)) 1/2))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 6)) 1/3))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 im im) re)))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(+.f64 0 (*.f64 1/2 (*.f64 im im)))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (*.f64 im im)))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (*.f64 im im))))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) im))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) im)))))
(*.f64 3 (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) im)))))
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (*.f64 im im))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (*.f64 im im))))))
(*.f64 2 (log.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im)))) 1)
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(pow.f64 (*.f64 1/2 (*.f64 im im)) 1)
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) 3)
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(pow.f64 (*.f64 1/4 (pow.f64 im 4)) 1/2)
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6) 1/3)
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 2)
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(log.f64 (sqrt.f64 (exp.f64 (*.f64 im im))))
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 1))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 1) 1))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) 3))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 1/2)) 6)) 1/3))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 1/2))) 2))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 (*.f64 im 1/2) im)
(*.f64 im (*.f64 im 1/2))

localize64.0ms (0.7%)

Local Accuracy

Found 4 expressions with local accuracy:

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

Compiled 55 to 45 computations (18.2% saved)

series11.0ms (0.1%)

Counts
4 → 24
Calls

15 calls:

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

rewrite74.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1318×log-prod
978×pow-prod-down
636×pow-prod-up
610×pow-exp
514×pow-unpow
Iterations

Useful iterations: 2 (0.0ms)

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

simplify84.0ms (1%)

Algorithm
egg-herbie
Rules
1140×log-prod
1100×fma-def
1044×unswap-sqr
858×distribute-lft-in
804×distribute-rgt-in
Iterations

Useful iterations: 2 (0.0ms)

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

eval378.0ms (4.4%)

Compiler

Compiled 13294 to 9424 computations (29.1% saved)

prune195.0ms (2.3%)

Pruning

12 alts after pruning (8 fresh and 4 done)

PrunedKeptTotal
New6517658
Fresh213
Picked101
Done145
Total65512667
Accurracy
100.0%
Counts
667 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
27.7%
(*.f64 1/2 (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3))
28.1%
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
28.0%
(*.f64 1/2 (*.f64 (pow.f64 (sqrt.f64 im) 2) (sqrt.f64 (/.f64 1 re))))
27.6%
(*.f64 1/2 (*.f64 (pow.f64 (cbrt.f64 im) 3) (sqrt.f64 (/.f64 1 re))))
28.1%
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
77.2%
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2)))
57.3%
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
15.9%
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
77.7%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
57.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
21.3%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
55.5%
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 215 to 174 computations (19.1% saved)

localize12.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

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

Compiled 31 to 16 computations (48.4% saved)

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

rewrite105.0ms (1.2%)

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

simplify88.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 1 expressions with local accuracy:

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

Compiled 17 to 7 computations (58.8% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

6 calls:

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

rewrite62.0ms (0.7%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
114211
2178311
Stop Event
node limit
Counts
1 → 30
Calls
Call 1
Inputs
(/.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))
(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))))

simplify54.0ms (0.6%)

Algorithm
egg-herbie
Rules
1050×log-prod
1022×fma-def
886×associate-*r*
782×associate-*l*
426×log-div
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
085926
1194794
2605686
34032662
Stop Event
node limit
Counts
42 → 47
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (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))
(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))))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (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 (/.f64 1 (cbrt.f64 re)) im) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 im (*.f64 (pow.f64 re 1/4) (pow.f64 re 1/4)))
(/.f64 im (pow.f64 re 1/2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 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 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 im (*.f64 (pow.f64 re 1/4) (pow.f64 re 1/4)))
(/.f64 im (pow.f64 re 1/2))
(*.f64 (/.f64 (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 (/.f64 1 (cbrt.f64 re)) im) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(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))
(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))

localize11.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
91.2%
(/.f64 (*.f64 im im) re)
73.0%
(sqrt.f64 (/.f64 (*.f64 im im) re))
Compiler

Compiled 27 to 8 computations (70.4% saved)

series1.0ms (0%)

Counts
2 → 36
Calls

12 calls:

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

rewrite68.0ms (0.8%)

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

Useful iterations: 1 (0.0ms)

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

simplify92.0ms (1.1%)

Algorithm
egg-herbie
Rules
1590×fma-def
1278×log-div
1268×log-prod
804×associate-/l*
736×associate-*r/
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01542021
13571857
213401723
359011723
Stop Event
node limit
Counts
103 → 95
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (pow.f64 (/.f64 1 re) 1/2))
(*.f64 im (/.f64 1 (sqrt.f64 re)))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (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 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 im re) im))))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 1/2))
(/.f64 im (sqrt.f64 re))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re)))
(/.f64 (neg.f64 im) (neg.f64 (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 im re) im) 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))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (+.f64 1 (*.f64 (/.f64 im re) im)) 1)
(*.f64 im (/.f64 1 (/.f64 re im)))
(*.f64 im (*.f64 im (/.f64 1 re)))
(*.f64 (*.f64 im im) (/.f64 1 re))
(*.f64 (*.f64 (/.f64 im re) im) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 1 (*.f64 (/.f64 im re) im))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 1 re)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 1 (neg.f64 re)))
(*.f64 (/.f64 1 re) (*.f64 im im))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 (/.f64 im re) im)
(*.f64 (/.f64 im (cbrt.f64 (*.f64 re re))) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 re re))) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(*.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 re re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 (/.f64 im re) im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(pow.f64 (*.f64 (/.f64 im re) im) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 3)
(pow.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) 1/2)
(pow.f64 (pow.f64 (*.f64 (/.f64 im re) im) 3) 1/3)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(neg.f64 (/.f64 (*.f64 im im) (neg.f64 re)))
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(log.f64 (exp.f64 (*.f64 (/.f64 im re) im)))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) im) 3))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im im) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im re) im)))
(exp.f64 (log.f64 (*.f64 (/.f64 im re) im)))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im 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 (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 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 (/.f64 1 re) 1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (/.f64 1 (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 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im 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 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 im re) im))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 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 (/.f64 im re) im)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 (*.f64 im im) re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 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)
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (sqrt.f64 (/.f64 (/.f64 re im) im)))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 (neg.f64 (*.f64 im im))) (sqrt.f64 (neg.f64 re)))
(/.f64 (neg.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))
(pow.f64 (*.f64 (/.f64 im re) im) 1/2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(sqrt.f64 (/.f64 (*.f64 im im) 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))
(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 re) im)) 1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 1 (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 im (*.f64 im (/.f64 1 re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 im im) (/.f64 1 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 (/.f64 im re) im) 1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 1 (*.f64 (/.f64 im re) im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (/.f64 1 re)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (/.f64 1 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 2) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 im (sqrt.f64 re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 1 (neg.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 1 re) (*.f64 im im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.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 (/.f64 im (cbrt.f64 (*.f64 re re))) (/.f64 im (cbrt.f64 re)))
(/.f64 (*.f64 im (/.f64 im (cbrt.f64 re))) (cbrt.f64 (*.f64 re re)))
(/.f64 im (/.f64 (cbrt.f64 (*.f64 re re)) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 re re))) (/.f64 (*.f64 im im) (cbrt.f64 re)))
(/.f64 (*.f64 im (/.f64 im (cbrt.f64 re))) (cbrt.f64 (*.f64 re re)))
(/.f64 im (/.f64 (cbrt.f64 (*.f64 re re)) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (*.f64 im im) (sqrt.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (/.f64 1 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 re re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 re re))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (/.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 re re))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (/.f64 1 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 (/.f64 im re) im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(pow.f64 (*.f64 (/.f64 im re) im) 1)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) 3)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(pow.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) 1/2)
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(fabs.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 im re) im) 3) 1/3)
(*.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)
(neg.f64 (/.f64 (*.f64 im im) (neg.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(fabs.f64 (*.f64 im (/.f64 im re)))
(log.f64 (exp.f64 (*.f64 (/.f64 im re) im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im re) im) 3))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im im) 3) (pow.f64 re 3)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im re) im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(exp.f64 (log.f64 (*.f64 (/.f64 im re) im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im re) im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)

localize18.0ms (0.2%)

Local Accuracy

Found 3 expressions with local accuracy:

NewAccuracyProgram
99.8%
(/.f64 im (sqrt.f64 re))
99.4%
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
94.3%
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
Compiler

Compiled 33 to 13 computations (60.6% saved)

series51.0ms (0.6%)

Counts
2 → 24
Calls

12 calls:

TimeVariablePointExpression
32.0ms
re
@0
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
10.0ms
re
@inf
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
2.0ms
re
@-inf
(cbrt.f64 (/.f64 im (sqrt.f64 re)))
1.0ms
im
@-inf
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
1.0ms
im
@0
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)

rewrite68.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1764×pow1
1648×add-exp-log
1648×log1p-expm1-u
1648×expm1-log1p-u
1610×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

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

simplify99.0ms (1.2%)

Algorithm
egg-herbie
Rules
1504×fma-def
1496×times-frac
1028×log-prod
952×associate-/l*
786×unswap-sqr
Iterations

Useful iterations: 2 (0.0ms)

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

localize20.0ms (0.2%)

Local Accuracy

Found 3 expressions with local accuracy:

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

Compiled 40 to 27 computations (32.5% saved)

series3.0ms (0%)

Counts
2 → 12
Calls

9 calls:

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

rewrite61.0ms (0.7%)

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

Useful iterations: 1 (0.0ms)

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

simplify48.0ms (0.6%)

Algorithm
egg-herbie
Rules
862×fma-def
856×log-prod
800×associate-*r*
738×distribute-rgt-in
718×distribute-lft-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
080778
1164622
2542466
33107466
Stop Event
node limit
Counts
42 → 41
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(-.f64 (+.f64 1 im) 1)
(*.f64 im 1)
(*.f64 (sqrt.f64 im) (sqrt.f64 im))
(*.f64 1 im)
(*.f64 (cbrt.f64 im) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (cbrt.f64 im) (*.f64 (cbrt.f64 (sqrt.f64 im)) (sqrt.f64 im)))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 im))
(*.f64 (pow.f64 im 1/4) (*.f64 (pow.f64 im 1/4) (sqrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 im) (pow.f64 im 1/4)) (pow.f64 im 1/4))
(*.f64 (*.f64 (sqrt.f64 im) (cbrt.f64 im)) (cbrt.f64 (sqrt.f64 im)))
(sqrt.f64 (*.f64 im im))
(log.f64 (exp.f64 im))
(cbrt.f64 (pow.f64 im 3))
(expm1.f64 (log1p.f64 im))
(exp.f64 (log.f64 im))
(log1p.f64 (expm1.f64 im))
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(/.f64 im (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)
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 im 3) (/.f64 (pow.f64 re -1/2) re)))
(cbrt.f64 (*.f64 (/.f64 (pow.f64 re -1/2) re) (pow.f64 im 3)))
(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))))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) im) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (+.f64 1 im) 1)
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(*.f64 im 1)
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(*.f64 (sqrt.f64 im) (sqrt.f64 im))
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(*.f64 1 im)
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(*.f64 (cbrt.f64 im) (pow.f64 (cbrt.f64 im) 2))
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(*.f64 (cbrt.f64 im) (*.f64 (cbrt.f64 (sqrt.f64 im)) (sqrt.f64 im)))
(*.f64 (cbrt.f64 im) (*.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 im))))
(*.f64 (cbrt.f64 (sqrt.f64 im)) (*.f64 (sqrt.f64 im) (cbrt.f64 im)))
(*.f64 (sqrt.f64 im) (*.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 im))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 im))
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(*.f64 (pow.f64 im 1/4) (*.f64 (pow.f64 im 1/4) (sqrt.f64 im)))
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(*.f64 (*.f64 (sqrt.f64 im) (pow.f64 im 1/4)) (pow.f64 im 1/4))
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(*.f64 (*.f64 (sqrt.f64 im) (cbrt.f64 im)) (cbrt.f64 (sqrt.f64 im)))
(*.f64 (cbrt.f64 im) (*.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 im))))
(*.f64 (cbrt.f64 (sqrt.f64 im)) (*.f64 (sqrt.f64 im) (cbrt.f64 im)))
(*.f64 (sqrt.f64 im) (*.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 im))))
(sqrt.f64 (*.f64 im im))
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(log.f64 (exp.f64 im))
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(cbrt.f64 (pow.f64 im 3))
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(expm1.f64 (log1p.f64 im))
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(exp.f64 (log.f64 im))
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(log1p.f64 (expm1.f64 im))
(+.f64 (+.f64 1 im) -1)
(+.f64 im 0)
im
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(/.f64 im (sqrt.f64 re))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (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))
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (*.f64 (pow.f64 im 3) (/.f64 (pow.f64 re -1/2) re)))
(cbrt.f64 (*.f64 (/.f64 (pow.f64 im 3) re) (pow.f64 re -1/2)))
(cbrt.f64 (*.f64 (/.f64 (pow.f64 re -1/2) re) (pow.f64 im 3)))
(cbrt.f64 (*.f64 (pow.f64 im 3) (/.f64 (pow.f64 re -1/2) re)))
(cbrt.f64 (*.f64 (/.f64 (pow.f64 im 3) re) (pow.f64 re -1/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))

eval215.0ms (2.5%)

Compiler

Compiled 7436 to 4586 computations (38.3% saved)

prune144.0ms (1.7%)

Pruning

11 alts after pruning (4 fresh and 7 done)

PrunedKeptTotal
New5093512
Fresh213
Picked101
Done178
Total51311524
Accurracy
100.0%
Counts
524 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
28.0%
(*.f64 1/2 (/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4)))
28.1%
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
28.1%
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
28.1%
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
77.2%
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2)))
57.3%
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
15.9%
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
77.7%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
57.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
21.3%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
55.5%
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 114 to 90 computations (21.1% saved)

localize12.0ms (0.1%)

Compiler

Compiled 28 to 23 computations (17.9% saved)

localize12.0ms (0.1%)

Local Accuracy

Found 1 expressions with local accuracy:

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

Compiled 21 to 14 computations (33.3% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

6 calls:

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

rewrite52.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1296×pow1
1196×add-exp-log
1196×log1p-expm1-u
1196×expm1-log1p-u
1170×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

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

simplify61.0ms (0.7%)

Algorithm
egg-herbie
Rules
2242×log-prod
996×distribute-rgt-in
978×distribute-lft-in
758×associate-*r*
664×associate-*l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
042391
199391
2337299
32243299
47305299
Stop Event
node limit
Counts
23 → 13
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (+.f64 1 (*.f64 (pow.f64 re -1/2) im)) 1)
(pow.f64 (*.f64 (pow.f64 re -1/2) im) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) im)) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3) 1/3)
(pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 re -1/4)) 2)
(sqrt.f64 (*.f64 (*.f64 im im) (pow.f64 re -1)))
(log.f64 (pow.f64 (exp.f64 im) (pow.f64 re -1/2)))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im)))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) im)))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(-.f64 (+.f64 1 (*.f64 (pow.f64 re -1/2) im)) 1)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (*.f64 (pow.f64 re -1/2) im) 1)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) im)) 3)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3) 1/3)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (*.f64 (sqrt.f64 im) (pow.f64 re -1/4)) 2)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(sqrt.f64 (*.f64 (*.f64 im im) (pow.f64 re -1)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(log.f64 (pow.f64 (exp.f64 im) (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (pow.f64 re -1/2))

localize8.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

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

Compiled 26 to 12 computations (53.8% saved)

series12.0ms (0.1%)

Counts
2 → 24
Calls

12 calls:

TimeVariablePointExpression
5.0ms
im
@inf
(/.f64 1 (/.f64 (sqrt.f64 re) im))
4.0ms
re
@-inf
(/.f64 1 (/.f64 (sqrt.f64 re) im))
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)

rewrite61.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1730×pow1
1594×add-exp-log
1594×log1p-expm1-u
1594×expm1-log1p-u
1554×add-log-exp
Iterations

Useful iterations: 1 (0.0ms)

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

simplify81.0ms (0.9%)

Algorithm
egg-herbie
Rules
1976×fma-def
1228×log-prod
952×associate-*r/
820×associate-*l/
744×unswap-sqr
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01641691
13871517
213531365
367561365
Stop Event
node limit
Counts
91 → 81
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -2)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 -1 (/.f64 1 (/.f64 (neg.f64 (sqrt.f64 re)) im)))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 (pow.f64 re -1/2) (pow.f64 (/.f64 1 im) -1))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1) (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(*.f64 (/.f64 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)) (/.f64 (cbrt.f64 im) (cbrt.f64 (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))))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/4)) (/.f64 (sqrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (*.f64 (pow.f64 re -1/2) 1) im)
(*.f64 (*.f64 (pow.f64 re -1/2) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (*.f64 (pow.f64 re -1/2) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 (/.f64 1 (neg.f64 (sqrt.f64 re))) (neg.f64 im))
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(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)
(sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -2))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 re 3/2)))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (+.f64 1 (/.f64 (sqrt.f64 re) im)) 1)
(*.f64 1 (/.f64 (sqrt.f64 re) im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (/.f64 (sqrt.f64 re) im) 1)
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 1 im)))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (pow.f64 re 1/4) (*.f64 (pow.f64 re 1/4) (/.f64 1 im)))
(*.f64 (neg.f64 (sqrt.f64 re)) (/.f64 1 (neg.f64 im)))
(*.f64 (/.f64 1 im) (sqrt.f64 re))
(*.f64 (/.f64 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 (/.f64 im (sqrt.f64 re)) -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)
(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 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -2)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -2)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -2)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 -1 (/.f64 1 (/.f64 (neg.f64 (sqrt.f64 re)) im)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (pow.f64 re -1/2) (pow.f64 (/.f64 1 im) -1))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 re (*.f64 im im)))) (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1) (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 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)) (/.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (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 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/4)) (/.f64 (sqrt.f64 im) (pow.f64 re 1/4)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (*.f64 (pow.f64 re -1/2) 1) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (*.f64 (pow.f64 re -1/2) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (*.f64 (pow.f64 re -1/2) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 1 (neg.f64 (sqrt.f64 re))) (neg.f64 im))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(pow.f64 (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))
(sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) -2))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 re 3/2)))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(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 (sqrt.f64 re) im)) 1)
(/.f64 (sqrt.f64 re) im)
(*.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (sqrt.f64 re) im) 1)
(/.f64 (sqrt.f64 re) im)
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 1 im)))
(*.f64 (cbrt.f64 re) (*.f64 (/.f64 1 im) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))) im)
(*.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 (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))) im)
(*.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 (/.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 (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))) im)
(*.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 (/.f64 im (sqrt.f64 re)) -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)
(neg.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))
(/.f64 (sqrt.f64 re) im)
(sqrt.f64 (/.f64 re (*.f64 im im)))
(log.f64 (exp.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3))
(/.f64 (sqrt.f64 re) im)
(cbrt.f64 (/.f64 (pow.f64 re 3/2) (pow.f64 im 3)))
(expm1.f64 (log1p.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(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)

localize19.0ms (0.2%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
99.8%
(/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4))
99.8%
(/.f64 im (pow.f64 re 1/4))
Compiler

Compiled 34 to 23 computations (32.4% saved)

series121.0ms (1.4%)

Counts
2 → 36
Calls

12 calls:

TimeVariablePointExpression
59.0ms
re
@inf
(/.f64 im (pow.f64 re 1/4))
31.0ms
re
@-inf
(/.f64 im (pow.f64 re 1/4))
22.0ms
im
@0
(/.f64 im (pow.f64 re 1/4))
7.0ms
re
@0
(/.f64 im (pow.f64 re 1/4))
0.0ms
im
@-inf
(/.f64 im (pow.f64 re 1/4))

rewrite102.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
1814×pow1
1690×add-exp-log
1690×log1p-expm1-u
1690×expm1-log1p-u
1654×add-log-exp
Iterations

Useful iterations: 1 (0.0ms)

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

simplify84.0ms (1%)

Algorithm
egg-herbie
Rules
1682×fma-def
1206×associate-/r*
1140×log-prod
936×unswap-sqr
834×associate-*r/
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01732732
14402350
218172134
370212134
Stop Event
node limit
Counts
104 → 112
Calls
Call 1
Inputs
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (+.f64 1 (*.f64 im (pow.f64 re -1/4))) 1)
(*.f64 im (pow.f64 re -1/4))
(*.f64 (*.f64 im (pow.f64 re -1/4)) 1)
(*.f64 1 (*.f64 im (pow.f64 re -1/4)))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/4)))
(*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/4)))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)))
(*.f64 (neg.f64 im) (/.f64 1 (neg.f64 (pow.f64 re 1/4))))
(*.f64 (pow.f64 re -1/4) im)
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 im (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 1 (pow.f64 re 1/8)) (/.f64 im (pow.f64 re 1/8)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/8)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/8)))
(*.f64 (/.f64 (sqrt.f64 im) 1) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))) (/.f64 (sqrt.f64 im) (cbrt.f64 (pow.f64 re 1/4))))
(pow.f64 (*.f64 im (pow.f64 re -1/4)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) 3)
(pow.f64 (pow.f64 (*.f64 im (pow.f64 re -1/4)) 3) 1/3)
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(pow.f64 (/.f64 (pow.f64 re 1/4) im) -1)
(neg.f64 (/.f64 im (neg.f64 (pow.f64 re 1/4))))
(sqrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re))))
(log.f64 (pow.f64 (exp.f64 im) (pow.f64 re -1/4)))
(cbrt.f64 (pow.f64 (*.f64 im (pow.f64 re -1/4)) 3))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (pow.f64 re 1/4) 3)))
(expm1.f64 (log1p.f64 (*.f64 im (pow.f64 re -1/4))))
(exp.f64 (log.f64 (*.f64 im (pow.f64 re -1/4))))
(log1p.f64 (expm1.f64 (*.f64 im (pow.f64 re -1/4))))
(-.f64 (+.f64 1 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 im (*.f64 (pow.f64 re -1/4) (pow.f64 re -1/4)))
(*.f64 im (/.f64 1 (sqrt.f64 re)))
(*.f64 (*.f64 im (pow.f64 re -1/4)) (pow.f64 re -1/4))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re -1/4)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (pow.f64 re -1/4)))
(*.f64 (*.f64 im (neg.f64 (pow.f64 re -1/4))) (/.f64 1 (neg.f64 (pow.f64 re 1/4))))
(*.f64 (pow.f64 re -1/4) (*.f64 im (pow.f64 re -1/4)))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 (*.f64 im (pow.f64 re -1/4)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 1 (pow.f64 re 1/8)) (/.f64 (*.f64 im (pow.f64 re -1/4)) (pow.f64 re 1/8)))
(*.f64 (/.f64 im (pow.f64 re 1/8)) (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/8)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 im 1) (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)))
(*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 (pow.f64 re -1/4) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) 1) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/4)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (pow.f64 re 1/8)) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/8)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 1) (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (pow.f64 re 1/4)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (cbrt.f64 (sqrt.f64 re))) (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (cbrt.f64 (pow.f64 re 1/4))))
(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 1 (/.f64 im (sqrt.f64 re))) -1)
(neg.f64 (/.f64 (*.f64 im (pow.f64 re -1/4)) (neg.f64 (pow.f64 re 1/4))))
(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 (*.f64 im (pow.f64 re -1/4)) 3) (pow.f64 (pow.f64 re 1/4) 3)))
(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))))
Outputs
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (pow.f64 (/.f64 1 re) 1/4) im)
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(*.f64 im (*.f64 (pow.f64 -1 1/4) (pow.f64 (/.f64 -1 re) 1/4)))
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(*.f64 im (*.f64 (pow.f64 -1 1/4) (pow.f64 (/.f64 -1 re) 1/4)))
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(*.f64 im (*.f64 (pow.f64 -1 1/4) (pow.f64 (/.f64 -1 re) 1/4)))
(*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 im (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(*.f64 im (*.f64 (pow.f64 -1 1/4) (pow.f64 (/.f64 -1 re) 1/4)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(-.f64 (+.f64 1 (*.f64 im (pow.f64 re -1/4))) 1)
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(*.f64 im (pow.f64 re -1/4))
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 (*.f64 im (pow.f64 re -1/4)) 1)
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(*.f64 1 (*.f64 im (pow.f64 re -1/4)))
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/4)))
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (cbrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (cbrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) im))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (cbrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (cbrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) im))))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/4)))
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(*.f64 (neg.f64 im) (/.f64 1 (neg.f64 (pow.f64 re 1/4))))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(*.f64 (pow.f64 re -1/4) im)
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 im (cbrt.f64 (pow.f64 re 1/4))))
(/.f64 (*.f64 1 (/.f64 im (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 im (cbrt.f64 (pow.f64 re 1/4))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 1 (pow.f64 re 1/8)) (/.f64 im (pow.f64 re 1/8)))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/8)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/8)))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(*.f64 (/.f64 (sqrt.f64 im) 1) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))) (/.f64 (sqrt.f64 im) (cbrt.f64 (pow.f64 re 1/4))))
(/.f64 (*.f64 1 (/.f64 im (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 im (cbrt.f64 (pow.f64 re 1/4))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 (pow.f64 re 1/4))))
(pow.f64 (*.f64 im (pow.f64 re -1/4)) 1)
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(pow.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) 3)
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(pow.f64 (pow.f64 (*.f64 im (pow.f64 re -1/4)) 3) 1/3)
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(pow.f64 (/.f64 (pow.f64 re 1/4) im) -1)
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(neg.f64 (/.f64 im (neg.f64 (pow.f64 re 1/4))))
(pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2)
(/.f64 im (pow.f64 re 1/4))
(sqrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re))))
(sqrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)))
(sqrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)))
(log.f64 (pow.f64 (exp.f64 im) (pow.f64 re -1/4)))
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(cbrt.f64 (pow.f64 (*.f64 im (pow.f64 re -1/4)) 3))
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (pow.f64 re 1/4) 3)))
(expm1.f64 (log1p.f64 (*.f64 im (pow.f64 re -1/4))))
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(exp.f64 (log.f64 (*.f64 im (pow.f64 re -1/4))))
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(log1p.f64 (expm1.f64 (*.f64 im (pow.f64 re -1/4))))
(+.f64 1 (-.f64 (*.f64 im (pow.f64 re -1/4)) 1))
(+.f64 (*.f64 im (pow.f64 re -1/4)) 0)
(*.f64 im (pow.f64 re -1/4))
(-.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 (*.f64 (pow.f64 re -1/4) (pow.f64 re -1/4)))
(*.f64 im (pow.f64 re -1/2))
(*.f64 im (/.f64 1 (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 im (pow.f64 re -1/4)) (pow.f64 re -1/4))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.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 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re -1/4)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (*.f64 (pow.f64 re -1/4) (cbrt.f64 (*.f64 im (pow.f64 re -1/4)))))
(*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (*.f64 (cbrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re))) (pow.f64 re -1/4)))
(*.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (*.f64 (pow.f64 re -1/4) (cbrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)))))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (*.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (pow.f64 re -1/4)))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2) (pow.f64 re -1/4))
(*.f64 im (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)))
(*.f64 (*.f64 im (neg.f64 (pow.f64 re -1/4))) (/.f64 1 (neg.f64 (pow.f64 re 1/4))))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2) (pow.f64 re -1/4))
(*.f64 im (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)))
(*.f64 (pow.f64 re -1/4) (*.f64 im (pow.f64 re -1/4)))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 (*.f64 im (pow.f64 re -1/4)) (cbrt.f64 (pow.f64 re 1/4))))
(/.f64 (*.f64 1 (/.f64 im (/.f64 (cbrt.f64 (pow.f64 re 1/4)) (pow.f64 re -1/4)))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 (cbrt.f64 (pow.f64 re 1/4)) (pow.f64 re -1/4)))
(*.f64 (/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 (pow.f64 re 1/4)))) (pow.f64 re -1/4))
(*.f64 (/.f64 1 (pow.f64 re 1/8)) (/.f64 (*.f64 im (pow.f64 re -1/4)) (pow.f64 re 1/8)))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2) (pow.f64 re -1/4))
(*.f64 im (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)))
(*.f64 (/.f64 im (pow.f64 re 1/8)) (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/8)))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2) (pow.f64 re -1/4))
(*.f64 im (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(+.f64 1 (-.f64 (/.f64 im (sqrt.f64 re)) 1))
(+.f64 (/.f64 im (sqrt.f64 re)) 0)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 im 1) (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2) (pow.f64 re -1/4))
(*.f64 im (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)))
(*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 (pow.f64 re -1/4) (cbrt.f64 (pow.f64 re 1/4))))
(/.f64 (*.f64 1 (/.f64 im (/.f64 (cbrt.f64 (pow.f64 re 1/4)) (pow.f64 re -1/4)))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 (cbrt.f64 (pow.f64 re 1/4)) (pow.f64 re -1/4)))
(*.f64 (/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 (pow.f64 re 1/4)))) (pow.f64 re -1/4))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) 1) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/4)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/4)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re))) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/4)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) im))) (pow.f64 re 1/4)) (cbrt.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re))) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (pow.f64 re 1/8)) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/8)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im (sqrt.f64 re)))) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/4)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) (sqrt.f64 re))) (/.f64 (cbrt.f64 (*.f64 im (pow.f64 re -1/4))) (pow.f64 re 1/4)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) im))) (pow.f64 re 1/4)) (cbrt.f64 (*.f64 im (pow.f64 re -1/4))))
(*.f64 (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 1) (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (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 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (cbrt.f64 (sqrt.f64 re))) (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) (cbrt.f64 (sqrt.f64 re))) (/.f64 (sqrt.f64 im) (*.f64 (cbrt.f64 (pow.f64 re 1/4)) (pow.f64 re 1/8))))
(/.f64 (/.f64 (/.f64 im (pow.f64 re 1/4)) (cbrt.f64 (pow.f64 re 1/4))) (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 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))
(neg.f64 (/.f64 (*.f64 im (pow.f64 re -1/4)) (neg.f64 (pow.f64 re 1/4))))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 im) (pow.f64 re 1/8)) 2) (pow.f64 re -1/4))
(*.f64 im (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)))
(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 (*.f64 im (pow.f64 re -1/4)) 3) (pow.f64 (pow.f64 re 1/4) 3)))
(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))

eval195.0ms (2.3%)

Compiler

Compiled 2706 to 1590 computations (41.2% saved)

prune64.0ms (0.7%)

Pruning

11 alts after pruning (0 fresh and 11 done)

PrunedKeptTotal
New2060206
Fresh000
Picked011
Done01010
Total20611217
Accurracy
100.0%
Counts
217 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
28.0%
(*.f64 1/2 (/.f64 (/.f64 im (pow.f64 re 1/4)) (pow.f64 re 1/4)))
28.1%
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
28.1%
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
28.1%
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
77.2%
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 2)))
57.3%
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
15.9%
(*.f64 1/2 (sqrt.f64 (/.f64 (*.f64 im im) re)))
77.7%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
57.6%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
21.3%
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
55.5%
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 114 to 90 computations (21.1% saved)

regimes249.0ms (2.9%)

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

7 calls:

65.0ms
re
55.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
55.0ms
(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
39.0ms
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
12.0ms
(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
88.7%2re
77.7%1im
91.7%2(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
91.7%2(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
91.4%2(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
91.4%2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
77.7%1(*.f64 im im)
Compiler

Compiled 269 to 190 computations (29.4% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
1.2991182103534335e-126
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes172.0ms (2%)

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

3 calls:

86.0ms
re
68.0ms
im
15.0ms
(*.f64 im im)
Results
AccuracySegmentsBranch
80.0%3re
69.9%5im
68.4%4(*.f64 im im)
Compiler

Compiled 105 to 75 computations (28.6% saved)

bsearch66.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
47.0ms
1.0776339043263593e-46
1.9806140785124524e-44
18.0ms
-3.764879050148881e+41
-1.597136908947252e+37
Results
48.0ms197×body256valid
10.0ms26×body2048valid
4.0ms13×body1024valid
1.0msbody512valid
Compiler

Compiled 338 to 280 computations (17.2% saved)

regimes677.0ms (7.9%)

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

2 calls:

634.0ms
im
42.0ms
re
Results
AccuracySegmentsBranch
78.9%3re
69.0%5im
Compiler

Compiled 35 to 27 computations (22.9% saved)

bsearch65.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
48.0ms
7.812567871401583e-25
2.813708789709792e-24
17.0ms
-3.764879050148881e+41
-1.597136908947252e+37
Results
34.0msbody1024valid
21.0ms181×body256valid
6.0ms15×body2048valid
1.0msbody512valid
Compiler

Compiled 272 to 235 computations (13.6% saved)

regimes37.0ms (0.4%)

Accuracy

Total -42.2b remaining (-215.2%)

Threshold costs -42.2b (-215.2%)

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

2 calls:

24.0ms
re
12.0ms
im
Results
AccuracySegmentsBranch
69.3%2re
67.4%4im
Compiler

Compiled 27 to 20 computations (25.9% saved)

bsearch19.0ms (0.2%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
19.0ms
7.812567871401583e-25
2.813708789709792e-24
Results
6.0ms52×body256valid
5.0ms14×body2048valid
5.0msbody1024valid
1.0msbody512valid
Compiler

Compiled 112 to 91 computations (18.8% saved)

simplify10.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
055309
171309
277309
379309
480309
Stop Event
done
saturated
Calls
Call 1
Inputs
(if (<=.f64 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) 0) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 re -79999999999999996310101265616969138176) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 1064596454321581/100433627766186892221372630771322662657637687111424552206336) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(if (<=.f64 re -600000000000000024271790803693365886976) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 3266710722441009/1361129467683753853853498429727072845824) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(if (<=.f64 re 7350099125492271/5444517870735015415413993718908291383296) (*.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 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) 0) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 re -79999999999999996310101265616969138176) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 1064596454321581/100433627766186892221372630771322662657637687111424552206336) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(if (<=.f64 re -600000000000000024271790803693365886976) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 3266710722441009/1361129467683753853853498429727072845824) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(if (<=.f64 re 7350099125492271/5444517870735015415413993718908291383296) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 122 to 94 computations (23% saved)

soundness869.0ms (10.1%)

Rules
1874×times-frac
1874×times-frac
1874×times-frac
1798×fma-def
1244×log-prod
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
04045133
110314891
231984857
01286
124956
2310556
03364100
17753966
226623958
04045133
110314891
231984857
04045133
110314891
231984857
Stop Event
node limit
node limit
node limit
node limit
node limit
saturated
Compiler

Compiled 316 to 230 computations (27.2% saved)

end120.0ms (1.4%)

Compiler

Compiled 114 to 80 computations (29.8% saved)

Profiling

Loading profile data...