math.exp on complex, real part

Time bar (total: 4.4s)

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.9s (42.7%)

Results
692.0ms4627×body256valid
524.0ms1072×body1024valid
392.0ms1284×body256infinite
140.0ms522×body1024infinite
90.0ms507×body512valid
43.0ms240×body512infinite
2.0msbody2048valid
0.0msbody2048infinite
Bogosity

preprocess211.0ms (4.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)

localize139.0ms (3.1%)

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

rewrite118.0ms (2.7%)

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

simplify63.0ms (1.4%)

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

eval14.0ms (0.3%)

Compiler

Compiled 715 to 375 computations (47.6% saved)

prune14.0ms (0.3%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New51455
Fresh000
Picked011
Done000
Total51556
Accuracy
100.0%
Counts
56 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
53.7%
(*.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))))
65.1%
(exp.f64 re)
52.7%
(cos.f64 im)
53.7%
(*.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))))
65.1%
(exp.f64 re)
52.7%
(cos.f64 im)
Compiler

Compiled 64 to 48 computations (25% saved)

localize194.0ms (4.4%)

Localize:

Found 4 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 (+.f64 re 1) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
99.5%
(expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))
99.4%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
Compiler

Compiled 47 to 14 computations (70.2% saved)

series4.0ms (0.1%)

Counts
3 → 72
Calls

18 calls:

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

rewrite74.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
814×log-prod
750×log1p-expm1-u
749×expm1-log1p-u
604×pow-prod-down
410×pow-prod-up
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01669
117469
2204069
Stop Event
node limit
Counts
3 → 111
Calls
Call 1
Inputs
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))
(*.f64 (+.f64 re 1) (cos.f64 im))
Outputs
(+.f64 0 (*.f64 (exp.f64 re) (cos.f64 im)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1)
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2) (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))))
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2))) (log.f64 (-.f64 1 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))))
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(*.f64 (*.f64 (exp.f64 re) (cos.f64 im)) (log.f64 (exp.f64 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)) 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)
(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))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
(exp.f64 (*.f64 (+.f64 re (log.f64 (cos.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (+.f64 re (log.f64 (cos.f64 im))) 1) 1))
(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))
(+.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) -1)
(+.f64 0 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))) (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))))) (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))) (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))))
(-.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 1)
(-.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) (log.f64 (exp.f64 1)))
(*.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 1)
(*.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (log.f64 (exp.f64 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 (pow.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 2) (+.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)) 2) 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))) 2) 1/2)
(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))
(exp.f64 (*.f64 (*.f64 (log.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))) 2))
(log1p.f64 (expm1.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(fma.f64 1 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) -1)
(fma.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) -1)
(fma.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) -1)
(+.f64 (cos.f64 im) (*.f64 (cos.f64 im) re))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 0 (*.f64 (cos.f64 im) (+.f64 re 1)))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (*.f64 re (cos.f64 im)) (cos.f64 im))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 im) (+.f64 re 1)))) 1)
(/.f64 (*.f64 (cos.f64 im) (+.f64 1 (pow.f64 re 3))) (-.f64 (fma.f64 re re 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)) (-.f64 (fma.f64 re re 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)) 2) 1/2)
(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))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 im) (+.f64 re 1))))
(exp.f64 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im))))
(exp.f64 (*.f64 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im))) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im)))) 3))
(exp.f64 (*.f64 (*.f64 3 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im)))) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im)))) 2))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 im) (+.f64 re 1))))
(fma.f64 re (cos.f64 im) (cos.f64 im))
(fma.f64 (cos.f64 im) re (cos.f64 im))
(fma.f64 (cos.f64 im) 1 (*.f64 (cos.f64 im) re))
(fma.f64 (cos.f64 im) 1 (*.f64 re (cos.f64 im)))
(fma.f64 1 (cos.f64 im) (*.f64 (cos.f64 im) re))
(fma.f64 1 (cos.f64 im) (*.f64 re (cos.f64 im)))
(fma.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cos.f64 im) re))
(fma.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 re (cos.f64 im)))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (cbrt.f64 (cos.f64 im)) (*.f64 (cos.f64 im) re))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (cbrt.f64 (cos.f64 im)) (*.f64 re (cos.f64 im)))
(fma.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)) (*.f64 (cos.f64 im) re))
(fma.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)) (*.f64 re (cos.f64 im)))

simplify96.0ms (2.2%)

