math.exp on complex, real part

Time bar (total: 3.7s)

analyze0.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 8 to 6 computations (25% saved)

sample1.4s (37.9%)

Results
526.0ms4716×body256valid
320.0ms1039×body1024valid
267.0ms491×body1024infinite
132.0ms1207×body256infinite
101.0ms548×body512valid
50.0ms251×body512infinite
2.0msbody2048valid
Bogosity

preprocess139.0ms (3.7%)

Algorithm
egg-herbie
Rules
954×fma-def
842×associate-/r*
686×sqr-pow
504×unswap-sqr
482×*-commutative
Problems
256×No Errors
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
020109
131109
243105
357105
492105
5154105
6334105
7913105
82556105
93143105
103591105
114320105
125405105
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (exp.f64 (neg.f64 re)) (cos.f64 im))
(*.f64 (exp.f64 re) (cos.f64 (neg.f64 im)))
(*.f64 (exp.f64 im) (cos.f64 re))
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (exp.f64 (neg.f64 re)) (cos.f64 im))
(*.f64 (cos.f64 im) (exp.f64 (neg.f64 re)))
(/.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (exp.f64 re) (cos.f64 (neg.f64 im)))
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (exp.f64 im) (cos.f64 re))
Symmetry

(abs im)

Compiler

Compiled 21 to 11 computations (47.6% saved)

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 14 to 10 computations (28.6% saved)

localize45.0ms (1.2%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 14 to 6 computations (57.1% saved)

series3.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
re
@inf
(*.f64 (exp.f64 re) (cos.f64 im))
0.0ms
im
@0
(*.f64 (exp.f64 re) (cos.f64 im))
0.0ms
re
@0
(*.f64 (exp.f64 re) (cos.f64 im))
0.0ms
re
@-inf
(*.f64 (exp.f64 re) (cos.f64 im))
0.0ms
im
@inf
(*.f64 (exp.f64 re) (cos.f64 im))

rewrite90.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
592×unpow-prod-down
472×log-prod
456×cbrt-prod
400×log1p-expm1-u
400×expm1-log1p-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01121
110121
2109721
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (cos.f64 im))
Outputs
(+.f64 0 (*.f64 (exp.f64 re) (cos.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))))
(-.f64 (+.f64 1 (*.f64 (exp.f64 re) (cos.f64 im))) 1)
(pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2)
(pow.f64 (E.f64) (+.f64 re (log.f64 (cos.f64 im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))) 2)) (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(pow.f64 (exp.f64 (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im))))) (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 re (log.f64 (cos.f64 im)))) 3))
(exp.f64 (*.f64 (*.f64 3 (+.f64 re (log.f64 (cos.f64 im)))) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 re (log.f64 (cos.f64 im)))) 2))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))

simplify67.0ms (1.8%)

Algorithm
egg-herbie
Rules
1548×prod-exp
846×associate-*r*
802×fma-def
696×associate-*l*
606×fma-neg
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01011320
12651233
27891176
337861165
462361165
Stop Event
node limit
Counts
45 → 55
Calls
Call 1
Inputs
(cos.f64 im)
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 (cos.f64 im) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 re 2) (cos.f64 im))) (*.f64 re (cos.f64 im))))
(+.f64 (cos.f64 im) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 re 3) (cos.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 re 2) (cos.f64 im))) (*.f64 re (cos.f64 im)))))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 re)
(+.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (exp.f64 re)))))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 im 6) (exp.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (exp.f64 re))))))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(+.f64 0 (*.f64 (exp.f64 re) (cos.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))))
(-.f64 (+.f64 1 (*.f64 (exp.f64 re) (cos.f64 im))) 1)
(pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2)
(pow.f64 (E.f64) (+.f64 re (log.f64 (cos.f64 im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))) 2)) (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(pow.f64 (exp.f64 (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im))))) (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 re (log.f64 (cos.f64 im)))) 3))
(exp.f64 (*.f64 (*.f64 3 (+.f64 re (log.f64 (cos.f64 im)))) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 re (log.f64 (cos.f64 im)))) 2))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
Outputs
(cos.f64 im)
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (+.f64 re 1) (cos.f64 im))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 (cos.f64 im) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 re 2) (cos.f64 im))) (*.f64 re (cos.f64 im))))
(+.f64 (cos.f64 im) (fma.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2)) (*.f64 (cos.f64 im) re)))
(+.f64 (cos.f64 im) (*.f64 (cos.f64 im) (+.f64 re (*.f64 1/2 (pow.f64 re 2)))))
(*.f64 (cos.f64 im) (+.f64 (fma.f64 1/2 (pow.f64 re 2) 1) re))
(*.f64 (cos.f64 im) (+.f64 1 (fma.f64 1/2 (pow.f64 re 2) re)))
(+.f64 (cos.f64 im) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 re 3) (cos.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 re 2) (cos.f64 im))) (*.f64 re (cos.f64 im)))))
(+.f64 (cos.f64 im) (fma.f64 1/6 (*.f64 (cos.f64 im) (pow.f64 re 3)) (fma.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2)) (*.f64 (cos.f64 im) re))))
(+.f64 (*.f64 (cos.f64 im) (+.f64 re (*.f64 1/2 (pow.f64 re 2)))) (*.f64 (+.f64 (*.f64 1/6 (pow.f64 re 3)) 1) (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 re 1/6) 1/2)) (+.f64 re 1)))
(*.f64 (cos.f64 im) (+.f64 (fma.f64 1/6 (pow.f64 re 3) 1) (fma.f64 1/2 (pow.f64 re 2) re)))
(*.f64 (cos.f64 im) (+.f64 (fma.f64 1/2 (pow.f64 re 2) re) (fma.f64 1/6 (pow.f64 re 3) 1)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 re)
(+.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))))
(+.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (pow.f64 im 2) 1))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (exp.f64 re)))))
(+.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)) (*.f64 1/24 (*.f64 (exp.f64 re) (pow.f64 im 4)))))
(+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (exp.f64 re) (+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (exp.f64 re) (+.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 -1/2 (pow.f64 im 2)))))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 im 6) (exp.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (exp.f64 re))))))
(+.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)) (fma.f64 -1/720 (*.f64 (exp.f64 re) (pow.f64 im 6)) (*.f64 1/24 (*.f64 (exp.f64 re) (pow.f64 im 4))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (exp.f64 re)) (*.f64 (exp.f64 re) (+.f64 (*.f64 -1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 (exp.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 -1/720 (pow.f64 im 6))) (*.f64 (exp.f64 re) (fma.f64 -1/2 (pow.f64 im 2) 1)))
(*.f64 (exp.f64 re) (+.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 -1/720 (pow.f64 im 6))) (fma.f64 -1/2 (pow.f64 im 2) 1)))
(*.f64 (exp.f64 re) (+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (fma.f64 1/24 (pow.f64 im 4) (*.f64 -1/720 (pow.f64 im 6)))))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(+.f64 0 (*.f64 (exp.f64 re) (cos.f64 im)))
(*.f64 (cos.f64 im) (exp.f64 re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))))
(*.f64 (cos.f64 im) (exp.f64 re))
(-.f64 (+.f64 1 (*.f64 (exp.f64 re) (cos.f64 im))) 1)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 2) 1/2)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3) 1/3)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (E.f64) (+.f64 re (log.f64 (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))) 2)) (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(pow.f64 (exp.f64 (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im))))) (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 2))
(*.f64 (cos.f64 im) (exp.f64 re))
(log.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)))
(*.f64 (cos.f64 im) (exp.f64 re))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3))
(*.f64 (cos.f64 im) (exp.f64 re))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 re (log.f64 (cos.f64 im)))) 3))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 (*.f64 (*.f64 3 (+.f64 re (log.f64 (cos.f64 im)))) 1/3))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 re (log.f64 (cos.f64 im)))) 2))
(*.f64 (cos.f64 im) (exp.f64 re))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))

eval13.0ms (0.4%)

Compiler

Compiled 715 to 375 computations (47.6% saved)

