math.cos on complex, real part

Time bar (total: 4.7s)

analyze0.0ms (0%)

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

Compiled 14 to 11 computations (21.4% saved)

Operations
Operation ival-neg
Operation ival-mult
Operation ival-exp
Operation ival-cos
Operation ival-add
Operation const

sample1.9s (39.7%)

Results
1.0s4220×body256valid
822.0ms4034×body256infinite
2.0msbody1024valid
Operations
Operation ival-neg
Operation ival-mult
Operation ival-exp
Operation ival-cos
Operation ival-add
Operation const
Bogosity

preprocess157.0ms (3.3%)

Algorithm
egg-herbie
Rules
1164×times-frac
854×div-sub
828×fma-def
812×fma-neg
790×distribute-neg-frac
Problems
256×No Errors
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
032316
1100308
2277308
3687298
41412294
54001294
66069294
77960294
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (cos.f64 (neg.f64 re))) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 (neg.f64 im))) (exp.f64 (neg.f64 im))))
(neg.f64 (*.f64 (*.f64 1/2 (cos.f64 (neg.f64 re))) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(neg.f64 (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 (neg.f64 im))) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (cos.f64 im)) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)))
Outputs
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cos.f64 re)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cos.f64 re)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (cos.f64 (neg.f64 re))) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cos.f64 re)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 (neg.f64 im))) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cos.f64 re)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(neg.f64 (*.f64 (*.f64 1/2 (cos.f64 (neg.f64 re))) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (cos.f64 re)) (neg.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) -1/2))
(*.f64 (cos.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.f64 -1/2 (exp.f64 im))))
(neg.f64 (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 (neg.f64 im))) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (cos.f64 re)) (neg.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) -1/2))
(*.f64 (cos.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.f64 -1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (cos.f64 im)) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)))
(*.f64 (cos.f64 im) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re))))
(*.f64 (cos.f64 im) (fma.f64 1/2 (exp.f64 re) (/.f64 1/2 (exp.f64 re))))
Symmetry

(abs re)

(abs im)

Compiler

Compiled 49 to 24 computations (51% saved)

Operations
Operation ival-neg
Operation ival-mult
Operation ival-exp
Operation ival-cos
Operation ival-add
Operation const

eval1.0ms (0%)

Compiler

Compiled 35 to 18 computations (48.6% saved)

prune2.0ms (0%)

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

Compiled 26 to 20 computations (23.1% saved)

localize92.0ms (1.9%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 36 to 14 computations (61.1% saved)

Operations
Operation ival-neg
Operation ival-mult
Operation ival-exp
Operation ival-cos
Operation ival-add
Operation const

series6.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
2.0ms
im
@0
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0ms
im
@inf
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0ms
re
@-inf
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0ms
re
@0
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0ms
re
@inf
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))

rewrite74.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
200×associate-*r*
128×associate-*l*
92×add-exp-log
92×add-log-exp
92×log1p-expm1-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01644
120244
2326644
Stop Event
unsound
Counts
1 → 22
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Outputs
(+.f64 (cos.f64 re) (cos.f64 re))
(+.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) -2))) 1)
(/.f64 (*.f64 (cos.f64 re) -2) -2)
(/.f64 (*.f64 (cos.f64 re) -2) 1)
(/.f64 (*.f64 (cos.f64 re) -2) (+.f64 (*.f64 (cos.f64 re) -2) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))))
(/.f64 (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(pow.f64 (*.f64 (cos.f64 re) -2) 1)
(pow.f64 (*.f64 (cos.f64 re) -2) 1/3)
(sqrt.f64 (*.f64 (cos.f64 re) -2))
(fabs.f64 (*.f64 (cos.f64 re) -2))
(log.f64 (pow.f64 1 (cos.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) -2))))
(cbrt.f64 (*.f64 (cos.f64 re) -2))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) -2)))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) -2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) 1))
(exp.f64 (+.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -2))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) -2)))
(fma.f64 (*.f64 (cos.f64 re) -2) 1 (*.f64 (cos.f64 re) -2))
(fma.f64 1 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))

simplify54.0ms (1.1%)

Algorithm
egg-herbie
Rules
1092×fma-neg
902×div-sub
880×cancel-sign-sub-inv
772×fma-def
650×distribute-lft-out
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0961302
12821140
28691140
342471140
Stop Event
node limit
Counts
46 → 45
Calls
Call 1
Inputs
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 re 4) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 re 6) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 re 4) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))))
(+.f64 (cos.f64 re) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (cos.f64 re))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(+.f64 (cos.f64 re) (cos.f64 re))
(+.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) -2))) 1)
(/.f64 (*.f64 (cos.f64 re) -2) -2)
(/.f64 (*.f64 (cos.f64 re) -2) 1)
(/.f64 (*.f64 (cos.f64 re) -2) (+.f64 (*.f64 (cos.f64 re) -2) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))))
(/.f64 (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(pow.f64 (*.f64 (cos.f64 re) -2) 1)
(pow.f64 (*.f64 (cos.f64 re) -2) 1/3)
(sqrt.f64 (*.f64 (cos.f64 re) -2))
(fabs.f64 (*.f64 (cos.f64 re) -2))
(log.f64 (pow.f64 1 (cos.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) -2))))
(cbrt.f64 (*.f64 (cos.f64 re) -2))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) -2)))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) -2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) 1))
(exp.f64 (+.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -2))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) -2)))
(fma.f64 (*.f64 (cos.f64 re) -2) 1 (*.f64 (cos.f64 re) -2))
(fma.f64 1 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))
Outputs
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(fma.f64 -1/4 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 2)) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 re 4) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 -1/4 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 2)) (fma.f64 1/48 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 4)) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 -1/4 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 2)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 1/48 (pow.f64 re 4)))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 re 6) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 re 4) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(fma.f64 -1/4 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 2)) (fma.f64 -1/1440 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 6)) (fma.f64 1/48 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 4)) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 1/48 (pow.f64 re 4)))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/4 (pow.f64 re 2)) (*.f64 -1/1440 (pow.f64 re 6)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re))
(+.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))))
(+.f64 (cos.f64 re) (fma.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)) (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2)))))
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (cos.f64 re) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (cos.f64 re))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))))
(+.f64 (cos.f64 re) (fma.f64 1/720 (*.f64 (cos.f64 re) (pow.f64 im 6)) (fma.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)) (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))))))
(+.f64 (*.f64 (cos.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (cos.f64 re) (cos.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))
(cos.f64 re)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) -2))) 1)
(cos.f64 re)
(/.f64 (*.f64 (cos.f64 re) -2) -2)
(cos.f64 re)
(/.f64 (*.f64 (cos.f64 re) -2) 1)
(cos.f64 re)
(/.f64 (*.f64 (cos.f64 re) -2) (+.f64 (*.f64 (cos.f64 re) -2) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))))
(cos.f64 re)
(/.f64 (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)))
(cos.f64 re)
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(cos.f64 re)
(pow.f64 (*.f64 (cos.f64 re) -2) 1)
(cos.f64 re)
(pow.f64 (*.f64 (cos.f64 re) -2) 1/3)
(cos.f64 re)
(sqrt.f64 (*.f64 (cos.f64 re) -2))
(cos.f64 re)
(fabs.f64 (*.f64 (cos.f64 re) -2))
(cos.f64 re)
(log.f64 (pow.f64 1 (cos.f64 re)))
(cos.f64 re)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) -2))))
(cos.f64 re)
(cbrt.f64 (*.f64 (cos.f64 re) -2))
(cos.f64 re)
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) -2)))
(cos.f64 re)
(exp.f64 (log.f64 (*.f64 (cos.f64 re) -2)))
(cos.f64 re)
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) 1))
(cos.f64 re)
(exp.f64 (+.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -2))
(cos.f64 re)
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) -2)))
(cos.f64 re)
(fma.f64 (*.f64 (cos.f64 re) -2) 1 (*.f64 (cos.f64 re) -2))
(cos.f64 re)
(fma.f64 1 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))
(cos.f64 re)