Algorithm
egg-herbie
Rules
1176×associate-+l+
1126×associate-+r+
1100×unswap-sqr
516×fma-neg
400×distribute-lft-out
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03535819
18995601
229095392
Stop Event
node limit
Counts
183 → 202
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 (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 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 0 (*.f64 (exp.f64 re) (cos.f64 im)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1)
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2) (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))))
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2))) (log.f64 (-.f64 1 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))))
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 1)
(*.f64 (*.f64 (exp.f64 re) (cos.f64 im)) (log.f64 (exp.f64 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)) 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)
(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))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(exp.f64 (+.f64 re (log.f64 (cos.f64 im))))
(exp.f64 (*.f64 (+.f64 re (log.f64 (cos.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (+.f64 re (log.f64 (cos.f64 im))) 1) 1))
(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))
(+.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) -1)
(+.f64 0 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))) (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))))) (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))) (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))))
(-.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 1)
(-.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) (log.f64 (exp.f64 1)))
(*.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 1)
(*.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (log.f64 (exp.f64 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 (pow.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 2) (+.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)) 2) 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))) 2) 1/2)
(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))
(exp.f64 (*.f64 (*.f64 (log.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))) 2))
(log1p.f64 (expm1.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))
(fma.f64 1 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) -1)
(fma.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) -1)
(fma.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) -1)
(+.f64 (cos.f64 im) (*.f64 (cos.f64 im) re))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(+.f64 0 (*.f64 (cos.f64 im) (+.f64 re 1)))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (*.f64 re (cos.f64 im)) (cos.f64 im))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 im) (+.f64 re 1)))) 1)
(/.f64 (*.f64 (cos.f64 im) (+.f64 1 (pow.f64 re 3))) (-.f64 (fma.f64 re re 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)) (-.f64 (fma.f64 re re 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)) 2) 1/2)
(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))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 im) (+.f64 re 1))))
(exp.f64 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im))))
(exp.f64 (*.f64 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im))) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im)))) 3))
(exp.f64 (*.f64 (*.f64 3 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im)))) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im)))) 2))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 im) (+.f64 re 1))))
(fma.f64 re (cos.f64 im) (cos.f64 im))
(fma.f64 (cos.f64 im) re (cos.f64 im))
(fma.f64 (cos.f64 im) 1 (*.f64 (cos.f64 im) re))
(fma.f64 (cos.f64 im) 1 (*.f64 re (cos.f64 im)))
(fma.f64 1 (cos.f64 im) (*.f64 (cos.f64 im) re))
(fma.f64 1 (cos.f64 im) (*.f64 re (cos.f64 im)))
(fma.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cos.f64 im) re))
(fma.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 re (cos.f64 im)))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (cbrt.f64 (cos.f64 im)) (*.f64 (cos.f64 im) re))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (cbrt.f64 (cos.f64 im)) (*.f64 re (cos.f64 im)))
(fma.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)) (*.f64 (cos.f64 im) re))
(fma.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)) (*.f64 re (cos.f64 im)))
Outputs
(cos.f64 im)
(+.f64 (cos.f64 im) (*.f64 re (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 1 (+.f64 re (*.f64 1/2 (pow.f64 re 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 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 1/6 re) 1/2)) (+.f64 re 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) (+.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 1/24 (pow.f64 im 4)))))
(*.f64 (exp.f64 re) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(+.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/24 (pow.f64 im 4)) (*.f64 -1/720 (pow.f64 im 6)))))
(+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.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 (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 (*.f64 (cos.f64 im) re) (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 (*.f64 (pow.f64 re 2) (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 (cos.f64 im) (+.f64 1/2 (*.f64 (cos.f64 im) 1/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 (*.f64 (pow.f64 re 3) (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 (cos.f64 im) (+.f64 1/2 (*.f64 (cos.f64 im) 1/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 (pow.f64 re 3) (exp.f64 (cos.f64 im))) -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 (*.f64 -1/2 (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 (exp.f64 re) -1/2)) 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 (exp.f64 (exp.f64 re)) (-.f64 (fma.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 (+.f64 re (exp.f64 re)))) (*.f64 (*.f64 (pow.f64 im 4) (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 (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)))))) (expm1.f64 (exp.f64 re)))
(+.f64 (expm1.f64 (exp.f64 re)) (*.f64 (exp.f64 (exp.f64 re)) (+.f64 (*.f64 (pow.f64 im 2) (*.f64 (exp.f64 re) -1/2)) (*.f64 (pow.f64 im 4) (*.f64 (exp.f64 re) (+.f64 1/24 (*.f64 (exp.f64 re) 1/8)))))))
(-.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 (*.f64 (pow.f64 im 6) (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 (pow.f64 im 6) (*.f64 (exp.f64 (exp.f64 re)) (fma.f64 (pow.f64 (exp.f64 re) 2) -1/48 (fma.f64 (exp.f64 re) -1/720 (*.f64 -1/48 (pow.f64 (exp.f64 re) 3)))))))) (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 (exp.f64 re) 1/8))) (pow.f64 im 4)) (*.f64 (fma.f64 (pow.f64 (exp.f64 re) 2) -1/48 (fma.f64 (exp.f64 re) -1/720 (*.f64 -1/48 (pow.f64 (exp.f64 re) 3)))) (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 re 1))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(*.f64 re (cos.f64 im))
(*.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(*.f64 re (cos.f64 im))
(*.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 1 re)
(+.f64 re 1)
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 1 re)))))
(+.f64 (+.f64 re 1) (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (+.f64 re 1))
(+.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 (+.f64 re 1) (fma.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (+.f64 re 1)))))
(+.f64 re (+.f64 1 (*.f64 (+.f64 re 1) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (+.f64 re 1) (+.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (*.f64 1/24 (pow.f64 im 4))))
(+.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 (+.f64 re 1) (fma.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)) (fma.f64 -1/720 (*.f64 (pow.f64 im 6) (+.f64 re 1)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (+.f64 re 1))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (+.f64 re 1)) (*.f64 (+.f64 re 1) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/720 (pow.f64 im 6)))))
(+.f64 (+.f64 re 1) (*.f64 (+.f64 re 1) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/720 (pow.f64 im 6))))))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 0 (*.f64 (exp.f64 re) (cos.f64 im)))
(*.f64 (cos.f64 im) (exp.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))))
(*.f64 (cos.f64 im) (exp.f64 re))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))))
(*.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 (log1p.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2) (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))))
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 3)) (log1p.f64 (-.f64 (pow.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 2) (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))))))
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 3)) (log1p.f64 (*.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))) (+.f64 -1 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))))))
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) 2))) (log.f64 (-.f64 1 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))))
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 2))) (log.f64 (-.f64 1 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))))))
(-.f64 (log1p.f64 (neg.f64 (pow.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 2))) (log1p.f64 (neg.f64 (expm1.f64 (*.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 (*.f64 (exp.f64 re) (cos.f64 im)) (log.f64 (exp.f64 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)) 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))
(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))
(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 re (log.f64 (cos.f64 im))) 1))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 (*.f64 (*.f64 (+.f64 re (log.f64 (cos.f64 im))) 1) 1))
(*.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))
(+.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) -1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(+.f64 0 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))) (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))))) (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))))) (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))))))) (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))))))) (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))) (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (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 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) (log.f64 (exp.f64 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 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))) (log.f64 (exp.f64 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 (pow.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 2) (+.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 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 2) (+.f64 1 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))))
(/.f64 (+.f64 -1 (pow.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 3)) (+.f64 1 (+.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) (pow.f64 (exp.f64 (cos.f64 im)) (*.f64 2 (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 (exp.f64 re)) (*.f64 2 (cos.f64 im))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) 2) 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)) 2) -1) (+.f64 1 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))))
(/.f64 (+.f64 -1 (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 (expm1.f64 (*.f64 2 (*.f64 (cos.f64 im) (exp.f64 re)))) (+.f64 1 (pow.f64 (exp.f64 (exp.f64 re)) (cos.f64 im))))
(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))) 2) 1/2)
(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)))
(exp.f64 (*.f64 (*.f64 (log.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im)))) 1) 1))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))) 3))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))) 1/3))
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))) 2))
(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)))
(fma.f64 1 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)) -1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(fma.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) -1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(fma.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re))) -1)
(expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))
(+.f64 (cos.f64 im) (*.f64 (cos.f64 im) re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 0 (*.f64 (cos.f64 im) (+.f64 re 1)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 (*.f64 re (cos.f64 im)) (cos.f64 im))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))))
(*.f64 (cos.f64 im) (+.f64 re 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 im) (+.f64 re 1)))) 1)
(*.f64 (cos.f64 im) (+.f64 re 1))
(/.f64 (*.f64 (cos.f64 im) (+.f64 1 (pow.f64 re 3))) (-.f64 (fma.f64 re re 1) re))
(/.f64 (cos.f64 im) (/.f64 (-.f64 (fma.f64 re re 1) re) (+.f64 (pow.f64 re 3) 1)))
(*.f64 (/.f64 (cos.f64 im) (-.f64 (fma.f64 re re 1) re)) (+.f64 (pow.f64 re 3) 1))
(/.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 (cos.f64 im) (+.f64 re -1)) (fma.f64 re re -1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (cos.f64 im)) (-.f64 (fma.f64 re re 1) re))
(/.f64 (cos.f64 im) (/.f64 (-.f64 (fma.f64 re re 1) re) (+.f64 (pow.f64 re 3) 1)))
(*.f64 (/.f64 (cos.f64 im) (-.f64 (fma.f64 re re 1) re)) (+.f64 (pow.f64 re 3) 1))
(/.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)))
(*.f64 (/.f64 (cos.f64 im) (+.f64 re -1)) (fma.f64 re re -1))
(pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 1)
(*.f64 (cos.f64 im) (+.f64 re 1))
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 im) (+.f64 re 1))) 3)
(*.f64 (cos.f64 im) (+.f64 re 1))
(pow.f64 (pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 2) 1/2)
(*.f64 (cos.f64 im) (+.f64 re 1))
(pow.f64 (pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 3) 1/3)
(*.f64 (cos.f64 im) (+.f64 re 1))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 im) (+.f64 re 1))) 2)
(*.f64 (cos.f64 im) (+.f64 re 1))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 2))
(*.f64 (cos.f64 im) (+.f64 re 1))
(log.f64 (pow.f64 (exp.f64 (cos.f64 im)) (+.f64 re 1)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 im) (+.f64 re 1)))))
(*.f64 (cos.f64 im) (+.f64 re 1))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 3))
(*.f64 (cos.f64 im) (+.f64 re 1))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 im) (+.f64 re 1))))
(*.f64 (cos.f64 im) (+.f64 re 1))
(exp.f64 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im))))
(exp.f64 (+.f64 (log.f64 (cos.f64 im)) (log1p.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 (log1p.f64 re)))
(exp.f64 (*.f64 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im))) 1))
(exp.f64 (+.f64 (log.f64 (cos.f64 im)) (log1p.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 (log1p.f64 re)))
(exp.f64 (*.f64 (*.f64 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im))) 1) 1))
(exp.f64 (+.f64 (log.f64 (cos.f64 im)) (log1p.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 (log1p.f64 re)))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im)))) 3))
(exp.f64 (+.f64 (log.f64 (cos.f64 im)) (log1p.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 (log1p.f64 re)))
(exp.f64 (*.f64 (*.f64 3 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im)))) 1/3))
(exp.f64 (+.f64 (log.f64 (cos.f64 im)) (log1p.f64 re)))
(*.f64 (cos.f64 im) (exp.f64 (log1p.f64 re)))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 (log1p.f64 re) (log.f64 (cos.f64 im)))) 2))
(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 re 1))
(fma.f64 re (cos.f64 im) (cos.f64 im))
(*.f64 (cos.f64 im) (+.f64 re 1))
(fma.f64 (cos.f64 im) re (cos.f64 im))
(*.f64 (cos.f64 im) (+.f64 re 1))
(fma.f64 (cos.f64 im) 1 (*.f64 (cos.f64 im) re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(fma.f64 (cos.f64 im) 1 (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(fma.f64 1 (cos.f64 im) (*.f64 (cos.f64 im) re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(fma.f64 1 (cos.f64 im) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(fma.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cos.f64 im) re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(fma.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (cbrt.f64 (cos.f64 im)) (*.f64 (cos.f64 im) re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (cbrt.f64 (cos.f64 im)) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))
(fma.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)) (*.f64 (cos.f64 im) re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(fma.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)) (*.f64 re (cos.f64 im)))
(*.f64 (cos.f64 im) (+.f64 re 1))

eval69.0ms (1.6%)

Compiler

Compiled 4002 to 1969 computations (50.8% saved)

prune68.0ms (1.5%)

Pruning

9 alts after pruning (4 fresh and 5 done)

PrunedKeptTotal
New2534257
Fresh000
Picked044
Done011
Total2539262
Accuracy
100.0%
Counts
262 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
27.2%
(+.f64 re 1)
99.3%
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))
30.2%
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (+.f64 re 1))
53.7%
(*.f64 (+.f64 re 1) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
4.0%
(*.f64 (cos.f64 im) re)
99.5%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
65.1%
(exp.f64 re)
52.7%
(cos.f64 im)
27.2%
(+.f64 re 1)
99.3%
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))
30.2%
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (+.f64 re 1))
53.7%
(*.f64 (+.f64 re 1) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
4.0%
(*.f64 (cos.f64 im) re)
99.5%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
65.1%
(exp.f64 re)
52.7%
(cos.f64 im)
Compiler

Compiled 140 to 104 computations (25.7% saved)

localize203.0ms (4.6%)

Localize:

Found 7 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))
99.8%
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))
99.6%
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
99.5%
(cbrt.f64 (cos.f64 im))
100.0%
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (+.f64 re 1))
99.7%
(*.f64 -1/2 (pow.f64 im 2))
99.8%
(*.f64 (cos.f64 im) re)
Compiler