prune14.0ms (0.4%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New50555
Fresh000
Picked011
Done000
Total50656
Accuracy
100.0%
Counts
56 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
50.4%
(*.f64 (+.f64 re 1) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
99.5%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
73.4%
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
68.0%
(exp.f64 re)
49.4%
(cos.f64 im)
50.4%
(*.f64 (+.f64 re 1) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
99.5%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
73.4%
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
68.0%
(exp.f64 re)
49.4%
(cos.f64 im)
Compiler

Compiled 146 to 110 computations (24.7% saved)

localize385.0ms (10.3%)

Localize:

Found 6 expressions with local error:

NewAccuracyProgram
100.0%
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
85.1%
(log.f64 (cos.f64 im))
100.0%
(*.f64 (+.f64 re 1) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
99.9%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
99.6%
(expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))
Compiler

Compiled 65 to 17 computations (73.8% saved)

series49.0ms (1.3%)

Counts
5 → 88
Calls

27 calls:

TimeVariablePointExpression
24.0ms
im
@inf
(log.f64 (cos.f64 im))
18.0ms
im
@-inf
(log.f64 (cos.f64 im))
1.0ms
im
@0
(log.f64 (cos.f64 im))
1.0ms
re
@inf
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
1.0ms
re
@0
(expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))

rewrite128.0ms (3.4%)

Algorithm
batch-egg-rewrite
Rules
1214×prod-diff
1018×log1p-expm1-u
1017×expm1-log1p-u
368×log1p-udef
366×expm1-udef
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
019102
1239102
22757102
Stop Event
node limit
Counts
5 → 122
Calls
Call 1
Inputs
(expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (+.f64 re 1) (cos.f64 im))
(log.f64 (cos.f64 im))
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
Outputs
(+.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) -1)
(-.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 1)
(*.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 1)
(*.f64 1 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) (pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 2) (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(*.f64 (sqrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) (sqrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 3) 1) (+.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) (+.f64 1 (*.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 1))))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) 1) (+.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 1))
(pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 1)
(pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 3)
(pow.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3) 1/3)
(pow.f64 (sqrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 2)
(sqrt.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2))
(log.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(log.f64 (+.f64 1 (expm1.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))))
(cbrt.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3))
(exp.f64 (log.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(exp.f64 (*.f64 (log.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1))
(log1p.f64 (expm1.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1)
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(*.f64 1 (*.f64 (exp.f64 re) (cos.f64 im)))
(*.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2) (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) (cos.f64 im)))
(*.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (sqrt.f64 (cos.f64 im)) (*.f64 (sqrt.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) (cos.f64 im)))
(*.f64 (*.f64 (exp.f64 re) (pow.f64 (cbrt.f64 (cos.f64 im)) 2)) (cbrt.f64 (cos.f64 im)))
(*.f64 (*.f64 (exp.f64 re) (sqrt.f64 (cos.f64 im))) (sqrt.f64 (cos.f64 im)))
(*.f64 (*.f64 (cos.f64 im) (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (cbrt.f64 (exp.f64 re)))
(*.f64 (*.f64 (cos.f64 im) (sqrt.f64 (exp.f64 re))) (sqrt.f64 (exp.f64 re)))
(pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2)
(pow.f64 (exp.f64 1) (+.f64 re (log.f64 (cos.f64 im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))) 2)) (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(pow.f64 (exp.f64 (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im))))) (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (cos.f64 im) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 (exp.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
(+.f64 (cos.f64 im) (*.f64 (cos.f64 im) re))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (*.f64 re (cos.f64 im)) (cos.f64 im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 im) (+.f64 re 1)))) 1)
(/.f64 (*.f64 (cos.f64 im) (+.f64 1 (pow.f64 re 3))) (fma.f64 re re (-.f64 1 re)))
(/.f64 (*.f64 (cos.f64 im) (fma.f64 re re -1)) (+.f64 re -1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (cos.f64 im)) (fma.f64 re re (-.f64 1 re)))
(/.f64 (*.f64 (fma.f64 re re -1) (cos.f64 im)) (+.f64 re -1))
(pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 im) (+.f64 re 1))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 im) (+.f64 re 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 im) (+.f64 re 1)))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 (+.f64 re 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 re 1) 3) (pow.f64 (cos.f64 im) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 im) (+.f64 re 1))))
(exp.f64 (+.f64 (log.f64 (cos.f64 im)) (log1p.f64 re)))
(exp.f64 (*.f64 (+.f64 (log.f64 (cos.f64 im)) (log1p.f64 re)) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 im) (+.f64 re 1))))
(+.f64 0 (log.f64 (cos.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2)) (log.f64 (cbrt.f64 (cos.f64 im))))
(+.f64 (log.f64 (sqrt.f64 (cos.f64 im))) (log.f64 (sqrt.f64 (cos.f64 im))))
(-.f64 (exp.f64 (log1p.f64 (log.f64 (cos.f64 im)))) 1)
(*.f64 1 (log.f64 (cos.f64 im)))
(*.f64 (log.f64 (cos.f64 im)) 1)
(*.f64 (cbrt.f64 (log.f64 (cos.f64 im))) (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2) (cbrt.f64 (log.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (log.f64 (cos.f64 im))) (sqrt.f64 (log.f64 (cos.f64 im))))
(pow.f64 (log.f64 (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 3)
(pow.f64 (pow.f64 (log.f64 (cos.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (log.f64 (cos.f64 im))) 2)
(sqrt.f64 (pow.f64 (log.f64 (cos.f64 im)) 2))
(cbrt.f64 (pow.f64 (log.f64 (cos.f64 im)) 3))
(expm1.f64 (log1p.f64 (log.f64 (cos.f64 im))))
(exp.f64 (log.f64 (log.f64 (cos.f64 im))))
(exp.f64 (*.f64 (log.f64 (log.f64 (cos.f64 im))) 1))
(log1p.f64 (-.f64 (cos.f64 im) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1)
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(*.f64 1 (*.f64 (exp.f64 re) (cos.f64 im)))
(*.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2) (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) (cos.f64 im)))
(*.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (sqrt.f64 (cos.f64 im)) (*.f64 (sqrt.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) (cos.f64 im)))
(*.f64 (*.f64 (exp.f64 re) (pow.f64 (cbrt.f64 (cos.f64 im)) 2)) (cbrt.f64 (cos.f64 im)))
(*.f64 (*.f64 (exp.f64 re) (sqrt.f64 (cos.f64 im))) (sqrt.f64 (cos.f64 im)))
(*.f64 (*.f64 (cos.f64 im) (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (cbrt.f64 (exp.f64 re)))
(*.f64 (*.f64 (cos.f64 im) (sqrt.f64 (exp.f64 re))) (sqrt.f64 (exp.f64 re)))
(pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2)
(pow.f64 (exp.f64 1) (+.f64 re (log.f64 (cos.f64 im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))) 2)) (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(pow.f64 (exp.f64 (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im))))) (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (cos.f64 im) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 (exp.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))

simplify85.0ms (2.3%)

Algorithm
egg-herbie
Rules
1158×associate-+l+
1104×associate-+r+
1054×distribute-lft-in
1032×distribute-rgt-in
436×fma-def
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03276202
18226017
227855857
Stop Event
node limit
Counts
210 → 178
Calls
Call 1
Inputs
(-.f64 (exp.f64 (cos.f64 im)) 1)
(-.f64 (+.f64 (exp.f64 (cos.f64 im)) (*.f64 re (*.f64 (cos.f64 im) (exp.f64 (cos.f64 im))))) 1)
(-.f64 (+.f64 (exp.f64 (cos.f64 im)) (+.f64 (*.f64 re (*.f64 (cos.f64 im) (exp.f64 (cos.f64 im)))) (*.f64 (pow.f64 re 2) (*.f64 (exp.f64 (cos.f64 im)) (+.f64 (*.f64 1/2 (cos.f64 im)) (*.f64 1/2 (pow.f64 (cos.f64 im) 2))))))) 1)
(-.f64 (+.f64 (exp.f64 (cos.f64 im)) (+.f64 (*.f64 re (*.f64 (cos.f64 im) (exp.f64 (cos.f64 im)))) (+.f64 (*.f64 (pow.f64 re 2) (*.f64 (exp.f64 (cos.f64 im)) (+.f64 (*.f64 1/2 (cos.f64 im)) (*.f64 1/2 (pow.f64 (cos.f64 im) 2))))) (*.f64 (pow.f64 re 3) (*.f64 (exp.f64 (cos.f64 im)) (+.f64 (*.f64 1/6 (cos.f64 im)) (+.f64 (*.f64 1/6 (pow.f64 (cos.f64 im) 3)) (*.f64 1/2 (pow.f64 (cos.f64 im) 2))))))))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (exp.f64 re)) 1)
(-.f64 (+.f64 (exp.f64 (exp.f64 re)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) (*.f64 (exp.f64 re) (exp.f64 (exp.f64 re)))))) 1)
(-.f64 (+.f64 (exp.f64 (exp.f64 re)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (*.f64 (exp.f64 re) (exp.f64 (exp.f64 re))))) (*.f64 (pow.f64 im 4) (*.f64 (exp.f64 (exp.f64 re)) (+.f64 (*.f64 1/24 (exp.f64 re)) (*.f64 1/8 (pow.f64 (exp.f64 re) 2))))))) 1)
(-.f64 (+.f64 (exp.f64 (exp.f64 re)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (*.f64 (exp.f64 re) (exp.f64 (exp.f64 re))))) (+.f64 (*.f64 (pow.f64 im 4) (*.f64 (exp.f64 (exp.f64 re)) (+.f64 (*.f64 1/24 (exp.f64 re)) (*.f64 1/8 (pow.f64 (exp.f64 re) 2))))) (*.f64 (pow.f64 im 6) (*.f64 (exp.f64 (exp.f64 re)) (+.f64 (*.f64 -1/48 (pow.f64 (exp.f64 re) 2)) (+.f64 (*.f64 -1/48 (pow.f64 (exp.f64 re) 3)) (*.f64 -1/720 (exp.f64 re))))))))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(cos.f64 im)
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 (cos.f64 im) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 re 2) (cos.f64 im))) (*.f64 re (cos.f64 im))))
(+.f64 (cos.f64 im) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 re 3) (cos.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 re 2) (cos.f64 im))) (*.f64 re (cos.f64 im)))))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 re)
(+.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (exp.f64 re)))))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 im 6) (exp.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (exp.f64 re))))))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(cos.f64 im)
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 re (cos.f64 im))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 re (cos.f64 im))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 1 re)
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(+.f64 1 (+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (+.f64 1 re))))))
(+.f64 1 (+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 im 6) (+.f64 1 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (+.f64 1 re)))))))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 -1/2 (pow.f64 im 2))
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/12 (pow.f64 im 4)))
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.f64 -1/12 (pow.f64 im 4)) (*.f64 -1/45 (pow.f64 im 6))))
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.f64 -1/12 (pow.f64 im 4)) (+.f64 (*.f64 -1/45 (pow.f64 im 6)) (*.f64 -17/2520 (pow.f64 im 8)))))
(cos.f64 im)
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 (cos.f64 im) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 re 2) (cos.f64 im))) (*.f64 re (cos.f64 im))))
(+.f64 (cos.f64 im) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 re 3) (cos.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 re 2) (cos.f64 im))) (*.f64 re (cos.f64 im)))))
(exp.f64 (-.f64 (log.f64 (cos.f64 im)) (*.f64 -1 re)))
(exp.f64 (-.f64 (log.f64 (cos.f64 im)) (*.f64 -1 re)))
(exp.f64 (-.f64 (log.f64 (cos.f64 im)) (*.f64 -1 re)))
(exp.f64 (-.f64 (log.f64 (cos.f64 im)) (*.f64 -1 re)))
(exp.f64 re)
(+.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (exp.f64 re)))))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 im 6) (exp.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (exp.f64 re))))))
(+.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) -1)
(-.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 1)
(*.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 1)
(*.f64 1 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) (pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 2) (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(*.f64 (sqrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) (sqrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 3) 1) (+.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) (+.f64 1 (*.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 1))))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) 1) (+.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 1))
(pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 1)
(pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 3)
(pow.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3) 1/3)
(pow.f64 (sqrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 2)
(sqrt.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2))
(log.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(log.f64 (+.f64 1 (expm1.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))))
(cbrt.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3))
(exp.f64 (log.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(exp.f64 (*.f64 (log.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1))
(log1p.f64 (expm1.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1)
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(*.f64 1 (*.f64 (exp.f64 re) (cos.f64 im)))
(*.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2) (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) (cos.f64 im)))
(*.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (sqrt.f64 (cos.f64 im)) (*.f64 (sqrt.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) (cos.f64 im)))
(*.f64 (*.f64 (exp.f64 re) (pow.f64 (cbrt.f64 (cos.f64 im)) 2)) (cbrt.f64 (cos.f64 im)))
(*.f64 (*.f64 (exp.f64 re) (sqrt.f64 (cos.f64 im))) (sqrt.f64 (cos.f64 im)))
(*.f64 (*.f64 (cos.f64 im) (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (cbrt.f64 (exp.f64 re)))
(*.f64 (*.f64 (cos.f64 im) (sqrt.f64 (exp.f64 re))) (sqrt.f64 (exp.f64 re)))
(pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2)
(pow.f64 (exp.f64 1) (+.f64 re (log.f64 (cos.f64 im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))) 2)) (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(pow.f64 (exp.f64 (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im))))) (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (cos.f64 im) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 (exp.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
(+.f64 (cos.f64 im) (*.f64 (cos.f64 im) re))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (*.f64 re (cos.f64 im)) (cos.f64 im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 im) (+.f64 re 1)))) 1)
(/.f64 (*.f64 (cos.f64 im) (+.f64 1 (pow.f64 re 3))) (fma.f64 re re (-.f64 1 re)))
(/.f64 (*.f64 (cos.f64 im) (fma.f64 re re -1)) (+.f64 re -1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (cos.f64 im)) (fma.f64 re re (-.f64 1 re)))
(/.f64 (*.f64 (fma.f64 re re -1) (cos.f64 im)) (+.f64 re -1))
(pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 im) (+.f64 re 1))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 im) (+.f64 re 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 im) (+.f64 re 1)))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 (+.f64 re 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 re 1) 3) (pow.f64 (cos.f64 im) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 im) (+.f64 re 1))))
(exp.f64 (+.f64 (log.f64 (cos.f64 im)) (log1p.f64 re)))
(exp.f64 (*.f64 (+.f64 (log.f64 (cos.f64 im)) (log1p.f64 re)) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 im) (+.f64 re 1))))
(+.f64 0 (log.f64 (cos.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2)) (log.f64 (cbrt.f64 (cos.f64 im))))
(+.f64 (log.f64 (sqrt.f64 (cos.f64 im))) (log.f64 (sqrt.f64 (cos.f64 im))))
(-.f64 (exp.f64 (log1p.f64 (log.f64 (cos.f64 im)))) 1)
(*.f64 1 (log.f64 (cos.f64 im)))
(*.f64 (log.f64 (cos.f64 im)) 1)
(*.f64 (cbrt.f64 (log.f64 (cos.f64 im))) (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2) (cbrt.f64 (log.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (log.f64 (cos.f64 im))) (sqrt.f64 (log.f64 (cos.f64 im))))
(pow.f64 (log.f64 (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 3)
(pow.f64 (pow.f64 (log.f64 (cos.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (log.f64 (cos.f64 im))) 2)
(sqrt.f64 (pow.f64 (log.f64 (cos.f64 im)) 2))
(cbrt.f64 (pow.f64 (log.f64 (cos.f64 im)) 3))
(expm1.f64 (log1p.f64 (log.f64 (cos.f64 im))))
(exp.f64 (log.f64 (log.f64 (cos.f64 im))))
(exp.f64 (*.f64 (log.f64 (log.f64 (cos.f64 im))) 1))
(log1p.f64 (-.f64 (cos.f64 im) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1)
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(*.f64 1 (*.f64 (exp.f64 re) (cos.f64 im)))
(*.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2) (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) (cos.f64 im)))
(*.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (sqrt.f64 (cos.f64 im)) (*.f64 (sqrt.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) (cos.f64 im)))
(*.f64 (*.f64 (exp.f64 re) (pow.f64 (cbrt.f64 (cos.f64 im)) 2)) (cbrt.f64 (cos.f64 im)))
(*.f64 (*.f64 (exp.f64 re) (sqrt.f64 (cos.f64 im))) (sqrt.f64 (cos.f64 im)))
(*.f64 (*.f64 (cos.f64 im) (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (cbrt.f64 (exp.f64 re)))
(*.f64 (*.f64 (cos.f64 im) (sqrt.f64 (exp.f64 re))) (sqrt.f64 (exp.f64 re)))
(pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2)
(pow.f64 (exp.f64 1) (+.f64 re (log.f64 (cos.f64 im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))) 2)) (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(pow.f64 (exp.f64 (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im))))) (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (cos.f64 im) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 (exp.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
Outputs
(-.f64 (exp.f64 (cos.f64 im)) 1)
(expm1.f64 (cos.f64 im))
(-.f64 (+.f64 (exp.f64 (cos.f64 im)) (*.f64 re (*.f64 (cos.f64 im) (exp.f64 (cos.f64 im))))) 1)
(+.f64 (exp.f64 (cos.f64 im)) (-.f64 (*.f64 re (*.f64 (cos.f64 im) (exp.f64 (cos.f64 im)))) 1))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 im) re) 1) (exp.f64 (cos.f64 im))) -1)
(fma.f64 (+.f64 (*.f64 (cos.f64 im) re) 1) (exp.f64 (cos.f64 im)) -1)
(-.f64 (+.f64 (exp.f64 (cos.f64 im)) (+.f64 (*.f64 re (*.f64 (cos.f64 im) (exp.f64 (cos.f64 im)))) (*.f64 (pow.f64 re 2) (*.f64 (exp.f64 (cos.f64 im)) (+.f64 (*.f64 1/2 (cos.f64 im)) (*.f64 1/2 (pow.f64 (cos.f64 im) 2))))))) 1)
(+.f64 (exp.f64 (cos.f64 im)) (-.f64 (fma.f64 re (*.f64 (cos.f64 im) (exp.f64 (cos.f64 im))) (*.f64 (pow.f64 re 2) (*.f64 (exp.f64 (cos.f64 im)) (*.f64 1/2 (+.f64 (cos.f64 im) (pow.f64 (cos.f64 im) 2)))))) 1))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 im) re) 1) (exp.f64 (cos.f64 im))) (+.f64 (*.f64 (pow.f64 re 2) (*.f64 (exp.f64 (cos.f64 im)) (*.f64 1/2 (+.f64 (cos.f64 im) (pow.f64 (cos.f64 im) 2))))) -1))
(+.f64 (*.f64 (exp.f64 (cos.f64 im)) (+.f64 (+.f64 (*.f64 (cos.f64 im) re) 1) (*.f64 (pow.f64 re 2) (*.f64 1/2 (+.f64 (cos.f64 im) (pow.f64 (cos.f64 im) 2)))))) -1)
(-.f64 (+.f64 (exp.f64 (cos.f64 im)) (+.f64 (*.f64 re (*.f64 (cos.f64 im) (exp.f64 (cos.f64 im)))) (+.f64 (*.f64 (pow.f64 re 2) (*.f64 (exp.f64 (cos.f64 im)) (+.f64 (*.f64 1/2 (cos.f64 im)) (*.f64 1/2 (pow.f64 (cos.f64 im) 2))))) (*.f64 (pow.f64 re 3) (*.f64 (exp.f64 (cos.f64 im)) (+.f64 (*.f64 1/6 (cos.f64 im)) (+.f64 (*.f64 1/6 (pow.f64 (cos.f64 im) 3)) (*.f64 1/2 (pow.f64 (cos.f64 im) 2))))))))) 1)
(+.f64 (exp.f64 (cos.f64 im)) (-.f64 (fma.f64 re (*.f64 (cos.f64 im) (exp.f64 (cos.f64 im))) (fma.f64 (pow.f64 re 2) (*.f64 (exp.f64 (cos.f64 im)) (*.f64 1/2 (+.f64 (cos.f64 im) (pow.f64 (cos.f64 im) 2)))) (*.f64 (pow.f64 re 3) (*.f64 (exp.f64 (cos.f64 im)) (fma.f64 1/6 (cos.f64 im) (fma.f64 1/6 (pow.f64 (cos.f64 im) 3) (*.f64 1/2 (pow.f64 (cos.f64 im) 2)))))))) 1))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 im) re) 1) (exp.f64 (cos.f64 im))) (+.f64 (fma.f64 (pow.f64 re 2) (*.f64 (exp.f64 (cos.f64 im)) (*.f64 1/2 (+.f64 (cos.f64 im) (pow.f64 (cos.f64 im) 2)))) (*.f64 (pow.f64 re 3) (*.f64 (exp.f64 (cos.f64 im)) (fma.f64 (cos.f64 im) 1/6 (fma.f64 1/2 (pow.f64 (cos.f64 im) 2) (*.f64 1/6 (pow.f64 (cos.f64 im) 3))))))) -1))
(+.f64 (*.f64 (exp.f64 (cos.f64 im)) (+.f64 (+.f64 (*.f64 (cos.f64 im) re) 1) (*.f64 (pow.f64 re 2) (*.f64 1/2 (+.f64 (cos.f64 im) (pow.f64 (cos.f64 im) 2)))))) (fma.f64 (fma.f64 (cos.f64 im) 1/6 (*.f64 (pow.f64 (cos.f64 im) 2) (+.f64 1/2 (*.f64 (cos.f64 im) 1/6)))) (*.f64 (exp.f64 (cos.f64 im)) (pow.f64 re 3)) -1))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (exp.f64 re)) 1)
(expm1.f64 (exp.f64 re))
(-.f64 (+.f64 (exp.f64 (exp.f64 re)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) (*.f64 (exp.f64 re) (exp.f64 (exp.f64 re)))))) 1)
(+.f64 (exp.f64 (exp.f64 re)) (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 (+.f64 re (exp.f64 re))))) 1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 (+.f64 re (exp.f64 re))))) (expm1.f64 (exp.f64 re)))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 2) (*.f64 -1/2 (exp.f64 re))) 1) (exp.f64 (exp.f64 re))) -1)
(-.f64 (+.f64 (exp.f64 (exp.f64 re)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (*.f64 (exp.f64 re) (exp.f64 (exp.f64 re))))) (*.f64 (pow.f64 im 4) (*.f64 (exp.f64 (exp.f64 re)) (+.f64 (*.f64 1/24 (exp.f64 re)) (*.f64 1/8 (pow.f64 (exp.f64 re) 2))))))) 1)
(+.f64 (+.f64 (exp.f64 (exp.f64 re)) (fma.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 (+.f64 re (exp.f64 re)))) (*.f64 (pow.f64 im 4) (*.f64 (exp.f64 (exp.f64 re)) (fma.f64 1/24 (exp.f64 re) (*.f64 1/8 (pow.f64 (exp.f64 re) 2))))))) -1)
(+.f64 (fma.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 (+.f64 re (exp.f64 re)))) (*.f64 (exp.f64 (exp.f64 re)) (*.f64 (fma.f64 (exp.f64 re) 1/24 (*.f64 1/8 (pow.f64 (exp.f64 re) 2))) (pow.f64 im 4)))) (expm1.f64 (exp.f64 re)))
(+.f64 (expm1.f64 (exp.f64 re)) (*.f64 (exp.f64 (exp.f64 re)) (+.f64 (*.f64 (pow.f64 im 2) (*.f64 -1/2 (exp.f64 re))) (*.f64 (pow.f64 im 4) (*.f64 (exp.f64 re) (+.f64 1/24 (*.f64 1/8 (exp.f64 re))))))))
(-.f64 (+.f64 (exp.f64 (exp.f64 re)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (*.f64 (exp.f64 re) (exp.f64 (exp.f64 re))))) (+.f64 (*.f64 (pow.f64 im 4) (*.f64 (exp.f64 (exp.f64 re)) (+.f64 (*.f64 1/24 (exp.f64 re)) (*.f64 1/8 (pow.f64 (exp.f64 re) 2))))) (*.f64 (pow.f64 im 6) (*.f64 (exp.f64 (exp.f64 re)) (+.f64 (*.f64 -1/48 (pow.f64 (exp.f64 re) 2)) (+.f64 (*.f64 -1/48 (pow.f64 (exp.f64 re) 3)) (*.f64 -1/720 (exp.f64 re))))))))) 1)
(+.f64 (exp.f64 (exp.f64 re)) (-.f64 (fma.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 (+.f64 re (exp.f64 re)))) (fma.f64 (pow.f64 im 4) (*.f64 (exp.f64 (exp.f64 re)) (fma.f64 1/24 (exp.f64 re) (*.f64 1/8 (pow.f64 (exp.f64 re) 2)))) (*.f64 (pow.f64 im 6) (*.f64 (exp.f64 (exp.f64 re)) (fma.f64 -1/48 (pow.f64 (exp.f64 re) 2) (fma.f64 -1/48 (pow.f64 (exp.f64 re) 3) (*.f64 (exp.f64 re) -1/720))))))) 1))
(+.f64 (fma.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 (+.f64 re (exp.f64 re)))) (fma.f64 (pow.f64 im 4) (*.f64 (exp.f64 (exp.f64 re)) (fma.f64 (exp.f64 re) 1/24 (*.f64 1/8 (pow.f64 (exp.f64 re) 2)))) (*.f64 (exp.f64 (exp.f64 re)) (*.f64 (fma.f64 (pow.f64 (exp.f64 re) 2) -1/48 (fma.f64 -1/48 (pow.f64 (exp.f64 re) 3) (*.f64 (exp.f64 re) -1/720))) (pow.f64 im 6))))) (expm1.f64 (exp.f64 re)))
(+.f64 (expm1.f64 (exp.f64 re)) (fma.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 (+.f64 re (exp.f64 re)))) (*.f64 (exp.f64 (exp.f64 re)) (+.f64 (*.f64 (*.f64 (exp.f64 re) (+.f64 1/24 (*.f64 1/8 (exp.f64 re)))) (pow.f64 im 4)) (*.f64 (fma.f64 (pow.f64 (exp.f64 re) 2) -1/48 (fma.f64 -1/48 (pow.f64 (exp.f64 re) 3) (*.f64 (exp.f64 re) -1/720))) (pow.f64 im 6))))))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(cos.f64 im)
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(+.f64 (cos.f64 im) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 re 2) (cos.f64 im))) (*.f64 re (cos.f64 im))))
(+.f64 (cos.f64 im) (fma.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2)) (*.f64 (cos.f64 im) re)))
(+.f64 (cos.f64 im) (*.f64 (cos.f64 im) (+.f64 re (*.f64 (pow.f64 re 2) 1/2))))
(*.f64 (cos.f64 im) (+.f64 1 (+.f64 re (*.f64 (pow.f64 re 2) 1/2))))
(+.f64 (cos.f64 im) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 re 3) (cos.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 re 2) (cos.f64 im))) (*.f64 re (cos.f64 im)))))
(+.f64 (cos.f64 im) (fma.f64 1/6 (*.f64 (cos.f64 im) (pow.f64 re 3)) (fma.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2)) (*.f64 (cos.f64 im) re))))
(+.f64 (*.f64 (cos.f64 im) (+.f64 re (*.f64 (pow.f64 re 2) 1/2))) (*.f64 (+.f64 (*.f64 (pow.f64 re 3) 1/6) 1) (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/6 re) 1/2)) (+.f64 1 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 re)
(+.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))))
(+.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (exp.f64 re))
(*.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (exp.f64 re)))))
(+.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)) (*.f64 1/24 (*.f64 (exp.f64 re) (pow.f64 im 4)))))
(+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (pow.f64 im 4) 1/24))))
(*.f64 (exp.f64 re) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (pow.f64 im 4) 1/24))))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 im 6) (exp.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (exp.f64 re))))))
(+.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)) (fma.f64 -1/720 (*.f64 (exp.f64 re) (pow.f64 im 6)) (*.f64 1/24 (*.f64 (exp.f64 re) (pow.f64 im 4))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (exp.f64 re)) (*.f64 (exp.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/24) (*.f64 (pow.f64 im 6) -1/720))))
(+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (+.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/24) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 6) -1/720))))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(cos.f64 im)
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 re (cos.f64 im))
(*.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 re (cos.f64 im))
(*.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(+.f64 1 re)
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (+.f64 1 re))
(+.f64 1 (+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (+.f64 1 re))))))
(+.f64 1 (+.f64 re (fma.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (+.f64 1 re))))))
(+.f64 1 (+.f64 re (*.f64 (+.f64 1 re) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (pow.f64 im 4) 1/24)))))
(*.f64 (+.f64 1 re) (+.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (*.f64 (pow.f64 im 4) 1/24)))
(+.f64 1 (+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 im 6) (+.f64 1 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (+.f64 1 re)))))))
(+.f64 1 (+.f64 re (fma.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)) (fma.f64 -1/720 (*.f64 (pow.f64 im 6) (+.f64 1 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (+.f64 1 re)))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (+.f64 1 re)) (*.f64 (+.f64 1 re) (+.f64 (*.f64 (pow.f64 im 4) 1/24) (*.f64 (pow.f64 im 6) -1/720))))
(+.f64 (*.f64 (+.f64 1 re) (+.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (pow.f64 im 6) -1/720)) (*.f64 (pow.f64 im 4) 1/24))) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 -1/2 (pow.f64 im 2))
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/12 (pow.f64 im 4)))
(fma.f64 -1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/12))
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.f64 -1/12 (pow.f64 im 4)) (*.f64 -1/45 (pow.f64 im 6))))
(fma.f64 -1/2 (pow.f64 im 2) (fma.f64 -1/12 (pow.f64 im 4) (*.f64 (pow.f64 im 6) -1/45)))
(fma.f64 -1/2 (pow.f64 im 2) (fma.f64 (pow.f64 im 4) -1/12 (*.f64 (pow.f64 im 6) -1/45)))
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.f64 -1/12 (pow.f64 im 4)) (+.f64 (*.f64 -1/45 (pow.f64 im 6)) (*.f64 -17/2520 (pow.f64 im 8)))))
(fma.f64 -1/2 (pow.f64 im 2) (fma.f64 -1/12 (pow.f64 im 4) (fma.f64 -1/45 (pow.f64 im 6) (*.f64 -17/2520 (pow.f64 im 8)))))
(fma.f64 -1/2 (pow.f64 im 2) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 (pow.f64 im 6) -1/45 (*.f64 -17/2520 (pow.f64 im 8)))))
(fma.f64 -1/2 (pow.f64 im 2) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 -17/2520 (pow.f64 im 8) (*.f64 (pow.f64 im 6) -1/45))))
(cos.f64 im)
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(+.f64 (cos.f64 im) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 re 2) (cos.f64 im))) (*.f64 re (cos.f64 im))))
(+.f64 (cos.f64 im) (fma.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2)) (*.f64 (cos.f64 im) re)))
(+.f64 (cos.f64 im) (*.f64 (cos.f64 im) (+.f64 re (*.f64 (pow.f64 re 2) 1/2))))
(*.f64 (cos.f64 im) (+.f64 1 (+.f64 re (*.f64 (pow.f64 re 2) 1/2))))
(+.f64 (cos.f64 im) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 re 3) (cos.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 re 2) (cos.f64 im))) (*.f64 re (cos.f64 im)))))
(+.f64 (cos.f64 im) (fma.f64 1/6 (*.f64 (cos.f64 im) (pow.f64 re 3)) (fma.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2)) (*.f64 (cos.f64 im) re))))
(+.f64 (*.f64 (cos.f64 im) (+.f64 re (*.f64 (pow.f64 re 2) 1/2))) (*.f64 (+.f64 (*.f64 (pow.f64 re 3) 1/6) 1) (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/6 re) 1/2)) (+.f64 1 re)))
(exp.f64 (-.f64 (log.f64 (cos.f64 im)) (*.f64 -1 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 (-.f64 (log.f64 (cos.f64 im)) (*.f64 -1 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 (-.f64 (log.f64 (cos.f64 im)) (*.f64 -1 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 (-.f64 (log.f64 (cos.f64 im)) (*.f64 -1 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 re)
(+.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))))
(+.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (exp.f64 re))
(*.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (exp.f64 re)))))
(+.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)) (*.f64 1/24 (*.f64 (exp.f64 re) (pow.f64 im 4)))))
(+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (pow.f64 im 4) 1/24))))
(*.f64 (exp.f64 re) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (pow.f64 im 4) 1/24))))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 im 6) (exp.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (exp.f64 re))))))
(+.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)) (fma.f64 -1/720 (*.f64 (exp.f64 re) (pow.f64 im 6)) (*.f64 1/24 (*.f64 (exp.f64 re) (pow.f64 im 4))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (exp.f64 re)) (*.f64 (exp.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/24) (*.f64 (pow.f64 im 6) -1/720))))
(+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (+.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/24) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 6) -1/720))))
(+.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) -1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(*.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(*.f64 1 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(*.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) (pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 2))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 2) (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(*.f64 (sqrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) (sqrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(/.f64 (-.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 3) 1) (+.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) (+.f64 1 (*.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 1))))
(/.f64 (+.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 3) -1) (+.f64 (pow.f64 (exp.f64 (cos.f64 im)) (*.f64 2 (exp.f64 re))) (+.f64 1 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))))
(/.f64 (+.f64 -1 (pow.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)) 3)) (+.f64 1 (+.f64 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im)) (pow.f64 (exp.f64 (cos.f64 im)) (*.f64 2 (exp.f64 re))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) 1) (+.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 1))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 3)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(pow.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3) 1/3)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(pow.f64 (sqrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 2)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(sqrt.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(log.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(cbrt.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(exp.f64 (log.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(exp.f64 (*.f64 (log.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(log1p.f64 (expm1.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1)
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 1 (*.f64 (exp.f64 re) (cos.f64 im)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2) (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) (cos.f64 im)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (sqrt.f64 (cos.f64 im)) (*.f64 (sqrt.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) (cos.f64 im)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (exp.f64 re) (pow.f64 (cbrt.f64 (cos.f64 im)) 2)) (cbrt.f64 (cos.f64 im)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (exp.f64 re) (sqrt.f64 (cos.f64 im))) (sqrt.f64 (cos.f64 im)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (cos.f64 im) (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (cbrt.f64 (exp.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (cos.f64 im) (sqrt.f64 (exp.f64 re))) (sqrt.f64 (exp.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3) 1/3)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (exp.f64 1) (+.f64 re (log.f64 (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))) 2)) (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(pow.f64 (exp.f64 (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im))))) (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 2))
(*.f64 (cos.f64 im) (exp.f64 re))
(log.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3))
(*.f64 (cos.f64 im) (exp.f64 re))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (cos.f64 im) 3)))
(*.f64 (cos.f64 im) (exp.f64 re))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 (exp.f64 re) 3)))
(*.f64 (cos.f64 im) (exp.f64 re))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))
(+.f64 (cos.f64 im) (*.f64 (cos.f64 im) re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(*.f64 (cos.f64 im) (+.f64 1 re))
(+.f64 (*.f64 re (cos.f64 im)) (cos.f64 im))
(*.f64 (cos.f64 im) (+.f64 1 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 im) (+.f64 re 1)))) 1)
(*.f64 (cos.f64 im) (+.f64 1 re))
(/.f64 (*.f64 (cos.f64 im) (+.f64 1 (pow.f64 re 3))) (fma.f64 re re (-.f64 1 re)))
(/.f64 (+.f64 1 (pow.f64 re 3)) (/.f64 (fma.f64 re re (-.f64 1 re)) (cos.f64 im)))
(*.f64 (/.f64 (cos.f64 im) (fma.f64 re re (-.f64 1 re))) (+.f64 1 (pow.f64 re 3)))
(/.f64 (*.f64 (cos.f64 im) (fma.f64 re re -1)) (+.f64 re -1))
(/.f64 (cos.f64 im) (/.f64 (+.f64 re -1) (fma.f64 re re -1)))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (cos.f64 im)) (fma.f64 re re (-.f64 1 re)))
(/.f64 (+.f64 1 (pow.f64 re 3)) (/.f64 (fma.f64 re re (-.f64 1 re)) (cos.f64 im)))
(*.f64 (/.f64 (cos.f64 im) (fma.f64 re re (-.f64 1 re))) (+.f64 1 (pow.f64 re 3)))
(/.f64 (*.f64 (fma.f64 re re -1) (cos.f64 im)) (+.f64 re -1))
(/.f64 (cos.f64 im) (/.f64 (+.f64 re -1) (fma.f64 re re -1)))
(pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 1)
(*.f64 (cos.f64 im) (+.f64 1 re))
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 im) (+.f64 re 1))) 3)
(*.f64 (cos.f64 im) (+.f64 1 re))
(pow.f64 (pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 3) 1/3)
(*.f64 (cos.f64 im) (+.f64 1 re))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 im) (+.f64 re 1))) 2)
(*.f64 (cos.f64 im) (+.f64 1 re))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 2))
(*.f64 (cos.f64 im) (+.f64 1 re))
(log.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 im) (+.f64 re 1)))))
(*.f64 (cos.f64 im) (+.f64 1 re))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 3))
(*.f64 (cos.f64 im) (+.f64 1 re))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 (+.f64 re 1) 3)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 re 1) 3) (pow.f64 (cos.f64 im) 3)))
(*.f64 (cos.f64 im) (+.f64 1 re))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 im) (+.f64 re 1))))
(*.f64 (cos.f64 im) (+.f64 1 re))
(exp.f64 (+.f64 (log.f64 (cos.f64 im)) (log1p.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 (log1p.f64 re)))
(exp.f64 (*.f64 (+.f64 (log.f64 (cos.f64 im)) (log1p.f64 re)) 1))
(exp.f64 (+.f64 (log.f64 (cos.f64 im)) (log1p.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 (log1p.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 im) (+.f64 re 1))))
(*.f64 (cos.f64 im) (+.f64 1 re))
(+.f64 0 (log.f64 (cos.f64 im)))
(log.f64 (cos.f64 im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2)) (log.f64 (cbrt.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(+.f64 (log.f64 (sqrt.f64 (cos.f64 im))) (log.f64 (sqrt.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(-.f64 (exp.f64 (log1p.f64 (log.f64 (cos.f64 im)))) 1)
(log.f64 (cos.f64 im))
(*.f64 1 (log.f64 (cos.f64 im)))
(log.f64 (cos.f64 im))
(*.f64 (log.f64 (cos.f64 im)) 1)
(log.f64 (cos.f64 im))
(*.f64 (cbrt.f64 (log.f64 (cos.f64 im))) (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2))
(log.f64 (cos.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2) (cbrt.f64 (log.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(*.f64 (sqrt.f64 (log.f64 (cos.f64 im))) (sqrt.f64 (log.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(pow.f64 (log.f64 (cos.f64 im)) 1)
(log.f64 (cos.f64 im))
(pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 3)
(log.f64 (cos.f64 im))
(pow.f64 (pow.f64 (log.f64 (cos.f64 im)) 3) 1/3)
(log.f64 (cos.f64 im))
(pow.f64 (sqrt.f64 (log.f64 (cos.f64 im))) 2)
(log.f64 (cos.f64 im))
(sqrt.f64 (pow.f64 (log.f64 (cos.f64 im)) 2))
(log.f64 (cos.f64 im))
(cbrt.f64 (pow.f64 (log.f64 (cos.f64 im)) 3))
(log.f64 (cos.f64 im))
(expm1.f64 (log1p.f64 (log.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(exp.f64 (log.f64 (log.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(exp.f64 (*.f64 (log.f64 (log.f64 (cos.f64 im))) 1))
(log.f64 (cos.f64 im))
(log1p.f64 (-.f64 (cos.f64 im) 1))
(log1p.f64 (+.f64 (cos.f64 im) -1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1)
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 1 (*.f64 (exp.f64 re) (cos.f64 im)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2) (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) (cos.f64 im)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (sqrt.f64 (cos.f64 im)) (*.f64 (sqrt.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) (cos.f64 im)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (exp.f64 re) (pow.f64 (cbrt.f64 (cos.f64 im)) 2)) (cbrt.f64 (cos.f64 im)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (exp.f64 re) (sqrt.f64 (cos.f64 im))) (sqrt.f64 (cos.f64 im)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (cos.f64 im) (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (cbrt.f64 (exp.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (cos.f64 im) (sqrt.f64 (exp.f64 re))) (sqrt.f64 (exp.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3) 1/3)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (exp.f64 1) (+.f64 re (log.f64 (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))) 2)) (cbrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(pow.f64 (exp.f64 (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im))))) (sqrt.f64 (+.f64 re (log.f64 (cos.f64 im)))))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 2))
(*.f64 (cos.f64 im) (exp.f64 re))
(log.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 re))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 3))
(*.f64 (cos.f64 im) (exp.f64 re))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (cos.f64 im) 3)))
(*.f64 (cos.f64 im) (exp.f64 re))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 (exp.f64 re) 3)))
(*.f64 (cos.f64 im) (exp.f64 re))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(*.f64 (cos.f64 im) (exp.f64 re))

eval71.0ms (1.9%)

Compiler

Compiled 3585 to 1912 computations (46.7% saved)

prune36.0ms (1%)

Pruning

9 alts after pruning (3 fresh and 6 done)

PrunedKeptTotal
New2303233
Fresh000
Picked055
Done011
Total2309239
Accuracy
100.0%
Counts
239 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
24.9%
(+.f64 1 re)
26.4%
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (+.f64 1 re))
50.4%
(*.f64 (+.f64 re 1) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
4.1%
(*.f64 (cos.f64 im) re)
99.5%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
73.4%
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
68.0%
(exp.f64 re)
49.4%
(cos.f64 im)
24.9%
(+.f64 1 re)
26.4%
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (+.f64 1 re))
50.4%
(*.f64 (+.f64 re 1) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
4.1%
(*.f64 (cos.f64 im) re)
99.5%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
73.4%
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
68.0%
(exp.f64 re)
49.4%
(cos.f64 im)
Compiler

Compiled 128 to 98 computations (23.4% saved)

localize92.0ms (2.5%)

Localize:

Found 3 expressions with local error:

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

Compiled 50 to 34 computations (32% saved)

series5.0ms (0.1%)

Counts
3 → 48
Calls

15 calls:

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

rewrite100.0ms (2.7%)

Algorithm
batch-egg-rewrite
Rules
1019×log1p-expm1-u
1018×expm1-log1p-u
934×prod-diff
346×log1p-udef
344×expm1-udef
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01866
121866
2284666
Stop Event
node limit
Counts
3 → 74
Calls
Call 1
Inputs
(*.f64 (cos.f64 im) re)
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (+.f64 1 re))
(*.f64 -1/2 (pow.f64 im 2))
Outputs
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 im) re))) 1)
(pow.f64 (*.f64 (cos.f64 im) re) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 im) re)) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 im) re) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 im) re)) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 im) re) 2))
(log.f64 (pow.f64 (exp.f64 re) (cos.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 im) re))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) re) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 re 3)))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (cos.f64 im) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 im) re)))
(exp.f64 (log.f64 (*.f64 (cos.f64 im) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 im) re)) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 im) re)))
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 1 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 1))
(+.f64 (+.f64 re 1) (*.f64 (+.f64 re 1) (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 (+.f64 re 1) (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1)))
(+.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (fma.f64 -1/2 (pow.f64 im 2) 1))
(+.f64 (*.f64 (+.f64 re 1) (*.f64 -1/2 (pow.f64 im 2))) (+.f64 re 1))
(+.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1)) (+.f64 re 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)))) 1)
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (+.f64 1 (pow.f64 re 3))) (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))) (+.f64 1 (-.f64 (pow.f64 re 2) re))))
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (-.f64 1 (pow.f64 re 2))) (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))) (-.f64 1 re)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (+.f64 1 (pow.f64 re 3))) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) -1) (+.f64 1 (-.f64 (pow.f64 re 2) re))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (-.f64 1 (pow.f64 re 2))) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) -1) (-.f64 1 re)))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (*.f64 (+.f64 1 (-.f64 (pow.f64 re 2) re)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (+.f64 1 (-.f64 (pow.f64 re 2) re)) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(/.f64 (*.f64 (-.f64 1 (pow.f64 re 2)) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (*.f64 (-.f64 1 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 re 2)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (-.f64 1 re) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(/.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3) (pow.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 3)) (+.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (-.f64 (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))))))
(/.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))) (-.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))))
(/.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 1 (pow.f64 re 3))) (+.f64 1 (-.f64 (pow.f64 re 2) re)))
(/.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (-.f64 1 (pow.f64 re 2))) (-.f64 1 re))
(/.f64 (*.f64 (+.f64 re 1) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))))
(/.f64 (*.f64 (+.f64 re 1) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (fma.f64 -1/2 (pow.f64 im 2) -1))
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (+.f64 re 1)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (+.f64 re 1)) (fma.f64 -1/2 (pow.f64 im 2) -1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (fma.f64 -1/2 (pow.f64 im 2) 1)) (+.f64 1 (-.f64 (pow.f64 re 2) re)))
(/.f64 (*.f64 (-.f64 1 (pow.f64 re 2)) (fma.f64 -1/2 (pow.f64 im 2) 1)) (-.f64 1 re))
(pow.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)) 2))
(log.f64 (pow.f64 (exp.f64 (+.f64 re 1)) (fma.f64 -1/2 (pow.f64 im 2) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3) (pow.f64 (+.f64 re 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 re 1) 3) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))))
(exp.f64 (+.f64 (log1p.f64 re) (log1p.f64 (*.f64 -1/2 (pow.f64 im 2)))))
(exp.f64 (*.f64 (+.f64 (log1p.f64 re) (log1p.f64 (*.f64 -1/2 (pow.f64 im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))))
(fma.f64 1 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(fma.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 1 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (pow.f64 im 2) 1)) 2) (cbrt.f64 (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(fma.f64 (hypot.f64 1 (*.f64 im (sqrt.f64 -1/2))) (hypot.f64 1 (*.f64 im (sqrt.f64 -1/2))) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(-.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 1)
(pow.f64 (*.f64 -1/2 (pow.f64 im 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) 3)
(pow.f64 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 -1/2)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 4) 1/4))
(log.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (pow.f64 im 2)))))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (pow.f64 im 2))))
(exp.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))) 1))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (pow.f64 im 2))))