eval17.0ms (0.4%)

Compiler

Compiled 655 to 351 computations (46.4% saved)

prune25.0ms (0.5%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New39645
Fresh000
Picked011
Done000
Total39746
Accuracy
100.0%
Counts
46 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
8.4%
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
89.0%
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
11.9%
(+.f64 (cos.f64 re) (cos.f64 re))
79.6%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re))
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
63.3%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
57.4%
(cos.f64 re)
8.4%
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
89.0%
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
11.9%
(+.f64 (cos.f64 re) (cos.f64 re))
79.6%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re))
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
63.3%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
57.4%
(cos.f64 re)
Compiler

Compiled 266 to 204 computations (23.3% saved)

localize281.0ms (6%)

Localize:

Found 4 expressions with local error:

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

Compiled 117 to 65 computations (44.4% saved)

Operations
Operation ival-pow
Operation ival-neg
Operation ival-mult
Operation ival-exp
Operation ival-cos
Operation ival-add
Operation const

series9.0ms (0.2%)

Counts
4 → 48
Calls

15 calls:

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

rewrite99.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
1300×log-prod
824×fma-def
709×log1p-expm1-u
709×expm1-log1p-u
408×expm1-udef
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
022115
1262115
23344115
Stop Event
node limit
Counts
4 → 161
Calls
Call 1
Inputs
(*.f64 1/24 (pow.f64 im 4))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
Outputs
(+.f64 0 (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24)) (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4)))) 1)
(pow.f64 (*.f64 1/24 (pow.f64 im 4)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) 3)
(pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) 1/3)
(pow.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 8) 1/576))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))
(expm1.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 0 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) 1) (*.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) 1))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) 3) (pow.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) 3)) (fma.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (-.f64 (*.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (*.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))) (-.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))))
(/.f64 (*.f64 (cos.f64 re) (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)))
(/.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4))))
(/.f64 (*.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (cos.f64 re)) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (cos.f64 re)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4))))
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))))
(log.f64 (*.f64 (exp.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (exp.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 3) (pow.f64 (cos.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(fma.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (pow.f64 im 4) (*.f64 1/24 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (cos.f64 re) (*.f64 1/24 (pow.f64 im 4)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 1/2 (pow.f64 im 2)) (cos.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 1 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 1 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (*.f64 (cbrt.f64 (cos.f64 re)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (*.f64 (cbrt.f64 (cos.f64 re)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (*.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) 1 (*.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))) (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (cbrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))) (cbrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (sqrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (sqrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (sqrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (cos.f64 re))) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (cos.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 im (sqrt.f64 1/2))) (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 im (sqrt.f64 1/2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (sqrt.f64 (cos.f64 re))) (*.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (sqrt.f64 (cos.f64 re))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24))) (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (pow.f64 (cbrt.f64 (cos.f64 re)) 2)) (cbrt.f64 (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sqrt.f64 (cos.f64 re))) (sqrt.f64 (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (cos.f64 re) 1/2) (pow.f64 im 2) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4))) (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (cos.f64 re) (*.f64 im (sqrt.f64 1/2))) (*.f64 im (sqrt.f64 1/2)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (pow.f64 (cbrt.f64 (cos.f64 re)) 2)) (cbrt.f64 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sqrt.f64 (cos.f64 re))) (sqrt.f64 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (cos.f64 re) 1/24) (pow.f64 im 4) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (cos.f64 re) (pow.f64 im 4)) 1/24 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576))) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24))) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))) 1)
(-.f64 (/.f64 (*.f64 (pow.f64 im 4) 1/4) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4)))) (/.f64 (*.f64 (pow.f64 im 8) 1/576) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4)))))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 1)
(*.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cbrt.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 2)) (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (/.f64 1 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4))))
(*.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (/.f64 1 (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)) (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))))
(/.f64 1 (/.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4))) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (pow.f64 im 8) 1/576 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (neg.f64 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (neg.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 4) 1/4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 3)
(pow.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 2))
(log.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24) (+.f64 1 (expm1.f64 (*.f64 1/2 (pow.f64 im 2))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (exp.f64 (pow.f64 im 2)) 1/2)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))) (+.f64 1 (expm1.f64 (*.f64 1/2 (pow.f64 im 2))))))
(log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 im 2)) 1/2) (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (pow.f64 im 2)))) (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (pow.f64 im 2)))) (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))))
(cbrt.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(exp.f64 (log.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 1))
(log1p.f64 (expm1.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 im (*.f64 im 1/2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (pow.f64 im 4) 1/24 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 1/24 (pow.f64 im 4)) 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (pow.f64 im 2) 1/2 (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 2) 1/24) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 1/2 (pow.f64 im 2)) 1 (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1/2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (pow.f64 im 8)) (*.f64 (cbrt.f64 (pow.f64 im 4)) 1/24) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 1/2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 1/24 (pow.f64 im 2)) (pow.f64 im 2) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 1/24 (cbrt.f64 (pow.f64 im 8))) (cbrt.f64 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 0 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4)) (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))) 1)
(*.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4) 1)
(*.f64 (pow.f64 (cos.f64 re) -2) 1/4)
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 1 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -4)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -4)) (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))
(*.f64 (*.f64 (pow.f64 (cos.f64 re) -1) -1/2) (*.f64 (pow.f64 (cos.f64 re) -1) -1/2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2))) -2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) -2)) -2) (pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) -2)) -2))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -4))
(log.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4) 3))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))
(exp.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))))
(exp.f64 (*.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))

simplify126.0ms (2.7%)