Compiled 83 to 43 computations (48.2% saved)

series50.0ms (1.1%)

Counts
7 → 120
Calls

33 calls:

TimeVariablePointExpression
35.0ms
im
@inf
(*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))
2.0ms
re
@inf
(*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))
2.0ms
im
@inf
(cbrt.f64 (cos.f64 im))
1.0ms
im
@-inf
(*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))
1.0ms
im
@-inf
(cbrt.f64 (cos.f64 im))

rewrite105.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
934×prod-diff
820×log1p-expm1-u
683×expm1-log1p-u
488×log1p-udef
484×expm1-udef
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023142
1314142
23938142
Stop Event
node limit
Counts
7 → 144
Calls
Call 1
Inputs
(*.f64 (cos.f64 im) re)
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (+.f64 re 1))
(cbrt.f64 (cos.f64 im))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))
(*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))
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 (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))))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 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 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 1) (fma.f64 -1/2 (pow.f64 im 2) 1))
(+.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1)) (+.f64 re 1))
(+.f64 (+.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 -1/2 (pow.f64 im 2))) 1)
(+.f64 (+.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 1) (*.f64 -1/2 (pow.f64 im 2)))
(-.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)))) (fma.f64 re re (-.f64 1 re))))
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (fma.f64 re re -1)) (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))) (+.f64 re -1)))
(/.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) (fma.f64 re re (-.f64 1 re))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (fma.f64 re re -1)) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) -1) (+.f64 re -1)))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (*.f64 (fma.f64 re re (-.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 3)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (fma.f64 re re (-.f64 1 re)) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(/.f64 (*.f64 (fma.f64 re re -1) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (*.f64 (+.f64 re -1) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(/.f64 (*.f64 (fma.f64 re re -1) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (+.f64 re -1) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(/.f64 (+.f64 (pow.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 3) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3)) (+.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 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (fma.f64 -1/2 (pow.f64 im 2) 1)))))
(/.f64 (-.f64 (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2)) (-.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (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))) (fma.f64 re re (-.f64 1 re)))
(/.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (fma.f64 re re -1)) (+.f64 re -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 (+.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)) (fma.f64 re re (-.f64 1 re)))
(/.f64 (*.f64 (fma.f64 re re -1) (fma.f64 -1/2 (pow.f64 im 2) 1)) (+.f64 re -1))
(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 re (fma.f64 -1/2 (pow.f64 im 2) 1) (fma.f64 -1/2 (pow.f64 im 2) 1))
(fma.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) re (fma.f64 -1/2 (pow.f64 im 2) 1))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (cos.f64 im)))) 1)
(*.f64 1 (cbrt.f64 (cos.f64 im)))
(*.f64 (cbrt.f64 (cos.f64 im)) 1)
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (pow.f64 (cos.f64 im) 1/6) (pow.f64 (cos.f64 im) 1/6))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (sqrt.f64 (cos.f64 im)) 1/3) (pow.f64 (sqrt.f64 (cos.f64 im)) 1/3))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4))) (sqrt.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))))
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cbrt.f64 (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)) 1/2)
(pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 3)
(pow.f64 (pow.f64 (cos.f64 im) 1/6) 2)
(sqrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))
(fabs.f64 (cbrt.f64 (cos.f64 im)))
(log.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (cos.f64 im)))))
(expm1.f64 (log1p.f64 (cbrt.f64 (cos.f64 im))))
(exp.f64 (log.f64 (cbrt.f64 (cos.f64 im))))
(exp.f64 (*.f64 (log.f64 (cos.f64 im)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 1))
(log1p.f64 (expm1.f64 (cbrt.f64 (cos.f64 im))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))) 1)
(*.f64 1 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))
(*.f64 (cbrt.f64 (cos.f64 im)) (cbrt.f64 (cos.f64 im)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)) 1)
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (cos.f64 im))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(*.f64 (pow.f64 (cos.f64 im) 1/6) (*.f64 (pow.f64 (cos.f64 im) 1/6) (cbrt.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (cos.f64 im)) (pow.f64 (cos.f64 im) 1/6))
(*.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4))
(log.f64 (exp.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))))
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(expm1.f64 (log1p.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(exp.f64 (log.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) 1))
(log1p.f64 (expm1.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 im) (exp.f64 re)))) 1)
(pow.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 (exp.f64 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 2) (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 3) (pow.f64 (cos.f64 im) 2)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 im) (exp.f64 re))))
(exp.f64 (+.f64 (log.f64 (cos.f64 im)) re))
(exp.f64 (*.f64 (+.f64 (log.f64 (cos.f64 im)) re) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))) 1)
(pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 (cos.f64 im))) (exp.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 3))
(cbrt.f64 (*.f64 (cos.f64 im) (pow.f64 (exp.f64 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (cos.f64 im)))
(expm1.f64 (log1p.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))))
(exp.f64 (+.f64 re (log.f64 (cbrt.f64 (cos.f64 im)))))
(exp.f64 (*.f64 (+.f64 re (log.f64 (cbrt.f64 (cos.f64 im)))) 1))
(log1p.f64 (expm1.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))))