simplify140.0ms (3.7%)

Algorithm
egg-herbie
Rules
1732×fma-neg
824×unswap-sqr
728×times-frac
562×associate-+l+
528×associate-/l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02254408
16654220
224244092
368814092
Stop Event
node limit
Counts
122 → 133
Calls
Call 1
Inputs
re
(+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) re))))
(+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 im 6) re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) re)))))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(+.f64 1 re)
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 im) re))) 1)
(pow.f64 (*.f64 (cos.f64 im) re) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 im) re)) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 im) re) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 im) re)) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 im) re) 2))
(log.f64 (pow.f64 (exp.f64 re) (cos.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 im) re))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) re) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 re 3)))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (cos.f64 im) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 im) re)))
(exp.f64 (log.f64 (*.f64 (cos.f64 im) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 im) re)) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 im) re)))
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 1 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 1))
(+.f64 (+.f64 re 1) (*.f64 (+.f64 re 1) (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 (+.f64 re 1) (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1)))
(+.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (fma.f64 -1/2 (pow.f64 im 2) 1))
(+.f64 (*.f64 (+.f64 re 1) (*.f64 -1/2 (pow.f64 im 2))) (+.f64 re 1))
(+.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1)) (+.f64 re 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)))) 1)
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (+.f64 1 (pow.f64 re 3))) (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))) (+.f64 1 (-.f64 (pow.f64 re 2) re))))
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (-.f64 1 (pow.f64 re 2))) (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))) (-.f64 1 re)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (+.f64 1 (pow.f64 re 3))) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) -1) (+.f64 1 (-.f64 (pow.f64 re 2) re))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (-.f64 1 (pow.f64 re 2))) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) -1) (-.f64 1 re)))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (*.f64 (+.f64 1 (-.f64 (pow.f64 re 2) re)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (+.f64 1 (-.f64 (pow.f64 re 2) re)) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(/.f64 (*.f64 (-.f64 1 (pow.f64 re 2)) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (*.f64 (-.f64 1 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 re 2)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (-.f64 1 re) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(/.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3) (pow.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 3)) (+.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (-.f64 (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))))))
(/.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))) (-.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))))
(/.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 1 (pow.f64 re 3))) (+.f64 1 (-.f64 (pow.f64 re 2) re)))
(/.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (-.f64 1 (pow.f64 re 2))) (-.f64 1 re))
(/.f64 (*.f64 (+.f64 re 1) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))))
(/.f64 (*.f64 (+.f64 re 1) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (fma.f64 -1/2 (pow.f64 im 2) -1))
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (+.f64 re 1)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (+.f64 re 1)) (fma.f64 -1/2 (pow.f64 im 2) -1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (fma.f64 -1/2 (pow.f64 im 2) 1)) (+.f64 1 (-.f64 (pow.f64 re 2) re)))
(/.f64 (*.f64 (-.f64 1 (pow.f64 re 2)) (fma.f64 -1/2 (pow.f64 im 2) 1)) (-.f64 1 re))
(pow.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)) 2))
(log.f64 (pow.f64 (exp.f64 (+.f64 re 1)) (fma.f64 -1/2 (pow.f64 im 2) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3) (pow.f64 (+.f64 re 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 re 1) 3) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))))
(exp.f64 (+.f64 (log1p.f64 re) (log1p.f64 (*.f64 -1/2 (pow.f64 im 2)))))
(exp.f64 (*.f64 (+.f64 (log1p.f64 re) (log1p.f64 (*.f64 -1/2 (pow.f64 im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))))
(fma.f64 1 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(fma.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 1 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (pow.f64 im 2) 1)) 2) (cbrt.f64 (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(fma.f64 (hypot.f64 1 (*.f64 im (sqrt.f64 -1/2))) (hypot.f64 1 (*.f64 im (sqrt.f64 -1/2))) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(-.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 1)
(pow.f64 (*.f64 -1/2 (pow.f64 im 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) 3)
(pow.f64 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 -1/2)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 4) 1/4))
(log.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (pow.f64 im 2)))))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (pow.f64 im 2))))
(exp.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))) 1))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (pow.f64 im 2))))
Outputs
re
(+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 -1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))
(+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) re))))
(+.f64 re (fma.f64 -1/2 (*.f64 re (pow.f64 im 2)) (*.f64 1/24 (*.f64 re (pow.f64 im 4)))))
(+.f64 re (*.f64 re (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (fma.f64 -1/2 (pow.f64 im 2) 1)))
(+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 im 6) re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) re)))))
(+.f64 re (fma.f64 -1/2 (*.f64 re (pow.f64 im 2)) (fma.f64 -1/720 (*.f64 re (pow.f64 im 6)) (*.f64 1/24 (*.f64 re (pow.f64 im 4))))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/720 (pow.f64 im 6)))) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(*.f64 re (+.f64 (+.f64 (*.f64 -1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))) (fma.f64 -1/2 (pow.f64 im 2) 1)))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(*.f64 re (cos.f64 im))
(+.f64 1 re)
(+.f64 re 1)
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 -1/2 (pow.f64 im 2) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 re (*.f64 -1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 re (*.f64 -1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 im) re))) 1)
(*.f64 re (cos.f64 im))
(pow.f64 (*.f64 (cos.f64 im) re) 1)
(*.f64 re (cos.f64 im))
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 im) re)) 3)
(*.f64 re (cos.f64 im))
(pow.f64 (pow.f64 (*.f64 (cos.f64 im) re) 3) 1/3)
(*.f64 re (cos.f64 im))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 im) re)) 2)
(*.f64 re (cos.f64 im))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 im) re) 2))
(*.f64 re (cos.f64 im))
(log.f64 (pow.f64 (exp.f64 re) (cos.f64 im)))
(*.f64 re (cos.f64 im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 im) re))))
(*.f64 re (cos.f64 im))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) re) 3))
(*.f64 re (cos.f64 im))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 re 3)))
(*.f64 re (cos.f64 im))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (cos.f64 im) 3)))
(*.f64 re (cos.f64 im))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 im) re)))
(*.f64 re (cos.f64 im))
(exp.f64 (log.f64 (*.f64 (cos.f64 im) re)))
(*.f64 re (cos.f64 im))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 im) re)) 1))
(*.f64 re (cos.f64 im))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 im) re)))
(*.f64 re (cos.f64 im))
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 1 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 1))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 (+.f64 re 1) (*.f64 (+.f64 re 1) (*.f64 -1/2 (pow.f64 im 2))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 (+.f64 re 1) (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1)))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (fma.f64 -1/2 (pow.f64 im 2) 1))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 (*.f64 (+.f64 re 1) (*.f64 -1/2 (pow.f64 im 2))) (+.f64 re 1))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(+.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1)) (+.f64 re 1))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)))) 1)
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (+.f64 1 (pow.f64 re 3))) (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))) (+.f64 1 (-.f64 (pow.f64 re 2) re))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (fma.f64 (pow.f64 im 4) 1/4 (-.f64 1 (*.f64 -1/2 (pow.f64 im 2))))) (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 1 (-.f64 (pow.f64 re 2) re))))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (+.f64 (fma.f64 (pow.f64 im 4) 1/4 1) (*.f64 (pow.f64 im 2) 1/2))) (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 1 (-.f64 (pow.f64 re 2) re))))
(*.f64 (/.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 (pow.f64 re 2) (-.f64 1 re))) (+.f64 (*.f64 (pow.f64 im 2) 1/2) (fma.f64 (pow.f64 im 4) 1/4 1))) (fma.f64 (pow.f64 im 6) -1/8 1))
(*.f64 (/.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 (pow.f64 re 2) (-.f64 1 re))) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 2) 1/2)))) (fma.f64 (pow.f64 im 6) -1/8 1))
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (-.f64 1 (pow.f64 re 2))) (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))) (-.f64 1 re)))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (fma.f64 (pow.f64 im 4) 1/4 (-.f64 1 (*.f64 -1/2 (pow.f64 im 2))))) (/.f64 (-.f64 1 (pow.f64 re 2)) (-.f64 1 re)))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (+.f64 (fma.f64 (pow.f64 im 4) 1/4 1) (*.f64 (pow.f64 im 2) 1/2))) (/.f64 (-.f64 1 (pow.f64 re 2)) (-.f64 1 re)))
(/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (*.f64 (/.f64 (-.f64 1 re) (-.f64 1 (pow.f64 re 2))) (+.f64 (*.f64 (pow.f64 im 2) 1/2) (fma.f64 (pow.f64 im 4) 1/4 1))))
(/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (*.f64 (/.f64 (-.f64 1 re) (-.f64 1 (pow.f64 re 2))) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 2) 1/2)))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (+.f64 1 (pow.f64 re 3))) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) -1) (+.f64 1 (-.f64 (pow.f64 re 2) re))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 1 (-.f64 (pow.f64 re 2) re))) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(/.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (/.f64 (+.f64 1 (-.f64 (pow.f64 re 2) re)) (fma.f64 (pow.f64 im 4) 1/4 -1))) (fma.f64 -1/2 (pow.f64 im 2) -1))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 (pow.f64 re 2) (-.f64 1 re))) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (-.f64 1 (pow.f64 re 2))) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) -1) (-.f64 1 re)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (*.f64 (-.f64 1 re) (fma.f64 -1/2 (pow.f64 im 2) -1)) (-.f64 1 (pow.f64 re 2))))
(*.f64 (/.f64 (-.f64 1 (pow.f64 re 2)) (*.f64 (-.f64 1 re) (fma.f64 -1/2 (pow.f64 im 2) -1))) (fma.f64 (pow.f64 im 4) 1/4 -1))
(*.f64 (/.f64 (-.f64 1 (pow.f64 re 2)) (fma.f64 -1/2 (pow.f64 im 2) -1)) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (-.f64 1 re)))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (*.f64 (+.f64 1 (-.f64 (pow.f64 re 2) re)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (fma.f64 (pow.f64 im 4) 1/4 (-.f64 1 (*.f64 -1/2 (pow.f64 im 2))))) (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 1 (-.f64 (pow.f64 re 2) re))))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (+.f64 (fma.f64 (pow.f64 im 4) 1/4 1) (*.f64 (pow.f64 im 2) 1/2))) (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 1 (-.f64 (pow.f64 re 2) re))))
(*.f64 (/.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 (pow.f64 re 2) (-.f64 1 re))) (+.f64 (*.f64 (pow.f64 im 2) 1/2) (fma.f64 (pow.f64 im 4) 1/4 1))) (fma.f64 (pow.f64 im 6) -1/8 1))
(*.f64 (/.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 (pow.f64 re 2) (-.f64 1 re))) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 2) 1/2)))) (fma.f64 (pow.f64 im 6) -1/8 1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (+.f64 1 (-.f64 (pow.f64 re 2) re)) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 1 (-.f64 (pow.f64 re 2) re))) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(/.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (/.f64 (+.f64 1 (-.f64 (pow.f64 re 2) re)) (fma.f64 (pow.f64 im 4) 1/4 -1))) (fma.f64 -1/2 (pow.f64 im 2) -1))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 (pow.f64 re 2) (-.f64 1 re))) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(/.f64 (*.f64 (-.f64 1 (pow.f64 re 2)) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (*.f64 (-.f64 1 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (fma.f64 (pow.f64 im 4) 1/4 (-.f64 1 (*.f64 -1/2 (pow.f64 im 2))))) (/.f64 (-.f64 1 (pow.f64 re 2)) (-.f64 1 re)))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (+.f64 (fma.f64 (pow.f64 im 4) 1/4 1) (*.f64 (pow.f64 im 2) 1/2))) (/.f64 (-.f64 1 (pow.f64 re 2)) (-.f64 1 re)))
(/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (*.f64 (/.f64 (-.f64 1 re) (-.f64 1 (pow.f64 re 2))) (+.f64 (*.f64 (pow.f64 im 2) 1/2) (fma.f64 (pow.f64 im 4) 1/4 1))))
(/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (*.f64 (/.f64 (-.f64 1 re) (-.f64 1 (pow.f64 re 2))) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 2) 1/2)))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 re 2)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (-.f64 1 re) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (*.f64 (-.f64 1 re) (fma.f64 -1/2 (pow.f64 im 2) -1)) (-.f64 1 (pow.f64 re 2))))
(*.f64 (/.f64 (-.f64 1 (pow.f64 re 2)) (*.f64 (-.f64 1 re) (fma.f64 -1/2 (pow.f64 im 2) -1))) (fma.f64 (pow.f64 im 4) 1/4 -1))
(*.f64 (/.f64 (-.f64 1 (pow.f64 re 2)) (fma.f64 -1/2 (pow.f64 im 2) -1)) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (-.f64 1 re)))
(/.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3) (pow.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 3)) (+.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (-.f64 (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))))))
(/.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3) (pow.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 3)) (+.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (-.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (fma.f64 -1/2 (pow.f64 im 2) 1)))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3)) (-.f64 (*.f64 (+.f64 1 (pow.f64 re 2)) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2)) (*.f64 re (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2))))
(/.f64 (+.f64 1 (pow.f64 re 3)) (/.f64 (*.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (+.f64 (pow.f64 re 2) (-.f64 1 re))) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3)))
(/.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))) (-.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))))
(/.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (*.f64 (pow.f64 re 2) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2))) (-.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))))
(/.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (*.f64 (pow.f64 re 2) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2))) (*.f64 (-.f64 1 re) (fma.f64 -1/2 (pow.f64 im 2) 1)))
(/.f64 (*.f64 (-.f64 1 (pow.f64 re 2)) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2)) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (-.f64 1 re)))
(/.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 1 (pow.f64 re 3))) (+.f64 1 (-.f64 (pow.f64 re 2) re)))
(/.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (/.f64 (+.f64 1 (-.f64 (pow.f64 re 2) re)) (+.f64 1 (pow.f64 re 3))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 1 (-.f64 (pow.f64 re 2) re))) (fma.f64 -1/2 (pow.f64 im 2) 1))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 (pow.f64 re 2) (-.f64 1 re))) (fma.f64 -1/2 (pow.f64 im 2) 1))
(/.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (-.f64 1 (pow.f64 re 2))) (-.f64 1 re))
(/.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (/.f64 (-.f64 1 re) (-.f64 1 (pow.f64 re 2))))
(*.f64 (/.f64 (-.f64 1 (pow.f64 re 2)) (-.f64 1 re)) (fma.f64 -1/2 (pow.f64 im 2) 1))
(/.f64 (*.f64 (+.f64 re 1) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))))
(/.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))) (+.f64 re 1)))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (+.f64 (fma.f64 (pow.f64 im 4) 1/4 1) (*.f64 (pow.f64 im 2) 1/2))) (+.f64 re 1))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (+.f64 (*.f64 (pow.f64 im 2) 1/2) (fma.f64 (pow.f64 im 4) 1/4 1))) (+.f64 re 1))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 2) 1/2)))) (+.f64 re 1))
(/.f64 (*.f64 (+.f64 re 1) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (fma.f64 -1/2 (pow.f64 im 2) -1))
(/.f64 (+.f64 re 1) (/.f64 (fma.f64 -1/2 (pow.f64 im 2) -1) (fma.f64 (pow.f64 im 4) 1/4 -1)))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 -1/2 (pow.f64 im 2) -1)) (+.f64 re 1))
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (+.f64 re 1)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))))
(/.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))) (+.f64 re 1)))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (+.f64 (fma.f64 (pow.f64 im 4) 1/4 1) (*.f64 (pow.f64 im 2) 1/2))) (+.f64 re 1))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (+.f64 (*.f64 (pow.f64 im 2) 1/2) (fma.f64 (pow.f64 im 4) 1/4 1))) (+.f64 re 1))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 2) 1/2)))) (+.f64 re 1))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (+.f64 re 1)) (fma.f64 -1/2 (pow.f64 im 2) -1))
(/.f64 (+.f64 re 1) (/.f64 (fma.f64 -1/2 (pow.f64 im 2) -1) (fma.f64 (pow.f64 im 4) 1/4 -1)))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 -1/2 (pow.f64 im 2) -1)) (+.f64 re 1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (fma.f64 -1/2 (pow.f64 im 2) 1)) (+.f64 1 (-.f64 (pow.f64 re 2) re)))
(/.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (/.f64 (+.f64 1 (-.f64 (pow.f64 re 2) re)) (+.f64 1 (pow.f64 re 3))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 1 (-.f64 (pow.f64 re 2) re))) (fma.f64 -1/2 (pow.f64 im 2) 1))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 (pow.f64 re 2) (-.f64 1 re))) (fma.f64 -1/2 (pow.f64 im 2) 1))
(/.f64 (*.f64 (-.f64 1 (pow.f64 re 2)) (fma.f64 -1/2 (pow.f64 im 2) 1)) (-.f64 1 re))
(/.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (/.f64 (-.f64 1 re) (-.f64 1 (pow.f64 re 2))))
(*.f64 (/.f64 (-.f64 1 (pow.f64 re 2)) (-.f64 1 re)) (fma.f64 -1/2 (pow.f64 im 2) 1))
(pow.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)) 1)
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))) 3)
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(pow.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)) 3) 1/3)
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))) 2)
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)) 2))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(log.f64 (pow.f64 (exp.f64 (+.f64 re 1)) (fma.f64 -1/2 (pow.f64 im 2) 1)))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1)) 3))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3) (pow.f64 (+.f64 re 1) 3)))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 re 1) 3) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3)))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(exp.f64 (+.f64 (log1p.f64 re) (log1p.f64 (*.f64 -1/2 (pow.f64 im 2)))))
(exp.f64 (*.f64 (+.f64 (log1p.f64 re) (log1p.f64 (*.f64 -1/2 (pow.f64 im 2)))) 1))
(exp.f64 (+.f64 (log1p.f64 re) (log1p.f64 (*.f64 -1/2 (pow.f64 im 2)))))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(fma.f64 1 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(fma.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 1 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (pow.f64 im 2) 1)) 2) (cbrt.f64 (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(fma.f64 (hypot.f64 1 (*.f64 im (sqrt.f64 -1/2))) (hypot.f64 1 (*.f64 im (sqrt.f64 -1/2))) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(-.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 1)
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) -1)
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) 0)
(*.f64 -1/2 (pow.f64 im 2))
(pow.f64 (*.f64 -1/2 (pow.f64 im 2)) 1)
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) -1)
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) 0)
(*.f64 -1/2 (pow.f64 im 2))
(pow.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) 3)
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) -1)
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) 0)
(*.f64 -1/2 (pow.f64 im 2))
(pow.f64 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8) 1/3)
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))
(cbrt.f64 (*.f64 (pow.f64 im 6) -1/8))
(pow.f64 (*.f64 im (sqrt.f64 -1/2)) 2)
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) -1)
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) 0)
(*.f64 -1/2 (pow.f64 im 2))
(sqrt.f64 (*.f64 (pow.f64 im 4) 1/4))
(log.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) -1)
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) 0)
(*.f64 -1/2 (pow.f64 im 2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (pow.f64 im 2)))))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) -1)
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) 0)
(*.f64 -1/2 (pow.f64 im 2))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))
(cbrt.f64 (*.f64 (pow.f64 im 6) -1/8))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) -1)
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) 0)
(*.f64 -1/2 (pow.f64 im 2))
(exp.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) -1)
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) 0)
(*.f64 -1/2 (pow.f64 im 2))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))) 1))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) -1)
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) 0)
(*.f64 -1/2 (pow.f64 im 2))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) -1)
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) 0)
(*.f64 -1/2 (pow.f64 im 2))