Algorithm
egg-herbie
Rules
758×associate-*r*
688×associate-*l*
660×times-frac
616×cancel-sign-sub-inv
442×distribute-rgt-neg-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04159798
110329387
240079080
Stop Event
node limit
Counts
209 → 234
Calls
Call 1
Inputs
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 6) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
1/4
(+.f64 1/4 (*.f64 1/4 (pow.f64 re 2)))
(+.f64 1/4 (+.f64 (*.f64 1/6 (pow.f64 re 4)) (*.f64 1/4 (pow.f64 re 2))))
(+.f64 1/4 (+.f64 (*.f64 17/180 (pow.f64 re 6)) (+.f64 (*.f64 1/6 (pow.f64 re 4)) (*.f64 1/4 (pow.f64 re 2)))))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(+.f64 0 (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24)) (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4)))) 1)
(pow.f64 (*.f64 1/24 (pow.f64 im 4)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) 3)
(pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) 1/3)
(pow.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 8) 1/576))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))
(expm1.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 0 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) 1) (*.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) 1))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) 3) (pow.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) 3)) (fma.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (-.f64 (*.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (*.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))) (-.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))))
(/.f64 (*.f64 (cos.f64 re) (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)))
(/.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4))))
(/.f64 (*.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (cos.f64 re)) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (cos.f64 re)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4))))
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))))
(log.f64 (*.f64 (exp.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (exp.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 3) (pow.f64 (cos.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(fma.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (pow.f64 im 4) (*.f64 1/24 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (cos.f64 re) (*.f64 1/24 (pow.f64 im 4)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 1/2 (pow.f64 im 2)) (cos.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 1 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 1 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (*.f64 (cbrt.f64 (cos.f64 re)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (*.f64 (cbrt.f64 (cos.f64 re)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (*.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) 1 (*.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))) (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (cbrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))) (cbrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (sqrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (sqrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (sqrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (cos.f64 re))) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (cos.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 im (sqrt.f64 1/2))) (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 im (sqrt.f64 1/2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (sqrt.f64 (cos.f64 re))) (*.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (sqrt.f64 (cos.f64 re))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24))) (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (pow.f64 (cbrt.f64 (cos.f64 re)) 2)) (cbrt.f64 (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sqrt.f64 (cos.f64 re))) (sqrt.f64 (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (cos.f64 re) 1/2) (pow.f64 im 2) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4))) (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (cos.f64 re) (*.f64 im (sqrt.f64 1/2))) (*.f64 im (sqrt.f64 1/2)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (pow.f64 (cbrt.f64 (cos.f64 re)) 2)) (cbrt.f64 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sqrt.f64 (cos.f64 re))) (sqrt.f64 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (cos.f64 re) 1/24) (pow.f64 im 4) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (cos.f64 re) (pow.f64 im 4)) 1/24 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576))) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24))) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))) 1)
(-.f64 (/.f64 (*.f64 (pow.f64 im 4) 1/4) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4)))) (/.f64 (*.f64 (pow.f64 im 8) 1/576) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4)))))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 1)
(*.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cbrt.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 2)) (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (/.f64 1 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4))))
(*.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (/.f64 1 (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)) (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))))
(/.f64 1 (/.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4))) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (pow.f64 im 8) 1/576 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (neg.f64 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (neg.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 4) 1/4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 3)
(pow.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 2))
(log.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24) (+.f64 1 (expm1.f64 (*.f64 1/2 (pow.f64 im 2))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (exp.f64 (pow.f64 im 2)) 1/2)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))) (+.f64 1 (expm1.f64 (*.f64 1/2 (pow.f64 im 2))))))
(log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 im 2)) 1/2) (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (pow.f64 im 2)))) (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (pow.f64 im 2)))) (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))))
(cbrt.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(exp.f64 (log.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 1))
(log1p.f64 (expm1.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 im (*.f64 im 1/2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (pow.f64 im 4) 1/24 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 1/24 (pow.f64 im 4)) 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (pow.f64 im 2) 1/2 (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 2) 1/24) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 1/2 (pow.f64 im 2)) 1 (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1/2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (pow.f64 im 8)) (*.f64 (cbrt.f64 (pow.f64 im 4)) 1/24) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 1/2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 1/24 (pow.f64 im 2)) (pow.f64 im 2) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 1/24 (cbrt.f64 (pow.f64 im 8))) (cbrt.f64 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 0 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4)) (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))) 1)
(*.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4) 1)
(*.f64 (pow.f64 (cos.f64 re) -2) 1/4)
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 1 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -4)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -4)) (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))
(*.f64 (*.f64 (pow.f64 (cos.f64 re) -1) -1/2) (*.f64 (pow.f64 (cos.f64 re) -1) -1/2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2))) -2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) -2)) -2) (pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) -2)) -2))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -4))
(log.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4) 3))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))
(exp.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))))
(exp.f64 (*.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))
Outputs
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) 1))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) 1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (fma.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 1/24 (pow.f64 re 4)))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (+.f64 (*.f64 1/24 (pow.f64 re 4)) 1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 6) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))))
(fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (fma.f64 -1/720 (*.f64 (pow.f64 re 6) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (fma.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(+.f64 (*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) (+.f64 (*.f64 1/24 (pow.f64 re 4)) 1)) (*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/720 (pow.f64 re 6)))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (+.f64 (*.f64 1/24 (pow.f64 re 4)) 1) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/720 (pow.f64 re 6)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (cos.f64 re)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (cos.f64 re)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
1/4
(+.f64 1/4 (*.f64 1/4 (pow.f64 re 2)))
(+.f64 1/4 (*.f64 (pow.f64 re 2) 1/4))
(fma.f64 (pow.f64 re 2) 1/4 1/4)
(+.f64 1/4 (+.f64 (*.f64 1/6 (pow.f64 re 4)) (*.f64 1/4 (pow.f64 re 2))))
(+.f64 1/4 (fma.f64 1/6 (pow.f64 re 4) (*.f64 (pow.f64 re 2) 1/4)))
(+.f64 1/4 (fma.f64 (pow.f64 re 4) 1/6 (*.f64 (pow.f64 re 2) 1/4)))
(+.f64 (fma.f64 (pow.f64 re 2) 1/4 1/4) (*.f64 (pow.f64 re 4) 1/6))
(+.f64 1/4 (+.f64 (*.f64 17/180 (pow.f64 re 6)) (+.f64 (*.f64 1/6 (pow.f64 re 4)) (*.f64 1/4 (pow.f64 re 2)))))
(+.f64 1/4 (fma.f64 17/180 (pow.f64 re 6) (fma.f64 1/6 (pow.f64 re 4) (*.f64 (pow.f64 re 2) 1/4))))
(+.f64 1/4 (fma.f64 (pow.f64 re 6) 17/180 (fma.f64 (pow.f64 re 4) 1/6 (*.f64 (pow.f64 re 2) 1/4))))
(+.f64 (fma.f64 (pow.f64 re 6) 17/180 (*.f64 (pow.f64 re 4) 1/6)) (fma.f64 (pow.f64 re 2) 1/4 1/4))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(+.f64 0 (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24)) (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/24) (pow.f64 im 4))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/24) (pow.f64 im 4)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))))
(*.f64 1/24 (pow.f64 im 4))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4)))) 1)
(*.f64 1/24 (pow.f64 im 4))
(pow.f64 (*.f64 1/24 (pow.f64 im 4)) 1)
(*.f64 1/24 (pow.f64 im 4))
(pow.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) 3)
(*.f64 1/24 (pow.f64 im 4))
(pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) 1/3)
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))
(pow.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) 2)
(*.f64 1/24 (pow.f64 im 4))
(sqrt.f64 (*.f64 (pow.f64 im 8) 1/576))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))
(*.f64 1/24 (pow.f64 im 4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 1/24 (pow.f64 im 4))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))
(expm1.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/24 (pow.f64 im 4))
(exp.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/24 (pow.f64 im 4))
(exp.f64 (*.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))) 1))
(*.f64 1/24 (pow.f64 im 4))
(log1p.f64 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 0 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) 1) (*.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) 1))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re)))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))) 1)
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) 3) (pow.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) 3)) (fma.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (-.f64 (*.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (*.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))) 3) (pow.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re)) 3)) (+.f64 (*.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re)) (-.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))))))
(/.f64 (fma.f64 1/13824 (pow.f64 (*.f64 (pow.f64 im 4) (cos.f64 re)) 3) (pow.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re))) 3)) (fma.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 (pow.f64 im 4) (cos.f64 re)) (*.f64 1/24 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 (pow.f64 im 2) -1/2)))))))
(/.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (+.f64 (*.f64 (pow.f64 (cos.f64 re) 2) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (*.f64 (cos.f64 re) (*.f64 (*.f64 1/24 (*.f64 (pow.f64 im 6) -1/2)) (cos.f64 re)))))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))) (-.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))))
(/.f64 (*.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (-.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re)))) (-.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re))))
(/.f64 (fma.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (pow.f64 im 4) 1/4) (*.f64 -1/576 (*.f64 (pow.f64 (cos.f64 re) 2) (pow.f64 im 8)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))) 1)
(/.f64 (*.f64 (cos.f64 re) (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)))
(/.f64 (cos.f64 re) (/.f64 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)) (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (fma.f64 1/24 (pow.f64 im 4) (*.f64 (pow.f64 im 2) -1/2)) (*.f64 (pow.f64 im 4) 1/4))) (cos.f64 re))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (*.f64 (pow.f64 im 4) (+.f64 1/4 (*.f64 1/24 (fma.f64 (pow.f64 im 2) -1/2 (*.f64 1/24 (pow.f64 im 4))))))) (cos.f64 re))
(/.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (/.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)) (cos.f64 re)))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24))) (cos.f64 re))
(/.f64 (*.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (cos.f64 re)) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)))
(/.f64 (cos.f64 re) (/.f64 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)) (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (fma.f64 1/24 (pow.f64 im 4) (*.f64 (pow.f64 im 2) -1/2)) (*.f64 (pow.f64 im 4) 1/4))) (cos.f64 re))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (*.f64 (pow.f64 im 4) (+.f64 1/4 (*.f64 1/24 (fma.f64 (pow.f64 im 2) -1/2 (*.f64 1/24 (pow.f64 im 4))))))) (cos.f64 re))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (cos.f64 re)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (/.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)) (cos.f64 re)))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24))) (cos.f64 re))
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 1)
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))) 3)
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 3) 1/3)
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))) 2)
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 2))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cos.f64 re)))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(log.f64 (*.f64 (exp.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (exp.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 3))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 3)))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 3) (pow.f64 (cos.f64 re) 3)))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))) 1))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (pow.f64 im 4) (*.f64 1/24 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (cos.f64 re) (*.f64 1/24 (pow.f64 im 4)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 1/2 (pow.f64 im 2)) (cos.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 1 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 1 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4)))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (*.f64 (cbrt.f64 (cos.f64 re)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (*.f64 (cbrt.f64 (cos.f64 re)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (*.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) 1 (*.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) 1))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))) (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (cbrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))) (cbrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (sqrt.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (sqrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (sqrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (cos.f64 re))) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 (cos.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 im (sqrt.f64 1/2))) (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 im (sqrt.f64 1/2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (sqrt.f64 (cos.f64 re))) (*.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (sqrt.f64 (cos.f64 re))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24))) (*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (pow.f64 (cbrt.f64 (cos.f64 re)) 2)) (cbrt.f64 (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sqrt.f64 (cos.f64 re))) (sqrt.f64 (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (cos.f64 re) 1/2) (pow.f64 im 2) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4))) (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (cos.f64 re) (*.f64 im (sqrt.f64 1/2))) (*.f64 im (sqrt.f64 1/2)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (pow.f64 (cbrt.f64 (cos.f64 re)) 2)) (cbrt.f64 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sqrt.f64 (cos.f64 re))) (sqrt.f64 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (cos.f64 re) 1/24) (pow.f64 im 4) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (cos.f64 re) (pow.f64 im 4)) 1/24 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576))) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4)))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (cos.f64 re) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24))) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))) 1)
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(-.f64 (/.f64 (*.f64 (pow.f64 im 4) 1/4) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4)))) (/.f64 (*.f64 (pow.f64 im 8) 1/576) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 1)
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cbrt.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 2)))
(*.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))) (cbrt.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 2)) (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (cbrt.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 2)))
(*.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))) (cbrt.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))) 2)))
(*.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (/.f64 1 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)) (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (fma.f64 1/24 (pow.f64 im 4) (*.f64 (pow.f64 im 2) -1/2)) (*.f64 (pow.f64 im 4) 1/4)))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (*.f64 (pow.f64 im 4) (+.f64 1/4 (*.f64 1/24 (fma.f64 (pow.f64 im 2) -1/2 (*.f64 1/24 (pow.f64 im 4)))))))
(*.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (/.f64 1 (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)) (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)) (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (fma.f64 1/24 (pow.f64 im 4) (*.f64 (pow.f64 im 2) -1/2)) (*.f64 (pow.f64 im 4) 1/4)))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (*.f64 (pow.f64 im 4) (+.f64 1/4 (*.f64 1/24 (fma.f64 (pow.f64 im 2) -1/2 (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 1 (/.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4))) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)) (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (fma.f64 1/24 (pow.f64 im 4) (*.f64 (pow.f64 im 2) -1/2)) (*.f64 (pow.f64 im 4) 1/4)))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (*.f64 (pow.f64 im 4) (+.f64 1/4 (*.f64 1/24 (fma.f64 (pow.f64 im 2) -1/2 (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (pow.f64 im 8) 1/576 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (pow.f64 im 8) 1/576 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 1/24 (*.f64 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (pow.f64 im 8) 1/576 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/48)))))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/24 (*.f64 (pow.f64 im 6) -1/2)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (neg.f64 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 4) 1/4)) (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (fma.f64 (*.f64 1/24 (pow.f64 im 4)) (fma.f64 1/24 (pow.f64 im 4) (*.f64 (pow.f64 im 2) -1/2)) (*.f64 (pow.f64 im 4) 1/4)))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (*.f64 (pow.f64 im 4) (+.f64 1/4 (*.f64 1/24 (fma.f64 (pow.f64 im 2) -1/2 (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (neg.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 4) 1/4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/24)))
(pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 1)
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 3)
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(pow.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 3) 1/3)
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(pow.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 2)
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(sqrt.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 2))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(log.f64 (exp.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24) (+.f64 1 (expm1.f64 (*.f64 1/2 (pow.f64 im 2))))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (exp.f64 (pow.f64 im 2)) 1/2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))) (+.f64 1 (expm1.f64 (*.f64 1/2 (pow.f64 im 2))))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 im 2)) 1/2) (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (pow.f64 im 2)))) (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (pow.f64 im 2)))) (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(cbrt.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) 3))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(expm1.f64 (log1p.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(exp.f64 (log.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) 1))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(log1p.f64 (expm1.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 im (*.f64 im 1/2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (pow.f64 im 4) 1/24 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 1/24 (pow.f64 im 4)) 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (pow.f64 im 2) 1/2 (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 2) 1/24) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 1/2 (pow.f64 im 2)) 1 (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (*.f64 1/2 (pow.f64 im 2))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1/2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 1/2 (cbrt.f64 (pow.f64 im 2))) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (pow.f64 im 8)) (*.f64 (cbrt.f64 (pow.f64 im 4)) 1/24) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (pow.f64 im 8)) (*.f64 1/24 (cbrt.f64 (pow.f64 im 4))) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 1/2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 1/2 (cbrt.f64 (pow.f64 im 2))) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 1/24 (pow.f64 im 2)) (pow.f64 im 2) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 1/24 (cbrt.f64 (pow.f64 im 8))) (cbrt.f64 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 (cbrt.f64 (pow.f64 im 8)) (*.f64 1/24 (cbrt.f64 (pow.f64 im 4))) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 0 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4)) (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4))))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))) 1)
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4) 1)
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 (pow.f64 (cos.f64 re) -2) 1/4)
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 1 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -4)))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (cos.f64 re) -2))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -4)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -4)) (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (cos.f64 re) -2))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -4)))
(*.f64 (*.f64 (pow.f64 (cos.f64 re) -1) -1/2) (*.f64 (pow.f64 (cos.f64 re) -1) -1/2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2))) -2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) -2)) -2) (pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) -2)) -2))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) -2)) -4)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -4))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(log.f64 (pow.f64 (exp.f64 (pow.f64 (cos.f64 re) -2)) 1/4))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4) 3))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(exp.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -4))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(exp.f64 (*.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))) 1))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -4))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))