simplify104.0ms (2.4%)

Algorithm
egg-herbie
Rules
900×associate-+l+
890×associate-+r+
608×associate-*r*
556×associate-*l*
548×fma-def
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04247991
111037673
240507442
Stop Event
node limit
Counts
264 → 280
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))))))
1
(+.f64 1 (*.f64 -1/6 (pow.f64 im 2)))
(+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 im 2)) (*.f64 -1/72 (pow.f64 im 4))))
(+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 im 2)) (+.f64 (*.f64 -1/72 (pow.f64 im 4)) (*.f64 -23/6480 (pow.f64 im 6)))))
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
1
(+.f64 1 (*.f64 -1/3 (pow.f64 im 2)))
(+.f64 1 (+.f64 (*.f64 -1/3 (pow.f64 im 2)) (*.f64 -1/405 (pow.f64 im 6))))
(+.f64 1 (+.f64 (*.f64 -1/3 (pow.f64 im 2)) (+.f64 (*.f64 -1/405 (pow.f64 im 6)) (*.f64 -1/1701 (pow.f64 im 8)))))
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(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 (*.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/6 (*.f64 (pow.f64 im 2) (exp.f64 re))))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 im 2) (exp.f64 re))) (*.f64 -1/72 (*.f64 (pow.f64 im 4) (exp.f64 re)))))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 im 2) (exp.f64 re))) (+.f64 (*.f64 -1/72 (*.f64 (pow.f64 im 4) (exp.f64 re))) (*.f64 -23/6480 (*.f64 (pow.f64 im 6) (exp.f64 re))))))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(pow.f64 (cos.f64 im) 1/3)
(+.f64 (*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) re) (pow.f64 (cos.f64 im) 1/3))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (pow.f64 re 2))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) re) (pow.f64 (cos.f64 im) 1/3)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (pow.f64 re 3))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (pow.f64 re 2))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) re) (pow.f64 (cos.f64 im) 1/3))))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(-.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 (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))))
(+.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 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 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 1) (fma.f64 -1/2 (pow.f64 im 2) 1))
(+.f64 (*.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re 1)) (+.f64 re 1))
(+.f64 (+.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 -1/2 (pow.f64 im 2))) 1)
(+.f64 (+.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 1) (*.f64 -1/2 (pow.f64 im 2)))
(-.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)))) (fma.f64 re re (-.f64 1 re))))
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (fma.f64 re re -1)) (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))) (+.f64 re -1)))
(/.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) (fma.f64 re re (-.f64 1 re))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (fma.f64 re re -1)) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) -1) (+.f64 re -1)))
(/.f64 (*.f64 (+.f64 1 (pow.f64 re 3)) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (*.f64 (fma.f64 re re (-.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 3)) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (fma.f64 re re (-.f64 1 re)) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(/.f64 (*.f64 (fma.f64 re re -1) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (*.f64 (+.f64 re -1) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2))))))
(/.f64 (*.f64 (fma.f64 re re -1) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (+.f64 re -1) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(/.f64 (+.f64 (pow.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 3) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3)) (+.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 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (fma.f64 -1/2 (pow.f64 im 2) 1)))))
(/.f64 (-.f64 (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2)) (-.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (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))) (fma.f64 re re (-.f64 1 re)))
(/.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (fma.f64 re re -1)) (+.f64 re -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 (+.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)) (fma.f64 re re (-.f64 1 re)))
(/.f64 (*.f64 (fma.f64 re re -1) (fma.f64 -1/2 (pow.f64 im 2) 1)) (+.f64 re -1))
(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 re (fma.f64 -1/2 (pow.f64 im 2) 1) (fma.f64 -1/2 (pow.f64 im 2) 1))
(fma.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) re (fma.f64 -1/2 (pow.f64 im 2) 1))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (cos.f64 im)))) 1)
(*.f64 1 (cbrt.f64 (cos.f64 im)))
(*.f64 (cbrt.f64 (cos.f64 im)) 1)
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (pow.f64 (cos.f64 im) 1/6) (pow.f64 (cos.f64 im) 1/6))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (sqrt.f64 (cos.f64 im)) 1/3) (pow.f64 (sqrt.f64 (cos.f64 im)) 1/3))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4))) (sqrt.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))))
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cbrt.f64 (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)) 1/2)
(pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 3)
(pow.f64 (pow.f64 (cos.f64 im) 1/6) 2)
(sqrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))
(fabs.f64 (cbrt.f64 (cos.f64 im)))
(log.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (cos.f64 im)))))
(expm1.f64 (log1p.f64 (cbrt.f64 (cos.f64 im))))
(exp.f64 (log.f64 (cbrt.f64 (cos.f64 im))))
(exp.f64 (*.f64 (log.f64 (cos.f64 im)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 1))
(log1p.f64 (expm1.f64 (cbrt.f64 (cos.f64 im))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))) 1)
(*.f64 1 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))
(*.f64 (cbrt.f64 (cos.f64 im)) (cbrt.f64 (cos.f64 im)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)) 1)
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (cos.f64 im))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(*.f64 (pow.f64 (cos.f64 im) 1/6) (*.f64 (pow.f64 (cos.f64 im) 1/6) (cbrt.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (cos.f64 im)) (pow.f64 (cos.f64 im) 1/6))
(*.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4))
(log.f64 (exp.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))))
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(expm1.f64 (log1p.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(exp.f64 (log.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) 1))
(log1p.f64 (expm1.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 im) (exp.f64 re)))) 1)
(pow.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 im)) (exp.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 3) (pow.f64 (exp.f64 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 2) (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 3) (pow.f64 (cos.f64 im) 2)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 im) (exp.f64 re))))
(exp.f64 (+.f64 (log.f64 (cos.f64 im)) re))
(exp.f64 (*.f64 (+.f64 (log.f64 (cos.f64 im)) re) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))) 1)
(pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 (cos.f64 im))) (exp.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 3))
(cbrt.f64 (*.f64 (cos.f64 im) (pow.f64 (exp.f64 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (cos.f64 im)))
(expm1.f64 (log1p.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))))
(exp.f64 (+.f64 re (log.f64 (cbrt.f64 (cos.f64 im)))))
(exp.f64 (*.f64 (+.f64 re (log.f64 (cbrt.f64 (cos.f64 im)))) 1))
(log1p.f64 (expm1.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))))
Outputs
re
(+.f64 re (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 (*.f64 -1/2 (pow.f64 im 2)) re))
(*.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 (*.f64 1/24 (pow.f64 im 4)) re)))
(+.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 (*.f64 1/24 (pow.f64 im 4)) re))))
(+.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/24 (pow.f64 im 4)) (*.f64 -1/720 (pow.f64 im 6))) (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 (pow.f64 im 2) (*.f64 -1/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 (pow.f64 im 2) (*.f64 -1/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 (*.f64 -1/2 (pow.f64 im 2)) re))
(*.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 (*.f64 -1/2 (pow.f64 im 2)) re))
(*.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))
1
(+.f64 1 (*.f64 -1/6 (pow.f64 im 2)))
(+.f64 1 (*.f64 (pow.f64 im 2) -1/6))
(fma.f64 (pow.f64 im 2) -1/6 1)
(+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 im 2)) (*.f64 -1/72 (pow.f64 im 4))))
(+.f64 1 (fma.f64 -1/6 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/72)))
(+.f64 1 (fma.f64 (pow.f64 im 2) -1/6 (*.f64 (pow.f64 im 4) -1/72)))
(+.f64 (fma.f64 (pow.f64 im 2) -1/6 1) (*.f64 (pow.f64 im 4) -1/72))
(+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 im 2)) (+.f64 (*.f64 -1/72 (pow.f64 im 4)) (*.f64 -23/6480 (pow.f64 im 6)))))
(+.f64 1 (fma.f64 -1/6 (pow.f64 im 2) (fma.f64 -1/72 (pow.f64 im 4) (*.f64 (pow.f64 im 6) -23/6480))))
(+.f64 1 (fma.f64 (pow.f64 im 2) -1/6 (fma.f64 (pow.f64 im 4) -1/72 (*.f64 (pow.f64 im 6) -23/6480))))
(+.f64 (fma.f64 (pow.f64 im 2) -1/6 1) (fma.f64 (pow.f64 im 6) -23/6480 (*.f64 (pow.f64 im 4) -1/72)))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
1
(+.f64 1 (*.f64 -1/3 (pow.f64 im 2)))
(+.f64 1 (*.f64 (pow.f64 im 2) -1/3))
(fma.f64 (pow.f64 im 2) -1/3 1)
(+.f64 1 (+.f64 (*.f64 -1/3 (pow.f64 im 2)) (*.f64 -1/405 (pow.f64 im 6))))
(+.f64 1 (fma.f64 -1/3 (pow.f64 im 2) (*.f64 (pow.f64 im 6) -1/405)))
(+.f64 1 (fma.f64 (pow.f64 im 2) -1/3 (*.f64 (pow.f64 im 6) -1/405)))
(+.f64 (fma.f64 (pow.f64 im 2) -1/3 1) (*.f64 (pow.f64 im 6) -1/405))
(+.f64 1 (+.f64 (*.f64 -1/3 (pow.f64 im 2)) (+.f64 (*.f64 -1/405 (pow.f64 im 6)) (*.f64 -1/1701 (pow.f64 im 8)))))
(+.f64 1 (fma.f64 -1/3 (pow.f64 im 2) (fma.f64 -1/405 (pow.f64 im 6) (*.f64 -1/1701 (pow.f64 im 8)))))
(+.f64 1 (fma.f64 (pow.f64 im 2) -1/3 (fma.f64 (pow.f64 im 6) -1/405 (*.f64 -1/1701 (pow.f64 im 8)))))
(+.f64 (fma.f64 (pow.f64 im 2) -1/3 1) (fma.f64 (pow.f64 im 6) -1/405 (*.f64 -1/1701 (pow.f64 im 8))))
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(exp.f64 re)
(+.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 (pow.f64 im 2) (exp.f64 re))))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (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) (fma.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 (exp.f64 re) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (exp.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (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 (*.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 (pow.f64 im 2) (exp.f64 re)) (fma.f64 -1/720 (*.f64 (pow.f64 im 6) (exp.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (exp.f64 re))))))
(+.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (exp.f64 re)) (*.f64 (exp.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/720 (pow.f64 im 6)))))
(+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.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))
(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 re (cos.f64 im))))
(+.f64 (cos.f64 im) (*.f64 (cos.f64 im) (+.f64 (*.f64 1/2 (pow.f64 re 2)) re)))
(*.f64 (cos.f64 im) (+.f64 (+.f64 re 1) (*.f64 1/2 (pow.f64 re 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 re (cos.f64 im)))))
(+.f64 (*.f64 (cos.f64 im) (+.f64 (*.f64 1/2 (pow.f64 re 2)) re)) (*.f64 (cos.f64 im) (+.f64 1 (*.f64 1/6 (pow.f64 re 3)))))
(*.f64 (cos.f64 im) (+.f64 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/6 re) 1/2)) (+.f64 re 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/6 (*.f64 (pow.f64 im 2) (exp.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) -1/6 1) (exp.f64 re))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 im 2) (exp.f64 re))) (*.f64 -1/72 (*.f64 (pow.f64 im 4) (exp.f64 re)))))
(+.f64 (exp.f64 re) (fma.f64 -1/6 (*.f64 (pow.f64 im 2) (exp.f64 re)) (*.f64 (*.f64 (pow.f64 im 4) -1/72) (exp.f64 re))))
(+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (fma.f64 (pow.f64 im 2) -1/6 (*.f64 (pow.f64 im 4) -1/72))))
(*.f64 (exp.f64 re) (+.f64 (fma.f64 (pow.f64 im 2) -1/6 1) (*.f64 (pow.f64 im 4) -1/72)))
(+.f64 (exp.f64 re) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 im 2) (exp.f64 re))) (+.f64 (*.f64 -1/72 (*.f64 (pow.f64 im 4) (exp.f64 re))) (*.f64 -23/6480 (*.f64 (pow.f64 im 6) (exp.f64 re))))))
(+.f64 (exp.f64 re) (fma.f64 -1/6 (*.f64 (pow.f64 im 2) (exp.f64 re)) (fma.f64 -1/72 (*.f64 (pow.f64 im 4) (exp.f64 re)) (*.f64 -23/6480 (*.f64 (pow.f64 im 6) (exp.f64 re))))))
(+.f64 (*.f64 (fma.f64 (pow.f64 im 2) -1/6 1) (exp.f64 re)) (*.f64 (exp.f64 re) (fma.f64 (pow.f64 im 4) -1/72 (*.f64 (pow.f64 im 6) -23/6480))))
(+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (fma.f64 (pow.f64 im 2) -1/6 (fma.f64 (pow.f64 im 6) -23/6480 (*.f64 (pow.f64 im 4) -1/72)))))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(+.f64 (*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) re) (pow.f64 (cos.f64 im) 1/3))
(fma.f64 (cbrt.f64 (cos.f64 im)) re (cbrt.f64 (cos.f64 im)))
(*.f64 (+.f64 re 1) (cbrt.f64 (cos.f64 im)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (pow.f64 re 2))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) re) (pow.f64 (cos.f64 im) 1/3)))
(fma.f64 1/2 (*.f64 (pow.f64 re 2) (cbrt.f64 (cos.f64 im))) (fma.f64 (cbrt.f64 (cos.f64 im)) re (cbrt.f64 (cos.f64 im))))
(fma.f64 1/2 (*.f64 (pow.f64 re 2) (cbrt.f64 (cos.f64 im))) (*.f64 (+.f64 re 1) (cbrt.f64 (cos.f64 im))))
(*.f64 (cbrt.f64 (cos.f64 im)) (+.f64 (+.f64 re 1) (*.f64 1/2 (pow.f64 re 2))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (pow.f64 re 3))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (pow.f64 re 2))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) re) (pow.f64 (cos.f64 im) 1/3))))
(fma.f64 1/6 (*.f64 (pow.f64 re 3) (cbrt.f64 (cos.f64 im))) (fma.f64 1/2 (*.f64 (pow.f64 re 2) (cbrt.f64 (cos.f64 im))) (fma.f64 (cbrt.f64 (cos.f64 im)) re (cbrt.f64 (cos.f64 im)))))
(fma.f64 1/6 (*.f64 (pow.f64 re 3) (cbrt.f64 (cos.f64 im))) (fma.f64 1/2 (*.f64 (pow.f64 re 2) (cbrt.f64 (cos.f64 im))) (*.f64 (+.f64 re 1) (cbrt.f64 (cos.f64 im)))))
(+.f64 (*.f64 (+.f64 re 1) (cbrt.f64 (cos.f64 im))) (*.f64 (cbrt.f64 (cos.f64 im)) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/6 re) 1/2))))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (*.f64 1 (cos.f64 im)) 1/3) (exp.f64 re))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(-.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 (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))
(+.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 (+.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 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 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 -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 (+.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.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 (fma.f64 -1/2 (pow.f64 im 2) 1)) 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 (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)))) (fma.f64 re re (-.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 3)) (fma.f64 re re (-.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 3)) (fma.f64 re re (-.f64 1 re))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (*.f64 (+.f64 (*.f64 (pow.f64 im 2) 1/2) (fma.f64 (pow.f64 im 4) 1/4 1)) (fma.f64 re re (-.f64 1 re)))) (fma.f64 (pow.f64 im 6) -1/8 1))
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8)) (fma.f64 re re -1)) (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) (-.f64 1 (*.f64 -1/2 (pow.f64 im 2)))) (+.f64 re -1)))
(*.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 (fma.f64 re re -1) (+.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 (fma.f64 re re -1) (+.f64 re -1)))
(/.f64 (*.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (/.f64 (fma.f64 re re -1) (+.f64 re -1))) (+.f64 (*.f64 (pow.f64 im 2) 1/2) (fma.f64 (pow.f64 im 4) 1/4 1)))
(/.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) (fma.f64 re re (-.f64 1 re))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (fma.f64 re re (-.f64 1 re))) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (*.f64 (fma.f64 re re (-.f64 1 re)) (fma.f64 -1/2 (pow.f64 im 2) -1))) (+.f64 1 (pow.f64 re 3)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (fma.f64 re re -1)) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) -1) (+.f64 re -1)))
(*.f64 (/.f64 (fma.f64 re re -1) (+.f64 re -1)) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(*.f64 (/.f64 (fma.f64 re re -1) (*.f64 (+.f64 re -1) (fma.f64 -1/2 (pow.f64 im 2) -1))) (fma.f64 (pow.f64 im 4) 1/4 -1))
(/.f64 (/.f64 (*.f64 (fma.f64 re re -1) (fma.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)) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (*.f64 (fma.f64 re re (-.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 3)) (fma.f64 re re (-.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 3)) (fma.f64 re re (-.f64 1 re))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (*.f64 (+.f64 (*.f64 (pow.f64 im 2) 1/2) (fma.f64 (pow.f64 im 4) 1/4 1)) (fma.f64 re re (-.f64 1 re)))) (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 (fma.f64 re re (-.f64 1 re)) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (fma.f64 re re (-.f64 1 re))) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (*.f64 (fma.f64 re re (-.f64 1 re)) (fma.f64 -1/2 (pow.f64 im 2) -1))) (+.f64 1 (pow.f64 re 3)))
(/.f64 (*.f64 (fma.f64 re re -1) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))) (*.f64 (+.f64 re -1) (+.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 (fma.f64 re re -1) (+.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 (fma.f64 re re -1) (+.f64 re -1)))
(/.f64 (*.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (/.f64 (fma.f64 re re -1) (+.f64 re -1))) (+.f64 (*.f64 (pow.f64 im 2) 1/2) (fma.f64 (pow.f64 im 4) 1/4 1)))
(/.f64 (*.f64 (fma.f64 re re -1) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (+.f64 re -1) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(*.f64 (/.f64 (fma.f64 re re -1) (+.f64 re -1)) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 -1/2 (pow.f64 im 2) -1)))
(*.f64 (/.f64 (fma.f64 re re -1) (*.f64 (+.f64 re -1) (fma.f64 -1/2 (pow.f64 im 2) -1))) (fma.f64 (pow.f64 im 4) 1/4 -1))
(/.f64 (/.f64 (*.f64 (fma.f64 re re -1) (fma.f64 (pow.f64 im 4) 1/4 -1)) (+.f64 re -1)) (fma.f64 -1/2 (pow.f64 im 2) -1))
(/.f64 (+.f64 (pow.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 3) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3)) (+.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 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (fma.f64 -1/2 (pow.f64 im 2) 1)))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) 3) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3)) (+.f64 (*.f64 (pow.f64 re 2) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2)) (-.f64 (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 (+.f64 1 (pow.f64 re 3)) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3)) (-.f64 (*.f64 (+.f64 (pow.f64 re 2) 1) (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 (+.f64 1 (pow.f64 re 3)) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 3)) (*.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (fma.f64 re re (-.f64 1 re))))
(/.f64 (-.f64 (*.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1))) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2)) (-.f64 (*.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1)) (fma.f64 -1/2 (pow.f64 im 2) 1)))
(/.f64 (-.f64 (*.f64 (pow.f64 re 2) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2)) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2)) (fma.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1) (neg.f64 (fma.f64 -1/2 (pow.f64 im 2) 1))))
(/.f64 (fma.f64 (pow.f64 re 2) (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (neg.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2))) (fma.f64 re (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 -1 (*.f64 (pow.f64 im 2) 1/2))))
(/.f64 (*.f64 (pow.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) 2) (fma.f64 re re -1)) (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re -1)))
(/.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 1 (pow.f64 re 3))) (fma.f64 re re (-.f64 1 re)))
(/.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (/.f64 (fma.f64 re re (-.f64 1 re)) (+.f64 1 (pow.f64 re 3))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (fma.f64 re re (-.f64 1 re))) (fma.f64 -1/2 (pow.f64 im 2) 1))
(/.f64 (*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (fma.f64 re re -1)) (+.f64 re -1))
(/.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (/.f64 (+.f64 re -1) (fma.f64 re re -1)))
(*.f64 (/.f64 (fma.f64 re re -1) (+.f64 re -1)) (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 re 1) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))))
(*.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 re 1) (/.f64 (+.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 re 1) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (fma.f64 -1/2 (pow.f64 im 2) -1))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (fma.f64 -1/2 (pow.f64 im 2) -1) (+.f64 re 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 re 1) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (+.f64 1 (*.f64 (pow.f64 (pow.f64 im 2) 3) -1/8))))
(*.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 re 1) (/.f64 (+.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 (pow.f64 im 4) 1/4) -1) (+.f64 re 1)) (fma.f64 -1/2 (pow.f64 im 2) -1))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (fma.f64 -1/2 (pow.f64 im 2) -1) (+.f64 re 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)) (fma.f64 re re (-.f64 1 re)))
(/.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (/.f64 (fma.f64 re re (-.f64 1 re)) (+.f64 1 (pow.f64 re 3))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 re 3)) (fma.f64 re re (-.f64 1 re))) (fma.f64 -1/2 (pow.f64 im 2) 1))
(/.f64 (*.f64 (fma.f64 re re -1) (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 -1) (fma.f64 re re -1)))
(*.f64 (/.f64 (fma.f64 re re -1) (+.f64 re -1)) (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 (log1p.f64 (*.f64 -1/2 (pow.f64 im 2))) (log1p.f64 re)))
(exp.f64 (*.f64 (+.f64 (log1p.f64 re) (log1p.f64 (*.f64 -1/2 (pow.f64 im 2)))) 1))
(exp.f64 (+.f64 (log1p.f64 (*.f64 -1/2 (pow.f64 im 2))) (log1p.f64 re)))
(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 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))
(fma.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) re (fma.f64 -1/2 (pow.f64 im 2) 1))
(*.f64 (fma.f64 -1/2 (pow.f64 im 2) 1) (+.f64 re 1))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (cos.f64 im)))) 1)
(cbrt.f64 (cos.f64 im))
(*.f64 1 (cbrt.f64 (cos.f64 im)))
(cbrt.f64 (cos.f64 im))
(*.f64 (cbrt.f64 (cos.f64 im)) 1)
(cbrt.f64 (cos.f64 im))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2)))
(*.f64 (pow.f64 (cos.f64 im) 1/6) (pow.f64 (cos.f64 im) 1/6))
(cbrt.f64 (cos.f64 im))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (cos.f64 im)))
(cbrt.f64 (cos.f64 im))
(*.f64 (pow.f64 (sqrt.f64 (cos.f64 im)) 1/3) (pow.f64 (sqrt.f64 (cos.f64 im)) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (cos.f64 im))) (cbrt.f64 (sqrt.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4))) (sqrt.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4))) (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2))))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cbrt.f64 (cos.f64 im)) 1)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)) 1/2)
(sqrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/6)
(pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (pow.f64 (cos.f64 im) 1/6) 2)
(cbrt.f64 (cos.f64 im))
(sqrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/6)
(fabs.f64 (cbrt.f64 (cos.f64 im)))
(cbrt.f64 (cos.f64 im))
(log.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))
(cbrt.f64 (cos.f64 im))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (cos.f64 im)))))
(cbrt.f64 (cos.f64 im))
(expm1.f64 (log1p.f64 (cbrt.f64 (cos.f64 im))))
(cbrt.f64 (cos.f64 im))
(exp.f64 (log.f64 (cbrt.f64 (cos.f64 im))))
(cbrt.f64 (cos.f64 im))
(exp.f64 (*.f64 (log.f64 (cos.f64 im)) 1/3))
(cbrt.f64 (cos.f64 im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 1))
(cbrt.f64 (cos.f64 im))
(log1p.f64 (expm1.f64 (cbrt.f64 (cos.f64 im))))
(cbrt.f64 (cos.f64 im))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))) 1)
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(*.f64 1 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(*.f64 (cbrt.f64 (cos.f64 im)) (cbrt.f64 (cos.f64 im)))
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)) 1)
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (cos.f64 im))))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (*.f64 (cbrt.f64 (cos.f64 im)) (cbrt.f64 (cbrt.f64 (cos.f64 im)))))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 4))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 4))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)))
(*.f64 (pow.f64 (cos.f64 im) 1/6) (*.f64 (pow.f64 (cos.f64 im) 1/6) (cbrt.f64 (cos.f64 im))))
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(*.f64 (sqrt.f64 (cos.f64 im)) (pow.f64 (cos.f64 im) 1/6))
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(*.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (*.f64 (cbrt.f64 (cos.f64 im)) (cbrt.f64 (cbrt.f64 (cos.f64 im)))))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 4))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 4))
(sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4))
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(log.f64 (exp.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2)))))
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(expm1.f64 (log1p.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(exp.f64 (log.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))) 1))
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(log1p.f64 (expm1.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 2))))
(cbrt.f64 (pow.f64 (cos.f64 im) 2))
(pow.f64 (cbrt.f64 (cos.f64 im)) 2)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 im) (exp.f64 re)))) 1)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 1)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 3)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (pow.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 3) 1/3)
(*.f64 (cos.f64 im) (exp.f64 re))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 im) (exp.f64 re))) 2)
(*.f64 (cos.f64 im) (exp.f64 re))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 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))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re)))))
(*.f64 (cos.f64 im) (exp.f64 re))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 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))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 im) 2) (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 3)))
(*.f64 (cos.f64 im) (exp.f64 re))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 3) (pow.f64 (cos.f64 im) 2)))
(*.f64 (cos.f64 im) (exp.f64 re))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 im) (exp.f64 re))))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 (+.f64 (log.f64 (cos.f64 im)) re))
(*.f64 (cos.f64 im) (exp.f64 re))
(exp.f64 (*.f64 (+.f64 (log.f64 (cos.f64 im)) re) 1))
(*.f64 (cos.f64 im) (exp.f64 re))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 im) (exp.f64 re))))
(*.f64 (cos.f64 im) (exp.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))) 1)
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 1)
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(pow.f64 (cbrt.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))) 3)
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(pow.f64 (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 3) 1/3)
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(pow.f64 (sqrt.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))) 2)
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(sqrt.f64 (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 2))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 (cos.f64 im))) (exp.f64 re)))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(cbrt.f64 (pow.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)) 3))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(cbrt.f64 (*.f64 (cos.f64 im) (pow.f64 (exp.f64 re) 3)))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (cos.f64 im)))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(expm1.f64 (log1p.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(exp.f64 (+.f64 re (log.f64 (cbrt.f64 (cos.f64 im)))))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(exp.f64 (*.f64 (+.f64 re (log.f64 (cbrt.f64 (cos.f64 im)))) 1))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))
(log1p.f64 (expm1.f64 (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re))))
(*.f64 (exp.f64 re) (cbrt.f64 (cos.f64 im)))