eval61.0ms (1.6%)

Compiler

Compiled 2370 to 1901 computations (19.8% saved)

prune26.0ms (0.7%)

Pruning

11 alts after pruning (3 fresh and 8 done)

PrunedKeptTotal
New1303133
Fresh000
Picked123
Done066
Total13111142
Accuracy
100.0%
Counts
142 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
23.7%
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
24.9%
(+.f64 1 re)
50.4%
(*.f64 (+.f64 re 1) (cos.f64 im))
10.6%
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
4.1%
(*.f64 (cos.f64 im) re)
99.5%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
73.4%
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
68.0%
(exp.f64 re)
49.4%
(cos.f64 im)
3.6%
re
23.7%
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
24.9%
(+.f64 1 re)
50.4%
(*.f64 (+.f64 re 1) (cos.f64 im))
10.6%
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
4.1%
(*.f64 (cos.f64 im) re)
99.5%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
73.4%
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
68.0%
(exp.f64 re)
49.4%
(cos.f64 im)
3.6%
re
Compiler

Compiled 148 to 114 computations (23% saved)

localize55.0ms (1.5%)

Localize:

Found 3 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 -1/2 (pow.f64 im 2))
100.0%
(*.f64 -1/2 (pow.f64 im 2))
94.5%
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1))
Compiler