eval108.0ms (2.3%)

Compiler

Compiled 5567 to 3877 computations (30.4% saved)

prune39.0ms (0.8%)

Pruning

8 alts after pruning (4 fresh and 4 done)

PrunedKeptTotal
New2313234
Fresh011
Picked235
Done011
Total2338241
Accuracy
100.0%
Counts
241 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
89.0%
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))
11.9%
(+.f64 (cos.f64 re) (cos.f64 re))
11.1%
(+.f64 1/4 (*.f64 (pow.f64 re 2) 1/4))
79.6%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re))
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
63.3%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
57.4%
(cos.f64 re)
8.5%
1/4
89.0%
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))
11.9%
(+.f64 (cos.f64 re) (cos.f64 re))
11.1%
(+.f64 1/4 (*.f64 (pow.f64 re 2) 1/4))
79.6%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re))
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
63.3%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
57.4%
(cos.f64 re)
8.5%
1/4
Compiler

Compiled 152 to 116 computations (23.7% saved)

localize261.0ms (5.5%)

Localize:

Found 4 expressions with local error:

NewAccuracyProgram
99.9%
(*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))
99.8%
(*.f64 1/24 (pow.f64 im 4))
100.0%
(*.f64 (pow.f64 re 2) 1/4)
99.9%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re))
Compiler