eval156.0ms (3.5%)

Compiler

Compiled 5468 to 3342 computations (38.9% saved)

prune50.0ms (1.1%)

Pruning

11 alts after pruning (3 fresh and 8 done)

PrunedKeptTotal
New3173320
Fresh000
Picked134
Done055
Total31811329
Accuracy
100.0%
Counts
329 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
8.3%
(+.f64 re (*.f64 (*.f64 -1/2 (pow.f64 im 2)) re))
27.2%
(+.f64 re 1)
29.1%
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
99.3%
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))
53.7%
(*.f64 (+.f64 re 1) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
4.0%
(*.f64 (cos.f64 im) re)
99.5%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
65.1%
(exp.f64 re)
52.7%
(cos.f64 im)
3.7%
re
8.3%
(+.f64 re (*.f64 (*.f64 -1/2 (pow.f64 im 2)) re))
27.2%
(+.f64 re 1)
29.1%
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
99.3%
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))
53.7%
(*.f64 (+.f64 re 1) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
4.0%
(*.f64 (cos.f64 im) re)
99.5%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
65.1%
(exp.f64 re)
52.7%
(cos.f64 im)
3.7%
re
Compiler

Compiled 160 to 118 computations (26.3% saved)

localize65.0ms (1.5%)

Localize:

Found 3 expressions with local error:

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

Compiled 50 to 37 computations (26% saved)

series5.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

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

rewrite51.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
758×unpow-prod-down
544×log-prod
532×cbrt-prod
424×log1p-expm1-u
424×expm1-log1p-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01225
111125
2123225
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(*.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
Outputs
(+.f64 0 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 im 2)) -1) re))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))))
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) 1)
(pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 1)
(pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) 3)
(pow.f64 (*.f64 (pow.f64 (*.f64 re -1/2) 2) (pow.f64 im 4)) 1/2)
(pow.f64 (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 6) -1/8)) 1/3)
(pow.f64 (*.f64 im (pow.f64 (*.f64 -1/2 re) 1/2)) 2)
(pow.f64 (E.f64) (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))) 2)) (cbrt.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))) (sqrt.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 re -1/2) 2) (pow.f64 im 4)))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))
(cbrt.f64 (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 6) -1/8)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))
(exp.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (pow.f64 (*.f64 -1/2 re) 1/2))) 2))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))

