_multiplyComplex, imaginary part

Time bar (total: 2.8s)

analyze0.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
100%99.8%0%0.2%0%0%0%1
Compiler

Compiled 12 to 8 computations (33.3% saved)

sample972.0ms (34.4%)

Results
733.0ms6349×256valid
231.0ms1907×256infinite
Bogosity

preprocess141.0ms (5%)

Algorithm
egg-herbie
Rules
452×fma-define
236×fma-neg
136×unsub-neg
90×associate-*r*
74×distribute-lft-neg-out
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-x.im
00-0-(*.f64 x.re y.im)
00-0-y.im
00-0-y.re
00-0-(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
00-0-x.re
00-0-(*.f64 x.im y.re)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045464
196464
2170464
3374464
4603464
5804464
6959464
7981464
8985464
Stop Event
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 (neg.f64 x.re) y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 (neg.f64 x.im) y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 x.im (neg.f64 y.re)))
(+.f64 (*.f64 x.re (neg.f64 y.im)) (*.f64 x.im y.re))
(neg.f64 (+.f64 (*.f64 (neg.f64 x.re) y.im) (*.f64 x.im y.re)))
(neg.f64 (+.f64 (*.f64 x.re y.im) (*.f64 (neg.f64 x.im) y.re)))
(neg.f64 (+.f64 (*.f64 x.re y.im) (*.f64 x.im (neg.f64 y.re))))
(neg.f64 (+.f64 (*.f64 x.re (neg.f64 y.im)) (*.f64 x.im y.re)))
(+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.re y.im) (*.f64 x.im x.re))
(+.f64 (*.f64 y.im x.re) (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im))
(+.f64 (*.f64 x.re x.im) (*.f64 y.im y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Outputs
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 (neg.f64 x.re) y.im) (*.f64 x.im y.re))
(fma.f64 x.re (neg.f64 y.im) (*.f64 x.im y.re))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.re y.im) (*.f64 (neg.f64 x.im) y.re))
(fma.f64 x.re y.im (*.f64 x.im (neg.f64 y.re)))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 x.im (neg.f64 y.re)))
(fma.f64 x.re y.im (*.f64 x.im (neg.f64 y.re)))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 x.re (neg.f64 y.im)) (*.f64 x.im y.re))
(fma.f64 x.re (neg.f64 y.im) (*.f64 x.im y.re))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(neg.f64 (+.f64 (*.f64 (neg.f64 x.re) y.im) (*.f64 x.im y.re)))
(fma.f64 x.re y.im (*.f64 x.im (neg.f64 y.re)))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(neg.f64 (+.f64 (*.f64 x.re y.im) (*.f64 (neg.f64 x.im) y.re)))
(fma.f64 x.re (neg.f64 y.im) (*.f64 x.im y.re))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(neg.f64 (+.f64 (*.f64 x.re y.im) (*.f64 x.im (neg.f64 y.re))))
(fma.f64 x.re (neg.f64 y.im) (*.f64 x.im y.re))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(neg.f64 (+.f64 (*.f64 x.re (neg.f64 y.im)) (*.f64 x.im y.re)))
(fma.f64 x.re y.im (*.f64 x.im (neg.f64 y.re)))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))
(fma.f64 x.re y.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.re y.im) (*.f64 x.im x.re))
(fma.f64 x.re x.im (*.f64 y.im y.re))
(+.f64 (*.f64 y.im x.re) (*.f64 x.im y.re))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.re x.im) (*.f64 y.im y.re))
(fma.f64 x.re x.im (*.f64 y.im y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(fma.f64 x.re y.re (*.f64 y.im x.im))
Symmetry

(sort x.re y.im)

(sort x.im y.re)

Compiler

Compiled 55 to 23 computations (58.2% saved)

eval0.0ms (0%)

Compiler

Compiled 10 to 6 computations (40% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 x.re y.im (*.f64 x.im y.re))
100.0%
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
Compiler

Compiled 21 to 13 computations (38.1% saved)

localize40.0ms (1.4%)

Localize:

Found 2 expressions with local error:

NewAccuracyProgram
100.0%
(fma.f64 x.re y.im (*.f64 x.im y.re))
100.0%
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
Compiler

Compiled 35 to 9 computations (74.3% saved)

series16.0ms (0.6%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
1.0ms
x.im
@-inf
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
1.0ms
x.re
@0
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
1.0ms
x.im
@0
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
1.0ms
x.re
@-inf
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
1.0ms
x.re
@inf
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))

rewrite484.0ms (17.1%)

Algorithm
batch-egg-rewrite
Rules
1158×unpow-prod-down
792×log-prod
739×log1p-expm1-u
739×expm1-log1p-u
628×fma-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01654
116254
2202154
Stop Event
node limit
Counts
2 → 149
Calls
Call 1
Inputs
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(fma.f64 x.re y.im (*.f64 x.im y.re))
Outputs
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 x.re y.im) 2) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))) (/.f64 (pow.f64 (*.f64 x.im y.re) 2) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) (log.f64 (exp.f64 1)))
(*.f64 1 (fma.f64 x.re y.im (*.f64 x.im y.re)))
(*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(*.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (pow.f64 (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))) 1))
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (/.f64 1 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (pow.f64 (/.f64 1 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))) 1))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 1 1/3) (fma.f64 x.re y.im (*.f64 x.im y.re)))
(*.f64 (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3/2) 1/3) (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3/2) 1/3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 1/3) (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1/3))
(*.f64 (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 5/2) 1/3) (pow.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1/3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)) 2) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(/.f64 1 (/.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)) (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))))
(/.f64 1 (/.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (+.f64 (pow.f64 (*.f64 x.im y.re) 2) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (*.f64 x.re (*.f64 y.im (*.f64 x.im y.re))))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))) (neg.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))) (neg.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)))
(pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)
(pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 3)
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)) (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))) -1)
(pow.f64 (/.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))) -1)
(sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2))
(log.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 y.im) x.re) (+.f64 1 (expm1.f64 (*.f64 x.im y.re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.im))) (pow.f64 (exp.f64 y.re) x.im)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.im))) (+.f64 1 (expm1.f64 (*.f64 x.im y.re)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 y.re) x.im) (+.f64 1 (expm1.f64 (*.f64 x.re y.im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.re))) (pow.f64 (exp.f64 y.im) x.re)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.re))) (+.f64 1 (expm1.f64 (*.f64 x.re y.im)))))
(cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3))
(expm1.f64 (log1p.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(log1p.f64 (expm1.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(exp.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(fma.f64 y.im x.re (*.f64 x.im y.re))
(fma.f64 (*.f64 x.re y.im) 1 (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 y.re x.im (*.f64 x.re y.im))
(fma.f64 (*.f64 x.im y.re) 1 (*.f64 x.re y.im))
(fma.f64 1 (*.f64 x.re y.im) (*.f64 x.im y.re))
(fma.f64 1 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 (cbrt.f64 (*.f64 x.im y.re)) (pow.f64 (cbrt.f64 (*.f64 x.im y.re)) 2) (*.f64 x.re y.im))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.im y.re)) 2) (cbrt.f64 (*.f64 x.im y.re)) (*.f64 x.re y.im))
(fma.f64 (cbrt.f64 (*.f64 x.re y.im)) (pow.f64 (cbrt.f64 (*.f64 x.re y.im)) 2) (*.f64 x.im y.re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.re y.im)) 2) (cbrt.f64 (*.f64 x.re y.im)) (*.f64 x.im y.re))
(fma.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (cbrt.f64 x.re) y.im) (*.f64 x.im y.re))
(fma.f64 (pow.f64 (cbrt.f64 y.re) 2) (*.f64 (cbrt.f64 y.re) x.im) (*.f64 x.re y.im))
(fma.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 (cbrt.f64 x.im) y.re) (*.f64 x.re y.im))
(fma.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (cbrt.f64 y.im) x.re) (*.f64 x.im y.re))
(fma.f64 (sqrt.f64 (*.f64 x.im y.re)) (sqrt.f64 (*.f64 x.im y.re)) (*.f64 x.re y.im))
(fma.f64 (sqrt.f64 (*.f64 x.re y.im)) (sqrt.f64 (*.f64 x.re y.im)) (*.f64 x.im y.re))
(fma.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) y.im) (*.f64 x.im y.re))
(fma.f64 (sqrt.f64 y.re) (*.f64 (sqrt.f64 y.re) x.im) (*.f64 x.re y.im))
(fma.f64 (sqrt.f64 x.im) (*.f64 (sqrt.f64 x.im) y.re) (*.f64 x.re y.im))
(fma.f64 (sqrt.f64 y.im) (*.f64 (sqrt.f64 y.im) x.re) (*.f64 x.im y.re))
(fma.f64 (*.f64 x.re (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 y.im) (*.f64 x.im y.re))
(fma.f64 (*.f64 x.re (sqrt.f64 y.im)) (sqrt.f64 y.im) (*.f64 x.im y.re))
(fma.f64 (*.f64 y.im (pow.f64 (cbrt.f64 x.re) 2)) (cbrt.f64 x.re) (*.f64 x.im y.re))
(fma.f64 (*.f64 y.im (sqrt.f64 x.re)) (sqrt.f64 x.re) (*.f64 x.im y.re))
(fma.f64 (*.f64 x.im (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re) (*.f64 x.re y.im))
(fma.f64 (*.f64 x.im (sqrt.f64 y.re)) (sqrt.f64 y.re) (*.f64 x.re y.im))
(fma.f64 (*.f64 y.re (pow.f64 (cbrt.f64 x.im) 2)) (cbrt.f64 x.im) (*.f64 x.re y.im))
(fma.f64 (*.f64 y.re (sqrt.f64 x.im)) (sqrt.f64 x.im) (*.f64 x.re y.im))
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 0 (fma.f64 x.re y.im (*.f64 x.im y.re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 x.re y.im) 2) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))) (/.f64 (pow.f64 (*.f64 x.im y.re) 2) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) (log.f64 (exp.f64 1)))
(*.f64 1 (fma.f64 x.re y.im (*.f64 x.im y.re)))
(*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(*.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (pow.f64 (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))) 1))
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (/.f64 1 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (pow.f64 (/.f64 1 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))) 1))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 1 1/3) (fma.f64 x.re y.im (*.f64 x.im y.re)))
(*.f64 (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3/2) 1/3) (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3/2) 1/3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 1/3) (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1/3))
(*.f64 (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 5/2) 1/3) (pow.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1/3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)) 2) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(/.f64 1 (/.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)) (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))))
(/.f64 1 (/.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (+.f64 (pow.f64 (*.f64 x.im y.re) 2) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (*.f64 x.re (*.f64 y.im (*.f64 x.im y.re))))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))) (neg.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))) (neg.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)))
(pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)
(pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 3)
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)) (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))) -1)
(pow.f64 (/.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))) -1)
(sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2))
(log.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 y.im) x.re) (+.f64 1 (expm1.f64 (*.f64 x.im y.re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.im))) (pow.f64 (exp.f64 y.re) x.im)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.im))) (+.f64 1 (expm1.f64 (*.f64 x.im y.re)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 y.re) x.im) (+.f64 1 (expm1.f64 (*.f64 x.re y.im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.re))) (pow.f64 (exp.f64 y.im) x.re)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.re))) (+.f64 1 (expm1.f64 (*.f64 x.re y.im)))))
(cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3))
(expm1.f64 (log1p.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(log1p.f64 (expm1.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(exp.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))

simplify213.0ms (7.5%)

Algorithm
egg-herbie
Rules
1326×fma-define
1212×fma-neg
800×log-prod
710×exp-prod
498×*-commutative
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02459143
16148973
217618917
364358781
Stop Event
node limit
Counts
245 → 107
Calls
Call 1
Inputs
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 x.re y.im) 2) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))) (/.f64 (pow.f64 (*.f64 x.im y.re) 2) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) (log.f64 (exp.f64 1)))
(*.f64 1 (fma.f64 x.re y.im (*.f64 x.im y.re)))
(*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(*.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (pow.f64 (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))) 1))
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (/.f64 1 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (pow.f64 (/.f64 1 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))) 1))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 1 1/3) (fma.f64 x.re y.im (*.f64 x.im y.re)))
(*.f64 (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3/2) 1/3) (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3/2) 1/3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 1/3) (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1/3))
(*.f64 (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 5/2) 1/3) (pow.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1/3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)) 2) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(/.f64 1 (/.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)) (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))))
(/.f64 1 (/.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (+.f64 (pow.f64 (*.f64 x.im y.re) 2) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (*.f64 x.re (*.f64 y.im (*.f64 x.im y.re))))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))) (neg.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))) (neg.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)))
(pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)
(pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 3)
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)) (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))) -1)
(pow.f64 (/.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))) -1)
(sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2))
(log.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 y.im) x.re) (+.f64 1 (expm1.f64 (*.f64 x.im y.re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.im))) (pow.f64 (exp.f64 y.re) x.im)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.im))) (+.f64 1 (expm1.f64 (*.f64 x.im y.re)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 y.re) x.im) (+.f64 1 (expm1.f64 (*.f64 x.re y.im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.re))) (pow.f64 (exp.f64 y.im) x.re)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.re))) (+.f64 1 (expm1.f64 (*.f64 x.re y.im)))))
(cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3))
(expm1.f64 (log1p.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(log1p.f64 (expm1.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(exp.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(fma.f64 y.im x.re (*.f64 x.im y.re))
(fma.f64 (*.f64 x.re y.im) 1 (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 y.re x.im (*.f64 x.re y.im))
(fma.f64 (*.f64 x.im y.re) 1 (*.f64 x.re y.im))
(fma.f64 1 (*.f64 x.re y.im) (*.f64 x.im y.re))
(fma.f64 1 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 (cbrt.f64 (*.f64 x.im y.re)) (pow.f64 (cbrt.f64 (*.f64 x.im y.re)) 2) (*.f64 x.re y.im))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.im y.re)) 2) (cbrt.f64 (*.f64 x.im y.re)) (*.f64 x.re y.im))
(fma.f64 (cbrt.f64 (*.f64 x.re y.im)) (pow.f64 (cbrt.f64 (*.f64 x.re y.im)) 2) (*.f64 x.im y.re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.re y.im)) 2) (cbrt.f64 (*.f64 x.re y.im)) (*.f64 x.im y.re))
(fma.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (cbrt.f64 x.re) y.im) (*.f64 x.im y.re))
(fma.f64 (pow.f64 (cbrt.f64 y.re) 2) (*.f64 (cbrt.f64 y.re) x.im) (*.f64 x.re y.im))
(fma.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 (cbrt.f64 x.im) y.re) (*.f64 x.re y.im))
(fma.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (cbrt.f64 y.im) x.re) (*.f64 x.im y.re))
(fma.f64 (sqrt.f64 (*.f64 x.im y.re)) (sqrt.f64 (*.f64 x.im y.re)) (*.f64 x.re y.im))
(fma.f64 (sqrt.f64 (*.f64 x.re y.im)) (sqrt.f64 (*.f64 x.re y.im)) (*.f64 x.im y.re))
(fma.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) y.im) (*.f64 x.im y.re))
(fma.f64 (sqrt.f64 y.re) (*.f64 (sqrt.f64 y.re) x.im) (*.f64 x.re y.im))
(fma.f64 (sqrt.f64 x.im) (*.f64 (sqrt.f64 x.im) y.re) (*.f64 x.re y.im))
(fma.f64 (sqrt.f64 y.im) (*.f64 (sqrt.f64 y.im) x.re) (*.f64 x.im y.re))
(fma.f64 (*.f64 x.re (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 y.im) (*.f64 x.im y.re))
(fma.f64 (*.f64 x.re (sqrt.f64 y.im)) (sqrt.f64 y.im) (*.f64 x.im y.re))
(fma.f64 (*.f64 y.im (pow.f64 (cbrt.f64 x.re) 2)) (cbrt.f64 x.re) (*.f64 x.im y.re))
(fma.f64 (*.f64 y.im (sqrt.f64 x.re)) (sqrt.f64 x.re) (*.f64 x.im y.re))
(fma.f64 (*.f64 x.im (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re) (*.f64 x.re y.im))
(fma.f64 (*.f64 x.im (sqrt.f64 y.re)) (sqrt.f64 y.re) (*.f64 x.re y.im))
(fma.f64 (*.f64 y.re (pow.f64 (cbrt.f64 x.im) 2)) (cbrt.f64 x.im) (*.f64 x.re y.im))
(fma.f64 (*.f64 y.re (sqrt.f64 x.im)) (sqrt.f64 x.im) (*.f64 x.re y.im))
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 0 (fma.f64 x.re y.im (*.f64 x.im y.re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 x.re y.im) 2) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))) (/.f64 (pow.f64 (*.f64 x.im y.re) 2) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) (log.f64 (exp.f64 1)))
(*.f64 1 (fma.f64 x.re y.im (*.f64 x.im y.re)))
(*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(*.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (pow.f64 (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))) 1))
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (/.f64 1 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (pow.f64 (/.f64 1 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))) 1))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(*.f64 (pow.f64 1 1/3) (fma.f64 x.re y.im (*.f64 x.im y.re)))
(*.f64 (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3/2) 1/3) (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3/2) 1/3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 1/3) (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1/3))
(*.f64 (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 5/2) 1/3) (pow.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1/3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)) 2) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(/.f64 1 (/.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)) (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))))
(/.f64 1 (/.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (+.f64 (pow.f64 (*.f64 x.im y.re) 2) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (*.f64 x.re (*.f64 y.im (*.f64 x.im y.re))))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))) (neg.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))) (neg.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)))
(pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)
(pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 3)
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)) (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))) -1)
(pow.f64 (/.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))) -1)
(sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2))
(log.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 y.im) x.re) (+.f64 1 (expm1.f64 (*.f64 x.im y.re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.im))) (pow.f64 (exp.f64 y.re) x.im)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.im))) (+.f64 1 (expm1.f64 (*.f64 x.im y.re)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 y.re) x.im) (+.f64 1 (expm1.f64 (*.f64 x.re y.im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.re))) (pow.f64 (exp.f64 y.im) x.re)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.re))) (+.f64 1 (expm1.f64 (*.f64 x.re y.im)))))
(cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3))
(expm1.f64 (log1p.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(log1p.f64 (expm1.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(exp.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
Outputs
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 1)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(-.f64 (/.f64 (pow.f64 (*.f64 x.re y.im) 2) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))) (/.f64 (pow.f64 (*.f64 x.im y.re) 2) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) (log.f64 (exp.f64 1)))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 1 (fma.f64 x.re y.im (*.f64 x.im y.re)))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im))) 2) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))) 2))
(*.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (pow.f64 (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))) 1))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (/.f64 1 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (pow.f64 (/.f64 1 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))) 1))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 1 1/3) (fma.f64 x.re y.im (*.f64 x.im y.re)))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3/2) 1/3) (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3/2) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 3/2)) (cbrt.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 3/2)))
(pow.f64 (pow.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 3/2) 1/6) 4)
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 3/2)) (cbrt.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 3/2)))
(pow.f64 (pow.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 3/2) 1/6) 4)
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 1/3) (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1/3))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))) (cbrt.f64 (pow.f64 (*.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))) (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im))) 4) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im))) 8)))
(*.f64 (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 5/2) 1/3) (pow.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))) (cbrt.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 5/2)))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)) 2) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(/.f64 1 (/.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)) (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 1 (/.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (+.f64 (pow.f64 (*.f64 x.im y.re) 2) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (*.f64 x.re (*.f64 y.im (*.f64 x.im y.re))))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))) (neg.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))) (neg.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 3)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) 1/2)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3) 1/3)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(pow.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(pow.f64 (/.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)) (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))) -1)
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(pow.f64 (/.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))) -1)
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (*.f64 (pow.f64 (exp.f64 y.im) x.re) (+.f64 1 (expm1.f64 (*.f64 x.im y.re)))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.im))) (pow.f64 (exp.f64 y.re) x.im)))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.im))) (+.f64 1 (expm1.f64 (*.f64 x.im y.re)))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (*.f64 (pow.f64 (exp.f64 y.re) x.im) (+.f64 1 (expm1.f64 (*.f64 x.re y.im)))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.re))) (pow.f64 (exp.f64 y.im) x.re)))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.re))) (+.f64 1 (expm1.f64 (*.f64 x.re y.im)))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(expm1.f64 (log1p.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log1p.f64 (expm1.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(exp.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1) 1))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 1/3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 y.im x.re (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (*.f64 x.re y.im) 1 (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 y.re x.im (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (*.f64 x.im y.re) 1 (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 1 (*.f64 x.re y.im) (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 1 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (cbrt.f64 (*.f64 x.im y.re)) (pow.f64 (cbrt.f64 (*.f64 x.im y.re)) 2) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.im y.re)) 2) (cbrt.f64 (*.f64 x.im y.re)) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (cbrt.f64 (*.f64 x.re y.im)) (pow.f64 (cbrt.f64 (*.f64 x.re y.im)) 2) (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.re y.im)) 2) (cbrt.f64 (*.f64 x.re y.im)) (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (cbrt.f64 x.re) y.im) (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (pow.f64 (cbrt.f64 y.re) 2) (*.f64 (cbrt.f64 y.re) x.im) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 (cbrt.f64 x.im) y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (cbrt.f64 y.im) x.re) (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (sqrt.f64 (*.f64 x.im y.re)) (sqrt.f64 (*.f64 x.im y.re)) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (sqrt.f64 (*.f64 x.re y.im)) (sqrt.f64 (*.f64 x.re y.im)) (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) y.im) (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (sqrt.f64 y.re) (*.f64 (sqrt.f64 y.re) x.im) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (sqrt.f64 x.im) (*.f64 (sqrt.f64 x.im) y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (sqrt.f64 y.im) (*.f64 (sqrt.f64 y.im) x.re) (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (*.f64 x.re (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 y.im) (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (*.f64 x.re (sqrt.f64 y.im)) (sqrt.f64 y.im) (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (*.f64 y.im (pow.f64 (cbrt.f64 x.re) 2)) (cbrt.f64 x.re) (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (*.f64 y.im (sqrt.f64 x.re)) (sqrt.f64 x.re) (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (*.f64 x.im (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (*.f64 x.im (sqrt.f64 y.re)) (sqrt.f64 y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (*.f64 y.re (pow.f64 (cbrt.f64 x.im) 2)) (cbrt.f64 x.im) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(fma.f64 (*.f64 y.re (sqrt.f64 x.im)) (sqrt.f64 x.im) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 0 (fma.f64 x.re y.im (*.f64 x.im y.re)))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))) (cbrt.f64 (exp.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x.im y.re (*.f64 x.re y.im))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x.im y.re (*.f64 x.re y.im))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x.im y.re (*.f64 x.re y.im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 1)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(-.f64 (/.f64 (pow.f64 (*.f64 x.re y.im) 2) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))) (/.f64 (pow.f64 (*.f64 x.im y.re) 2) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) (log.f64 (exp.f64 1)))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 1 (fma.f64 x.re y.im (*.f64 x.im y.re)))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im))) 2) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))) 2))
(*.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (pow.f64 (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))) 1))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (/.f64 1 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (pow.f64 (/.f64 1 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))) 1))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 1 1/3) (fma.f64 x.re y.im (*.f64 x.im y.re)))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3/2) 1/3) (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3/2) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 3/2)) (cbrt.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 3/2)))
(pow.f64 (pow.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 3/2) 1/6) 4)
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3)) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 3/2)) (cbrt.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 3/2)))
(pow.f64 (pow.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 3/2) 1/6) 4)
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) 1/3) (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1/3))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))) (cbrt.f64 (pow.f64 (*.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))) (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im))) 4) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im))) 8)))
(*.f64 (pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 5/2) 1/3) (pow.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)))) (cbrt.f64 (pow.f64 (fma.f64 x.im y.re (*.f64 x.re y.im)) 5/2)))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)) 2) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2) (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(/.f64 1 (/.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)) (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 1 (/.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (+.f64 (pow.f64 (*.f64 x.im y.re) 2) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (*.f64 x.re (*.f64 y.im (*.f64 x.im y.re))))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))) (neg.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))) (neg.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 3)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2) 1/2)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(pow.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3) 1/3)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(pow.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 2)
(fma.f64 x.im y.re (*.f64 x.re y.im))
(pow.f64 (/.f64 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2)) (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3))) -1)
(*.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (/.f64 1 (fma.f64 (*.f64 x.im y.re) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (pow.f64 (*.f64 x.re y.im) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.im y.re) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))) (pow.f64 (*.f64 x.re y.im) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 x.im (*.f64 y.re (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im)))) (pow.f64 (*.f64 x.re y.im) 2)))
(pow.f64 (/.f64 (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2))) -1)
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (pow.f64 (*.f64 x.im y.re) 2)) (fma.f64 x.im (neg.f64 y.re) (*.f64 x.re y.im)))
(sqrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 2))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (*.f64 (pow.f64 (exp.f64 y.im) x.re) (+.f64 1 (expm1.f64 (*.f64 x.im y.re)))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.im))) (pow.f64 (exp.f64 y.re) x.im)))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.re y.im))) (+.f64 1 (expm1.f64 (*.f64 x.im y.re)))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (*.f64 (pow.f64 (exp.f64 y.re) x.im) (+.f64 1 (expm1.f64 (*.f64 x.re y.im)))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.re))) (pow.f64 (exp.f64 y.im) x.re)))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x.im y.re))) (+.f64 1 (expm1.f64 (*.f64 x.re y.im)))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(expm1.f64 (log1p.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(log1p.f64 (expm1.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(exp.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 1) 1))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 1/3))
(fma.f64 x.im y.re (*.f64 x.re y.im))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2))
(fma.f64 x.im y.re (*.f64 x.re y.im))