Compiled 110 to 75 computations (31.8% saved)

Operations
Operation ival-pow
Operation ival-mult
Operation ival-fma
Operation ival-cos
Operation ival-add
Operation const

series6.0ms (0.1%)

Counts
3 → 60
Calls

15 calls:

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

rewrite89.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
1382×prod-diff
771×log1p-expm1-u
771×expm1-log1p-u
482×log1p-udef
480×expm1-udef
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02796
131296
2363796
Stop Event
node limit
Counts
3 → 53
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re))
(*.f64 (pow.f64 re 2) 1/4)
(*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))
Outputs
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (cos.f64 re) (*.f64 (*.f64 1/2 (pow.f64 im 2)) (cos.f64 re)))
(+.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (cos.f64 re))
(+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (cos.f64 re)) (cos.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)))) 1)
(/.f64 (*.f64 (cos.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (-.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(/.f64 (*.f64 (cos.f64 re) (+.f64 (*.f64 1/4 (pow.f64 im 4)) -1)) (fma.f64 1/2 (pow.f64 im 2) -1))
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (cos.f64 re)) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (-.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(/.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) -1) (cos.f64 re)) (fma.f64 1/2 (pow.f64 im 2) -1))
(pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) (cos.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3) (pow.f64 (cos.f64 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 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) (cos.f64 re))))
(exp.f64 (log.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 1/2 re) 2))) 1)
(pow.f64 (pow.f64 (*.f64 1/2 re) 2) 1)
(pow.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 re) 2)) 3)
(pow.f64 (pow.f64 (pow.f64 (*.f64 1/2 re) 2) 3) 1/3)
(pow.f64 (*.f64 1/2 re) 2)
(sqrt.f64 (*.f64 (pow.f64 re 4) 1/16))
(log.f64 (pow.f64 (exp.f64 (pow.f64 re 2)) 1/4))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 1/2 re) 2))))
(cbrt.f64 (pow.f64 (pow.f64 (*.f64 1/2 re) 2) 3))
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 1/2 re) 2)))
(exp.f64 (log.f64 (pow.f64 (*.f64 1/2 re) 2)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 1/2 re) 2)) 1))
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 1/2 re) 2)))
(+.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (cos.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (cos.f64 re)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))) 1)
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))) 3) (pow.f64 (cos.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))))

simplify89.0ms (1.9%)