simplify65.0ms (1.5%)

Algorithm
egg-herbie
Rules
1206×log-prod
1050×fma-def
944×exp-sum
926×distribute-lft-in
908×distribute-rgt-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0831285
11901283
24591283
317151283
464711283
Stop Event
node limit
Counts
45 → 27
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 0 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 im 2)) -1) re))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))))
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) 1)
(pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 1)
(pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) 3)
(pow.f64 (*.f64 (pow.f64 (*.f64 re -1/2) 2) (pow.f64 im 4)) 1/2)
(pow.f64 (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 6) -1/8)) 1/3)
(pow.f64 (*.f64 im (pow.f64 (*.f64 -1/2 re) 1/2)) 2)
(pow.f64 (E.f64) (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))) 2)) (cbrt.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))) (sqrt.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 re -1/2) 2) (pow.f64 im 4)))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))
(cbrt.f64 (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 6) -1/8)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))
(exp.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (pow.f64 (*.f64 -1/2 re) 1/2))) 2))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))
Outputs
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(+.f64 0 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(+.f64 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 im 2)) -1) re))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))))
(+.f64 (log.f64 (cbrt.f64 (pow.f64 (/.f64 1 (exp.f64 (pow.f64 im 2))) re))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))))
(+.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (neg.f64 (pow.f64 im 2))) re))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) 1)
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)) 1)
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))) 3)
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(pow.f64 (*.f64 (pow.f64 (*.f64 re -1/2) 2) (pow.f64 im 4)) 1/2)
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(pow.f64 (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 6) -1/8)) 1/3)
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(pow.f64 (*.f64 im (pow.f64 (*.f64 -1/2 re) 1/2)) 2)
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(pow.f64 (E.f64) (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))) 2)) (cbrt.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 -1/2 re)))) 2)) (cbrt.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 -1/2 re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))) (sqrt.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 -1/2 re))))) (sqrt.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 -1/2 re)))))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 re -1/2) 2) (pow.f64 im 4)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 -1/2 (pow.f64 im 2))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(cbrt.f64 (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 6) -1/8)))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(exp.f64 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))) 3))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re)))) 1/3))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(exp.f64 (*.f64 (log.f64 (*.f64 im (pow.f64 (*.f64 -1/2 re) 1/2))) 2))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) re))))
(*.f64 -1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 -1/2 re))