Compiled 47 to 36 computations (23.4% saved)

series4.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

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

rewrite63.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
1038×unpow-prod-down
718×log-prod
690×prod-diff
650×log1p-expm1-u
650×expm1-log1p-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01431
115031
2189431
Stop Event
node limit
Counts
1 → 65
Calls
Call 1
Inputs
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1))
Outputs
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 0 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 1) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))))) 1)
(/.f64 (+.f64 (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 6) -1/8)) (*.f64 (pow.f64 im 6) -1/8)) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 2) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2))))))
(/.f64 (-.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 2) (*.f64 (pow.f64 im 4) 1/4)) (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2))))
(/.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 1 (pow.f64 re 3))) (-.f64 (fma.f64 re re 1) re))
(/.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (fma.f64 re re -1)) (+.f64 re -1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (*.f64 -1/2 (pow.f64 im 2))) (-.f64 (fma.f64 re re 1) re))
(/.f64 (*.f64 (fma.f64 re re -1) (*.f64 -1/2 (pow.f64 im 2))) (+.f64 re -1))
(pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))) 1)
(pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)))) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 (+.f64 re 1) -1/2) 1/2) im) 4) 1/2)
(pow.f64 (*.f64 (*.f64 (pow.f64 im 6) -1/8) (pow.f64 (+.f64 re 1) 3)) 1/3)
(pow.f64 (*.f64 (pow.f64 (*.f64 (+.f64 re 1) -1/2) 1/2) im) 2)
(sqrt.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 (+.f64 re 1) -1/2) 1/2) im) 4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))))))
(log.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (exp.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (pow.f64 im 2)))) (exp.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))))
(log.f64 (*.f64 (exp.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (+.f64 1 (expm1.f64 (*.f64 -1/2 (pow.f64 im 2))))))
(cbrt.f64 (*.f64 (*.f64 (pow.f64 im 6) -1/8) (pow.f64 (+.f64 re 1) 3)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)))))
(exp.f64 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2)))))
(exp.f64 (*.f64 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2)))) 1))
(exp.f64 (*.f64 (*.f64 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2)))) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2))))) 3))
(exp.f64 (*.f64 (*.f64 3 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2))))) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (*.f64 (+.f64 re 1) -1/2) 1/2) im)) 2))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)))))
(fma.f64 -1/2 (pow.f64 im 2) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 -1/2 (*.f64 (pow.f64 im 2) re) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 im (*.f64 im -1/2) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (pow.f64 im 2) -1/2 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (pow.f64 im 2) (*.f64 -1/2 re) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 -1/2 (pow.f64 im 2)) re (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 -1/2 (pow.f64 im 2)) 1 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 re (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 1 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) re) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) 1) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (pow.f64 (cbrt.f64 im) 4) (*.f64 (cbrt.f64 (pow.f64 im 2)) -1/2) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 im (sqrt.f64 -1/2)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (*.f64 im (sqrt.f64 -1/2)) re) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (*.f64 im (sqrt.f64 -1/2)) 1) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 1 (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))) (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (sqrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (sqrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 -1/2))) (*.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 -1/2))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 re (pow.f64 im 2)) -1/2 (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (pow.f64 (*.f64 (*.f64 im (sqrt.f64 -1/2)) (cbrt.f64 re)) 2) (cbrt.f64 re) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (sqrt.f64 re)) (sqrt.f64 re) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 -1/2 im) im (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (*.f64 -1/2 (pow.f64 (cbrt.f64 im) 4)) (cbrt.f64 (pow.f64 im 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (*.f64 re -1/2) (pow.f64 im 2) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 re (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4))) (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 re (*.f64 im (sqrt.f64 -1/2))) (*.f64 im (sqrt.f64 -1/2)) (*.f64 -1/2 (pow.f64 im 2)))