Algorithm
egg-herbie
Rules
1334×log-prod
1246×fma-def
1152×unswap-sqr
874×associate-+r+
834×distribute-lft-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01844289
14774131
216954015
375124015
Stop Event
node limit
Counts
113 → 100
Calls
Call 1
Inputs
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 6) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 1/2 (pow.f64 im 2))))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 1/4 (pow.f64 re 2))
(*.f64 1/4 (pow.f64 re 2))
(*.f64 1/4 (pow.f64 re 2))
(*.f64 1/4 (pow.f64 re 2))
(*.f64 1/4 (pow.f64 re 2))
(*.f64 1/4 (pow.f64 re 2))
(*.f64 1/4 (pow.f64 re 2))
(*.f64 1/4 (pow.f64 re 2))
(*.f64 1/4 (pow.f64 re 2))
(*.f64 1/4 (pow.f64 re 2))
(*.f64 1/4 (pow.f64 re 2))
(*.f64 1/4 (pow.f64 re 2))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 6) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (cos.f64 re) (*.f64 (*.f64 1/2 (pow.f64 im 2)) (cos.f64 re)))
(+.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (cos.f64 re))
(+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (cos.f64 re)) (cos.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)))) 1)
(/.f64 (*.f64 (cos.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (-.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(/.f64 (*.f64 (cos.f64 re) (+.f64 (*.f64 1/4 (pow.f64 im 4)) -1)) (fma.f64 1/2 (pow.f64 im 2) -1))
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (cos.f64 re)) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (-.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(/.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) -1) (cos.f64 re)) (fma.f64 1/2 (pow.f64 im 2) -1))
(pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) (cos.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3) (pow.f64 (cos.f64 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 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) (cos.f64 re))))
(exp.f64 (log.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 1/2 re) 2))) 1)
(pow.f64 (pow.f64 (*.f64 1/2 re) 2) 1)
(pow.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 re) 2)) 3)
(pow.f64 (pow.f64 (pow.f64 (*.f64 1/2 re) 2) 3) 1/3)
(pow.f64 (*.f64 1/2 re) 2)
(sqrt.f64 (*.f64 (pow.f64 re 4) 1/16))
(log.f64 (pow.f64 (exp.f64 (pow.f64 re 2)) 1/4))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 1/2 re) 2))))
(cbrt.f64 (pow.f64 (pow.f64 (*.f64 1/2 re) 2) 3))
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 1/2 re) 2)))
(exp.f64 (log.f64 (pow.f64 (*.f64 1/2 re) 2)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 1/2 re) 2)) 1))
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 1/2 re) 2)))
(+.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (cos.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (cos.f64 re)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))) 1)
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))) 3) (pow.f64 (cos.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))))
Outputs
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 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 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 1 (fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 1/2 (pow.f64 im 2) 1)) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 (pow.f64 re 2) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) -1/2)) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (fma.f64 -1/2 (pow.f64 re 2) 1) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 1 (fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 1/2 (pow.f64 im 2) 1)) (fma.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/2 (pow.f64 im 2) 1)) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 1/24 (pow.f64 re 4)))) (fma.f64 1/2 (pow.f64 im 2) 1))
(fma.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (fma.f64 -1/2 (pow.f64 re 2) (*.f64 1/24 (pow.f64 re 4))) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 6) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 1/2 (pow.f64 im 2))))))
(+.f64 1 (fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 1/2 (pow.f64 im 2) 1)) (fma.f64 -1/720 (*.f64 (pow.f64 re 6) (fma.f64 1/2 (pow.f64 im 2) 1)) (fma.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/2 (pow.f64 im 2) 1)) (*.f64 1/2 (pow.f64 im 2))))))
(+.f64 1 (+.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 (*.f64 -1/720 (pow.f64 re 6)) (*.f64 1/24 (pow.f64 re 4)))) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 re 2) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) -1/2)))))
(+.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 (fma.f64 -1/2 (pow.f64 re 2) (*.f64 -1/720 (pow.f64 re 6))) (*.f64 1/24 (pow.f64 re 4)))) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 re 2) 1/4)
(*.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 re 2) 1/4)
(*.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 re 2) 1/4)
(*.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 re 2) 1/4)
(*.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 re 2) 1/4)
(*.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 re 2) 1/4)
(*.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 re 2) 1/4)
(*.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 re 2) 1/4)
(*.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 re 2) 1/4)
(*.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 re 2) 1/4)
(*.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 re 2) 1/4)
(*.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 re 2) 1/4)
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 re 2)) 1) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) (fma.f64 -1/2 (pow.f64 re 2) 1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (fma.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 1/24 (pow.f64 re 4)))))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (fma.f64 1/24 (pow.f64 re 4) 1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 6) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))))
(fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (fma.f64 -1/720 (*.f64 (pow.f64 re 6) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (fma.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))))
(+.f64 (*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) (+.f64 (*.f64 -1/720 (pow.f64 re 6)) (*.f64 1/24 (pow.f64 re 4)))) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 re 2)) 1) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) (fma.f64 -1/2 (pow.f64 re 2) (*.f64 -1/720 (pow.f64 re 6))) (*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) (fma.f64 1/24 (pow.f64 re 4) 1)))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))
(*.f64 (cos.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))
(*.f64 (cos.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (cos.f64 re) (*.f64 (*.f64 1/2 (pow.f64 im 2)) (cos.f64 re)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (cos.f64 re)) (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)))) 1)
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(/.f64 (*.f64 (cos.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (-.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(/.f64 (*.f64 (cos.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))))
(*.f64 (/.f64 (cos.f64 re) (+.f64 (fma.f64 1/4 (pow.f64 im 4) 1) (*.f64 (pow.f64 im 2) -1/2))) (fma.f64 (pow.f64 im 6) 1/8 1))
(*.f64 (fma.f64 (pow.f64 im 6) 1/8 1) (/.f64 (cos.f64 re) (fma.f64 1/4 (pow.f64 im 4) (fma.f64 (pow.f64 im 2) -1/2 1))))
(/.f64 (*.f64 (cos.f64 re) (+.f64 (*.f64 1/4 (pow.f64 im 4)) -1)) (fma.f64 1/2 (pow.f64 im 2) -1))
(/.f64 (cos.f64 re) (/.f64 (fma.f64 1/2 (pow.f64 im 2) -1) (fma.f64 1/4 (pow.f64 im 4) -1)))
(*.f64 (/.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) -1)) (fma.f64 1/4 (pow.f64 im 4) -1))
(/.f64 (*.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (cos.f64 re)) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (-.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(/.f64 (*.f64 (cos.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))))
(*.f64 (/.f64 (cos.f64 re) (+.f64 (fma.f64 1/4 (pow.f64 im 4) 1) (*.f64 (pow.f64 im 2) -1/2))) (fma.f64 (pow.f64 im 6) 1/8 1))
(*.f64 (fma.f64 (pow.f64 im 6) 1/8 1) (/.f64 (cos.f64 re) (fma.f64 1/4 (pow.f64 im 4) (fma.f64 (pow.f64 im 2) -1/2 1))))
(/.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) -1) (cos.f64 re)) (fma.f64 1/2 (pow.f64 im 2) -1))
(/.f64 (cos.f64 re) (/.f64 (fma.f64 1/2 (pow.f64 im 2) -1) (fma.f64 1/4 (pow.f64 im 4) -1)))
(*.f64 (/.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) -1)) (fma.f64 1/4 (pow.f64 im 4) -1))
(pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)) 1)
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))) 3)
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(pow.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)) 3) 1/3)
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))) 2)
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)) 2))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) (cos.f64 re)))
(*.f64 (cos.f64 re) (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) (cos.f64 re)))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re)) 3))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3) (pow.f64 (cos.f64 re) 3)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(exp.f64 (log.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))) 1))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 1/2 re) 2))) 1)
(*.f64 (pow.f64 re 2) 1/4)
(pow.f64 (pow.f64 (*.f64 1/2 re) 2) 1)
(*.f64 (pow.f64 re 2) 1/4)
(pow.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 re) 2)) 3)
(*.f64 (pow.f64 re 2) 1/4)
(pow.f64 (pow.f64 (pow.f64 (*.f64 1/2 re) 2) 3) 1/3)
(*.f64 (pow.f64 re 2) 1/4)
(pow.f64 (*.f64 1/2 re) 2)
(*.f64 (pow.f64 re 2) 1/4)
(sqrt.f64 (*.f64 (pow.f64 re 4) 1/16))
(sqrt.f64 (pow.f64 (*.f64 re 1/2) 4))
(log.f64 (pow.f64 (exp.f64 (pow.f64 re 2)) 1/4))
(*.f64 (pow.f64 re 2) 1/4)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 1/2 re) 2))))
(*.f64 (pow.f64 re 2) 1/4)
(cbrt.f64 (pow.f64 (pow.f64 (*.f64 1/2 re) 2) 3))
(*.f64 (pow.f64 re 2) 1/4)
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 1/2 re) 2)))
(*.f64 (pow.f64 re 2) 1/4)
(exp.f64 (log.f64 (pow.f64 (*.f64 1/2 re) 2)))
(*.f64 (pow.f64 re 2) 1/4)
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 1/2 re) 2)) 1))
(*.f64 (pow.f64 re 2) 1/4)
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 1/2 re) 2)))
(*.f64 (pow.f64 re 2) 1/4)
(+.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (cos.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (cos.f64 re)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (cos.f64 re)))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))) 1)
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))) 1)
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))) 3)
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))) 3) 1/3)
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))) 2)
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))) 2))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))) 3))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))) 3)))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))) 3) (pow.f64 (cos.f64 re) 3)))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))) 1))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))

eval54.0ms (1.1%)

Compiler

Compiled 2251 to 1663 computations (26.1% saved)

prune25.0ms (0.5%)

Pruning

10 alts after pruning (3 fresh and 7 done)