eval28.0ms (0.6%)

Compiler

Compiled 1109 to 871 computations (21.5% saved)

prune13.0ms (0.3%)

Pruning

11 alts after pruning (1 fresh and 10 done)

PrunedKeptTotal
New95095
Fresh011
Picked022
Done088
Total9511106
Accuracy
100.0%
Counts
106 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
8.3%
(+.f64 re (*.f64 (*.f64 -1/2 (pow.f64 im 2)) re))
27.2%
(+.f64 re 1)
29.1%
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
99.3%
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (*.f64 (cbrt.f64 (cos.f64 im)) (exp.f64 re)))
53.7%
(*.f64 (+.f64 re 1) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
4.0%
(*.f64 (cos.f64 im) re)
99.5%
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (cos.f64 im))))
65.1%
(exp.f64 re)
52.7%
(cos.f64 im)
3.7%
re
Compiler

Compiled 151 to 98 computations (35.1% saved)

regimes39.0ms (0.9%)

Counts
12 → 1
Calls
Call 1
Inputs
re
(+.f64 re 1)
(cos.f64 im)
(exp.f64 re)
(*.f64 (cos.f64 im) re)
(*.f64 (+.f64 re 1) (cos.f64 im))
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 re (*.f64 (*.f64 -1/2 (pow.f64 im 2)) re))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1) (+.f64 re 1))
(*.f64 (exp.f64 re) (cos.f64 im))
(log1p.f64 (expm1.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)))
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))
Calls