simplify74.0ms (2%)

Algorithm
egg-herbie
Rules
1068×distribute-lft-in
982×distribute-rgt-in
864×fma-def
722×unswap-sqr
600×cancel-sign-sub-inv
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01883414
14953370
213442989
339082949
Stop Event
node limit
Counts
89 → 97
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 -1/2 (pow.f64 im 2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 0 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 1) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))))) 1)
(/.f64 (+.f64 (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 6) -1/8)) (*.f64 (pow.f64 im 6) -1/8)) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 2) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2))))))
(/.f64 (-.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 2) (*.f64 (pow.f64 im 4) 1/4)) (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2))))
(/.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 1 (pow.f64 re 3))) (-.f64 (fma.f64 re re 1) re))
(/.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (fma.f64 re re -1)) (+.f64 re -1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (*.f64 -1/2 (pow.f64 im 2))) (-.f64 (fma.f64 re re 1) re))
(/.f64 (*.f64 (fma.f64 re re -1) (*.f64 -1/2 (pow.f64 im 2))) (+.f64 re -1))
(pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))) 1)
(pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)))) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 (+.f64 re 1) -1/2) 1/2) im) 4) 1/2)
(pow.f64 (*.f64 (*.f64 (pow.f64 im 6) -1/8) (pow.f64 (+.f64 re 1) 3)) 1/3)
(pow.f64 (*.f64 (pow.f64 (*.f64 (+.f64 re 1) -1/2) 1/2) im) 2)
(sqrt.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 (+.f64 re 1) -1/2) 1/2) im) 4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))))))
(log.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (exp.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (pow.f64 im 2)))) (exp.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))))
(log.f64 (*.f64 (exp.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (+.f64 1 (expm1.f64 (*.f64 -1/2 (pow.f64 im 2))))))
(cbrt.f64 (*.f64 (*.f64 (pow.f64 im 6) -1/8) (pow.f64 (+.f64 re 1) 3)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)))))
(exp.f64 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2)))))
(exp.f64 (*.f64 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2)))) 1))
(exp.f64 (*.f64 (*.f64 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2)))) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2))))) 3))
(exp.f64 (*.f64 (*.f64 3 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2))))) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (*.f64 (+.f64 re 1) -1/2) 1/2) im)) 2))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)))))
(fma.f64 -1/2 (pow.f64 im 2) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 -1/2 (*.f64 (pow.f64 im 2) re) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 im (*.f64 im -1/2) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (pow.f64 im 2) -1/2 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (pow.f64 im 2) (*.f64 -1/2 re) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 -1/2 (pow.f64 im 2)) re (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 -1/2 (pow.f64 im 2)) 1 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 re (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 1 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) re) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) 1) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (pow.f64 (cbrt.f64 im) 4) (*.f64 (cbrt.f64 (pow.f64 im 2)) -1/2) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 im (sqrt.f64 -1/2)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (*.f64 im (sqrt.f64 -1/2)) re) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (*.f64 im (sqrt.f64 -1/2)) 1) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 1 (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))) (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (sqrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (sqrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 -1/2))) (*.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 -1/2))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 re (pow.f64 im 2)) -1/2 (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (pow.f64 (*.f64 (*.f64 im (sqrt.f64 -1/2)) (cbrt.f64 re)) 2) (cbrt.f64 re) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (sqrt.f64 re)) (sqrt.f64 re) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 -1/2 im) im (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (*.f64 -1/2 (pow.f64 (cbrt.f64 im) 4)) (cbrt.f64 (pow.f64 im 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (*.f64 re -1/2) (pow.f64 im 2) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 re (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4))) (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 re (*.f64 im (sqrt.f64 -1/2))) (*.f64 im (sqrt.f64 -1/2)) (*.f64 -1/2 (pow.f64 im 2)))
Outputs
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (pow.f64 im 2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(+.f64 0 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(+.f64 (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 1) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1)))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 1 re))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 1 re))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 1 re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 1 re))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 1 re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 1 re)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1)))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))))) 1)
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(/.f64 (+.f64 (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 6) -1/8)) (*.f64 (pow.f64 im 6) -1/8)) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 2) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2))))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (*.f64 (pow.f64 im 6) -1/8)) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 2) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 im 2) re) (*.f64 -1/2 (pow.f64 im 2)))))))
(/.f64 (*.f64 (*.f64 (pow.f64 im 6) -1/8) (+.f64 1 (pow.f64 re 3))) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 2) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 2) (*.f64 (*.f64 (pow.f64 im 2) re) 1/4)))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 re (*.f64 (pow.f64 im 4) 1/4)) (-.f64 1 re)))) (*.f64 (pow.f64 im 6) -1/8))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 re (*.f64 (pow.f64 im 4) -1/4)) (-.f64 1 re)))) (*.f64 (pow.f64 im 6) -1/8))
(/.f64 (-.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 2) (*.f64 (pow.f64 im 4) 1/4)) (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 2) (*.f64 (pow.f64 im 4) 1/4)) (*.f64 -1/2 (-.f64 (*.f64 (pow.f64 im 2) re) (pow.f64 im 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 2) (*.f64 (pow.f64 im 4) -1/4)) (*.f64 -1/2 (-.f64 (*.f64 (pow.f64 im 2) re) (pow.f64 im 2))))
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re -1))))
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 2)) (*.f64 (pow.f64 im 2) (fma.f64 -1/2 re 1/2)))
(/.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 1 (pow.f64 re 3))) (-.f64 (fma.f64 re re 1) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) (/.f64 (-.f64 (fma.f64 re re 1) re) (+.f64 1 (pow.f64 re 3))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (-.f64 (fma.f64 re re 1) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) (/.f64 (+.f64 1 (pow.f64 re 3)) (-.f64 (fma.f64 re re 1) re)))
(/.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (fma.f64 re re -1)) (+.f64 re -1))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) (/.f64 (+.f64 re -1) (fma.f64 re re -1)))
(*.f64 (/.f64 (fma.f64 re re -1) (+.f64 re -1)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) (/.f64 (fma.f64 re re -1) (+.f64 re -1)))
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) (/.f64 (+.f64 1 re) 1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (*.f64 -1/2 (pow.f64 im 2))) (-.f64 (fma.f64 re re 1) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) (/.f64 (-.f64 (fma.f64 re re 1) re) (+.f64 1 (pow.f64 re 3))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (-.f64 (fma.f64 re re 1) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) (/.f64 (+.f64 1 (pow.f64 re 3)) (-.f64 (fma.f64 re re 1) re)))
(/.f64 (*.f64 (fma.f64 re re -1) (*.f64 -1/2 (pow.f64 im 2))) (+.f64 re -1))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) (/.f64 (+.f64 re -1) (fma.f64 re re -1)))
(*.f64 (/.f64 (fma.f64 re re -1) (+.f64 re -1)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) (/.f64 (fma.f64 re re -1) (+.f64 re -1)))
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) (/.f64 (+.f64 1 re) 1))
(pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))) 1)
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)))) 3)
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(pow.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 (+.f64 re 1) -1/2) 1/2) im) 4) 1/2)
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(pow.f64 (*.f64 (*.f64 (pow.f64 im 6) -1/8) (pow.f64 (+.f64 re 1) 3)) 1/3)
(cbrt.f64 (*.f64 (pow.f64 im 6) (*.f64 -1/8 (pow.f64 (+.f64 1 re) 3))))
(cbrt.f64 (*.f64 (*.f64 (pow.f64 im 6) -1/8) (pow.f64 (+.f64 1 re) 3)))
(pow.f64 (*.f64 (pow.f64 (*.f64 (+.f64 re 1) -1/2) 1/2) im) 2)
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(sqrt.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 (+.f64 re 1) -1/2) 1/2) im) 4))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (+.f64 re 1)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(log.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (pow.f64 im 2)) (exp.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (pow.f64 im 2)))) (exp.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(log.f64 (*.f64 (exp.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (+.f64 1 (expm1.f64 (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(cbrt.f64 (*.f64 (*.f64 (pow.f64 im 6) -1/8) (pow.f64 (+.f64 re 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 im 6) (*.f64 -1/8 (pow.f64 (+.f64 1 re) 3))))
(cbrt.f64 (*.f64 (*.f64 (pow.f64 im 6) -1/8) (pow.f64 (+.f64 1 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(exp.f64 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2)))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(exp.f64 (*.f64 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2)))) 1))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(exp.f64 (*.f64 (*.f64 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2)))) 1) 1))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2))))) 3))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(exp.f64 (*.f64 (*.f64 3 (+.f64 (log1p.f64 re) (log.f64 (*.f64 -1/2 (pow.f64 im 2))))) 1/3))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (*.f64 (+.f64 re 1) -1/2) 1/2) im)) 2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 -1/2 (pow.f64 im 2) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 -1/2 (*.f64 (pow.f64 im 2) re) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 im (*.f64 im -1/2) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (pow.f64 im 2) -1/2 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (pow.f64 im 2) (*.f64 -1/2 re) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (*.f64 -1/2 (pow.f64 im 2)) re (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (*.f64 -1/2 (pow.f64 im 2)) 1 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 re (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 1 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 -1/2 (*.f64 (pow.f64 im 2) re) (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 -1/2 (*.f64 (pow.f64 im 2) re) (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) re) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 re (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2)))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 -1/2 (pow.f64 im 2) (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 re (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))))))
(fma.f64 -1/2 (pow.f64 im 2) (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (*.f64 re (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) 1) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 -1/2 (*.f64 (pow.f64 im 2) re) (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4))))
(fma.f64 (pow.f64 (cbrt.f64 im) 4) (*.f64 (cbrt.f64 (pow.f64 im 2)) -1/2) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (pow.f64 (cbrt.f64 im) 4) (*.f64 -1/2 (cbrt.f64 (pow.f64 im 2))) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (+.f64 (*.f64 (pow.f64 im 2) re) (*.f64 (pow.f64 (cbrt.f64 im) 4) (cbrt.f64 (pow.f64 im 2)))))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 im (sqrt.f64 -1/2)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (*.f64 im (sqrt.f64 -1/2)) re) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (*.f64 im (sqrt.f64 -1/2)) 1) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 1 (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))) (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (sqrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (sqrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (*.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 -1/2))) (*.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 -1/2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (*.f64 re (pow.f64 im 2)) -1/2 (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (pow.f64 (*.f64 (*.f64 im (sqrt.f64 -1/2)) (cbrt.f64 re)) 2) (cbrt.f64 re) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (sqrt.f64 re)) (sqrt.f64 re) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (*.f64 -1/2 im) im (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (*.f64 -1/2 (pow.f64 (cbrt.f64 im) 4)) (cbrt.f64 (pow.f64 im 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 (pow.f64 (cbrt.f64 im) 4) (*.f64 -1/2 (cbrt.f64 (pow.f64 im 2))) (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (+.f64 (*.f64 (pow.f64 im 2) re) (*.f64 (pow.f64 (cbrt.f64 im) 4) (cbrt.f64 (pow.f64 im 2)))))
(fma.f64 (*.f64 re -1/2) (pow.f64 im 2) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))
(fma.f64 (*.f64 re (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4))) (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 re (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2)))) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 -1/2 (pow.f64 im 2) (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 re (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))))))
(fma.f64 -1/2 (pow.f64 im 2) (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 im 2))) (*.f64 re (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)))))
(fma.f64 (*.f64 re (*.f64 im (sqrt.f64 -1/2))) (*.f64 im (sqrt.f64 -1/2)) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 1 re)))
(*.f64 (pow.f64 im 2) (fma.f64 -1/2 re -1/2))