PrunedKeptTotal
New1162118
Fresh011
Picked033
Done044
Total11610126
Accuracy
100.0%
Counts
126 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
89.0%
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))
11.9%
(+.f64 (cos.f64 re) (cos.f64 re))
49.6%
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
11.1%
(+.f64 1/4 (*.f64 (pow.f64 re 2) 1/4))
79.6%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re))
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
25.8%
(*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
63.3%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
57.4%
(cos.f64 re)
8.5%
1/4
89.0%
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))
11.9%
(+.f64 (cos.f64 re) (cos.f64 re))
49.6%
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
11.1%
(+.f64 1/4 (*.f64 (pow.f64 re 2) 1/4))
79.6%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re))
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
25.8%
(*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
63.3%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
57.4%
(cos.f64 re)
8.5%
1/4
Compiler

Compiled 190 to 148 computations (22.1% saved)

localize93.0ms (2%)

Localize:

Found 1 expressions with local error:

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

Compiled 44 to 32 computations (27.3% saved)

Operations
Operation ival-pow
Operation ival-mult
Operation ival-cos
Operation ival-add
Operation const

series5.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

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

rewrite53.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
864×unpow-prod-down
634×log-prod
508×log1p-expm1-u
508×expm1-log1p-u
466×exp-prod
Iterations

Useful iterations: 0 (0.0ms)

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

simplify64.0ms (1.4%)

Algorithm
egg-herbie
Rules
1894×fma-def
778×log-prod
712×*-commutative
562×distribute-rgt-out
504×exp-sum
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0921651
12131607
25341547
318131505
455281505
Stop Event
node limit
Counts
45 → 50
Calls
Call 1
Inputs
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2))) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 im 2) (pow.f64 re 4))) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 im 2) (pow.f64 re 6))) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 im 2) (pow.f64 re 4))) (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(+.f64 0 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re)))))
(-.f64 (+.f64 1 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)) 1)
(pow.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2) 1)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2))) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2))) 6) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2))) 2)
(pow.f64 (E.f64) (log.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2))) 2)) (cbrt.f64 (log.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)))) (sqrt.f64 (log.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2))))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2))) 4))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2))) 6))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)))
(exp.f64 (log.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2))) 6)) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2)))) 2))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)))
Outputs
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2))) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 -1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2)) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 (*.f64 -1/4 (pow.f64 re 2)) (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (pow.f64 im 2) (fma.f64 -1/4 (pow.f64 re 2) 1/2))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 im 2) (pow.f64 re 4))) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 -1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2)) (fma.f64 1/48 (*.f64 (pow.f64 im 2) (pow.f64 re 4)) (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 -1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 4) 1/48))))
(fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1/4 (pow.f64 re 2)) (*.f64 1/48 (pow.f64 re 4)))))
(*.f64 (pow.f64 im 2) (+.f64 1/2 (fma.f64 -1/4 (pow.f64 re 2) (*.f64 1/48 (pow.f64 re 4)))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 im 2) (pow.f64 re 6))) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 im 2) (pow.f64 re 4))) (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 -1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2)) (fma.f64 -1/1440 (*.f64 (pow.f64 im 2) (pow.f64 re 6)) (fma.f64 1/48 (*.f64 (pow.f64 im 2) (pow.f64 re 4)) (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 -1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2)) (fma.f64 -1/1440 (*.f64 (pow.f64 im 2) (pow.f64 re 6)) (fma.f64 1/2 (pow.f64 im 2) (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 4) 1/48)))))
(+.f64 (*.f64 (pow.f64 im 2) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/48 (pow.f64 re 4)) (*.f64 -1/1440 (pow.f64 re 6)))))
(*.f64 (pow.f64 im 2) (+.f64 (fma.f64 -1/1440 (pow.f64 re 6) (*.f64 -1/4 (pow.f64 re 2))) (fma.f64 1/48 (pow.f64 re 4) 1/2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(+.f64 0 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re))))) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re)))))
(*.f64 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re)))) 3)
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re)))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re)))))
(*.f64 (cos.f64 re) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2)))))
(-.f64 (+.f64 1 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)) 1)
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(pow.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2) 1)
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)) 3)
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2))) 4) 1/2)
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2))) 6) 1/3)
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2))) 2)
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(pow.f64 (E.f64) (log.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2))) 2)) (cbrt.f64 (log.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))) 2)) (cbrt.f64 (log.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re))))) 2)) (cbrt.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (fma.f64 2 (log.f64 im) (log.f64 (*.f64 1/2 (cos.f64 re))))) 2)) (cbrt.f64 (fma.f64 2 (log.f64 im) (log.f64 (*.f64 1/2 (cos.f64 re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)))) (sqrt.f64 (log.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))))) (sqrt.f64 (log.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))))) (sqrt.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re))))))
(pow.f64 (exp.f64 (sqrt.f64 (fma.f64 2 (log.f64 im) (log.f64 (*.f64 1/2 (cos.f64 re)))))) (sqrt.f64 (fma.f64 2 (log.f64 im) (log.f64 (*.f64 1/2 (cos.f64 re))))))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2))) 4))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re)))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2))) (cos.f64 re)))))
(*.f64 (cos.f64 re) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 im 2)))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2))) 6))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(exp.f64 (log.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2))) 3))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2))) 6)) 1/3))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (*.f64 (cos.f64 re) 1/2)))) 2))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (cos.f64 re) (pow.f64 im 2)) 1/2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (cos.f64 re)))

eval18.0ms (0.4%)

Compiler

Compiled 818 to 615 computations (24.8% saved)

prune15.0ms (0.3%)

Pruning

12 alts after pruning (3 fresh and 9 done)