eval30.0ms (1.1%)

Compiler

Compiled 1628 to 520 computations (68.1% saved)

prune21.0ms (0.8%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1043107
Fresh000
Picked022
Done000
Total1045109
Accuracy
100.0%
Counts
109 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 y.re x.im (*.f64 x.re y.im))
100.0%
(fma.f64 x.re y.im (*.f64 x.im y.re))
100.0%
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
45.5%
(*.f64 x.re y.im)
57.5%
(*.f64 x.im y.re)
Compiler

Compiled 45 to 29 computations (35.6% saved)

localize38.0ms (1.3%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
100.0%
(fma.f64 y.re x.im (*.f64 x.re y.im))
Compiler

Compiled 28 to 8 computations (71.4% saved)

series7.0ms (0.2%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
y.re
@0
(fma.f64 y.re x.im (*.f64 x.re y.im))
1.0ms
y.im
@-inf
(fma.f64 y.re x.im (*.f64 x.re y.im))
1.0ms
y.re
@inf
(fma.f64 y.re x.im (*.f64 x.re y.im))
1.0ms
y.re
@-inf
(fma.f64 y.re x.im (*.f64 x.re y.im))
1.0ms
x.re
@inf
(fma.f64 y.re x.im (*.f64 x.re y.im))

rewrite77.0ms (2.7%)

Algorithm
batch-egg-rewrite
Rules
714×unpow-prod-down
590×log-prod
517×log1p-expm1-u
517×expm1-log1p-u
448×exp-prod
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01427
112727
2140127
Stop Event
node limit
Counts
1 → 38
Calls
Call 1
Inputs
(fma.f64 y.re x.im (*.f64 x.re y.im))
Outputs
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im))
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))
(+.f64 0 (fma.f64 y.re x.im (*.f64 x.re y.im)))
(+.f64 (*.f64 (*.f64 y.re x.im) 1) (*.f64 x.re y.im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))))
(-.f64 (+.f64 1 (fma.f64 y.re x.im (*.f64 x.re y.im))) 1)
(*.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1)
(*.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) (log.f64 (E.f64)))
(*.f64 1 (fma.f64 y.re x.im (*.f64 x.re y.im)))
(*.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) (pow.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 2) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(*.f64 (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) 3) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 3))
(*.f64 (pow.f64 1 1/3) (fma.f64 y.re x.im (*.f64 x.re y.im)))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3)) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))
(*.f64 (pow.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 5/2) 1/3) (cbrt.f64 (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (+.f64 (pow.f64 (*.f64 y.re x.im) 2) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (*.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)))))
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.im) 2) (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)))
(pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1)
(pow.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 3)
(pow.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 2)
(pow.f64 (E.f64) (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2)) (cbrt.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) (sqrt.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))
(sqrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2))
(log.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3))
(expm1.f64 (log1p.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(log1p.f64 (expm1.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(exp.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2))

simplify95.0ms (3.4%)

Algorithm
egg-herbie
Rules
1776×fma-neg
784×fma-define
516×unswap-sqr
510×*-commutative
468×associate-/l*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01172614
12882538
29482528
338562482
474632482
Stop Event
node limit
Counts
86 → 57
Calls
Call 1
Inputs
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im))
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))
(+.f64 0 (fma.f64 y.re x.im (*.f64 x.re y.im)))
(+.f64 (*.f64 (*.f64 y.re x.im) 1) (*.f64 x.re y.im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))))
(-.f64 (+.f64 1 (fma.f64 y.re x.im (*.f64 x.re y.im))) 1)
(*.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1)
(*.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) (log.f64 (E.f64)))
(*.f64 1 (fma.f64 y.re x.im (*.f64 x.re y.im)))
(*.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) (pow.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 2) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(*.f64 (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) 3) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 3))
(*.f64 (pow.f64 1 1/3) (fma.f64 y.re x.im (*.f64 x.re y.im)))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3)) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))
(*.f64 (pow.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 5/2) 1/3) (cbrt.f64 (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (+.f64 (pow.f64 (*.f64 y.re x.im) 2) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (*.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)))))
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.im) 2) (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)))
(pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1)
(pow.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 3)
(pow.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 2)
(pow.f64 (E.f64) (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2)) (cbrt.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) (sqrt.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))
(sqrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2))
(log.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3))
(expm1.f64 (log1p.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(log1p.f64 (expm1.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(exp.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2))
Outputs
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 x.im y.re)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 x.re y.im)
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 0 (fma.f64 y.re x.im (*.f64 x.re y.im)))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 (*.f64 y.re x.im) 1) (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))))
(*.f64 (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) 3)
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(-.f64 (+.f64 1 (fma.f64 y.re x.im (*.f64 x.re y.im))) 1)
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1)
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) (log.f64 (E.f64)))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 1 (fma.f64 y.re x.im (*.f64 x.re y.im)))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) (pow.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 2))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 2) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) 3) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 3))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 (pow.f64 1 1/3) (fma.f64 y.re x.im (*.f64 x.re y.im)))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3)) 1/3))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (pow.f64 (*.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 4) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))) 8)))
(*.f64 (pow.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 5/2) 1/3) (cbrt.f64 (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 5/2)) (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.im) 3) (pow.f64 (*.f64 x.re y.im) 3)) (+.f64 (pow.f64 (*.f64 y.re x.im) 2) (-.f64 (pow.f64 (*.f64 x.re y.im) 2) (*.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (-.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (*.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (+.f64 (pow.f64 (*.f64 x.im y.re) 2) (*.f64 (*.f64 x.re y.im) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.re) 3) (pow.f64 (*.f64 x.re y.im) 3)) (fma.f64 (*.f64 x.re y.im) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (pow.f64 (*.f64 x.im y.re) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.im) 2) (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)))
(/.f64 (-.f64 (pow.f64 (*.f64 x.im y.re) 2) (pow.f64 (*.f64 x.re y.im) 2)) (fma.f64 x.im y.re (*.f64 x.re (neg.f64 y.im))))
(/.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)) 1)
(pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 1)
(fma.f64 x.re y.im (*.f64 x.im y.re))
(pow.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 3)
(fma.f64 x.re y.im (*.f64 x.im y.re))
(pow.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2) 1/2)
(fma.f64 x.re y.im (*.f64 x.im y.re))
(pow.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3) 1/3)
(fma.f64 x.re y.im (*.f64 x.im y.re))
(pow.f64 (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))) 2)
(fma.f64 x.re y.im (*.f64 x.im y.re))
(pow.f64 (E.f64) (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2)) (cbrt.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))) 2)) (cbrt.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))) (sqrt.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re))))) (sqrt.f64 (log.f64 (fma.f64 x.re y.im (*.f64 x.im y.re)))))
(sqrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 2))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(log.f64 (exp.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(cbrt.f64 (pow.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)) 3))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(expm1.f64 (log1p.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(log1p.f64 (expm1.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(exp.f64 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im))))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 3))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 1/3))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 y.re x.im (*.f64 x.re y.im)))) 2))
(fma.f64 x.re y.im (*.f64 x.im y.re))