eval62.0ms (1.7%)

Compiler

Compiled 2359 to 1892 computations (19.8% saved)

prune23.0ms (0.6%)

Pruning

11 alts after pruning (3 fresh and 8 done)

PrunedKeptTotal
New1632165
Fresh011
Picked202
Done088
Total16511176
Accuracy
100.0%
Counts
176 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
24.9%
(+.f64 1 re)
50.4%
(*.f64 (+.f64 re 1) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
4.1%
(*.f64 (cos.f64 im) re)
9.1%
(*.f64 -1/2 (pow.f64 im 2))
10.7%
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
99.5%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
73.4%
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
68.0%
(exp.f64 re)
49.4%
(cos.f64 im)
3.6%
re
Compiler

Compiled 147 to 100 computations (32% saved)

regimes34.0ms (0.9%)

Counts
14 → 1
Calls
Call 1
Inputs
re
(+.f64 1 re)
(cos.f64 im)
(exp.f64 re)
(*.f64 (cos.f64 im) re)
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 (+.f64 re 1) (cos.f64 im))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (+.f64 1 re))
(*.f64 (exp.f64 re) (cos.f64 im))
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))
Calls

5 calls:

8.0ms
im
7.0ms
re
7.0ms
(cos.f64 im)
5.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
3.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
100.0%1re
100.0%1im
100.0%1(*.f64 (exp.f64 re) (cos.f64 im))
100.0%1(exp.f64 re)
100.0%1(cos.f64 im)
Compiler