5 calls:

14.0ms
im
8.0ms
(cos.f64 im)
7.0ms
re
5.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
2.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 92 to 54 computations (41.3% saved)

regimes94.0ms (2.1%)

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

4 calls:

56.0ms
im
18.0ms
re
11.0ms
(cos.f64 im)
7.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
91.3%3re
81.8%10im
91.3%3(exp.f64 re)
77.4%2(cos.f64 im)
Compiler

Compiled 61 to 41 computations (32.8% saved)

regimes19.0ms (0.4%)

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

2 calls:

13.0ms
re
5.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
90.6%3re
90.6%3(exp.f64 re)
Compiler

Compiled 21 to 12 computations (42.9% saved)

regimes12.0ms (0.3%)

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

3 calls:

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

Compiled 18 to 12 computations (33.3% saved)

regimes9.0ms (0.2%)

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

2 calls:

5.0ms
im
3.0ms
re
Results
AccuracySegmentsBranch
27.2%1re
27.2%1im
Compiler

Compiled 12 to 8 computations (33.3% saved)

regimes6.0ms (0.1%)

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
re
3.0ms
im
Results
AccuracySegmentsBranch
3.7%1im
3.7%1re
Compiler

Compiled 9 to 6 computations (33.3% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0017754036185766
535452.3765399092
0.0ms
0.9351956280860816
0.9572915554320961
Compiler

Compiled 12 to 9 computations (25% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0017754036185766
535452.3765399092
0.0ms
0.9572915554320961
0.999999999037932
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
027168
139168
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (cos.f64 im))
(if (<=.f64 (exp.f64 re) 4278419646001971/4503599627370496) (exp.f64 re) (if (<=.f64 (exp.f64 re) 2) (*.f64 (+.f64 re 1) (cos.f64 im)) (exp.f64 re)))
(if (<=.f64 (exp.f64 re) 1080863910568919/1125899906842624) (exp.f64 re) (if (<=.f64 (exp.f64 re) 2) (cos.f64 im) (exp.f64 re)))
(cos.f64 im)
(+.f64 re 1)
re
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))
(if (<=.f64 (exp.f64 re) 4278419646001971/4503599627370496) (exp.f64 re) (if (<=.f64 (exp.f64 re) 2) (*.f64 (+.f64 re 1) (cos.f64 im)) (exp.f64 re)))
(if (or (<=.f64 (exp.f64 re) 4278419646001971/4503599627370496) (not (<=.f64 (exp.f64 re) 2))) (exp.f64 re) (*.f64 (cos.f64 im) (+.f64 re 1)))
(if (<=.f64 (exp.f64 re) 1080863910568919/1125899906842624) (exp.f64 re) (if (<=.f64 (exp.f64 re) 2) (cos.f64 im) (exp.f64 re)))
(if (or (<=.f64 (exp.f64 re) 1080863910568919/1125899906842624) (not (<=.f64 (exp.f64 re) 2))) (exp.f64 re) (cos.f64 im))
(cos.f64 im)
(+.f64 re 1)
re
Compiler

Compiled 57 to 39 computations (31.6% saved)

soundness347.0ms (7.8%)

Rules
1548×prod-exp
1176×associate-+l+
1176×associate-+l+
1126×associate-+r+
1126×associate-+r+
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01011320
12651233
27891176
337861165
462361165
03535819
18995601
229095392
03535819
18995601
229095392
Stop Event
node limit
node limit
node limit
Compiler

Compiled 33 to 19 computations (42.4% saved)

end0.0ms (0%)

preprocess48.0ms (1.1%)

Remove

(abs im)

Compiler

Compiled 122 to 68 computations (44.3% saved)

Profiling

Loading profile data...