eval18.0ms (0.7%)

Compiler

Compiled 824 to 248 computations (69.9% saved)

prune11.0ms (0.4%)

Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New57057
Fresh000
Picked033
Done022
Total57562
Accuracy
100.0%
Counts
62 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 y.re x.im (*.f64 x.re y.im))
100.0%
(fma.f64 x.re y.im (*.f64 x.im y.re))
100.0%
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
45.5%
(*.f64 x.re y.im)
57.5%
(*.f64 x.im y.re)
Compiler

Compiled 74 to 38 computations (48.6% saved)

regimes123.0ms (4.4%)

Counts
5 → 1
Calls
Call 1
Inputs
(*.f64 x.im y.re)
(*.f64 x.re y.im)
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(fma.f64 y.re x.im (*.f64 x.re y.im))
Outputs
(fma.f64 y.re x.im (*.f64 x.re y.im))
Calls

7 calls:

97.0ms
y.im
5.0ms
(*.f64 x.im y.re)
4.0ms
y.re
4.0ms
x.im
4.0ms
x.re
Results
AccuracySegmentsBranch
100.0%1x.re
100.0%1x.im
100.0%1y.re
100.0%1y.im
100.0%1(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
100.0%1(*.f64 x.re y.im)
100.0%1(*.f64 x.im y.re)
Compiler

Compiled 45 to 33 computations (26.7% saved)

regimes30.0ms (1.1%)

Counts
4 → 1
Calls
Call 1
Inputs
(*.f64 x.im y.re)
(*.f64 x.re y.im)
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(fma.f64 x.re y.im (*.f64 x.im y.re))
Outputs
(fma.f64 x.re y.im (*.f64 x.im y.re))
Calls

7 calls:

6.0ms
(*.f64 x.im y.re)
5.0ms
y.im
4.0ms
y.re
4.0ms
x.im
4.0ms
x.re
Results
AccuracySegmentsBranch
100.0%1x.re
100.0%1x.im
100.0%1y.re
100.0%1y.im
100.0%1(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
100.0%1(*.f64 x.re y.im)
100.0%1(*.f64 x.im y.re)
Compiler

Compiled 45 to 33 computations (26.7% saved)

regimes60.0ms (2.1%)

Counts
3 → 1
Calls
Call 1
Inputs
(*.f64 x.im y.re)
(*.f64 x.re y.im)
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
Outputs
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
Calls

7 calls:

39.0ms
(*.f64 x.im y.re)
4.0ms
y.im
3.0ms
y.re
3.0ms
x.im
3.0ms
x.re
Results
AccuracySegmentsBranch
100.0%1x.re
100.0%1x.im
100.0%1y.re
100.0%1y.im
100.0%1(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
100.0%1(*.f64 x.re y.im)
100.0%1(*.f64 x.im y.re)
Compiler

Compiled 45 to 33 computations (26.7% saved)

regimes129.0ms (4.6%)

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

6 calls:

68.0ms
x.re
16.0ms
y.im
15.0ms
(*.f64 x.im y.re)
12.0ms
y.re
9.0ms
x.im
Results
AccuracySegmentsBranch
77.0%5x.re
77.4%3x.im
72.1%3y.re
77.0%5y.im
80.9%3(*.f64 x.re y.im)
83.5%5(*.f64 x.im y.re)
Compiler

Compiled 34 to 26 computations (23.5% saved)

regimes14.0ms (0.5%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 x.im y.re)
Outputs
(*.f64 x.im y.re)
Calls

5 calls:

4.0ms
x.im
3.0ms
y.re
3.0ms
x.re
3.0ms
y.im
2.0ms
(*.f64 x.im y.re)
Results
AccuracySegmentsBranch
57.5%1y.re
57.5%1x.re
57.5%1y.im
57.5%1x.im
57.5%1(*.f64 x.im y.re)
Compiler

Compiled 27 to 21 computations (22.2% saved)

bsearch34.0ms (1.2%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
18.0ms
3.471280918730238e+126
1.2998656994852696e+153
16.0ms
-1.3865566725102257e+61
-9.921957225430622e+53
Results
27.0ms283×256valid
3.0ms37×256infinite
Compiler

Compiled 298 to 233 computations (21.8% saved)

simplify4.0ms (0.2%)

Algorithm
egg-herbie
Rules
*-commutative
+-commutative
if-if-or-not
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
026173
134173
Stop Event
done
saturated
Calls
Call 1
Inputs
(fma.f64 y.re x.im (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(if (<=.f64 (*.f64 x.re y.im) -66000000000000000403288529810213605104909275747728752640) (*.f64 x.re y.im) (if (<=.f64 (*.f64 x.re y.im) 419999999999999993094762828771164017796750109231513593139638941676348926933559108375394594983313637170627311580267630581981904896) (*.f64 x.im y.re) (*.f64 x.re y.im)))
(*.f64 x.im y.re)
Outputs
(fma.f64 y.re x.im (*.f64 x.re y.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(fma.f64 x.re y.im (*.f64 y.re x.im))
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im))
(if (<=.f64 (*.f64 x.re y.im) -66000000000000000403288529810213605104909275747728752640) (*.f64 x.re y.im) (if (<=.f64 (*.f64 x.re y.im) 419999999999999993094762828771164017796750109231513593139638941676348926933559108375394594983313637170627311580267630581981904896) (*.f64 x.im y.re) (*.f64 x.re y.im)))
(if (or (<=.f64 (*.f64 x.re y.im) -66000000000000000403288529810213605104909275747728752640) (not (<=.f64 (*.f64 x.re y.im) 419999999999999993094762828771164017796750109231513593139638941676348926933559108375394594983313637170627311580267630581981904896))) (*.f64 x.re y.im) (*.f64 y.re x.im))
(*.f64 x.im y.re)
(*.f64 y.re x.im)
Compiler

Compiled 61 to 37 computations (39.3% saved)

soundness208.0ms (7.4%)

Rules
1158×unpow-prod-down
792×log-prod
739×log1p-expm1-u
739×expm1-log1p-u
628×fma-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01654
116254
2202154
045464
196464
2170464
3374464
4603464
5804464
6959464
7981464
8985464
Stop Event
saturated
node limit
Compiler

Compiled 48 to 19 computations (60.4% saved)

end0.0ms (0%)

preprocess55.0ms (1.9%)

Remove

(sort x.im y.re)

(sort x.re y.im)

Compiler

Compiled 312 to 166 computations (46.8% saved)

Profiling

Loading profile data...