Compiled 98 to 62 computations (36.7% saved)

regimes172.0ms (4.6%)

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

4 calls:

124.0ms
im
21.0ms
(cos.f64 im)
18.0ms
re
6.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
92.9%3re
78.8%6im
92.9%3(exp.f64 re)
79.9%4(cos.f64 im)
Compiler

Compiled 73 to 51 computations (30.1% saved)

regimes21.0ms (0.6%)

Counts
6 → 3
Calls
Call 1
Inputs
re
(+.f64 1 re)
(cos.f64 im)
(exp.f64 re)
(*.f64 (cos.f64 im) re)
(*.f64 -1/2 (pow.f64 im 2))
Outputs
(exp.f64 re)
(cos.f64 im)
(exp.f64 re)
Calls

2 calls:

14.0ms
re
6.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
92.8%3re
92.8%3(exp.f64 re)
Compiler

Compiled 26 to 16 computations (38.5% saved)

regimes12.0ms (0.3%)

Counts
3 → 1
Calls
Call 1
Inputs
re
(+.f64 1 re)
(cos.f64 im)
Outputs
(cos.f64 im)
Calls

3 calls:

4.0ms
im
3.0ms
re
3.0ms
(cos.f64 im)
Results
AccuracySegmentsBranch
49.4%1im
49.4%1(cos.f64 im)
49.4%1re
Compiler

Compiled 18 to 12 computations (33.3% saved)

regimes7.0ms (0.2%)

Counts
2 → 1
Calls
Call 1
Inputs
re
(+.f64 1 re)
Outputs
(+.f64 1 re)
Calls

2 calls:

3.0ms
re
3.0ms
im
Results
AccuracySegmentsBranch
24.9%1re
24.9%1im
Compiler

Compiled 12 to 8 computations (33.3% saved)

regimes6.0ms (0.2%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
re
Outputs
re
Calls

2 calls:

3.0ms
im
3.0ms
re
Results
AccuracySegmentsBranch
3.6%1re
3.6%1im
Compiler

Compiled 9 to 6 computations (33.3% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
612640.0721520376
+inf
0.0ms
0.0
0.9998808855275049
Compiler

Compiled 12 to 9 computations (25% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0012819944934126
1.00179747478801
0.0ms
0.9999999999999999
1.0
Compiler

Compiled 12 to 9 computations (25% saved)

simplify4.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
029168
140168
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (cos.f64 im))
(if (<=.f64 (exp.f64 re) 0) (exp.f64 re) (if (<=.f64 (exp.f64 re) 1000000) (*.f64 (+.f64 re 1) (cos.f64 im)) (exp.f64 re)))
(if (<=.f64 (exp.f64 re) 1) (exp.f64 re) (if (<=.f64 (exp.f64 re) 140948594587861/140737488355328) (cos.f64 im) (exp.f64 re)))
(cos.f64 im)
(+.f64 1 re)
re
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))
(if (<=.f64 (exp.f64 re) 0) (exp.f64 re) (if (<=.f64 (exp.f64 re) 1000000) (*.f64 (+.f64 re 1) (cos.f64 im)) (exp.f64 re)))
(if (or (<=.f64 (exp.f64 re) 0) (not (<=.f64 (exp.f64 re) 1000000))) (exp.f64 re) (*.f64 (cos.f64 im) (+.f64 re 1)))
(if (<=.f64 (exp.f64 re) 1) (exp.f64 re) (if (<=.f64 (exp.f64 re) 140948594587861/140737488355328) (cos.f64 im) (exp.f64 re)))
(if (or (<=.f64 (exp.f64 re) 1) (not (<=.f64 (exp.f64 re) 140948594587861/140737488355328))) (exp.f64 re) (cos.f64 im))
(cos.f64 im)
(+.f64 1 re)
(+.f64 re 1)
re
Compiler

Compiled 57 to 39 computations (31.6% saved)

soundness180.0ms (4.8%)

Rules
1548×prod-exp
1158×associate-+l+
1104×associate-+r+
1054×distribute-lft-in
1032×distribute-rgt-in
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01011320
12651233
27891176
337861165
462361165
03276202
18226017
227855857
Stop Event
node limit
node limit
Compiler

Compiled 25 to 13 computations (48% saved)

end0.0ms (0%)

preprocess46.0ms (1.2%)

Remove

(abs im)

Compiler

Compiled 122 to 68 computations (44.3% saved)

Profiling

Loading profile data...