PrunedKeptTotal
New48250
Fresh011
Picked022
Done077
Total481260
Accuracy
100.0%
Counts
60 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
89.0%
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))
11.9%
(+.f64 (cos.f64 re) (cos.f64 re))
49.6%
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
11.1%
(+.f64 1/4 (*.f64 (pow.f64 re 2) 1/4))
23.9%
(*.f64 (pow.f64 im 2) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
79.6%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re))
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
25.8%
(*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
22.4%
(*.f64 1/2 (pow.f64 im 2))
63.3%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
57.4%
(cos.f64 re)
8.5%
1/4
Compiler

Compiled 231 to 167 computations (27.7% saved)

regimes44.0ms (0.9%)

Counts
14 → 1
Calls
Call 1
Inputs
1/4
(cos.f64 re)
(*.f64 1/2 (pow.f64 im 2))
(+.f64 1/4 (*.f64 (pow.f64 re 2) 1/4))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (cos.f64 re))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re))
(*.f64 (pow.f64 im 2) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (fma.f64 (*.f64 1/2 im) im (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
Outputs
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Calls

6 calls:

8.0ms
im
7.0ms
re
7.0ms
(*.f64 1/2 (cos.f64 re))
6.0ms
(cos.f64 re)
5.0ms
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
100.0%1re
100.0%1im
100.0%1(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
100.0%1(*.f64 1/2 (cos.f64 re))
100.0%1(cos.f64 re)
100.0%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Compiler

Compiled 153 to 104 computations (32% saved)

regimes51.0ms (1.1%)

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

3 calls:

20.0ms
im
18.0ms
re
10.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
88.8%2re
93.0%3im
89.0%2(cos.f64 re)
Compiler

Compiled 82 to 59 computations (28% saved)

regimes19.0ms (0.4%)

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

1 calls:

16.0ms
im
Results
AccuracySegmentsBranch
92.8%3im
Compiler

Compiled 54 to 38 computations (29.6% saved)

regimes13.0ms (0.3%)

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

1 calls:

11.0ms
im
Results
AccuracySegmentsBranch
90.0%2im
Compiler

Compiled 46 to 33 computations (28.3% saved)

regimes76.0ms (1.6%)

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

3 calls:

52.0ms
re
14.0ms
im
8.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
71.2%2re
71.4%2(cos.f64 re)
78.4%3im
Compiler

Compiled 45 to 32 computations (28.9% saved)

regimes11.0ms (0.2%)

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

1 calls:

10.0ms
im
Results
AccuracySegmentsBranch
78.4%3im
Compiler

Compiled 20 to 16 computations (20% saved)

regimes35.0ms (0.7%)

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

1 calls:

34.0ms
im
Results
AccuracySegmentsBranch
76.4%2im
Compiler

Compiled 13 to 10 computations (23.1% saved)

regimes10.0ms (0.2%)

Counts
2 → 1
Calls
Call 1
Inputs
1/4
(cos.f64 re)
Outputs
(cos.f64 re)
Calls

3 calls:

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

Compiled 15 to 11 computations (26.7% saved)

regimes34.0ms (0.7%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
1/4
Outputs
1/4
Calls

2 calls:

31.0ms
im
3.0ms
re
Results
AccuracySegmentsBranch
8.5%1re
8.5%1im
Compiler

Compiled 9 to 7 computations (22.2% saved)

bsearch87.0ms (1.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
35.0ms
4.918400454450635e+147
1.0743022501049786e+154
51.0ms
0.0012392511232672736
24.59503065802183
Results
49.0ms128×body256valid
33.0ms144×body256infinite
Compiler

Compiled 426 to 354 computations (16.9% saved)

Operations
Operation ival-neg
Operation ival-mult
Operation ival-exp
Operation ival-cos
Operation ival-add
Operation const

bsearch53.0ms (1.1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
28.0ms
4.918400454450635e+147
1.0743022501049786e+154
25.0ms
0.0012392511232672736
24.59503065802183
Results
26.0ms144×body256infinite
23.0ms128×body256valid
Compiler

Compiled 344 to 280 computations (18.6% saved)

Operations
Operation ival-neg
Operation ival-mult
Operation ival-exp
Operation ival-cos
Operation ival-add
Operation const

bsearch28.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
27.0ms
0.0012392511232672736
24.59503065802183
Results
26.0ms128×body256valid
Compiler

Compiled 146 to 118 computations (19.2% saved)

Operations
Operation ival-neg
Operation ival-mult
Operation ival-exp
Operation ival-cos
Operation ival-add
Operation const

bsearch40.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
22.0ms
1.0743022501049786e+154
1.792093737685778e+156
18.0ms
7.264478875688729e+38
9.4222099100362e+39
Results
37.0ms208×body256infinite
Compiler

Compiled 248 to 218 computations (12.1% saved)

Operations
Operation ival-neg
Operation ival-mult
Operation ival-exp
Operation ival-cos
Operation ival-add
Operation const

bsearch38.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
21.0ms
1.0743022501049786e+154
1.792093737685778e+156
18.0ms
7.264478875688729e+38
9.4222099100362e+39
Results
35.0ms208×body256infinite
Compiler

Compiled 234 to 204 computations (12.8% saved)

Operations
Operation ival-neg
Operation ival-mult
Operation ival-exp
Operation ival-cos
Operation ival-add
Operation const

bsearch27.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
27.0ms
9.412787895486493e+101
2.6551922487472627e+107
Results
25.0ms144×body256infinite
Compiler

Compiled 135 to 113 computations (16.3% saved)

Operations
Operation ival-neg
Operation ival-mult
Operation ival-exp
Operation ival-cos
Operation ival-add
Operation const

simplify11.0ms (0.2%)

Algorithm
egg-herbie
Rules
16×*-commutative
+-commutative
sub-neg
1-exp
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
061475
181475
283475
384475
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 im 1261007895663739/36028797018963968) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re)) (if (<=.f64 im 10499999999999999718094661413780068350042817471749844014203039470325746486893213012200170839883152606401165003567092279881313941182142490834109641139421184) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re))))
(if (<=.f64 im 662929865148937/288230376151711744) (cos.f64 re) (if (<=.f64 im 10499999999999999718094661413780068350042817471749844014203039470325746486893213012200170839883152606401165003567092279881313941182142490834109641139421184) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))))
(if (<=.f64 im 5188146770730811/1152921504606846976) (cos.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(if (<=.f64 im 820000000000000068431783837140950974464) (cos.f64 re) (if (<=.f64 im 11600000000000000071335760215698729032575010549505529878728621515464057655284712031503332313760926386548528387448122149658636303973553370947486190743322624) (+.f64 1/4 (*.f64 (pow.f64 re 2) 1/4)) (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(if (<=.f64 im 749999999999999992560806641659545649152) (cos.f64 re) (if (<=.f64 im 12000000000000000741083689728179300860774047506737883413558835600106129882515049101049668142894279387343668476782235654465533253946114566581028258018492416) (+.f64 1/4 (*.f64 (pow.f64 re 2) 1/4)) (*.f64 1/2 (pow.f64 im 2))))
(if (<=.f64 im 949999999999999947114335326371404662313110074751639999544986751161161439542751859915629666474099998720) (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(cos.f64 re)
1/4
Outputs
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 im 1261007895663739/36028797018963968) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re)) (if (<=.f64 im 10499999999999999718094661413780068350042817471749844014203039470325746486893213012200170839883152606401165003567092279881313941182142490834109641139421184) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (cos.f64 re))))
(if (or (<=.f64 im 1261007895663739/36028797018963968) (not (<=.f64 im 10499999999999999718094661413780068350042817471749844014203039470325746486893213012200170839883152606401165003567092279881313941182142490834109641139421184))) (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(if (<=.f64 im 662929865148937/288230376151711744) (cos.f64 re) (if (<=.f64 im 10499999999999999718094661413780068350042817471749844014203039470325746486893213012200170839883152606401165003567092279881313941182142490834109641139421184) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))))
(if (<=.f64 im 662929865148937/288230376151711744) (cos.f64 re) (if (<=.f64 im 10499999999999999718094661413780068350042817471749844014203039470325746486893213012200170839883152606401165003567092279881313941182142490834109641139421184) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))))
(if (<=.f64 im 5188146770730811/1152921504606846976) (cos.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(if (<=.f64 im 5188146770730811/1152921504606846976) (cos.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(if (<=.f64 im 820000000000000068431783837140950974464) (cos.f64 re) (if (<=.f64 im 11600000000000000071335760215698729032575010549505529878728621515464057655284712031503332313760926386548528387448122149658636303973553370947486190743322624) (+.f64 1/4 (*.f64 (pow.f64 re 2) 1/4)) (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(if (<=.f64 im 820000000000000068431783837140950974464) (cos.f64 re) (if (<=.f64 im 11600000000000000071335760215698729032575010549505529878728621515464057655284712031503332313760926386548528387448122149658636303973553370947486190743322624) (+.f64 1/4 (*.f64 1/4 (pow.f64 re 2))) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))
(if (<=.f64 im 749999999999999992560806641659545649152) (cos.f64 re) (if (<=.f64 im 12000000000000000741083689728179300860774047506737883413558835600106129882515049101049668142894279387343668476782235654465533253946114566581028258018492416) (+.f64 1/4 (*.f64 (pow.f64 re 2) 1/4)) (*.f64 1/2 (pow.f64 im 2))))
(if (<=.f64 im 749999999999999992560806641659545649152) (cos.f64 re) (if (<=.f64 im 12000000000000000741083689728179300860774047506737883413558835600106129882515049101049668142894279387343668476782235654465533253946114566581028258018492416) (+.f64 1/4 (*.f64 1/4 (pow.f64 re 2))) (*.f64 1/2 (pow.f64 im 2))))
(if (<=.f64 im 949999999999999947114335326371404662313110074751639999544986751161161439542751859915629666474099998720) (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(cos.f64 re)
1/4
Compiler

Compiled 156 to 121 computations (22.4% saved)

soundness295.0ms (6.3%)

Rules
1334×log-prod
1246×fma-def
1152×unswap-sqr
1092×fma-neg
902×div-sub
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01644
120244
2326644
0961302
12821140
28691140
342471140
01844289
14774131
216954015
375124015
04159798
110329387
240079080
Stop Event
node limit
node limit
node limit
unsound
Compiler

Compiled 42 to 32 computations (23.8% saved)

end0.0ms (0%)

preprocess99.0ms (2.1%)

Remove

(abs im)

(abs re)

Compiler

Compiled 514 to 352 computations (31.5% saved)

Profiling

Loading profile data...