math.cos on complex, real part

Time bar (total: 7.2s)

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)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
Operation ival-exp, time spent: 0.0ms, 0.0% of total-time
Operation ival-add, time spent: 0.0ms, 0.0% of total-time
Operation ival-cos, time spent: 0.0ms, 0.0% of total-time
Operation ival-mult, time spent: 0.0ms, 0.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time
Operation ival-neg, time spent: 0.0ms, 0.0% of total-time

sample1.7s (24%)

Results
905.0ms4166×256valid
737.0ms4089×256infinite
0.0ms256valid
Precisions
Click to see histograms. Total time spent on operations: 915.0ms
Operation ival-cos, time spent: 388.0ms, 42.0% of total-time
Operation ival-exp, time spent: 232.0ms, 25.0% of total-time
Operation ival-mult, time spent: 152.0ms, 17.0% of total-time
Operation ival-add, time spent: 87.0ms, 10.0% of total-time
Operation ival-neg, time spent: 41.0ms, 4.0% of total-time
Operation const, time spent: 15.0ms, 2.0% of total-time
Bogosity

preprocess495.0ms (6.8%)

Algorithm
egg-herbie
Rules
1660×fma-define
824×fma-neg
204×times-frac
192×associate-*r*
174×distribute-lft-neg-in
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-re
00-0-(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
00-0-im
00-0-1/2
00-0-(cos.f64 re)
00-0-(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
00-0-(*.f64 1/2 (cos.f64 re))
00-0-(neg.f64 im)
00-0-(exp.f64 (neg.f64 im))
00-0-(exp.f64 im)
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
032316
1100308
2280308
3673298
41117294
51661294
62231294
72749294
82903294
92917294
102917294
112917294
Stop Event
saturated
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) (fma.f64 1/2 (exp.f64 re) (/.f64 1/2 (exp.f64 re))))
Symmetry

(abs re)

(abs im)

Compiler

Compiled 85 to 38 computations (55.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 41.0ms
Operation ival-cos, time spent: 14.0ms, 34.0% of total-time
Operation ival-mult, time spent: 13.0ms, 31.0% of total-time
Operation ival-exp, time spent: 7.0ms, 17.0% of total-time
Operation ival-add, time spent: 3.0ms, 7.0% of total-time
Operation const, time spent: 2.0ms, 5.0% of total-time
Operation ival-neg, time spent: 2.0ms, 5.0% of total-time

eval43.0ms (0.6%)

Compiler

Compiled 35 to 18 computations (48.6% saved)

prune4.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 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
Compiler

Compiled 26 to 19 computations (26.9% saved)

localize222.0ms (3.1%)

Localize:

Found 5 expressions with local error:

NewAccuracyProgram
100.0%
(+.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)))
100.0%
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
100.0%
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
100.0%
(/.f64 1/2 (exp.f64 im))
Compiler

Compiled 66 to 26 computations (60.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 155.0ms
Operation ival-exp, time spent: 74.0ms, 48.0% of total-time
Operation ival-div, time spent: 47.0ms, 30.0% of total-time
Operation ival-mult, time spent: 11.0ms, 7.0% of total-time
Operation composed, time spent: 9.0ms, 6.0% of total-time
Operation ival-cos, time spent: 7.0ms, 5.0% of total-time
Operation ival-add, time spent: 4.0ms, 3.0% of total-time
Operation const, time spent: 2.0ms, 1.0% of total-time
Operation ival-neg, time spent: 1.0ms, 1.0% of total-time

series19.0ms (0.3%)

Counts
5 → 76
Calls
Call 1
Inputs
#<alt (/.f64 1/2 (exp.f64 im))>
#<alt (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))>
#<alt (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))>
#<alt (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))>
#<alt (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))>
Outputs
#<alt 1/2>
#<alt (+.f64 1/2 (*.f64 -1/2 im))>
#<alt (+.f64 1/2 (*.f64 im (-.f64 (*.f64 1/4 im) 1/2)))>
#<alt (+.f64 1/2 (*.f64 im (-.f64 (*.f64 im (+.f64 1/4 (*.f64 -1/12 im))) 1/2)))>
#<alt (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))>
#<alt (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))))))))>
#<alt (+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 1/24 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (cos.f64 re)>
#<alt (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))>
#<alt (+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))>
#<alt (+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 1/24 (cos.f64 re)))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))>
#<alt 1>
#<alt (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))>
#<alt (+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/2 (*.f64 1/24 (pow.f64 im 2)))))>
#<alt (+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/2 (*.f64 (pow.f64 im 2) (+.f64 1/24 (*.f64 1/720 (pow.f64 im 2)))))))>
#<alt (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))>
#<alt (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))>
#<alt (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))>
#<alt (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))>
#<alt (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))>
#<alt (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))>
#<alt (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))>
#<alt (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))>
#<alt (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))>
#<alt (+.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)))))>
#<alt (+.f64 (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/4 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 1/48 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))>
#<alt (+.f64 (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/4 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/48 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (cos.f64 re)>
#<alt (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))>
#<alt (+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))>
#<alt (+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 1/24 (cos.f64 re)))))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))>
#<alt 2>
#<alt (+.f64 2 (pow.f64 im 2))>
#<alt (+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 1/12 (pow.f64 im 2)))))>
#<alt (+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/360 (pow.f64 im 2)))))))>
#<alt (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))>
#<alt (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))>
#<alt (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))>
#<alt (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))>
#<alt (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))>
#<alt (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))>
#<alt (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))>
#<alt (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))>
Calls

21 calls:

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

rewrite349.0ms (4.8%)

Algorithm
batch-egg-rewrite
Rules
268×associate-*r*
166×associate-*l*
120×add-exp-log
120×add-log-exp
120×log1p-expm1-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
020126
1270126
24381126
Stop Event
unsound
Counts
5 → 64
Calls
Call 1
Inputs
(/.f64 1/2 (exp.f64 im))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(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 (exp.f64 (neg.f64 im)) (exp.f64 im))
Outputs
-1/2
-1/4
0
1/4
1/2
2
(+.f64 (cos.f64 re) (cos.f64 re))
(+.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (cos.f64 re)))) -1)
(/.f64 (*.f64 -1/2 (cos.f64 re)) -1/2)
(/.f64 (*.f64 -1/2 (cos.f64 re)) -1)
(/.f64 (*.f64 -1/2 (cos.f64 re)) (+.f64 (*.f64 -1/2 (cos.f64 re)) (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))))
(/.f64 (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re))) (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re))))
(pow.f64 (*.f64 -1/2 (cos.f64 re)) -1/2)
(pow.f64 (*.f64 -1/2 (cos.f64 re)) -1)
(pow.f64 (*.f64 -1/2 (cos.f64 re)) 3)
(pow.f64 (*.f64 -1/2 (cos.f64 re)) 1/3)
(sqrt.f64 (*.f64 -1/2 (cos.f64 re)))
(fabs.f64 (*.f64 -1/2 (cos.f64 re)))
(log.f64 (pow.f64 -1 (cos.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 -1/2 (cos.f64 re)))))
(cbrt.f64 (*.f64 -1/2 (cos.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (cos.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (cos.f64 re))))
(exp.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))) -1))
(exp.f64 (+.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))) -1/2))
(fma.f64 -1 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))
(fma.f64 (*.f64 -1/2 (cos.f64 re)) -1 (*.f64 -1/2 (cos.f64 re)))
-1/2
-1/4
0
1/4
1/2
2
(+.f64 (cos.f64 re) (cos.f64 re))
(+.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (cos.f64 re)))) -1)
(/.f64 (*.f64 -1/2 (cos.f64 re)) -1/2)
(/.f64 (*.f64 -1/2 (cos.f64 re)) -1)
(/.f64 (*.f64 -1/2 (cos.f64 re)) (+.f64 (*.f64 -1/2 (cos.f64 re)) (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))))
(/.f64 (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re))) (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re))))
(pow.f64 (*.f64 -1/2 (cos.f64 re)) -1/2)
(pow.f64 (*.f64 -1/2 (cos.f64 re)) -1)
(pow.f64 (*.f64 -1/2 (cos.f64 re)) 3)
(pow.f64 (*.f64 -1/2 (cos.f64 re)) 1/3)
(sqrt.f64 (*.f64 -1/2 (cos.f64 re)))
(fabs.f64 (*.f64 -1/2 (cos.f64 re)))
(log.f64 (pow.f64 -1 (cos.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 -1/2 (cos.f64 re)))))
(cbrt.f64 (*.f64 -1/2 (cos.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (cos.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (cos.f64 re))))
(exp.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))) -1))
(exp.f64 (+.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))) -1/2))
(fma.f64 -1 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))
(fma.f64 (*.f64 -1/2 (cos.f64 re)) -1 (*.f64 -1/2 (cos.f64 re)))
-1/2
-1/4
0
1/4
1/2
2

simplify108.0ms (1.5%)

Algorithm
egg-herbie
Rules
1552×div-sub
726×associate-+l+
664×distribute-rgt-in
664×distribute-lft-in
662×associate-+r+
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01631743
15221371
218731301
346591301
471751301
Stop Event
node limit
Counts
140 → 79
Calls
Call 1
Inputs
1/2
(+.f64 1/2 (*.f64 -1/2 im))
(+.f64 1/2 (*.f64 im (-.f64 (*.f64 1/4 im) 1/2)))
(+.f64 1/2 (*.f64 im (-.f64 (*.f64 im (+.f64 1/4 (*.f64 -1/12 im))) 1/2)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))))))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 1/24 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))))))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (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 (pow.f64 im 2) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 1/24 (cos.f64 re)))))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/2 (*.f64 1/24 (pow.f64 im 2)))))
(+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/2 (*.f64 (pow.f64 im 2) (+.f64 1/24 (*.f64 1/720 (pow.f64 im 2)))))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.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 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/4 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 1/48 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))
(+.f64 (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/4 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/48 (+.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 (pow.f64 im 2) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 1/24 (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)))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 1/12 (pow.f64 im 2)))))
(+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/360 (pow.f64 im 2)))))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
-1/2
-1/4
0
1/4
1/2
2
(+.f64 (cos.f64 re) (cos.f64 re))
(+.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (cos.f64 re)))) -1)
(/.f64 (*.f64 -1/2 (cos.f64 re)) -1/2)
(/.f64 (*.f64 -1/2 (cos.f64 re)) -1)
(/.f64 (*.f64 -1/2 (cos.f64 re)) (+.f64 (*.f64 -1/2 (cos.f64 re)) (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))))
(/.f64 (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re))) (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re))))
(pow.f64 (*.f64 -1/2 (cos.f64 re)) -1/2)
(pow.f64 (*.f64 -1/2 (cos.f64 re)) -1)
(pow.f64 (*.f64 -1/2 (cos.f64 re)) 3)
(pow.f64 (*.f64 -1/2 (cos.f64 re)) 1/3)
(sqrt.f64 (*.f64 -1/2 (cos.f64 re)))
(fabs.f64 (*.f64 -1/2 (cos.f64 re)))
(log.f64 (pow.f64 -1 (cos.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 -1/2 (cos.f64 re)))))
(cbrt.f64 (*.f64 -1/2 (cos.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (cos.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (cos.f64 re))))
(exp.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))) -1))
(exp.f64 (+.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))) -1/2))
(fma.f64 -1 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))
(fma.f64 (*.f64 -1/2 (cos.f64 re)) -1 (*.f64 -1/2 (cos.f64 re)))
-1/2
-1/4
0
1/4
1/2
2
(+.f64 (cos.f64 re) (cos.f64 re))
(+.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (cos.f64 re)))) -1)
(/.f64 (*.f64 -1/2 (cos.f64 re)) -1/2)
(/.f64 (*.f64 -1/2 (cos.f64 re)) -1)
(/.f64 (*.f64 -1/2 (cos.f64 re)) (+.f64 (*.f64 -1/2 (cos.f64 re)) (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))))
(/.f64 (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re))) (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re))))
(pow.f64 (*.f64 -1/2 (cos.f64 re)) -1/2)
(pow.f64 (*.f64 -1/2 (cos.f64 re)) -1)
(pow.f64 (*.f64 -1/2 (cos.f64 re)) 3)
(pow.f64 (*.f64 -1/2 (cos.f64 re)) 1/3)
(sqrt.f64 (*.f64 -1/2 (cos.f64 re)))
(fabs.f64 (*.f64 -1/2 (cos.f64 re)))
(log.f64 (pow.f64 -1 (cos.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 -1/2 (cos.f64 re)))))
(cbrt.f64 (*.f64 -1/2 (cos.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (cos.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (cos.f64 re))))
(exp.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))) -1))
(exp.f64 (+.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))) -1/2))
(fma.f64 -1 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))
(fma.f64 (*.f64 -1/2 (cos.f64 re)) -1 (*.f64 -1/2 (cos.f64 re)))
-1/2
-1/4
0
1/4
1/2
2
Outputs
1/2
(+.f64 1/2 (*.f64 -1/2 im))
(fma.f64 -1/2 im 1/2)
(+.f64 1/2 (*.f64 im (-.f64 (*.f64 1/4 im) 1/2)))
(+.f64 1/2 (*.f64 im (fma.f64 1/4 im -1/2)))
(fma.f64 im (fma.f64 im 1/4 -1/2) 1/2)
(+.f64 1/2 (*.f64 im (-.f64 (*.f64 im (+.f64 1/4 (*.f64 -1/12 im))) 1/2)))
(+.f64 1/2 (*.f64 im (fma.f64 im (+.f64 1/4 (*.f64 im -1/12)) -1/2)))
(fma.f64 im (fma.f64 im (fma.f64 im -1/12 1/4) -1/2) 1/2)
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
1/2
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(fma.f64 -1/2 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 2)) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 (pow.f64 re 2) -1/4)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))))))))
(+.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (*.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 2)) 1/24))))
(fma.f64 1/2 (exp.f64 im) (fma.f64 (pow.f64 re 2) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 -1/4 (*.f64 (pow.f64 re 2) 1/48))) (/.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 re 2))) (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 re 2) 1/24))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 1/24 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))))))))
(+.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (*.f64 (pow.f64 re 2) (fma.f64 -1/720 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 2)) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) 1/24))))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 (pow.f64 re 2) -1/4))) (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 re 2) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (*.f64 (pow.f64 re 2) -1/720) 1/24)))))
(+.f64 (*.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 1/24 (*.f64 (pow.f64 re 2) -1/720))) (pow.f64 re 4)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 (pow.f64 re 2) -1/4))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(cos.f64 re)
1/2
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 1/2 (*.f64 im (fma.f64 1/4 im -1/2)))
(fma.f64 im (fma.f64 im 1/4 -1/2) 1/2)
(+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (fma.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 2)) (*.f64 1/2 (cos.f64 re)))))
(fma.f64 (pow.f64 im 2) (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 2) 1/2)) (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 (pow.f64 im 2) (fma.f64 1/24 (pow.f64 im 2) 1/2) 1))
(+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 1/24 (cos.f64 re)))))))
(+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (fma.f64 1/2 (cos.f64 re) (*.f64 (pow.f64 im 2) (fma.f64 1/720 (*.f64 (cos.f64 re) (pow.f64 im 2)) (*.f64 1/24 (cos.f64 re)))))))
(fma.f64 (pow.f64 im 2) (fma.f64 (pow.f64 im 2) (*.f64 (cos.f64 re) (fma.f64 (pow.f64 im 2) 1/720 1/24)) (*.f64 1/2 (cos.f64 re))) (cos.f64 re))
(+.f64 (*.f64 (*.f64 (cos.f64 re) (fma.f64 (pow.f64 im 2) 1/720 1/24)) (pow.f64 im 4)) (*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1)))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1/2
1
1/2
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1/2 (*.f64 im (fma.f64 1/4 im -1/2)))
(fma.f64 im (fma.f64 im 1/4 -1/2) 1/2)
(+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/2 (*.f64 1/24 (pow.f64 im 2)))))
(+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (fma.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 2)) (*.f64 1/2 (cos.f64 re)))))
(fma.f64 (pow.f64 im 2) (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 2) 1/2)) (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 (pow.f64 im 2) (fma.f64 1/24 (pow.f64 im 2) 1/2) 1))
(+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/2 (*.f64 (pow.f64 im 2) (+.f64 1/24 (*.f64 1/720 (pow.f64 im 2)))))))
(+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (fma.f64 1/2 (cos.f64 re) (*.f64 (pow.f64 im 2) (fma.f64 1/720 (*.f64 (cos.f64 re) (pow.f64 im 2)) (*.f64 1/24 (cos.f64 re)))))))
(fma.f64 (pow.f64 im 2) (fma.f64 (pow.f64 im 2) (*.f64 (cos.f64 re) (fma.f64 (pow.f64 im 2) 1/720 1/24)) (*.f64 1/2 (cos.f64 re))) (cos.f64 re))
(+.f64 (*.f64 (*.f64 (cos.f64 re) (fma.f64 (pow.f64 im 2) 1/720 1/24)) (pow.f64 im 4)) (*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
1/2
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
1/2
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
1/2
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
1/2
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
1/2
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
1/2
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
1/2
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
1/2
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
1/2
(+.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/2 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 2)) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 (pow.f64 re 2) -1/4)))
(+.f64 (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/4 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 1/48 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))
(+.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (*.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 2)) 1/24))))
(fma.f64 1/2 (exp.f64 im) (fma.f64 (pow.f64 re 2) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 -1/4 (*.f64 (pow.f64 re 2) 1/48))) (/.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 re 2))) (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 re 2) 1/24))))
(+.f64 (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/4 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/48 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))))
(+.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (*.f64 (pow.f64 re 2) (fma.f64 -1/720 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 2)) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) 1/24))))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 (pow.f64 re 2) -1/4))) (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 re 2) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (*.f64 (pow.f64 re 2) -1/720) 1/24)))))
(+.f64 (*.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 1/24 (*.f64 (pow.f64 re 2) -1/720))) (pow.f64 re 4)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 (pow.f64 re 2) -1/4))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1/2
(cos.f64 re)
1/2
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(+.f64 1/2 (*.f64 im (fma.f64 1/4 im -1/2)))
(fma.f64 im (fma.f64 im 1/4 -1/2) 1/2)
(+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (fma.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 2)) (*.f64 1/2 (cos.f64 re)))))
(fma.f64 (pow.f64 im 2) (*.f64 (cos.f64 re) (fma.f64 1/24 (pow.f64 im 2) 1/2)) (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 (pow.f64 im 2) (fma.f64 1/24 (pow.f64 im 2) 1/2) 1))
(+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 2) (cos.f64 re))) (*.f64 1/24 (cos.f64 re)))))))
(+.f64 (cos.f64 re) (*.f64 (pow.f64 im 2) (fma.f64 1/2 (cos.f64 re) (*.f64 (pow.f64 im 2) (fma.f64 1/720 (*.f64 (cos.f64 re) (pow.f64 im 2)) (*.f64 1/24 (cos.f64 re)))))))
(fma.f64 (pow.f64 im 2) (fma.f64 (pow.f64 im 2) (*.f64 (cos.f64 re) (fma.f64 (pow.f64 im 2) 1/720 1/24)) (*.f64 1/2 (cos.f64 re))) (cos.f64 re))
(+.f64 (*.f64 (*.f64 (cos.f64 re) (fma.f64 (pow.f64 im 2) 1/720 1/24)) (pow.f64 im 4)) (*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
1/2
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
1/2
2
1/2
(+.f64 2 (pow.f64 im 2))
(+.f64 1/2 (*.f64 im (fma.f64 1/4 im -1/2)))
(fma.f64 im (fma.f64 im 1/4 -1/2) 1/2)
(+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 1/12 (pow.f64 im 2)))))
(+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 (pow.f64 im 2) 1/12))))
(fma.f64 (pow.f64 im 2) (fma.f64 (pow.f64 im 2) 1/12 1) 2)
(+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/360 (pow.f64 im 2)))))))
(+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 (pow.f64 im 2) 1/360))))))
(fma.f64 (pow.f64 im 2) (fma.f64 (pow.f64 im 2) (fma.f64 (pow.f64 im 2) 1/360 1/12) 1) 2)
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
1/2
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
1/2
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
1/2
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
1/2
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
1/2
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
1/2
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
1/2
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
1/2
-1/2
1/2
-1/4
1/2
0
1/2
1/4
1/2
1/2
2
1/2
(+.f64 (cos.f64 re) (cos.f64 re))
1/2
(+.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))
1/2
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (cos.f64 re)))) -1)
1/2
(/.f64 (*.f64 -1/2 (cos.f64 re)) -1/2)
1/2
(/.f64 (*.f64 -1/2 (cos.f64 re)) -1)
1/2
(/.f64 (*.f64 -1/2 (cos.f64 re)) (+.f64 (*.f64 -1/2 (cos.f64 re)) (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))))
1/2
(/.f64 (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re))) (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re))))
1/2
(pow.f64 (*.f64 -1/2 (cos.f64 re)) -1/2)
1/2
(pow.f64 (*.f64 -1/2 (cos.f64 re)) -1)
1/2
(pow.f64 (*.f64 -1/2 (cos.f64 re)) 3)
1/2
(pow.f64 (*.f64 -1/2 (cos.f64 re)) 1/3)
1/2
(sqrt.f64 (*.f64 -1/2 (cos.f64 re)))
1/2
(fabs.f64 (*.f64 -1/2 (cos.f64 re)))
1/2
(log.f64 (pow.f64 -1 (cos.f64 re)))
1/2
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 -1/2 (cos.f64 re)))))
1/2
(cbrt.f64 (*.f64 -1/2 (cos.f64 re)))
1/2
(expm1.f64 (log1p.f64 (*.f64 -1/2 (cos.f64 re))))
1/2
(log1p.f64 (expm1.f64 (*.f64 -1/2 (cos.f64 re))))
1/2
(exp.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))))
1/2
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))) -1))
1/2
(exp.f64 (+.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))) -1/2))
1/2
(fma.f64 -1 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))
1/2
(fma.f64 (*.f64 -1/2 (cos.f64 re)) -1 (*.f64 -1/2 (cos.f64 re)))
1/2
-1/2
1/2
-1/4
1/2
0
1/2
1/4
1/2
1/2
2
1/2
(+.f64 (cos.f64 re) (cos.f64 re))
1/2
(+.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))
1/2
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (cos.f64 re)))) -1)
1/2
(/.f64 (*.f64 -1/2 (cos.f64 re)) -1/2)
1/2
(/.f64 (*.f64 -1/2 (cos.f64 re)) -1)
1/2
(/.f64 (*.f64 -1/2 (cos.f64 re)) (+.f64 (*.f64 -1/2 (cos.f64 re)) (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))))
1/2
(/.f64 (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re))) (-.f64 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re))))
1/2
(pow.f64 (*.f64 -1/2 (cos.f64 re)) -1/2)
1/2
(pow.f64 (*.f64 -1/2 (cos.f64 re)) -1)
1/2
(pow.f64 (*.f64 -1/2 (cos.f64 re)) 3)
1/2
(pow.f64 (*.f64 -1/2 (cos.f64 re)) 1/3)
1/2
(sqrt.f64 (*.f64 -1/2 (cos.f64 re)))
1/2
(fabs.f64 (*.f64 -1/2 (cos.f64 re)))
1/2
(log.f64 (pow.f64 -1 (cos.f64 re)))
1/2
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 -1/2 (cos.f64 re)))))
1/2
(cbrt.f64 (*.f64 -1/2 (cos.f64 re)))
1/2
(expm1.f64 (log1p.f64 (*.f64 -1/2 (cos.f64 re))))
1/2
(log1p.f64 (expm1.f64 (*.f64 -1/2 (cos.f64 re))))
1/2
(exp.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))))
1/2
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))) -1))
1/2
(exp.f64 (+.f64 (log.f64 (*.f64 -1/2 (cos.f64 re))) -1/2))
1/2
(fma.f64 -1 (*.f64 -1/2 (cos.f64 re)) (*.f64 -1/2 (cos.f64 re)))
1/2
(fma.f64 (*.f64 -1/2 (cos.f64 re)) -1 (*.f64 -1/2 (cos.f64 re)))
1/2
-1/2
1/2
-1/4
1/2
0
1/2
1/4
1/2
1/2
2
1/2

eval24.0ms (0.3%)

Compiler

Compiled 1288 to 802 computations (37.7% saved)

prune16.0ms (0.2%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New72779
Fresh000
Picked202
Done000
Total74781
Accuracy
100.0%
Counts
81 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
67.1%
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
75.2%
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
10.7%
(+.f64 (cos.f64 re) (cos.f64 re))
75.2%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (pow.f64 im 2)))
98.4%
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
67.1%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
48.8%
(cos.f64 re)
Compiler

Compiled 138 to 104 computations (24.6% saved)

localize142.0ms (2%)

Localize:

Found 4 expressions with local error:

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

Compiled 85 to 37 computations (56.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 71.0ms
Operation ival-pow, time spent: 19.0ms, 27.0% of total-time
Operation ival-mult, time spent: 15.0ms, 21.0% of total-time
Operation composed, time spent: 11.0ms, 15.0% of total-time
Operation ival-add, time spent: 9.0ms, 13.0% of total-time
Operation ival-cos, time spent: 8.0ms, 11.0% of total-time
Operation ival-exp, time spent: 5.0ms, 7.0% of total-time
Operation const, time spent: 3.0ms, 4.0% of total-time
Operation ival-neg, time spent: 1.0ms, 1.0% of total-time

series15.0ms (0.2%)

Counts
4 → 68
Calls
Call 1
Inputs
#<alt (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))>
#<alt (fma.f64 1/2 (exp.f64 im) 1/2)>
#<alt (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))>
#<alt (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (pow.f64 im 2)))>
Outputs
#<alt (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))>
#<alt (+.f64 1/2 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))) (*.f64 1/2 (exp.f64 im))))>
#<alt (+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))))))))>
#<alt (+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))) (*.f64 1/24 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (cos.f64 re)>
#<alt (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))>
#<alt (+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))>
#<alt (+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im (+.f64 (*.f64 1/12 (*.f64 im (cos.f64 re))) (*.f64 1/4 (cos.f64 re)))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt 1>
#<alt (+.f64 1 (*.f64 1/2 im))>
#<alt (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))>
#<alt (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))>
#<alt (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))>
#<alt (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))>
#<alt (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))>
#<alt (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))>
#<alt (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))>
#<alt (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))>
#<alt (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))>
#<alt (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))>
#<alt 2>
#<alt (+.f64 2 (pow.f64 im 2))>
#<alt (+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 1/12 (pow.f64 im 2)))))>
#<alt (+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/360 (pow.f64 im 2)))))))>
#<alt (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))>
#<alt (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))>
#<alt (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))>
#<alt (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))>
#<alt (*.f64 1/2 (+.f64 2 (pow.f64 im 2)))>
#<alt (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (+.f64 2 (pow.f64 im 2))))>
#<alt (+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/4 (+.f64 2 (pow.f64 im 2))) (*.f64 1/48 (*.f64 (pow.f64 re 2) (+.f64 2 (pow.f64 im 2)))))))>
#<alt (+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/4 (+.f64 2 (pow.f64 im 2))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 re 2) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/48 (+.f64 2 (pow.f64 im 2))))))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))>
#<alt (*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))>
#<alt (cos.f64 re)>
#<alt (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))>
#<alt (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))>
#<alt (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))>
#<alt (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))>
#<alt (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))>
Calls

18 calls:

TimeVariablePointExpression
3.0ms
im
@inf
(* (* 1/2 (cos re)) (+ 2 (pow im 2)))
3.0ms
re
@-inf
(* (* 1/2 (cos re)) (+ 2 (pow im 2)))
1.0ms
re
@inf
(* (* 1/2 (cos re)) (+ 2 (pow im 2)))
1.0ms
re
@0
(* (cos re) (+ (* 1/2 (exp im)) 1/2))
1.0ms
re
@0
(* (* 1/2 (cos re)) (+ 2 (pow im 2)))

rewrite44.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
272×associate-*r*
170×associate-*l*
135×log1p-expm1-u
135×expm1-log1p-u
133×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02290
130290
2490290
Stop Event
unsound
Counts
4 → 74
Calls
Call 1
Inputs
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (pow.f64 im 2)))
Outputs
(+.f64 (cos.f64 re) (cos.f64 re))
(+.f64 -2 (cos.f64 re))
(-.f64 (cos.f64 re) -2)
(/.f64 (cos.f64 re) -2)
(/.f64 (cos.f64 re) (+.f64 (cos.f64 re) (-.f64 (cos.f64 re) (cos.f64 re))))
(/.f64 (+.f64 (cos.f64 (+.f64 re re)) (cos.f64 (-.f64 re re))) -2)
(/.f64 (-.f64 (cos.f64 re) (cos.f64 re)) (-.f64 (cos.f64 re) (cos.f64 re)))
(pow.f64 (cos.f64 re) -2)
(pow.f64 (cos.f64 re) 1/3)
(sqrt.f64 (cos.f64 re))
(fabs.f64 (cos.f64 re))
(log.f64 (exp.f64 (cos.f64 re)))
(log.f64 (+.f64 -2 (expm1.f64 (cos.f64 re))))
(cbrt.f64 (cos.f64 re))
(cos.f64 re)
(expm1.f64 (log.f64 (cos.f64 re)))
(log1p.f64 (expm1.f64 (cos.f64 re)))
(exp.f64 (log.f64 (cos.f64 re)))
(exp.f64 (*.f64 (log.f64 (cos.f64 re)) -2))
(fma.f64 (cos.f64 re) -2 (cos.f64 re))
(fma.f64 -2 (cos.f64 re) (cos.f64 re))
-2
-1
0
1/8
1/4
1/2
1
3/2
2
3
4
6
8
16
64
512
-2
-1
0
1/8
1/4
1/2
1
3/2
2
3
4
6
8
16
64
512
(+.f64 (cos.f64 re) (cos.f64 re))
(+.f64 -2 (cos.f64 re))
(-.f64 (cos.f64 re) -2)
(/.f64 (cos.f64 re) -2)
(/.f64 (cos.f64 re) (+.f64 (cos.f64 re) (-.f64 (cos.f64 re) (cos.f64 re))))
(/.f64 (+.f64 (cos.f64 (+.f64 re re)) (cos.f64 (-.f64 re re))) -2)
(/.f64 (-.f64 (cos.f64 re) (cos.f64 re)) (-.f64 (cos.f64 re) (cos.f64 re)))
(pow.f64 (cos.f64 re) -2)
(pow.f64 (cos.f64 re) 1/3)
(sqrt.f64 (cos.f64 re))
(fabs.f64 (cos.f64 re))
(log.f64 (exp.f64 (cos.f64 re)))
(log.f64 (+.f64 -2 (expm1.f64 (cos.f64 re))))
(cbrt.f64 (cos.f64 re))
(cos.f64 re)
(expm1.f64 (log.f64 (cos.f64 re)))
(log1p.f64 (expm1.f64 (cos.f64 re)))
(exp.f64 (log.f64 (cos.f64 re)))
(exp.f64 (*.f64 (log.f64 (cos.f64 re)) -2))
(fma.f64 (cos.f64 re) -2 (cos.f64 re))
(fma.f64 -2 (cos.f64 re) (cos.f64 re))

simplify82.0ms (1.1%)

Algorithm
egg-herbie
Rules
1726×fma-define
1032×associate-*r*
770×distribute-lft-out
744×distribute-rgt-out
732×associate-*l*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01563091
14502712
215172575
358662504
Stop Event
node limit
Counts
142 → 122
Calls
Call 1
Inputs
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1/2 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))) (*.f64 1/2 (exp.f64 im))))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))))))))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))) (*.f64 1/24 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))))))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im (+.f64 (*.f64 1/12 (*.f64 im (cos.f64 re))) (*.f64 1/4 (cos.f64 re)))))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
1
(+.f64 1 (*.f64 1/2 im))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 1/12 (pow.f64 im 2)))))
(+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/360 (pow.f64 im 2)))))))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(*.f64 1/2 (+.f64 2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/4 (+.f64 2 (pow.f64 im 2))) (*.f64 1/48 (*.f64 (pow.f64 re 2) (+.f64 2 (pow.f64 im 2)))))))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/4 (+.f64 2 (pow.f64 im 2))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 re 2) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/48 (+.f64 2 (pow.f64 im 2))))))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (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 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))
(+.f64 (cos.f64 re) (cos.f64 re))
(+.f64 -2 (cos.f64 re))
(-.f64 (cos.f64 re) -2)
(/.f64 (cos.f64 re) -2)
(/.f64 (cos.f64 re) (+.f64 (cos.f64 re) (-.f64 (cos.f64 re) (cos.f64 re))))
(/.f64 (+.f64 (cos.f64 (+.f64 re re)) (cos.f64 (-.f64 re re))) -2)
(/.f64 (-.f64 (cos.f64 re) (cos.f64 re)) (-.f64 (cos.f64 re) (cos.f64 re)))
(pow.f64 (cos.f64 re) -2)
(pow.f64 (cos.f64 re) 1/3)
(sqrt.f64 (cos.f64 re))
(fabs.f64 (cos.f64 re))
(log.f64 (exp.f64 (cos.f64 re)))
(log.f64 (+.f64 -2 (expm1.f64 (cos.f64 re))))
(cbrt.f64 (cos.f64 re))
(cos.f64 re)
(expm1.f64 (log.f64 (cos.f64 re)))
(log1p.f64 (expm1.f64 (cos.f64 re)))
(exp.f64 (log.f64 (cos.f64 re)))
(exp.f64 (*.f64 (log.f64 (cos.f64 re)) -2))
(fma.f64 (cos.f64 re) -2 (cos.f64 re))
(fma.f64 -2 (cos.f64 re) (cos.f64 re))
-2
-1
0
1/8
1/4
1/2
1
3/2
2
3
4
6
8
16
64
512
-2
-1
0
1/8
1/4
1/2
1
3/2
2
3
4
6
8
16
64
512
(+.f64 (cos.f64 re) (cos.f64 re))
(+.f64 -2 (cos.f64 re))
(-.f64 (cos.f64 re) -2)
(/.f64 (cos.f64 re) -2)
(/.f64 (cos.f64 re) (+.f64 (cos.f64 re) (-.f64 (cos.f64 re) (cos.f64 re))))
(/.f64 (+.f64 (cos.f64 (+.f64 re re)) (cos.f64 (-.f64 re re))) -2)
(/.f64 (-.f64 (cos.f64 re) (cos.f64 re)) (-.f64 (cos.f64 re) (cos.f64 re)))
(pow.f64 (cos.f64 re) -2)
(pow.f64 (cos.f64 re) 1/3)
(sqrt.f64 (cos.f64 re))
(fabs.f64 (cos.f64 re))
(log.f64 (exp.f64 (cos.f64 re)))
(log.f64 (+.f64 -2 (expm1.f64 (cos.f64 re))))
(cbrt.f64 (cos.f64 re))
(cos.f64 re)
(expm1.f64 (log.f64 (cos.f64 re)))
(log1p.f64 (expm1.f64 (cos.f64 re)))
(exp.f64 (log.f64 (cos.f64 re)))
(exp.f64 (*.f64 (log.f64 (cos.f64 re)) -2))
(fma.f64 (cos.f64 re) -2 (cos.f64 re))
(fma.f64 -2 (cos.f64 re) (cos.f64 re))
Outputs
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 1/2 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))) (*.f64 1/2 (exp.f64 im))))
(+.f64 1/2 (fma.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2)) (*.f64 1/2 (exp.f64 im))))
(+.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (*.f64 (pow.f64 re 2) (+.f64 -1/4 (*.f64 (exp.f64 im) -1/4))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 re 2)) 1) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (+.f64 (exp.f64 im) 1) (fma.f64 (pow.f64 re 2) -1/4 1/2))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))))))))
(+.f64 1/2 (fma.f64 1/2 (exp.f64 im) (*.f64 (pow.f64 re 2) (fma.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (*.f64 (*.f64 1/24 (pow.f64 re 2)) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))))))
(+.f64 1/2 (fma.f64 (pow.f64 re 2) (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (+.f64 -1/2 (*.f64 (pow.f64 re 2) 1/24))) (*.f64 1/2 (exp.f64 im))))
(fma.f64 1/2 (exp.f64 im) (fma.f64 (pow.f64 re 2) (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (fma.f64 (pow.f64 re 2) 1/24 -1/2)) 1/2))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (+.f64 (*.f64 (pow.f64 re 4) 1/24) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) 1)))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))) (*.f64 1/24 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))))))))
(+.f64 1/2 (fma.f64 1/2 (exp.f64 im) (*.f64 (pow.f64 re 2) (fma.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (*.f64 (pow.f64 re 2) (fma.f64 -1/720 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2)) (+.f64 1/48 (*.f64 1/24 (*.f64 1/2 (exp.f64 im))))))))))
(+.f64 1/2 (fma.f64 (pow.f64 re 2) (fma.f64 (pow.f64 re 2) (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (+.f64 1/24 (*.f64 (pow.f64 re 2) -1/720))) (+.f64 -1/4 (*.f64 (exp.f64 im) -1/4))) (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (*.f64 (fma.f64 (pow.f64 re 2) -1/720 1/24) (pow.f64 re 4))) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 re 2)) 1) (fma.f64 1/2 (exp.f64 im) 1/2)))
(fma.f64 1/2 (exp.f64 im) (fma.f64 (pow.f64 re 2) (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (+.f64 -1/2 (*.f64 (fma.f64 (pow.f64 re 2) -1/720 1/24) (pow.f64 re 2)))) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))
(*.f64 (fma.f64 1/2 im 1) (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 1/2 im 1))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 im (cos.f64 re)) (*.f64 1/2 (cos.f64 re)))))
(fma.f64 im (*.f64 (cos.f64 re) (fma.f64 im 1/4 1/2)) (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im (+.f64 (*.f64 1/12 (*.f64 im (cos.f64 re))) (*.f64 1/4 (cos.f64 re)))))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/2 (cos.f64 re) (*.f64 im (fma.f64 1/12 (*.f64 im (cos.f64 re)) (*.f64 (cos.f64 re) 1/4))))))
(fma.f64 im (fma.f64 1/2 (cos.f64 re) (*.f64 im (*.f64 (cos.f64 re) (fma.f64 im 1/12 1/4)))) (cos.f64 re))
(fma.f64 (fma.f64 1/2 im 1) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))
1
(+.f64 1 (*.f64 1/2 im))
(fma.f64 1/2 im 1)
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4))))
(fma.f64 im (fma.f64 im 1/4 1/2) 1)
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12))))))
(fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) 1/2)
2
(+.f64 2 (pow.f64 im 2))
(fma.f64 im im 2)
(+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 1/12 (pow.f64 im 2)))))
(fma.f64 (pow.f64 im 2) (fma.f64 1/12 (pow.f64 im 2) 1) 2)
(fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2))
(+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/360 (pow.f64 im 2)))))))
(+.f64 2 (*.f64 (pow.f64 im 2) (+.f64 1 (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 (pow.f64 im 2) 1/360))))))
(fma.f64 (pow.f64 im 2) (fma.f64 (pow.f64 im 2) (fma.f64 (pow.f64 im 2) 1/360 1/12) 1) 2)
(fma.f64 im im (fma.f64 (fma.f64 (pow.f64 im 2) 1/360 1/12) (pow.f64 im 4) 2))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 1/2 (+.f64 2 (pow.f64 im 2)))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (fma.f64 im im 2))
(fma.f64 1/2 (pow.f64 im 2) 1)
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (+.f64 2 (pow.f64 im 2))))
(fma.f64 -1/4 (*.f64 (pow.f64 re 2) (+.f64 2 (pow.f64 im 2))) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 (pow.f64 re 2) -1/4)))
(*.f64 (fma.f64 im im 2) (fma.f64 (pow.f64 re 2) -1/4 1/2))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/4 (+.f64 2 (pow.f64 im 2))) (*.f64 1/48 (*.f64 (pow.f64 re 2) (+.f64 2 (pow.f64 im 2)))))))
(fma.f64 1/2 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 2) (fma.f64 -1/4 (+.f64 2 (pow.f64 im 2)) (*.f64 (*.f64 (pow.f64 re 2) (+.f64 2 (pow.f64 im 2))) 1/48))))
(fma.f64 (pow.f64 re 2) (*.f64 (fma.f64 im im 2) (+.f64 -1/4 (*.f64 (pow.f64 re 2) 1/48))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (pow.f64 re 2) (*.f64 (fma.f64 im im 2) (fma.f64 (pow.f64 re 2) 1/48 -1/4)) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 (fma.f64 (pow.f64 re 2) 1/48 -1/4) (pow.f64 re 2))))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/4 (+.f64 2 (pow.f64 im 2))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/1440 (*.f64 (pow.f64 re 2) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/48 (+.f64 2 (pow.f64 im 2))))))))
(fma.f64 1/2 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 2) (fma.f64 -1/4 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 2) (fma.f64 -1/1440 (*.f64 (pow.f64 re 2) (+.f64 2 (pow.f64 im 2))) (+.f64 1/24 (*.f64 1/48 (pow.f64 im 2))))))))
(fma.f64 (pow.f64 re 2) (fma.f64 (pow.f64 re 2) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 (pow.f64 re 2) -1/1440) 1/48)) (*.f64 (fma.f64 im im 2) -1/4)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (fma.f64 im im 2) (fma.f64 (pow.f64 re 2) -1/4 1/2) (*.f64 (fma.f64 im im 2) (*.f64 (fma.f64 (pow.f64 re 2) -1/1440 1/48) (pow.f64 re 4))))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 (fma.f64 (pow.f64 re 2) -1/1440 1/48) (pow.f64 re 4)) (fma.f64 (pow.f64 re 2) -1/4 1/2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.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 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.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 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.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 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.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 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/2 (cos.f64 re)) (/.f64 (cos.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (cos.f64 re) (cos.f64 re))
(*.f64 2 (cos.f64 re))
(+.f64 -2 (cos.f64 re))
(+.f64 (cos.f64 re) -2)
(-.f64 (cos.f64 re) -2)
(+.f64 (cos.f64 re) 2)
(+.f64 2 (cos.f64 re))
(/.f64 (cos.f64 re) -2)
(/.f64 (cos.f64 re) (+.f64 (cos.f64 re) (-.f64 (cos.f64 re) (cos.f64 re))))
1
(/.f64 (+.f64 (cos.f64 (+.f64 re re)) (cos.f64 (-.f64 re re))) -2)
(/.f64 (+.f64 (cos.f64 (*.f64 2 re)) (cos.f64 0)) -2)
(/.f64 (+.f64 1 (cos.f64 (*.f64 re 2))) -2)
(/.f64 (-.f64 (cos.f64 re) (cos.f64 re)) (-.f64 (cos.f64 re) (cos.f64 re)))
1
(pow.f64 (cos.f64 re) -2)
(pow.f64 (cos.f64 re) 1/3)
(cbrt.f64 (cos.f64 re))
(sqrt.f64 (cos.f64 re))
(fabs.f64 (cos.f64 re))
(log.f64 (exp.f64 (cos.f64 re)))
(cos.f64 re)
(log.f64 (+.f64 -2 (expm1.f64 (cos.f64 re))))
(cbrt.f64 (cos.f64 re))
(cos.f64 re)
(expm1.f64 (log.f64 (cos.f64 re)))
(-.f64 (cos.f64 re) 1)
(+.f64 (cos.f64 re) -1)
(log1p.f64 (expm1.f64 (cos.f64 re)))
(cos.f64 re)
(exp.f64 (log.f64 (cos.f64 re)))
(cos.f64 re)
(exp.f64 (*.f64 (log.f64 (cos.f64 re)) -2))
(pow.f64 (cos.f64 re) -2)
(fma.f64 (cos.f64 re) -2 (cos.f64 re))
(neg.f64 (cos.f64 re))
(fma.f64 -2 (cos.f64 re) (cos.f64 re))
(fma.f64 (cos.f64 re) -2 (cos.f64 re))
(neg.f64 (cos.f64 re))
-2
-1
0
1/8
1/4
1/2
1
3/2
2
3
4
6
8
16
64
512
-2
-1
0
1/8
1/4
1/2
1
3/2
2
3
4
6
8
16
64
512
(+.f64 (cos.f64 re) (cos.f64 re))
(*.f64 2 (cos.f64 re))
(+.f64 -2 (cos.f64 re))
(+.f64 (cos.f64 re) -2)
(-.f64 (cos.f64 re) -2)
(+.f64 (cos.f64 re) 2)
(+.f64 2 (cos.f64 re))
(/.f64 (cos.f64 re) -2)
(/.f64 (cos.f64 re) (+.f64 (cos.f64 re) (-.f64 (cos.f64 re) (cos.f64 re))))
1
(/.f64 (+.f64 (cos.f64 (+.f64 re re)) (cos.f64 (-.f64 re re))) -2)
(/.f64 (+.f64 (cos.f64 (*.f64 2 re)) (cos.f64 0)) -2)
(/.f64 (+.f64 1 (cos.f64 (*.f64 re 2))) -2)
(/.f64 (-.f64 (cos.f64 re) (cos.f64 re)) (-.f64 (cos.f64 re) (cos.f64 re)))
1
(pow.f64 (cos.f64 re) -2)
(pow.f64 (cos.f64 re) 1/3)
(cbrt.f64 (cos.f64 re))
(sqrt.f64 (cos.f64 re))
(fabs.f64 (cos.f64 re))
(log.f64 (exp.f64 (cos.f64 re)))
(cos.f64 re)
(log.f64 (+.f64 -2 (expm1.f64 (cos.f64 re))))
(cbrt.f64 (cos.f64 re))
(cos.f64 re)
(expm1.f64 (log.f64 (cos.f64 re)))
(-.f64 (cos.f64 re) 1)
(+.f64 (cos.f64 re) -1)
(log1p.f64 (expm1.f64 (cos.f64 re)))
(cos.f64 re)
(exp.f64 (log.f64 (cos.f64 re)))
(cos.f64 re)
(exp.f64 (*.f64 (log.f64 (cos.f64 re)) -2))
(pow.f64 (cos.f64 re) -2)
(fma.f64 (cos.f64 re) -2 (cos.f64 re))
(neg.f64 (cos.f64 re))
(fma.f64 -2 (cos.f64 re) (cos.f64 re))
(fma.f64 (cos.f64 re) -2 (cos.f64 re))
(neg.f64 (cos.f64 re))

eval50.0ms (0.7%)

Compiler

Compiled 1479 to 1004 computations (32.1% saved)

prune26.0ms (0.4%)

Pruning

14 alts after pruning (12 fresh and 2 done)

PrunedKeptTotal
New11210122
Fresh022
Picked325
Done000
Total11514129
Accuracy
100.0%
Counts
129 → 14
Alt Table
Click to see full alt table
StatusAccuracyProgram
67.1%
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
75.2%
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
65.8%
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
98.4%
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
83.9%
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))))
74.3%
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))
49.4%
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 im)))
75.2%
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
8.3%
(*.f64 (cos.f64 re) 512)
11.4%
(*.f64 (cos.f64 re) 3/2)
47.8%
(*.f64 1/2 (fma.f64 im im 2))
67.1%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
28.2%
(*.f64 1/2 2)
48.8%
(cos.f64 re)
Compiler

Compiled 260 to 205 computations (21.2% saved)

localize297.0ms (4.1%)

Localize:

Found 5 expressions with local error:

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

Compiled 99 to 61 computations (38.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 63.0ms
Operation ival-mult, time spent: 33.0ms, 53.0% of total-time
Operation ival-add, time spent: 16.0ms, 26.0% of total-time
Operation ival-cos, time spent: 7.0ms, 11.0% of total-time
Operation const, time spent: 4.0ms, 6.0% of total-time
Operation ival-exp, time spent: 2.0ms, 3.0% of total-time

series16.0ms (0.2%)

Counts
5 → 68
Calls
Call 1
Inputs
#<alt (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))>
#<alt (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))>
#<alt (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))>
#<alt (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))>
Outputs
#<alt (cos.f64 re)>
#<alt (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))>
#<alt (+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))>
#<alt (+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im (+.f64 (*.f64 1/12 (*.f64 im (cos.f64 re))) (*.f64 1/4 (cos.f64 re)))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))>
#<alt (+.f64 1/2 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))) (*.f64 1/2 (exp.f64 im))))>
#<alt (+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))))))))>
#<alt (+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))) (*.f64 1/24 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))>
#<alt 1>
#<alt (+.f64 1 (*.f64 1/2 im))>
#<alt (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))>
#<alt (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))>
#<alt 1>
#<alt (+.f64 1 (*.f64 1/2 im))>
#<alt (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))>
#<alt (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))>
#<alt (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))>
#<alt (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))>
#<alt (+.f64 1 (+.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))))))>
#<alt (+.f64 1 (+.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 1/24 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))>
#<alt (cos.f64 re)>
#<alt (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))>
#<alt (+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))>
#<alt (+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))>
#<alt (*.f64 1/4 (*.f64 (pow.f64 im 2) (cos.f64 re)))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (cos.f64 re)) (*.f64 1/2 (/.f64 (cos.f64 re) im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (cos.f64 re)) (+.f64 (*.f64 1/2 (/.f64 (cos.f64 re) im)) (/.f64 (cos.f64 re) (pow.f64 im 2)))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (cos.f64 re)) (+.f64 (*.f64 1/2 (/.f64 (cos.f64 re) im)) (/.f64 (cos.f64 re) (pow.f64 im 2)))))>
#<alt (*.f64 1/4 (*.f64 (pow.f64 im 2) (cos.f64 re)))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (cos.f64 re)) (*.f64 1/2 (/.f64 (cos.f64 re) im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 re) im)) (*.f64 -1/2 (cos.f64 re))) im)) (*.f64 1/4 (cos.f64 re))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 re) im)) (*.f64 -1/2 (cos.f64 re))) im)) (*.f64 1/4 (cos.f64 re))))>
#<alt (*.f64 1/2 im)>
#<alt (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))>
#<alt (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))>
#<alt (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))>
#<alt (*.f64 1/4 (pow.f64 im 2))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 1/4 (pow.f64 im 2))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
Calls

21 calls:

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

rewrite161.0ms (2.2%)

Algorithm
batch-egg-rewrite
Rules
1978×prod-diff
909×log1p-expm1-u
413×expm1-log1p-u
272×associate-*r*
172×associate-*l*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
021142
1292118
24103118
Stop Event
node limit
Counts
5 → 145
Calls
Call 1
Inputs
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))
(*.f64 im (+.f64 1/2 (*.f64 im 1/4)))
Outputs
(+.f64 (*.f64 (cos.f64 re) 1/2) (*.f64 (cos.f64 re) (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (cos.f64 re) 1/2))
(+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 (*.f64 1/2 (exp.f64 im)) (cos.f64 re)))
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) (cos.f64 re)) (*.f64 1/2 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)))) 1)
(/.f64 (*.f64 (cos.f64 re) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)) (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))))
(/.f64 (*.f64 (cos.f64 re) (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (cos.f64 re)) (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (cos.f64 re)) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))))
(pow.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3) (pow.f64 (cos.f64 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))))
(exp.f64 (log.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))) 1))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) 1)
(-.f64 (/.f64 1/4 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))) (/.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 1)
(*.f64 1 (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2) (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(*.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(*.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (/.f64 1 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im))))))
(*.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) 1) 1/2)
(/.f64 1 (/.f64 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)))
(/.f64 1 (/.f64 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))) (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (+.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 1/4 (*.f64 1/4 (exp.f64 im)))))
(/.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)) (neg.f64 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im))))))
(/.f64 (neg.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (neg.f64 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) 1/4) (-.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
(pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(exp.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 1))
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 (exp.f64 im) 1/2 1/2)
(fma.f64 1 (*.f64 1/2 (exp.f64 im)) 1/2)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(fma.f64 (sqrt.f64 (*.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) 1)
(-.f64 (/.f64 1/4 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))) (/.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 1)
(*.f64 1 (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2) (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(*.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(*.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (/.f64 1 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im))))))
(*.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) 1) 1/2)
(/.f64 1 (/.f64 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)))
(/.f64 1 (/.f64 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))) (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (+.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 1/4 (*.f64 1/4 (exp.f64 im)))))
(/.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)) (neg.f64 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im))))))
(/.f64 (neg.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (neg.f64 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) 1/4) (-.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
(pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(exp.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 1))
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 (exp.f64 im) 1/2 1/2)
(fma.f64 1 (*.f64 1/2 (exp.f64 im)) 1/2)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(fma.f64 (sqrt.f64 (*.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(+.f64 (cos.f64 re) (*.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(+.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) (cos.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))) 1)
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) 3)) (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2)))) (*.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2)))))))
(/.f64 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))) (-.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (cos.f64 re) (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (cos.f64 re) (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (cos.f64 re)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (cos.f64 re)) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 3) (pow.f64 (cos.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 1))
(fma.f64 (cos.f64 re) 1 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(fma.f64 1 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (cbrt.f64 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(fma.f64 (sqrt.f64 (cos.f64 re)) (sqrt.f64 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(+.f64 (*.f64 1/2 im) (*.f64 1/4 (pow.f64 im 2)))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(+.f64 (*.f64 (*.f64 1/2 im) 1) (*.f64 (*.f64 1/4 (pow.f64 im 2)) 1))
(-.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 im) 3) (pow.f64 (*.f64 1/4 (pow.f64 im 2)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (*.f64 (*.f64 1/2 im) (*.f64 1/4 (pow.f64 im 2))))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2)))) (-.f64 (*.f64 1/2 im) (*.f64 1/4 (pow.f64 im 2))))
(/.f64 (*.f64 im (+.f64 (*.f64 (pow.f64 im 3) 1/64) 1/8)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 im (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16))) (+.f64 1/2 (*.f64 -1/4 im)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/64) 1/8) im) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) im) (+.f64 1/2 (*.f64 -1/4 im)))
(pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))
(log.f64 (pow.f64 (exp.f64 im) (fma.f64 im 1/4 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(fma.f64 1/2 im (*.f64 1/4 (pow.f64 im 2)))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))

simplify133.0ms (1.8%)

Algorithm
egg-herbie
Rules
1728×distribute-lft-in
1712×distribute-rgt-in
688×cancel-sign-sub-inv
602×fma-neg
582×associate-*r*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03668729
110137536
236587456
Stop Event
node limit
Counts
213 → 203
Calls
Call 1
Inputs
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im (+.f64 (*.f64 1/12 (*.f64 im (cos.f64 re))) (*.f64 1/4 (cos.f64 re)))))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1/2 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))) (*.f64 1/2 (exp.f64 im))))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))))))))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))) (*.f64 1/24 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))))))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
1
(+.f64 1 (*.f64 1/2 im))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))
1
(+.f64 1 (*.f64 1/2 im))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 1 (+.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))))))
(+.f64 1 (+.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 1/24 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))))))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(*.f64 1/4 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (cos.f64 re)) (*.f64 1/2 (/.f64 (cos.f64 re) im))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (cos.f64 re)) (+.f64 (*.f64 1/2 (/.f64 (cos.f64 re) im)) (/.f64 (cos.f64 re) (pow.f64 im 2)))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (cos.f64 re)) (+.f64 (*.f64 1/2 (/.f64 (cos.f64 re) im)) (/.f64 (cos.f64 re) (pow.f64 im 2)))))
(*.f64 1/4 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (cos.f64 re)) (*.f64 1/2 (/.f64 (cos.f64 re) im))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 re) im)) (*.f64 -1/2 (cos.f64 re))) im)) (*.f64 1/4 (cos.f64 re))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 re) im)) (*.f64 -1/2 (cos.f64 re))) im)) (*.f64 1/4 (cos.f64 re))))
(*.f64 1/2 im)
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
(*.f64 1/4 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 1/4 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(+.f64 (*.f64 (cos.f64 re) 1/2) (*.f64 (cos.f64 re) (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (cos.f64 re) 1/2))
(+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 (*.f64 1/2 (exp.f64 im)) (cos.f64 re)))
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) (cos.f64 re)) (*.f64 1/2 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)))) 1)
(/.f64 (*.f64 (cos.f64 re) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)) (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))))
(/.f64 (*.f64 (cos.f64 re) (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (cos.f64 re)) (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (cos.f64 re)) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))))
(pow.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3) (pow.f64 (cos.f64 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))))
(exp.f64 (log.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))) 1))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) 1)
(-.f64 (/.f64 1/4 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))) (/.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 1)
(*.f64 1 (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2) (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(*.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(*.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (/.f64 1 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im))))))
(*.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) 1) 1/2)
(/.f64 1 (/.f64 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)))
(/.f64 1 (/.f64 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))) (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (+.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 1/4 (*.f64 1/4 (exp.f64 im)))))
(/.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)) (neg.f64 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im))))))
(/.f64 (neg.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (neg.f64 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) 1/4) (-.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
(pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(exp.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 1))
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 (exp.f64 im) 1/2 1/2)
(fma.f64 1 (*.f64 1/2 (exp.f64 im)) 1/2)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(fma.f64 (sqrt.f64 (*.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) 1)
(-.f64 (/.f64 1/4 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))) (/.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 1)
(*.f64 1 (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2) (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(*.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(*.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (/.f64 1 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im))))))
(*.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) 1) 1/2)
(/.f64 1 (/.f64 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)))
(/.f64 1 (/.f64 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))) (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (+.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 1/4 (*.f64 1/4 (exp.f64 im)))))
(/.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)) (neg.f64 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im))))))
(/.f64 (neg.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (neg.f64 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) 1/4) (-.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
(pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(exp.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 1))
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 (exp.f64 im) 1/2 1/2)
(fma.f64 1 (*.f64 1/2 (exp.f64 im)) 1/2)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(fma.f64 (sqrt.f64 (*.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(+.f64 (cos.f64 re) (*.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(+.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) (cos.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))) 1)
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) 3)) (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2)))) (*.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2)))))))
(/.f64 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))) (-.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (cos.f64 re) (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (cos.f64 re) (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (cos.f64 re)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (cos.f64 re)) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 3) (pow.f64 (cos.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 1))
(fma.f64 (cos.f64 re) 1 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(fma.f64 1 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (cbrt.f64 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(fma.f64 (sqrt.f64 (cos.f64 re)) (sqrt.f64 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(+.f64 (*.f64 1/2 im) (*.f64 1/4 (pow.f64 im 2)))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(+.f64 (*.f64 (*.f64 1/2 im) 1) (*.f64 (*.f64 1/4 (pow.f64 im 2)) 1))
(-.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 im) 3) (pow.f64 (*.f64 1/4 (pow.f64 im 2)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (*.f64 (*.f64 1/2 im) (*.f64 1/4 (pow.f64 im 2))))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2)))) (-.f64 (*.f64 1/2 im) (*.f64 1/4 (pow.f64 im 2))))
(/.f64 (*.f64 im (+.f64 (*.f64 (pow.f64 im 3) 1/64) 1/8)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 im (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16))) (+.f64 1/2 (*.f64 -1/4 im)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/64) 1/8) im) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) im) (+.f64 1/2 (*.f64 -1/4 im)))
(pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))
(log.f64 (pow.f64 (exp.f64 im) (fma.f64 im 1/4 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(fma.f64 1/2 im (*.f64 1/4 (pow.f64 im 2)))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
Outputs
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (cos.f64 re) im)))
(*.f64 (fma.f64 1/2 im 1) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im (+.f64 (*.f64 1/12 (*.f64 im (cos.f64 re))) (*.f64 1/4 (cos.f64 re)))))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/2 (cos.f64 re) (*.f64 im (fma.f64 1/12 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/4))))))
(fma.f64 im (fma.f64 (cos.f64 re) 1/2 (*.f64 im (*.f64 (cos.f64 re) (fma.f64 im 1/12 1/4)))) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 1/2 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))) (*.f64 1/2 (exp.f64 im))))
(+.f64 1/2 (fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 1/2 (exp.f64 im) 1/2)) (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (pow.f64 re 2) (+.f64 -1/4 (*.f64 (exp.f64 im) -1/4))) (fma.f64 1/2 (exp.f64 im) 1/2))
(+.f64 (*.f64 (pow.f64 re 2) (-.f64 -1/4 (*.f64 1/4 (exp.f64 im)))) (fma.f64 1/2 (exp.f64 im) 1/2))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))))))))
(+.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 1/2 (exp.f64 im) 1/2) (*.f64 (*.f64 (pow.f64 re 2) (fma.f64 1/2 (exp.f64 im) 1/2)) 1/24))))
(+.f64 1/2 (fma.f64 1/2 (exp.f64 im) (*.f64 (pow.f64 re 2) (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (+.f64 -1/2 (*.f64 (pow.f64 re 2) 1/24))))))
(+.f64 1/2 (fma.f64 (pow.f64 re 2) (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (+.f64 -1/2 (*.f64 (pow.f64 re 2) 1/24))) (*.f64 1/2 (exp.f64 im))))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))) (*.f64 1/24 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))))))))
(+.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 1/2 (exp.f64 im) 1/2) (*.f64 (pow.f64 re 2) (fma.f64 -1/720 (*.f64 (pow.f64 re 2) (fma.f64 1/2 (exp.f64 im) 1/2)) (*.f64 1/24 (fma.f64 1/2 (exp.f64 im) 1/2)))))))
(+.f64 1/2 (fma.f64 1/2 (exp.f64 im) (*.f64 (pow.f64 re 2) (fma.f64 (pow.f64 re 2) (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (+.f64 (*.f64 (pow.f64 re 2) -1/720) 1/24)) (+.f64 -1/4 (*.f64 (exp.f64 im) -1/4))))))
(+.f64 1/2 (fma.f64 (pow.f64 re 2) (fma.f64 (pow.f64 re 2) (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (+.f64 (*.f64 (pow.f64 re 2) -1/720) 1/24)) (-.f64 -1/4 (*.f64 1/4 (exp.f64 im)))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
1
(+.f64 1 (*.f64 1/2 im))
(fma.f64 1/2 im 1)
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(fma.f64 im (fma.f64 im 1/4 1/2) 1)
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12))))))
(fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1)
1
(+.f64 1 (*.f64 1/2 im))
(fma.f64 1/2 im 1)
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(fma.f64 im (fma.f64 im 1/4 1/2) 1)
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12))))))
(fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1)
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(fma.f64 im (fma.f64 im 1/4 1/2) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 1 (fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) (*.f64 im (fma.f64 im 1/4 1/2))))
(+.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(+.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 (pow.f64 re 2) (*.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(+.f64 1 (+.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))))))
(+.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 1/24 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))))
(+.f64 1 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (pow.f64 re 2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (+.f64 -1/2 (*.f64 (pow.f64 re 2) 1/24))))))
(+.f64 1 (fma.f64 (pow.f64 re 2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (+.f64 -1/2 (*.f64 (pow.f64 re 2) 1/24))) (*.f64 im (fma.f64 im 1/4 1/2))))
(+.f64 1 (+.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 1/24 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))))))))
(+.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 (pow.f64 re 2) (fma.f64 -1/720 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) (*.f64 1/24 (fma.f64 im (fma.f64 im 1/4 1/2) 1)))))))
(+.f64 1 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 (pow.f64 re 2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (+.f64 (*.f64 (pow.f64 re 2) -1/720) 1/24)))))))
(+.f64 1 (fma.f64 (pow.f64 re 2) (fma.f64 (pow.f64 re 2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (+.f64 (*.f64 (pow.f64 re 2) -1/720) 1/24)) (*.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (*.f64 im (fma.f64 im 1/4 1/2))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (cos.f64 re) im)))
(*.f64 (fma.f64 1/2 im 1) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(*.f64 1/4 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (*.f64 1/4 (pow.f64 im 2)) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/4 (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (cos.f64 re)) (*.f64 1/2 (/.f64 (cos.f64 re) im))))
(*.f64 (pow.f64 im 2) (fma.f64 1/4 (cos.f64 re) (*.f64 1/2 (/.f64 (cos.f64 re) im))))
(*.f64 (pow.f64 im 2) (fma.f64 (cos.f64 re) 1/4 (*.f64 (cos.f64 re) (/.f64 1/2 im))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (cos.f64 re)) (+.f64 (*.f64 1/2 (/.f64 (cos.f64 re) im)) (/.f64 (cos.f64 re) (pow.f64 im 2)))))
(*.f64 (pow.f64 im 2) (fma.f64 1/4 (cos.f64 re) (fma.f64 1/2 (/.f64 (cos.f64 re) im) (/.f64 (cos.f64 re) (pow.f64 im 2)))))
(*.f64 (pow.f64 im 2) (fma.f64 (cos.f64 re) 1/4 (fma.f64 1/2 (/.f64 (cos.f64 re) im) (/.f64 (cos.f64 re) (pow.f64 im 2)))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (cos.f64 re)) (+.f64 (*.f64 1/2 (/.f64 (cos.f64 re) im)) (/.f64 (cos.f64 re) (pow.f64 im 2)))))
(*.f64 (pow.f64 im 2) (fma.f64 1/4 (cos.f64 re) (fma.f64 1/2 (/.f64 (cos.f64 re) im) (/.f64 (cos.f64 re) (pow.f64 im 2)))))
(*.f64 (pow.f64 im 2) (fma.f64 (cos.f64 re) 1/4 (fma.f64 1/2 (/.f64 (cos.f64 re) im) (/.f64 (cos.f64 re) (pow.f64 im 2)))))
(*.f64 1/4 (*.f64 (pow.f64 im 2) (cos.f64 re)))
(*.f64 (*.f64 1/4 (pow.f64 im 2)) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/4 (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (cos.f64 re)) (*.f64 1/2 (/.f64 (cos.f64 re) im))))
(*.f64 (pow.f64 im 2) (fma.f64 1/4 (cos.f64 re) (*.f64 1/2 (/.f64 (cos.f64 re) im))))
(*.f64 (pow.f64 im 2) (fma.f64 (cos.f64 re) 1/4 (*.f64 (cos.f64 re) (/.f64 1/2 im))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 re) im)) (*.f64 -1/2 (cos.f64 re))) im)) (*.f64 1/4 (cos.f64 re))))
(*.f64 (pow.f64 im 2) (fma.f64 -1 (/.f64 (fma.f64 -1 (/.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) -1/2)) im) (*.f64 (cos.f64 re) 1/4)))
(*.f64 (pow.f64 im 2) (-.f64 (*.f64 (cos.f64 re) 1/4) (/.f64 (-.f64 (*.f64 (cos.f64 re) -1/2) (/.f64 (cos.f64 re) im)) im)))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 re) im)) (*.f64 -1/2 (cos.f64 re))) im)) (*.f64 1/4 (cos.f64 re))))
(*.f64 (pow.f64 im 2) (fma.f64 -1 (/.f64 (fma.f64 -1 (/.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) -1/2)) im) (*.f64 (cos.f64 re) 1/4)))
(*.f64 (pow.f64 im 2) (-.f64 (*.f64 (cos.f64 re) 1/4) (/.f64 (-.f64 (*.f64 (cos.f64 re) -1/2) (/.f64 (cos.f64 re) im)) im)))
(*.f64 1/2 im)
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
(*.f64 im (fma.f64 im 1/4 1/2))
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
(*.f64 im (fma.f64 im 1/4 1/2))
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
(*.f64 im (fma.f64 im 1/4 1/2))
(*.f64 1/4 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 1/4 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(+.f64 (*.f64 (cos.f64 re) 1/2) (*.f64 (cos.f64 re) (*.f64 1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(+.f64 (*.f64 (cos.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (cos.f64 re) 1/2))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 (*.f64 1/2 (exp.f64 im)) (cos.f64 re)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) (cos.f64 re)) (*.f64 1/2 (cos.f64 re)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)))) 1)
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(/.f64 (*.f64 (cos.f64 re) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)) (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))))))
(*.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (/.f64 (cos.f64 re) (fma.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)) 1/4)))
(/.f64 (*.f64 (cos.f64 re) (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2)))
(*.f64 (cos.f64 re) (/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2)))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (cos.f64 re)) (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))))))
(*.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (/.f64 (cos.f64 re) (fma.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)) 1/4)))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (cos.f64 re)) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2)))
(*.f64 (cos.f64 re) (/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2)))
(pow.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)) 1)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))) 3)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(pow.f64 (pow.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)) 3) 1/3)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))) 2)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)) 2))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re)) 3))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3) (pow.f64 (cos.f64 re) 3)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3)))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(exp.f64 (log.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (cos.f64 re))) 1))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) 1)
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(-.f64 (/.f64 1/4 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))) (/.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 1)
(fma.f64 1/2 (exp.f64 im) 1/2)
(*.f64 1 (fma.f64 1/2 (exp.f64 im) 1/2))
(fma.f64 1/2 (exp.f64 im) 1/2)
(*.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2))
(fma.f64 1/2 (exp.f64 im) 1/2)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2) (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(*.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(*.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (/.f64 1 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im))))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) 1) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (fma.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)) 1/4))
(*.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(*.f64 (+.f64 (exp.f64 im) 1) 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(/.f64 1 (/.f64 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) 1) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (fma.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)) 1/4))
(/.f64 1 (/.f64 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))) (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))))
(/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) 1) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (fma.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)) 1/4))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (+.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 1/4 (*.f64 1/4 (exp.f64 im)))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) 1) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (fma.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)) 1/4))
(/.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)) (neg.f64 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im))))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) 1) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (fma.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)) 1/4))
(/.f64 (neg.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (neg.f64 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) 1/4) (-.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
(/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 1)
(fma.f64 1/2 (exp.f64 im) 1/2)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 3)
(fma.f64 1/2 (exp.f64 im) 1/2)
(pow.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3) 1/3)
(fma.f64 1/2 (exp.f64 im) 1/2)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 2))
(fma.f64 1/2 (exp.f64 im) 1/2)
(log.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2))))
(fma.f64 1/2 (exp.f64 im) 1/2)
(cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3))
(fma.f64 1/2 (exp.f64 im) 1/2)
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(exp.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 1))
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 (exp.f64 im) 1/2 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 1 (*.f64 1/2 (exp.f64 im)) 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 (sqrt.f64 (*.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) 1)
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(-.f64 (/.f64 1/4 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))) (/.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 1)
(fma.f64 1/2 (exp.f64 im) 1/2)
(*.f64 1 (fma.f64 1/2 (exp.f64 im) 1/2))
(fma.f64 1/2 (exp.f64 im) 1/2)
(*.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2))
(fma.f64 1/2 (exp.f64 im) 1/2)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2) (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(*.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(*.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (/.f64 1 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im))))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) 1) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (fma.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)) 1/4))
(*.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(*.f64 (+.f64 (exp.f64 im) 1) 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(/.f64 1 (/.f64 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) 1) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (fma.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)) 1/4))
(/.f64 1 (/.f64 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))) (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))))
(/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im)))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) 1) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (fma.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)) 1/4))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8) (+.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 1/4 (*.f64 1/4 (exp.f64 im)))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) 1) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (fma.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)) 1/4))
(/.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) 1/8)) (neg.f64 (+.f64 1/4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (exp.f64 im))))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) 1) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (fma.f64 1/4 (-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im)) 1/4))
(/.f64 (neg.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (neg.f64 (+.f64 1/2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) 1/4) (-.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
(/.f64 (+.f64 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 1)
(fma.f64 1/2 (exp.f64 im) 1/2)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 3)
(fma.f64 1/2 (exp.f64 im) 1/2)
(pow.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3) 1/3)
(fma.f64 1/2 (exp.f64 im) 1/2)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 2))
(fma.f64 1/2 (exp.f64 im) 1/2)
(log.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2))))
(fma.f64 1/2 (exp.f64 im) 1/2)
(cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3))
(fma.f64 1/2 (exp.f64 im) 1/2)
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(exp.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) 1))
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 (exp.f64 im) 1/2 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 1 (*.f64 1/2 (exp.f64 im)) 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(fma.f64 (sqrt.f64 (*.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(+.f64 (cos.f64 re) (*.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(+.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))) 1)
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) 3)) (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2)))) (*.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2)))))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) 3)) (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) (-.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) (cos.f64 re)))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) 3)) (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (pow.f64 (cos.f64 re) 2) (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2))))))
(/.f64 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))) (-.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (pow.f64 (cos.f64 re) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (-.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (cos.f64 re) (*.f64 (cos.f64 re) (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)))) (-.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (cos.f64 re) (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2)))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2))))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (fma.f64 im (fma.f64 im 1/4 1/2) -1))))
(/.f64 (*.f64 (cos.f64 re) (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))
(*.f64 (cos.f64 re) (/.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (cos.f64 re)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2)))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2))))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (fma.f64 im (fma.f64 im 1/4 1/2) -1))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (cos.f64 re)) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))
(*.f64 (cos.f64 re) (/.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2)))))
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 1)
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 3)
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3) 1/3)
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2)
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 2))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 3)))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 3) (pow.f64 (cos.f64 re) 3)))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 1))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(fma.f64 (cos.f64 re) 1 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(fma.f64 1 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (cbrt.f64 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(fma.f64 (sqrt.f64 (cos.f64 re)) (sqrt.f64 (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im 1/4 1/2))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(+.f64 (*.f64 1/2 im) (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 (*.f64 1/2 im) 1) (*.f64 (*.f64 1/4 (pow.f64 im 2)) 1))
(*.f64 im (fma.f64 im 1/4 1/2))
(-.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 1)
(*.f64 im (fma.f64 im 1/4 1/2))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 im) 3) (pow.f64 (*.f64 1/4 (pow.f64 im 2)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (*.f64 (*.f64 1/2 im) (*.f64 1/4 (pow.f64 im 2))))))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 3)) (*.f64 1/64 (pow.f64 (pow.f64 im 2) 3))) (fma.f64 1/4 (pow.f64 im 2) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 im 3) (*.f64 1/64 (pow.f64 (pow.f64 im 2) 3))) (-.f64 (fma.f64 1/4 (pow.f64 im 2) (*.f64 1/16 (pow.f64 im 4))) (*.f64 1/8 (pow.f64 im 3))))
(/.f64 (fma.f64 1/8 (pow.f64 im 3) (*.f64 1/64 (pow.f64 im 6))) (fma.f64 1/4 (pow.f64 im 2) (fma.f64 1/16 (pow.f64 im 4) (*.f64 (pow.f64 im 3) -1/8))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2)))) (-.f64 (*.f64 1/2 im) (*.f64 1/4 (pow.f64 im 2))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/16 (*.f64 (pow.f64 im 2) (pow.f64 im 2)))) (-.f64 (*.f64 1/2 im) (*.f64 1/4 (pow.f64 im 2))))
(/.f64 (fma.f64 1/4 (pow.f64 im 2) (*.f64 -1/16 (pow.f64 im 4))) (fma.f64 1/2 im (*.f64 (pow.f64 im 2) -1/4)))
(/.f64 (fma.f64 1/4 (pow.f64 im 2) (*.f64 (pow.f64 im 4) -1/16)) (fma.f64 1/2 im (*.f64 (pow.f64 im 2) -1/4)))
(/.f64 (*.f64 im (+.f64 (*.f64 (pow.f64 im 3) 1/64) 1/8)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(*.f64 im (/.f64 (fma.f64 (pow.f64 im 3) 1/64 1/8) (+.f64 1/4 (+.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 -1/8 im)))))
(*.f64 (fma.f64 (pow.f64 im 3) 1/64 1/8) (/.f64 im (+.f64 1/4 (fma.f64 (pow.f64 im 2) 1/16 (*.f64 im -1/8)))))
(*.f64 im (/.f64 (fma.f64 (pow.f64 im 3) 1/64 1/8) (+.f64 1/4 (fma.f64 (pow.f64 im 2) 1/16 (*.f64 im -1/8)))))
(/.f64 (*.f64 im (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16))) (+.f64 1/2 (*.f64 -1/4 im)))
(*.f64 im (/.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) (+.f64 1/2 (*.f64 im -1/4))))
(*.f64 im (/.f64 (+.f64 1/4 (*.f64 (pow.f64 im 2) -1/16)) (fma.f64 im -1/4 1/2)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/64) 1/8) im) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(*.f64 im (/.f64 (fma.f64 (pow.f64 im 3) 1/64 1/8) (+.f64 1/4 (+.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 -1/8 im)))))
(*.f64 (fma.f64 (pow.f64 im 3) 1/64 1/8) (/.f64 im (+.f64 1/4 (fma.f64 (pow.f64 im 2) 1/16 (*.f64 im -1/8)))))
(*.f64 im (/.f64 (fma.f64 (pow.f64 im 3) 1/64 1/8) (+.f64 1/4 (fma.f64 (pow.f64 im 2) 1/16 (*.f64 im -1/8)))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) im) (+.f64 1/2 (*.f64 -1/4 im)))
(*.f64 im (/.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) (+.f64 1/2 (*.f64 im -1/4))))
(*.f64 im (/.f64 (+.f64 1/4 (*.f64 (pow.f64 im 2) -1/16)) (fma.f64 im -1/4 1/2)))
(pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 1)
(*.f64 im (fma.f64 im 1/4 1/2))
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 3)
(*.f64 im (fma.f64 im 1/4 1/2))
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 1/3)
(*.f64 im (fma.f64 im 1/4 1/2))
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2)
(*.f64 im (fma.f64 im 1/4 1/2))
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))
(*.f64 im (fma.f64 im 1/4 1/2))
(log.f64 (pow.f64 (exp.f64 im) (fma.f64 im 1/4 1/2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2)))))
(*.f64 im (fma.f64 im 1/4 1/2))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))
(*.f64 im (fma.f64 im 1/4 1/2))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(*.f64 im (fma.f64 im 1/4 1/2))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(*.f64 im (fma.f64 im 1/4 1/2))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(*.f64 im (fma.f64 im 1/4 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(*.f64 im (fma.f64 im 1/4 1/2))
(fma.f64 1/2 im (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))

eval97.0ms (1.3%)

Compiler

Compiled 4282 to 2933 computations (31.5% saved)

prune47.0ms (0.7%)

Pruning

17 alts after pruning (11 fresh and 6 done)

PrunedKeptTotal
New2437250
Fresh347
Picked145
Done022
Total24717264
Accuracy
100.0%
Counts
264 → 17
Alt Table
Click to see full alt table
StatusAccuracyProgram
67.1%
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
75.2%
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
29.9%
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
54.3%
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12))))))
47.3%
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
28.8%
(+.f64 1 (*.f64 1/2 im))
65.8%
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
83.9%
(*.f64 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))) (cos.f64 re))
49.4%
(*.f64 (+.f64 1 (*.f64 1/2 im)) (cos.f64 re))
98.4%
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
74.3%
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))
75.2%
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
8.3%
(*.f64 (cos.f64 re) 512)
47.8%
(*.f64 1/2 (fma.f64 im im 2))
67.1%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
48.8%
(cos.f64 re)
28.2%
1
Compiler

Compiled 325 to 257 computations (20.9% saved)

localize347.0ms (4.8%)

Localize:

Found 8 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
87.1%
(*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
84.1%
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
100.0%
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
99.9%
(*.f64 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))) (cos.f64 re))
99.9%
(*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))
99.9%
(*.f64 im (+.f64 1/4 (*.f64 im 1/12)))
99.5%
(*.f64 im 1/12)
Compiler

Compiled 227 to 170 computations (25.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 180.0ms
Operation ival-mult, time spent: 92.0ms, 51.0% of total-time
Operation ival-add, time spent: 53.0ms, 30.0% of total-time
Operation const, time spent: 11.0ms, 6.0% of total-time
Operation composed, time spent: 8.0ms, 4.0% of total-time
Operation ival-pow, time spent: 8.0ms, 4.0% of total-time
Operation ival-cos, time spent: 7.0ms, 4.0% of total-time

series20.0ms (0.3%)

Counts
8 → 111
Calls
Call 1
Inputs
#<alt (*.f64 im 1/12)>
#<alt (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))>
#<alt (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))>
#<alt (*.f64 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))) (cos.f64 re))>
#<alt (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))>
#<alt (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))>
#<alt (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))>
#<alt (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))>
Outputs
#<alt (*.f64 1/12 im)>
#<alt (*.f64 1/12 im)>
#<alt (*.f64 1/12 im)>
#<alt (*.f64 1/12 im)>
#<alt (*.f64 1/12 im)>
#<alt (*.f64 1/12 im)>
#<alt (*.f64 1/12 im)>
#<alt (*.f64 1/12 im)>
#<alt (*.f64 1/12 im)>
#<alt (*.f64 1/12 im)>
#<alt (*.f64 1/12 im)>
#<alt (*.f64 1/12 im)>
#<alt (*.f64 1/4 im)>
#<alt (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))>
#<alt (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))>
#<alt (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))>
#<alt (*.f64 1/12 (pow.f64 im 2))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))>
#<alt (*.f64 1/12 (pow.f64 im 2))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))>
#<alt (*.f64 1/2 im)>
#<alt (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))>
#<alt (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))>
#<alt (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))>
#<alt (*.f64 1/12 (pow.f64 im 3))>
#<alt (*.f64 (pow.f64 im 3) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 3) (+.f64 1/12 (+.f64 (/.f64 1/2 (pow.f64 im 2)) (*.f64 1/4 (/.f64 1 im)))))>
#<alt (*.f64 (pow.f64 im 3) (+.f64 1/12 (+.f64 (/.f64 1/2 (pow.f64 im 2)) (*.f64 1/4 (/.f64 1 im)))))>
#<alt (*.f64 1/12 (pow.f64 im 3))>
#<alt (*.f64 (pow.f64 im 3) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))>
#<alt (*.f64 -1 (*.f64 (pow.f64 im 3) (-.f64 (*.f64 -1 (/.f64 (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))) im)) 1/12)))>
#<alt (*.f64 -1 (*.f64 (pow.f64 im 3) (-.f64 (*.f64 -1 (/.f64 (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))) im)) 1/12)))>
#<alt (cos.f64 re)>
#<alt (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))>
#<alt (+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))>
#<alt (+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im (+.f64 (*.f64 1/12 (*.f64 im (cos.f64 re))) (*.f64 1/4 (cos.f64 re)))))))>
#<alt (*.f64 1/12 (*.f64 (pow.f64 im 3) (cos.f64 re)))>
#<alt (*.f64 (pow.f64 im 3) (+.f64 (*.f64 1/12 (cos.f64 re)) (*.f64 1/4 (/.f64 (cos.f64 re) im))))>
#<alt (*.f64 (pow.f64 im 3) (+.f64 (*.f64 1/12 (cos.f64 re)) (+.f64 (*.f64 1/4 (/.f64 (cos.f64 re) im)) (*.f64 1/2 (/.f64 (cos.f64 re) (pow.f64 im 2))))))>
#<alt (*.f64 (pow.f64 im 3) (+.f64 (*.f64 1/12 (cos.f64 re)) (+.f64 (*.f64 1/4 (/.f64 (cos.f64 re) im)) (+.f64 (*.f64 1/2 (/.f64 (cos.f64 re) (pow.f64 im 2))) (/.f64 (cos.f64 re) (pow.f64 im 3))))))>
#<alt (*.f64 1/12 (*.f64 (pow.f64 im 3) (cos.f64 re)))>
#<alt (*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1/4 (/.f64 (cos.f64 re) im)) (*.f64 -1/12 (cos.f64 re)))))>
#<alt (*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (cos.f64 re)) (*.f64 1/2 (/.f64 (cos.f64 re) im))) im)) (*.f64 -1/12 (cos.f64 re)))))>
#<alt (*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 re) im)) (*.f64 -1/2 (cos.f64 re))) im)) (*.f64 1/4 (cos.f64 re))) im)) (*.f64 -1/12 (cos.f64 re)))))>
#<alt (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))>
#<alt (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))) (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))>
#<alt (+.f64 1 (+.f64 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))))))))>
#<alt (+.f64 1 (+.f64 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))) (*.f64 1/24 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))>
#<alt (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))>
#<alt (*.f64 1/2 im)>
#<alt (*.f64 1/4 (pow.f64 im 2))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 1/4 (pow.f64 im 2))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))>
#<alt (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))>
#<alt (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))>
#<alt (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))>
#<alt (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))>
#<alt (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))>
#<alt (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))>
#<alt (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))>
#<alt (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))>
#<alt (*.f64 -1/2 (pow.f64 re 2))>
#<alt (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 im (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))))>
#<alt (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 im (+.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 re 2)) (*.f64 im (+.f64 1/4 (*.f64 -1/8 (pow.f64 re 2))))))))>
#<alt (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 im (+.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 re 2)) (*.f64 im (+.f64 1/4 (*.f64 -1/8 (pow.f64 re 2))))))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 -1/8 (pow.f64 re 2))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1/8 (pow.f64 re 2)) (*.f64 1/2 (/.f64 1 im))))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1/8 (pow.f64 re 2)) (*.f64 1/2 (/.f64 1 im)))))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1/8 (pow.f64 re 2)) (*.f64 1/2 (/.f64 1 im)))))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 -1/8 (pow.f64 re 2))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 re 2)) 1/2) im)) (*.f64 -1/8 (pow.f64 re 2)))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1 (/.f64 (-.f64 (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) 1/2) im)) (*.f64 -1/8 (pow.f64 re 2)))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1 (/.f64 (-.f64 (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) 1/2) im)) (*.f64 -1/8 (pow.f64 re 2)))))>
#<alt (pow.f64 re 2)>
#<alt (+.f64 (*.f64 1/2 (*.f64 im (pow.f64 re 2))) (pow.f64 re 2))>
#<alt (+.f64 (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (pow.f64 re 2))) (*.f64 1/2 (pow.f64 re 2)))) (pow.f64 re 2))>
#<alt (+.f64 (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (pow.f64 re 2))) (*.f64 1/2 (pow.f64 re 2)))) (pow.f64 re 2))>
#<alt (*.f64 1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2)))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (pow.f64 im 2)))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (pow.f64 im 2)))))>
#<alt (*.f64 1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2)))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1/2 (pow.f64 re 2))) im)) (*.f64 1/4 (pow.f64 re 2))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1/2 (pow.f64 re 2))) im)) (*.f64 1/4 (pow.f64 re 2))))>
#<alt (*.f64 1/2 im)>
#<alt (*.f64 1/4 (pow.f64 im 2))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 1/4 (pow.f64 im 2))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
#<alt (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))>
Calls

33 calls:

TimeVariablePointExpression
3.0ms
im
@inf
(* (+ 1 (* im (+ 1/2 (* im (+ 1/4 (* im 1/12)))))) (cos re))
1.0ms
re
@inf
(* (+ 1 (* im (+ 1/2 (* im (+ 1/4 (* im 1/12)))))) (cos re))
1.0ms
re
@0
(* (+ 1 (* im (+ 1/2 (* im (+ 1/4 (* im 1/12)))))) (cos re))
1.0ms
im
@-inf
(* (+ 1 (* im (+ 1/2 (* im (+ 1/4 (* im 1/12)))))) (cos re))
1.0ms
re
@inf
(+ (* -1/2 (* (pow re 2) (+ 1 (* im (+ 1/2 (* 1/4 im)))))) (* im (+ 1/2 (* 1/4 im))))

rewrite213.0ms (2.9%)

Algorithm
batch-egg-rewrite
Rules
873×log1p-expm1-u
464×associate-*r*
284×associate-*l*
214×expm1-log1p-u
210×add-cube-cbrt
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
030308
1464256
27027256
Stop Event
node limit
Counts
8 → 203
Calls
Call 1
Inputs
(*.f64 im 1/12)
(*.f64 im (+.f64 1/4 (*.f64 im 1/12)))
(*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))
(*.f64 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))) (cos.f64 re))
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
Outputs
(-.f64 (exp.f64 (log1p.f64 (*.f64 im 1/12))) 1)
(pow.f64 (*.f64 im 1/12) 1)
(pow.f64 (cbrt.f64 (*.f64 im 1/12)) 3)
(pow.f64 (*.f64 (pow.f64 im 3) 1/1728) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im 1/12)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 2) 1/144))
(log.f64 (pow.f64 (exp.f64 im) 1/12))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im 1/12))))
(cbrt.f64 (*.f64 (pow.f64 im 3) 1/1728))
(expm1.f64 (log1p.f64 (*.f64 im 1/12)))
(log1p.f64 (expm1.f64 (*.f64 im 1/12)))
(exp.f64 (log.f64 (*.f64 im 1/12)))
(exp.f64 (*.f64 (log.f64 (*.f64 im 1/12)) 1))
(+.f64 (*.f64 im 1/4) (*.f64 1/12 (pow.f64 im 2)))
(+.f64 (*.f64 im 1/4) (*.f64 (*.f64 1/12 (pow.f64 im 2)) 1))
(+.f64 (*.f64 1/12 (pow.f64 im 2)) (*.f64 im 1/4))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/12 1/4)))) 1)
(/.f64 (+.f64 (*.f64 1/64 (pow.f64 im 3)) (pow.f64 (*.f64 1/12 (pow.f64 im 2)) 3)) (+.f64 (*.f64 (pow.f64 im 2) 1/16) (-.f64 (*.f64 (*.f64 1/12 (pow.f64 im 2)) (*.f64 1/12 (pow.f64 im 2))) (*.f64 (*.f64 im 1/4) (*.f64 1/12 (pow.f64 im 2))))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 (*.f64 1/12 (pow.f64 im 2)) (*.f64 1/12 (pow.f64 im 2)))) (-.f64 (*.f64 im 1/4) (*.f64 1/12 (pow.f64 im 2))))
(/.f64 (*.f64 im (+.f64 (*.f64 (pow.f64 im 3) 1/1728) 1/64)) (+.f64 1/16 (-.f64 (*.f64 (pow.f64 im 2) 1/144) (*.f64 1/48 im))))
(/.f64 (*.f64 im (-.f64 1/16 (*.f64 (pow.f64 im 2) 1/144))) (+.f64 1/4 (*.f64 -1/12 im)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/1728) 1/64) im) (+.f64 1/16 (-.f64 (*.f64 (pow.f64 im 2) 1/144) (*.f64 1/48 im))))
(/.f64 (*.f64 (-.f64 1/16 (*.f64 (pow.f64 im 2) 1/144)) im) (+.f64 1/4 (*.f64 -1/12 im)))
(pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/12 1/4))) 3)
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/12 1/4))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im 1/12 1/4)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/12 1/4)))))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/12 1/4))))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/12 1/4))))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/12 1/4))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/12 1/4))) 1))
(fma.f64 im 1/4 (*.f64 1/12 (pow.f64 im 2)))
(fma.f64 1/4 im (*.f64 1/12 (pow.f64 im 2)))
(fma.f64 1 (*.f64 im 1/4) (*.f64 1/12 (pow.f64 im 2)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/4)) 2) (cbrt.f64 (*.f64 im 1/4)) (*.f64 1/12 (pow.f64 im 2)))
(fma.f64 (*.f64 1/2 (sqrt.f64 im)) (*.f64 1/2 (sqrt.f64 im)) (*.f64 1/12 (pow.f64 im 2)))
(+.f64 (*.f64 im 1/2) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)))
(+.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) (*.f64 im 1/2))
(+.f64 (*.f64 (*.f64 im 1/2) 1) (*.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) 1))
(-.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2))) (*.f64 (*.f64 im 1/2) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2))))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)))) (-.f64 (*.f64 im 1/2) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2))))
(/.f64 (*.f64 im (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3) 1/8)) (+.f64 1/4 (*.f64 (*.f64 im (fma.f64 im 1/12 1/4)) (-.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 1/2))))
(/.f64 (*.f64 im (-.f64 1/4 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 2))) (-.f64 1/2 (*.f64 im (fma.f64 im 1/12 1/4))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3) 1/8) im) (+.f64 1/4 (*.f64 (*.f64 im (fma.f64 im 1/12 1/4)) (-.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 1/2))))
(/.f64 (*.f64 (-.f64 1/4 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 2)) im) (-.f64 1/2 (*.f64 im (fma.f64 im 1/12 1/4))))
(pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2))
(log.f64 (pow.f64 (exp.f64 im) (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))) 1))
(fma.f64 im 1/2 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)))
(fma.f64 1/2 im (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(+.f64 (cos.f64 re) (*.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) (cos.f64 re)))
(+.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))) (cos.f64 re))
(+.f64 (*.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) (cos.f64 re)) (cos.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)))) 1)
(/.f64 (*.f64 (cos.f64 re) (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3))) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))))
(/.f64 (*.f64 (cos.f64 re) (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2))) (-.f64 1 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3)) (cos.f64 re)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2)) (cos.f64 re)) (-.f64 1 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(pow.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) 3) (pow.f64 (cos.f64 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))))
(exp.f64 (log.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))) 1))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2))
(+.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2)))
(+.f64 (*.f64 (*.f64 im 1/2) 1) (*.f64 (*.f64 1/4 (pow.f64 im 2)) 1))
(-.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (*.f64 1/4 (pow.f64 im 2)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (*.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2))))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2)))) (-.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2))))
(/.f64 (*.f64 im (+.f64 (*.f64 1/64 (pow.f64 im 3)) 1/8)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 im (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16))) (+.f64 1/2 (*.f64 -1/4 im)))
(/.f64 (*.f64 (+.f64 (*.f64 1/64 (pow.f64 im 3)) 1/8) im) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) im) (+.f64 1/2 (*.f64 -1/4 im)))
(pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 3)
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2)
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im 1/4 1/2)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(fma.f64 1/2 im (*.f64 1/4 (pow.f64 im 2)))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))) (/.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))))
(*.f64 1 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))
(*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 1)
(*.f64 (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) (pow.f64 (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 2) (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(*.f64 (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(*.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))))
(*.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (/.f64 1 (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))) (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))))
(/.f64 1 (/.f64 (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2))) (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (neg.f64 (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))
(pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 1)
(pow.f64 (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 3)
(pow.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 2)
(sqrt.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 2))
(log.f64 (exp.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))))
(cbrt.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 3))
(expm1.f64 (log1p.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(log1p.f64 (expm1.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(exp.f64 (log.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(exp.f64 (*.f64 (log.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 1))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 1 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 1 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 (fma.f64 im 1/4 1/2) im (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) -1/2 (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 2) (cbrt.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2) (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 (*.f64 (*.f64 re (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (sqrt.f64 -1/2)) (*.f64 (*.f64 re (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (sqrt.f64 -1/2)) (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 (*.f64 -1/2 (pow.f64 re 2)) (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 im (fma.f64 im 1/4 1/2)))
(+.f64 (pow.f64 re 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(+.f64 (pow.f64 re 2) (*.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) 1))
(+.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) (pow.f64 re 2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))) 1)
(/.f64 (+.f64 (pow.f64 (pow.f64 re 2) 3) (pow.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) 3)) (+.f64 (pow.f64 re 4) (-.f64 (*.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2))) (*.f64 (pow.f64 re 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2))))))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))) (-.f64 (pow.f64 re 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2))))
(/.f64 (*.f64 (pow.f64 re 2) (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (pow.f64 re 2) (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (pow.f64 re 2)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (pow.f64 re 2)) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))
(pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3) 1/3)
(pow.f64 (*.f64 re (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2)
(sqrt.f64 (*.f64 (pow.f64 re 4) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 2)))
(log.f64 (pow.f64 (exp.f64 (pow.f64 re 2)) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 re 2) 3) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 3) (pow.f64 (pow.f64 re 2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(exp.f64 (log.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 1))
(fma.f64 1 (pow.f64 re 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(fma.f64 re re (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(fma.f64 (pow.f64 re 2) 1 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(fma.f64 (cbrt.f64 (pow.f64 re 4)) (pow.f64 (cbrt.f64 re) 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2))
(+.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2)))
(+.f64 (*.f64 (*.f64 im 1/2) 1) (*.f64 (*.f64 1/4 (pow.f64 im 2)) 1))
(-.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (*.f64 1/4 (pow.f64 im 2)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (*.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2))))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2)))) (-.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2))))
(/.f64 (*.f64 im (+.f64 (*.f64 1/64 (pow.f64 im 3)) 1/8)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 im (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16))) (+.f64 1/2 (*.f64 -1/4 im)))
(/.f64 (*.f64 (+.f64 (*.f64 1/64 (pow.f64 im 3)) 1/8) im) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) im) (+.f64 1/2 (*.f64 -1/4 im)))
(pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 3)
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2)
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im 1/4 1/2)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(fma.f64 1/2 im (*.f64 1/4 (pow.f64 im 2)))

simplify204.0ms (2.8%)

Algorithm
egg-herbie
Rules
1356×fma-neg
1136×times-frac
1052×fma-define
978×associate-*r*
864×associate-*l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
061816533
1175015536
2646115514
Stop Event
node limit
Counts
314 → 356
Calls
Call 1
Inputs
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/4 im)
(*.f64 im (+.f64 1/4 (*.f64 1/12 im)))
(*.f64 im (+.f64 1/4 (*.f64 1/12 im)))
(*.f64 im (+.f64 1/4 (*.f64 1/12 im)))
(*.f64 1/12 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 1/12 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 1/2 im)
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
(*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))
(*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))
(*.f64 1/12 (pow.f64 im 3))
(*.f64 (pow.f64 im 3) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 (pow.f64 im 3) (+.f64 1/12 (+.f64 (/.f64 1/2 (pow.f64 im 2)) (*.f64 1/4 (/.f64 1 im)))))
(*.f64 (pow.f64 im 3) (+.f64 1/12 (+.f64 (/.f64 1/2 (pow.f64 im 2)) (*.f64 1/4 (/.f64 1 im)))))
(*.f64 1/12 (pow.f64 im 3))
(*.f64 (pow.f64 im 3) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 -1 (*.f64 (pow.f64 im 3) (-.f64 (*.f64 -1 (/.f64 (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))) im)) 1/12)))
(*.f64 -1 (*.f64 (pow.f64 im 3) (-.f64 (*.f64 -1 (/.f64 (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))) im)) 1/12)))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im (+.f64 (*.f64 1/12 (*.f64 im (cos.f64 re))) (*.f64 1/4 (cos.f64 re)))))))
(*.f64 1/12 (*.f64 (pow.f64 im 3) (cos.f64 re)))
(*.f64 (pow.f64 im 3) (+.f64 (*.f64 1/12 (cos.f64 re)) (*.f64 1/4 (/.f64 (cos.f64 re) im))))
(*.f64 (pow.f64 im 3) (+.f64 (*.f64 1/12 (cos.f64 re)) (+.f64 (*.f64 1/4 (/.f64 (cos.f64 re) im)) (*.f64 1/2 (/.f64 (cos.f64 re) (pow.f64 im 2))))))
(*.f64 (pow.f64 im 3) (+.f64 (*.f64 1/12 (cos.f64 re)) (+.f64 (*.f64 1/4 (/.f64 (cos.f64 re) im)) (+.f64 (*.f64 1/2 (/.f64 (cos.f64 re) (pow.f64 im 2))) (/.f64 (cos.f64 re) (pow.f64 im 3))))))
(*.f64 1/12 (*.f64 (pow.f64 im 3) (cos.f64 re)))
(*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1/4 (/.f64 (cos.f64 re) im)) (*.f64 -1/12 (cos.f64 re)))))
(*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (cos.f64 re)) (*.f64 1/2 (/.f64 (cos.f64 re) im))) im)) (*.f64 -1/12 (cos.f64 re)))))
(*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 re) im)) (*.f64 -1/2 (cos.f64 re))) im)) (*.f64 1/4 (cos.f64 re))) im)) (*.f64 -1/12 (cos.f64 re)))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))) (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(+.f64 1 (+.f64 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))))))))
(+.f64 1 (+.f64 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))) (*.f64 1/24 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))))))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 1/2 im)
(*.f64 1/4 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 1/4 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
(*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
(*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))
(*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
(*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))
(*.f64 -1/2 (pow.f64 re 2))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 im (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 im (+.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 re 2)) (*.f64 im (+.f64 1/4 (*.f64 -1/8 (pow.f64 re 2))))))))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 im (+.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 re 2)) (*.f64 im (+.f64 1/4 (*.f64 -1/8 (pow.f64 re 2))))))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 -1/8 (pow.f64 re 2))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1/8 (pow.f64 re 2)) (*.f64 1/2 (/.f64 1 im))))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1/8 (pow.f64 re 2)) (*.f64 1/2 (/.f64 1 im)))))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1/8 (pow.f64 re 2)) (*.f64 1/2 (/.f64 1 im)))))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 -1/8 (pow.f64 re 2))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 re 2)) 1/2) im)) (*.f64 -1/8 (pow.f64 re 2)))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1 (/.f64 (-.f64 (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) 1/2) im)) (*.f64 -1/8 (pow.f64 re 2)))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1 (/.f64 (-.f64 (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) 1/2) im)) (*.f64 -1/8 (pow.f64 re 2)))))
(pow.f64 re 2)
(+.f64 (*.f64 1/2 (*.f64 im (pow.f64 re 2))) (pow.f64 re 2))
(+.f64 (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (pow.f64 re 2))) (*.f64 1/2 (pow.f64 re 2)))) (pow.f64 re 2))
(+.f64 (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (pow.f64 re 2))) (*.f64 1/2 (pow.f64 re 2)))) (pow.f64 re 2))
(*.f64 1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2)))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (pow.f64 im 2)))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (pow.f64 im 2)))))
(*.f64 1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2)))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1/2 (pow.f64 re 2))) im)) (*.f64 1/4 (pow.f64 re 2))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1/2 (pow.f64 re 2))) im)) (*.f64 1/4 (pow.f64 re 2))))
(*.f64 1/2 im)
(*.f64 1/4 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 1/4 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im 1/12))) 1)
(pow.f64 (*.f64 im 1/12) 1)
(pow.f64 (cbrt.f64 (*.f64 im 1/12)) 3)
(pow.f64 (*.f64 (pow.f64 im 3) 1/1728) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im 1/12)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 2) 1/144))
(log.f64 (pow.f64 (exp.f64 im) 1/12))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im 1/12))))
(cbrt.f64 (*.f64 (pow.f64 im 3) 1/1728))
(expm1.f64 (log1p.f64 (*.f64 im 1/12)))
(log1p.f64 (expm1.f64 (*.f64 im 1/12)))
(exp.f64 (log.f64 (*.f64 im 1/12)))
(exp.f64 (*.f64 (log.f64 (*.f64 im 1/12)) 1))
(+.f64 (*.f64 im 1/4) (*.f64 1/12 (pow.f64 im 2)))
(+.f64 (*.f64 im 1/4) (*.f64 (*.f64 1/12 (pow.f64 im 2)) 1))
(+.f64 (*.f64 1/12 (pow.f64 im 2)) (*.f64 im 1/4))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/12 1/4)))) 1)
(/.f64 (+.f64 (*.f64 1/64 (pow.f64 im 3)) (pow.f64 (*.f64 1/12 (pow.f64 im 2)) 3)) (+.f64 (*.f64 (pow.f64 im 2) 1/16) (-.f64 (*.f64 (*.f64 1/12 (pow.f64 im 2)) (*.f64 1/12 (pow.f64 im 2))) (*.f64 (*.f64 im 1/4) (*.f64 1/12 (pow.f64 im 2))))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 (*.f64 1/12 (pow.f64 im 2)) (*.f64 1/12 (pow.f64 im 2)))) (-.f64 (*.f64 im 1/4) (*.f64 1/12 (pow.f64 im 2))))
(/.f64 (*.f64 im (+.f64 (*.f64 (pow.f64 im 3) 1/1728) 1/64)) (+.f64 1/16 (-.f64 (*.f64 (pow.f64 im 2) 1/144) (*.f64 1/48 im))))
(/.f64 (*.f64 im (-.f64 1/16 (*.f64 (pow.f64 im 2) 1/144))) (+.f64 1/4 (*.f64 -1/12 im)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/1728) 1/64) im) (+.f64 1/16 (-.f64 (*.f64 (pow.f64 im 2) 1/144) (*.f64 1/48 im))))
(/.f64 (*.f64 (-.f64 1/16 (*.f64 (pow.f64 im 2) 1/144)) im) (+.f64 1/4 (*.f64 -1/12 im)))
(pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/12 1/4))) 3)
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/12 1/4))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im 1/12 1/4)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/12 1/4)))))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/12 1/4))))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/12 1/4))))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/12 1/4))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/12 1/4))) 1))
(fma.f64 im 1/4 (*.f64 1/12 (pow.f64 im 2)))
(fma.f64 1/4 im (*.f64 1/12 (pow.f64 im 2)))
(fma.f64 1 (*.f64 im 1/4) (*.f64 1/12 (pow.f64 im 2)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/4)) 2) (cbrt.f64 (*.f64 im 1/4)) (*.f64 1/12 (pow.f64 im 2)))
(fma.f64 (*.f64 1/2 (sqrt.f64 im)) (*.f64 1/2 (sqrt.f64 im)) (*.f64 1/12 (pow.f64 im 2)))
(+.f64 (*.f64 im 1/2) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)))
(+.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) (*.f64 im 1/2))
(+.f64 (*.f64 (*.f64 im 1/2) 1) (*.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) 1))
(-.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2))) (*.f64 (*.f64 im 1/2) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2))))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)))) (-.f64 (*.f64 im 1/2) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2))))
(/.f64 (*.f64 im (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3) 1/8)) (+.f64 1/4 (*.f64 (*.f64 im (fma.f64 im 1/12 1/4)) (-.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 1/2))))
(/.f64 (*.f64 im (-.f64 1/4 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 2))) (-.f64 1/2 (*.f64 im (fma.f64 im 1/12 1/4))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3) 1/8) im) (+.f64 1/4 (*.f64 (*.f64 im (fma.f64 im 1/12 1/4)) (-.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 1/2))))
(/.f64 (*.f64 (-.f64 1/4 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 2)) im) (-.f64 1/2 (*.f64 im (fma.f64 im 1/12 1/4))))
(pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2))
(log.f64 (pow.f64 (exp.f64 im) (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))) 1))
(fma.f64 im 1/2 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)))
(fma.f64 1/2 im (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(+.f64 (cos.f64 re) (*.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) (cos.f64 re)))
(+.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))) (cos.f64 re))
(+.f64 (*.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) (cos.f64 re)) (cos.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)))) 1)
(/.f64 (*.f64 (cos.f64 re) (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3))) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))))
(/.f64 (*.f64 (cos.f64 re) (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2))) (-.f64 1 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3)) (cos.f64 re)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2)) (cos.f64 re)) (-.f64 1 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(pow.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) 3) (pow.f64 (cos.f64 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))))
(exp.f64 (log.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))) 1))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2))
(+.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2)))
(+.f64 (*.f64 (*.f64 im 1/2) 1) (*.f64 (*.f64 1/4 (pow.f64 im 2)) 1))
(-.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (*.f64 1/4 (pow.f64 im 2)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (*.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2))))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2)))) (-.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2))))
(/.f64 (*.f64 im (+.f64 (*.f64 1/64 (pow.f64 im 3)) 1/8)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 im (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16))) (+.f64 1/2 (*.f64 -1/4 im)))
(/.f64 (*.f64 (+.f64 (*.f64 1/64 (pow.f64 im 3)) 1/8) im) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) im) (+.f64 1/2 (*.f64 -1/4 im)))
(pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 3)
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2)
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im 1/4 1/2)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(fma.f64 1/2 im (*.f64 1/4 (pow.f64 im 2)))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))) (/.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))))
(*.f64 1 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))
(*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 1)
(*.f64 (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) (pow.f64 (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 2) (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(*.f64 (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(*.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))))
(*.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (/.f64 1 (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))) (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))))
(/.f64 1 (/.f64 (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2))) (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (neg.f64 (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))
(pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 1)
(pow.f64 (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 3)
(pow.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 2)
(sqrt.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 2))
(log.f64 (exp.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))))
(cbrt.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 3))
(expm1.f64 (log1p.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(log1p.f64 (expm1.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(exp.f64 (log.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(exp.f64 (*.f64 (log.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 1))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 1 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 1 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 (fma.f64 im 1/4 1/2) im (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) -1/2 (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 2) (cbrt.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2) (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 (*.f64 (*.f64 re (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (sqrt.f64 -1/2)) (*.f64 (*.f64 re (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (sqrt.f64 -1/2)) (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 (*.f64 -1/2 (pow.f64 re 2)) (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 im (fma.f64 im 1/4 1/2)))
(+.f64 (pow.f64 re 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(+.f64 (pow.f64 re 2) (*.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) 1))
(+.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) (pow.f64 re 2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))) 1)
(/.f64 (+.f64 (pow.f64 (pow.f64 re 2) 3) (pow.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) 3)) (+.f64 (pow.f64 re 4) (-.f64 (*.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2))) (*.f64 (pow.f64 re 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2))))))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))) (-.f64 (pow.f64 re 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2))))
(/.f64 (*.f64 (pow.f64 re 2) (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (pow.f64 re 2) (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (pow.f64 re 2)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (pow.f64 re 2)) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))
(pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3) 1/3)
(pow.f64 (*.f64 re (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2)
(sqrt.f64 (*.f64 (pow.f64 re 4) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 2)))
(log.f64 (pow.f64 (exp.f64 (pow.f64 re 2)) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 re 2) 3) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 3) (pow.f64 (pow.f64 re 2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(exp.f64 (log.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 1))
(fma.f64 1 (pow.f64 re 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(fma.f64 re re (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(fma.f64 (pow.f64 re 2) 1 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(fma.f64 (cbrt.f64 (pow.f64 re 4)) (pow.f64 (cbrt.f64 re) 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2))
(+.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2)))
(+.f64 (*.f64 (*.f64 im 1/2) 1) (*.f64 (*.f64 1/4 (pow.f64 im 2)) 1))
(-.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (*.f64 1/4 (pow.f64 im 2)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (*.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2))))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2)))) (-.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2))))
(/.f64 (*.f64 im (+.f64 (*.f64 1/64 (pow.f64 im 3)) 1/8)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 im (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16))) (+.f64 1/2 (*.f64 -1/4 im)))
(/.f64 (*.f64 (+.f64 (*.f64 1/64 (pow.f64 im 3)) 1/8) im) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) im) (+.f64 1/2 (*.f64 -1/4 im)))
(pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 3)
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2)
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im 1/4 1/2)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(fma.f64 1/2 im (*.f64 1/4 (pow.f64 im 2)))
Outputs
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/12 im)
(*.f64 1/4 im)
(*.f64 im 1/4)
(*.f64 im (+.f64 1/4 (*.f64 1/12 im)))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(*.f64 im (+.f64 1/4 (*.f64 1/12 im)))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(*.f64 im (+.f64 1/4 (*.f64 1/12 im)))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(*.f64 1/12 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (/.f64 1/4 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (/.f64 1/4 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (/.f64 1/4 im)))
(*.f64 1/12 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (/.f64 1/4 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (/.f64 1/4 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/12 (/.f64 1/4 im)))
(*.f64 1/2 im)
(*.f64 im 1/2)
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
(*.f64 im (fma.f64 im 1/4 1/2))
(*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(*.f64 1/12 (pow.f64 im 3))
(*.f64 (pow.f64 im 3) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 (+.f64 1/12 (/.f64 1/4 im)) (pow.f64 im 3))
(*.f64 (pow.f64 im 3) (+.f64 1/12 (+.f64 (/.f64 1/2 (pow.f64 im 2)) (*.f64 1/4 (/.f64 1 im)))))
(*.f64 (pow.f64 im 3) (+.f64 (+.f64 1/12 (/.f64 1/2 (pow.f64 im 2))) (/.f64 1/4 im)))
(*.f64 (pow.f64 im 3) (+.f64 (/.f64 1/4 im) (+.f64 1/12 (/.f64 1/2 (pow.f64 im 2)))))
(*.f64 (pow.f64 im 3) (+.f64 1/12 (+.f64 (/.f64 1/2 (pow.f64 im 2)) (*.f64 1/4 (/.f64 1 im)))))
(*.f64 (pow.f64 im 3) (+.f64 (+.f64 1/12 (/.f64 1/2 (pow.f64 im 2))) (/.f64 1/4 im)))
(*.f64 (pow.f64 im 3) (+.f64 (/.f64 1/4 im) (+.f64 1/12 (/.f64 1/2 (pow.f64 im 2)))))
(*.f64 1/12 (pow.f64 im 3))
(*.f64 (pow.f64 im 3) (+.f64 1/12 (*.f64 1/4 (/.f64 1 im))))
(*.f64 (+.f64 1/12 (/.f64 1/4 im)) (pow.f64 im 3))
(*.f64 -1 (*.f64 (pow.f64 im 3) (-.f64 (*.f64 -1 (/.f64 (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))) im)) 1/12)))
(neg.f64 (*.f64 (pow.f64 im 3) (fma.f64 -1 (/.f64 (+.f64 1/4 (/.f64 1/2 im)) im) -1/12)))
(*.f64 (fma.f64 -1 (/.f64 (+.f64 1/4 (/.f64 1/2 im)) im) -1/12) (neg.f64 (pow.f64 im 3)))
(*.f64 -1 (*.f64 (pow.f64 im 3) (-.f64 (*.f64 -1 (/.f64 (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))) im)) 1/12)))
(neg.f64 (*.f64 (pow.f64 im 3) (fma.f64 -1 (/.f64 (+.f64 1/4 (/.f64 1/2 im)) im) -1/12)))
(*.f64 (fma.f64 -1 (/.f64 (+.f64 1/4 (/.f64 1/2 im)) im) -1/12) (neg.f64 (pow.f64 im 3)))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))
(+.f64 (cos.f64 re) (*.f64 (*.f64 im 1/2) (cos.f64 re)))
(*.f64 (+.f64 (*.f64 im 1/2) 1) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/4 (*.f64 im (cos.f64 re)) (*.f64 1/2 (cos.f64 re)))))
(fma.f64 im (*.f64 (cos.f64 re) (fma.f64 im 1/4 1/2)) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 im (+.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im (+.f64 (*.f64 1/12 (*.f64 im (cos.f64 re))) (*.f64 1/4 (cos.f64 re)))))))
(+.f64 (cos.f64 re) (*.f64 im (fma.f64 1/2 (cos.f64 re) (*.f64 im (fma.f64 1/12 (*.f64 im (cos.f64 re)) (*.f64 1/4 (cos.f64 re)))))))
(fma.f64 im (fma.f64 im (*.f64 (cos.f64 re) (fma.f64 1/12 im 1/4)) (*.f64 1/2 (cos.f64 re))) (cos.f64 re))
(*.f64 1/12 (*.f64 (pow.f64 im 3) (cos.f64 re)))
(*.f64 (pow.f64 im 3) (+.f64 (*.f64 1/12 (cos.f64 re)) (*.f64 1/4 (/.f64 (cos.f64 re) im))))
(*.f64 (pow.f64 im 3) (fma.f64 1/12 (cos.f64 re) (*.f64 1/4 (/.f64 (cos.f64 re) im))))
(*.f64 (pow.f64 im 3) (fma.f64 1/12 (cos.f64 re) (*.f64 (cos.f64 re) (/.f64 1/4 im))))
(*.f64 (pow.f64 im 3) (+.f64 (*.f64 1/12 (cos.f64 re)) (+.f64 (*.f64 1/4 (/.f64 (cos.f64 re) im)) (*.f64 1/2 (/.f64 (cos.f64 re) (pow.f64 im 2))))))
(*.f64 (pow.f64 im 3) (fma.f64 1/12 (cos.f64 re) (fma.f64 1/4 (/.f64 (cos.f64 re) im) (/.f64 (*.f64 1/2 (cos.f64 re)) (pow.f64 im 2)))))
(*.f64 (pow.f64 im 3) (fma.f64 1/12 (cos.f64 re) (fma.f64 1/2 (/.f64 (cos.f64 re) (pow.f64 im 2)) (*.f64 (cos.f64 re) (/.f64 1/4 im)))))
(*.f64 (pow.f64 im 3) (+.f64 (*.f64 1/12 (cos.f64 re)) (+.f64 (*.f64 1/4 (/.f64 (cos.f64 re) im)) (+.f64 (*.f64 1/2 (/.f64 (cos.f64 re) (pow.f64 im 2))) (/.f64 (cos.f64 re) (pow.f64 im 3))))))
(*.f64 (pow.f64 im 3) (fma.f64 1/12 (cos.f64 re) (fma.f64 1/4 (/.f64 (cos.f64 re) im) (fma.f64 1/2 (/.f64 (cos.f64 re) (pow.f64 im 2)) (/.f64 (cos.f64 re) (pow.f64 im 3))))))
(*.f64 1/12 (*.f64 (pow.f64 im 3) (cos.f64 re)))
(*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1/4 (/.f64 (cos.f64 re) im)) (*.f64 -1/12 (cos.f64 re)))))
(neg.f64 (*.f64 (pow.f64 im 3) (fma.f64 -1/4 (/.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) -1/12))))
(*.f64 (pow.f64 im 3) (neg.f64 (fma.f64 (cos.f64 re) -1/12 (/.f64 (*.f64 (cos.f64 re) -1/4) im))))
(*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (cos.f64 re)) (*.f64 1/2 (/.f64 (cos.f64 re) im))) im)) (*.f64 -1/12 (cos.f64 re)))))
(neg.f64 (*.f64 (pow.f64 im 3) (fma.f64 -1 (/.f64 (fma.f64 1/4 (cos.f64 re) (*.f64 1/2 (/.f64 (cos.f64 re) im))) im) (*.f64 (cos.f64 re) -1/12))))
(*.f64 (-.f64 (*.f64 (cos.f64 re) -1/12) (/.f64 (fma.f64 1/4 (cos.f64 re) (*.f64 (cos.f64 re) (/.f64 1/2 im))) im)) (neg.f64 (pow.f64 im 3)))
(*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 re) im)) (*.f64 -1/2 (cos.f64 re))) im)) (*.f64 1/4 (cos.f64 re))) im)) (*.f64 -1/12 (cos.f64 re)))))
(neg.f64 (*.f64 (pow.f64 im 3) (fma.f64 -1 (/.f64 (fma.f64 -1 (/.f64 (fma.f64 -1 (/.f64 (cos.f64 re) im) (*.f64 (cos.f64 re) -1/2)) im) (*.f64 1/4 (cos.f64 re))) im) (*.f64 (cos.f64 re) -1/12))))
(*.f64 (pow.f64 im 3) (neg.f64 (-.f64 (*.f64 (cos.f64 re) -1/12) (/.f64 (-.f64 (*.f64 1/4 (cos.f64 re)) (/.f64 (-.f64 (*.f64 (cos.f64 re) -1/2) (/.f64 (cos.f64 re) im)) im)) im))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))
(fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1)
(fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))) (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(+.f64 1 (fma.f64 -1/2 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (pow.f64 re 2)) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(+.f64 1 (fma.f64 -1/2 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1) (pow.f64 re 2)) (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))))
(+.f64 1 (+.f64 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))) (*.f64 1/24 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))))))))
(+.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (*.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (pow.f64 re 2)) 1/24))))
(+.f64 1 (fma.f64 (pow.f64 re 2) (*.f64 (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1) (+.f64 -1/2 (*.f64 (pow.f64 re 2) 1/24))) (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))))
(+.f64 1 (+.f64 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im))))))) (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))) (*.f64 1/24 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))))))))
(+.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (*.f64 (pow.f64 re 2) (fma.f64 -1/720 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (pow.f64 re 2)) (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) 1/24))))))
(+.f64 (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1) (fma.f64 (pow.f64 re 2) (*.f64 -1/2 (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1)) (*.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1) (+.f64 (*.f64 (pow.f64 re 2) -1/720) 1/24)) (pow.f64 re 4))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(*.f64 1/2 im)
(*.f64 im 1/2)
(*.f64 1/4 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 1/4 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 im (+.f64 1/2 (*.f64 1/4 im)))
(*.f64 im (fma.f64 im 1/4 1/2))
(*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
(*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))
(*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (/.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (fma.f64 im (/.f64 (fma.f64 im 1/4 1/2) (pow.f64 re 2)) (*.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (/.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (fma.f64 im (/.f64 (fma.f64 im 1/4 1/2) (pow.f64 re 2)) (*.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (/.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (fma.f64 im (/.f64 (fma.f64 im 1/4 1/2) (pow.f64 re 2)) (*.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
(*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))
(*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (/.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (fma.f64 im (/.f64 (fma.f64 im 1/4 1/2) (pow.f64 re 2)) (*.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (/.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (fma.f64 im (/.f64 (fma.f64 im 1/4 1/2) (pow.f64 re 2)) (*.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(*.f64 (pow.f64 re 2) (+.f64 (*.f64 -1/2 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))) (/.f64 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (fma.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (/.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (pow.f64 re 2))))
(*.f64 (pow.f64 re 2) (fma.f64 im (/.f64 (fma.f64 im 1/4 1/2) (pow.f64 re 2)) (*.f64 -1/2 (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(*.f64 -1/2 (pow.f64 re 2))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 im (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))))
(fma.f64 -1/2 (pow.f64 re 2) (*.f64 im (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))))
(fma.f64 im (fma.f64 -1/4 (pow.f64 re 2) 1/2) (*.f64 -1/2 (pow.f64 re 2)))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 im (+.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 re 2)) (*.f64 im (+.f64 1/4 (*.f64 -1/8 (pow.f64 re 2))))))))
(fma.f64 -1/2 (pow.f64 re 2) (*.f64 im (+.f64 1/2 (fma.f64 -1/4 (pow.f64 re 2) (*.f64 im (+.f64 1/4 (*.f64 (pow.f64 re 2) -1/8)))))))
(fma.f64 im (+.f64 1/2 (fma.f64 im (fma.f64 (pow.f64 re 2) -1/8 1/4) (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 -1/2 (pow.f64 re 2)))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 im (+.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 re 2)) (*.f64 im (+.f64 1/4 (*.f64 -1/8 (pow.f64 re 2))))))))
(fma.f64 -1/2 (pow.f64 re 2) (*.f64 im (+.f64 1/2 (fma.f64 -1/4 (pow.f64 re 2) (*.f64 im (+.f64 1/4 (*.f64 (pow.f64 re 2) -1/8)))))))
(fma.f64 im (+.f64 1/2 (fma.f64 im (fma.f64 (pow.f64 re 2) -1/8 1/4) (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 -1/2 (pow.f64 re 2)))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 -1/8 (pow.f64 re 2))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 (pow.f64 re 2) -1/8)))
(*.f64 (pow.f64 im 2) (fma.f64 (pow.f64 re 2) -1/8 1/4))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1/8 (pow.f64 re 2)) (*.f64 1/2 (/.f64 1 im))))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (fma.f64 -1/4 (/.f64 (pow.f64 re 2) im) (fma.f64 -1/8 (pow.f64 re 2) (/.f64 1/2 im)))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (fma.f64 -1/4 (/.f64 (pow.f64 re 2) im) (fma.f64 (pow.f64 re 2) -1/8 (/.f64 1/2 im)))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1/8 (pow.f64 re 2)) (*.f64 1/2 (/.f64 1 im)))))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) (pow.f64 im 2)) (fma.f64 -1/4 (/.f64 (pow.f64 re 2) im) (fma.f64 -1/8 (pow.f64 re 2) (/.f64 1/2 im))))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) (pow.f64 im 2)) (fma.f64 -1/4 (/.f64 (pow.f64 re 2) im) (fma.f64 (pow.f64 re 2) -1/8 (/.f64 1/2 im))))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 -1/8 (pow.f64 re 2)) (*.f64 1/2 (/.f64 1 im)))))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) (pow.f64 im 2)) (fma.f64 -1/4 (/.f64 (pow.f64 re 2) im) (fma.f64 -1/8 (pow.f64 re 2) (/.f64 1/2 im))))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) (pow.f64 im 2)) (fma.f64 -1/4 (/.f64 (pow.f64 re 2) im) (fma.f64 (pow.f64 re 2) -1/8 (/.f64 1/2 im))))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 -1/8 (pow.f64 re 2))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 (pow.f64 re 2) -1/8)))
(*.f64 (pow.f64 im 2) (fma.f64 (pow.f64 re 2) -1/8 1/4))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 re 2)) 1/2) im)) (*.f64 -1/8 (pow.f64 re 2)))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (fma.f64 -1 (/.f64 (fma.f64 1/4 (pow.f64 re 2) -1/2) im) (*.f64 (pow.f64 re 2) -1/8))))
(*.f64 (pow.f64 im 2) (+.f64 (fma.f64 (pow.f64 re 2) -1/8 1/4) (/.f64 (fma.f64 1/4 (pow.f64 re 2) -1/2) (neg.f64 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1 (/.f64 (-.f64 (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) 1/2) im)) (*.f64 -1/8 (pow.f64 re 2)))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (fma.f64 -1 (/.f64 (+.f64 (fma.f64 1/4 (pow.f64 re 2) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) -1/2) im) (*.f64 (pow.f64 re 2) -1/8))))
(*.f64 (pow.f64 im 2) (+.f64 (fma.f64 (pow.f64 re 2) -1/8 1/4) (/.f64 (fma.f64 1/4 (pow.f64 re 2) (fma.f64 1/2 (/.f64 (pow.f64 re 2) im) -1/2)) (neg.f64 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (+.f64 (*.f64 -1 (/.f64 (-.f64 (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) 1/2) im)) (*.f64 -1/8 (pow.f64 re 2)))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (fma.f64 -1 (/.f64 (+.f64 (fma.f64 1/4 (pow.f64 re 2) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) -1/2) im) (*.f64 (pow.f64 re 2) -1/8))))
(*.f64 (pow.f64 im 2) (+.f64 (fma.f64 (pow.f64 re 2) -1/8 1/4) (/.f64 (fma.f64 1/4 (pow.f64 re 2) (fma.f64 1/2 (/.f64 (pow.f64 re 2) im) -1/2)) (neg.f64 im))))
(pow.f64 re 2)
(+.f64 (*.f64 1/2 (*.f64 im (pow.f64 re 2))) (pow.f64 re 2))
(fma.f64 1/2 (*.f64 im (pow.f64 re 2)) (pow.f64 re 2))
(*.f64 (+.f64 (*.f64 im 1/2) 1) (pow.f64 re 2))
(+.f64 (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (pow.f64 re 2))) (*.f64 1/2 (pow.f64 re 2)))) (pow.f64 re 2))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(+.f64 (*.f64 im (+.f64 (*.f64 1/4 (*.f64 im (pow.f64 re 2))) (*.f64 1/2 (pow.f64 re 2)))) (pow.f64 re 2))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(*.f64 1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2)))
(*.f64 (*.f64 1/4 (pow.f64 im 2)) (pow.f64 re 2))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(*.f64 (pow.f64 im 2) (fma.f64 1/4 (pow.f64 re 2) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(*.f64 (pow.f64 im 2) (fma.f64 1/4 (pow.f64 re 2) (*.f64 (pow.f64 re 2) (/.f64 1/2 im))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (pow.f64 im 2)))))
(*.f64 (pow.f64 im 2) (fma.f64 1/4 (pow.f64 re 2) (fma.f64 1/2 (/.f64 (pow.f64 re 2) im) (/.f64 (pow.f64 re 2) (pow.f64 im 2)))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (pow.f64 im 2)))))
(*.f64 (pow.f64 im 2) (fma.f64 1/4 (pow.f64 re 2) (fma.f64 1/2 (/.f64 (pow.f64 re 2) im) (/.f64 (pow.f64 re 2) (pow.f64 im 2)))))
(*.f64 1/4 (*.f64 (pow.f64 im 2) (pow.f64 re 2)))
(*.f64 (*.f64 1/4 (pow.f64 im 2)) (pow.f64 re 2))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(*.f64 (pow.f64 im 2) (fma.f64 1/4 (pow.f64 re 2) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(*.f64 (pow.f64 im 2) (fma.f64 1/4 (pow.f64 re 2) (*.f64 (pow.f64 re 2) (/.f64 1/2 im))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1/2 (pow.f64 re 2))) im)) (*.f64 1/4 (pow.f64 re 2))))
(*.f64 (pow.f64 im 2) (fma.f64 -1 (/.f64 (fma.f64 -1 (/.f64 (pow.f64 re 2) im) (*.f64 -1/2 (pow.f64 re 2))) im) (*.f64 1/4 (pow.f64 re 2))))
(*.f64 (pow.f64 im 2) (-.f64 (*.f64 1/4 (pow.f64 re 2)) (/.f64 (-.f64 (*.f64 -1/2 (pow.f64 re 2)) (/.f64 (pow.f64 re 2) im)) im)))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 re 2) im)) (*.f64 -1/2 (pow.f64 re 2))) im)) (*.f64 1/4 (pow.f64 re 2))))
(*.f64 (pow.f64 im 2) (fma.f64 -1 (/.f64 (fma.f64 -1 (/.f64 (pow.f64 re 2) im) (*.f64 -1/2 (pow.f64 re 2))) im) (*.f64 1/4 (pow.f64 re 2))))
(*.f64 (pow.f64 im 2) (-.f64 (*.f64 1/4 (pow.f64 re 2)) (/.f64 (-.f64 (*.f64 -1/2 (pow.f64 re 2)) (/.f64 (pow.f64 re 2) im)) im)))
(*.f64 1/2 im)
(*.f64 im 1/2)
(*.f64 1/4 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 1/4 (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 1/2 (/.f64 1 im))))
(*.f64 (pow.f64 im 2) (+.f64 1/4 (/.f64 1/2 im)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im 1/12))) 1)
(expm1.f64 (log1p.f64 (*.f64 1/12 im)))
(pow.f64 (*.f64 im 1/12) 1)
(*.f64 1/12 im)
(pow.f64 (cbrt.f64 (*.f64 im 1/12)) 3)
(*.f64 1/12 im)
(pow.f64 (*.f64 (pow.f64 im 3) 1/1728) 1/3)
(cbrt.f64 (*.f64 (pow.f64 im 3) 1/1728))
(pow.f64 (sqrt.f64 (*.f64 im 1/12)) 2)
(*.f64 1/12 im)
(sqrt.f64 (*.f64 (pow.f64 im 2) 1/144))
(log.f64 (pow.f64 (exp.f64 im) 1/12))
(*.f64 1/12 im)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im 1/12))))
(*.f64 1/12 im)
(cbrt.f64 (*.f64 (pow.f64 im 3) 1/1728))
(expm1.f64 (log1p.f64 (*.f64 im 1/12)))
(expm1.f64 (log1p.f64 (*.f64 1/12 im)))
(log1p.f64 (expm1.f64 (*.f64 im 1/12)))
(*.f64 1/12 im)
(exp.f64 (log.f64 (*.f64 im 1/12)))
(*.f64 1/12 im)
(exp.f64 (*.f64 (log.f64 (*.f64 im 1/12)) 1))
(*.f64 1/12 im)
(+.f64 (*.f64 im 1/4) (*.f64 1/12 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(+.f64 (*.f64 im 1/4) (*.f64 (*.f64 1/12 (pow.f64 im 2)) 1))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(+.f64 (*.f64 1/12 (pow.f64 im 2)) (*.f64 im 1/4))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/12 1/4)))) 1)
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/12 1/4))))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 1/12 im 1/4))))
(/.f64 (+.f64 (*.f64 1/64 (pow.f64 im 3)) (pow.f64 (*.f64 1/12 (pow.f64 im 2)) 3)) (+.f64 (*.f64 (pow.f64 im 2) 1/16) (-.f64 (*.f64 (*.f64 1/12 (pow.f64 im 2)) (*.f64 1/12 (pow.f64 im 2))) (*.f64 (*.f64 im 1/4) (*.f64 1/12 (pow.f64 im 2))))))
(/.f64 (fma.f64 1/64 (pow.f64 im 3) (*.f64 1/1728 (pow.f64 (pow.f64 im 2) 3))) (fma.f64 (pow.f64 im 2) 1/16 (*.f64 (*.f64 1/12 (pow.f64 im 2)) (-.f64 (*.f64 1/12 (pow.f64 im 2)) (*.f64 im 1/4)))))
(/.f64 (fma.f64 (pow.f64 im 3) 1/64 (*.f64 1/1728 (pow.f64 (pow.f64 im 2) 3))) (fma.f64 (pow.f64 im 2) 1/16 (*.f64 (pow.f64 im 2) (fma.f64 (pow.f64 im 2) 1/144 (*.f64 im -1/48)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 (*.f64 1/12 (pow.f64 im 2)) (*.f64 1/12 (pow.f64 im 2)))) (-.f64 (*.f64 im 1/4) (*.f64 1/12 (pow.f64 im 2))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/144 (*.f64 (pow.f64 im 2) (pow.f64 im 2)))) (+.f64 (*.f64 im 1/4) (*.f64 -1/12 (pow.f64 im 2))))
(/.f64 (fma.f64 (pow.f64 im 2) 1/16 (*.f64 -1/144 (pow.f64 im 4))) (fma.f64 im 1/4 (*.f64 (pow.f64 im 2) -1/12)))
(/.f64 (*.f64 im (+.f64 (*.f64 (pow.f64 im 3) 1/1728) 1/64)) (+.f64 1/16 (-.f64 (*.f64 (pow.f64 im 2) 1/144) (*.f64 1/48 im))))
(*.f64 im (/.f64 (fma.f64 (pow.f64 im 3) 1/1728 1/64) (+.f64 1/16 (+.f64 (*.f64 (pow.f64 im 2) 1/144) (*.f64 -1/48 im)))))
(*.f64 im (/.f64 (fma.f64 (pow.f64 im 3) 1/1728 1/64) (+.f64 1/16 (fma.f64 (pow.f64 im 2) 1/144 (*.f64 im -1/48)))))
(/.f64 (*.f64 im (-.f64 1/16 (*.f64 (pow.f64 im 2) 1/144))) (+.f64 1/4 (*.f64 -1/12 im)))
(*.f64 im (/.f64 (-.f64 1/16 (*.f64 (pow.f64 im 2) 1/144)) (+.f64 1/4 (*.f64 im -1/12))))
(*.f64 im (/.f64 (+.f64 1/16 (*.f64 (pow.f64 im 2) -1/144)) (fma.f64 im -1/12 1/4)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/1728) 1/64) im) (+.f64 1/16 (-.f64 (*.f64 (pow.f64 im 2) 1/144) (*.f64 1/48 im))))
(*.f64 im (/.f64 (fma.f64 (pow.f64 im 3) 1/1728 1/64) (+.f64 1/16 (+.f64 (*.f64 (pow.f64 im 2) 1/144) (*.f64 -1/48 im)))))
(*.f64 im (/.f64 (fma.f64 (pow.f64 im 3) 1/1728 1/64) (+.f64 1/16 (fma.f64 (pow.f64 im 2) 1/144 (*.f64 im -1/48)))))
(/.f64 (*.f64 (-.f64 1/16 (*.f64 (pow.f64 im 2) 1/144)) im) (+.f64 1/4 (*.f64 -1/12 im)))
(*.f64 im (/.f64 (-.f64 1/16 (*.f64 (pow.f64 im 2) 1/144)) (+.f64 1/4 (*.f64 im -1/12))))
(*.f64 im (/.f64 (+.f64 1/16 (*.f64 (pow.f64 im 2) -1/144)) (fma.f64 im -1/12 1/4)))
(pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 1)
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/12 1/4))) 3)
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3) 1/3)
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/12 1/4))) 2)
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 2))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im 1/12 1/4)) im))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/12 1/4)))))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/12 1/4))))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 1/12 im 1/4))))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/12 1/4))))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/12 1/4))))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/12 1/4))) 1))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(fma.f64 im 1/4 (*.f64 1/12 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(fma.f64 1/4 im (*.f64 1/12 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(fma.f64 1 (*.f64 im 1/4) (*.f64 1/12 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/4)) 2) (cbrt.f64 (*.f64 im 1/4)) (*.f64 1/12 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(fma.f64 (*.f64 1/2 (sqrt.f64 im)) (*.f64 1/2 (sqrt.f64 im)) (*.f64 1/12 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/12 1/4))
(*.f64 im (fma.f64 1/12 im 1/4))
(+.f64 (*.f64 im 1/2) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(+.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) (*.f64 im 1/2))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(+.f64 (*.f64 (*.f64 im 1/2) 1) (*.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) 1))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(-.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) 1)
(+.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) -1)
(+.f64 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)) 0)
(/.f64 (+.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2))) (*.f64 (*.f64 im 1/2) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2))))))
(/.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/8) (pow.f64 (*.f64 (pow.f64 im 2) (fma.f64 im 1/12 1/4)) 3)) (fma.f64 1/4 (pow.f64 im 2) (*.f64 (*.f64 (pow.f64 im 2) (fma.f64 im 1/12 1/4)) (-.f64 (*.f64 (pow.f64 im 2) (fma.f64 im 1/12 1/4)) (*.f64 im 1/2)))))
(/.f64 (fma.f64 (pow.f64 im 3) 1/8 (pow.f64 (*.f64 (pow.f64 im 2) (fma.f64 1/12 im 1/4)) 3)) (fma.f64 1/4 (pow.f64 im 2) (*.f64 (*.f64 (pow.f64 im 2) (fma.f64 1/12 im 1/4)) (fma.f64 (pow.f64 im 2) (fma.f64 1/12 im 1/4) (*.f64 im -1/2)))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)))) (-.f64 (*.f64 im 1/2) (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 (fma.f64 im 1/12 1/4) (fma.f64 im 1/12 1/4)) (*.f64 (pow.f64 im 2) (pow.f64 im 2)))) (-.f64 (*.f64 im 1/2) (*.f64 (pow.f64 im 2) (fma.f64 im 1/12 1/4))))
(/.f64 (*.f64 (pow.f64 im 2) (-.f64 1/4 (pow.f64 (*.f64 im (fma.f64 1/12 im 1/4)) 2))) (-.f64 (*.f64 im 1/2) (*.f64 (pow.f64 im 2) (fma.f64 1/12 im 1/4))))
(/.f64 (*.f64 im (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3) 1/8)) (+.f64 1/4 (*.f64 (*.f64 im (fma.f64 im 1/12 1/4)) (-.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 1/2))))
(*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3) 1/8) (/.f64 im (+.f64 1/4 (*.f64 im (*.f64 (fma.f64 im 1/12 1/4) (fma.f64 im (fma.f64 im 1/12 1/4) -1/2))))))
(*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 1/12 im 1/4)) 3) 1/8) (/.f64 im (fma.f64 (*.f64 im (fma.f64 1/12 im 1/4)) (fma.f64 im (fma.f64 1/12 im 1/4) -1/2) 1/4)))
(/.f64 (*.f64 im (-.f64 1/4 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 2))) (-.f64 1/2 (*.f64 im (fma.f64 im 1/12 1/4))))
(*.f64 (-.f64 1/4 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 2)) (/.f64 im (-.f64 1/2 (*.f64 im (fma.f64 im 1/12 1/4)))))
(*.f64 im (/.f64 (-.f64 1/4 (pow.f64 (*.f64 im (fma.f64 1/12 im 1/4)) 2)) (-.f64 1/2 (*.f64 im (fma.f64 1/12 im 1/4)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3) 1/8) im) (+.f64 1/4 (*.f64 (*.f64 im (fma.f64 im 1/12 1/4)) (-.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 1/2))))
(*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 3) 1/8) (/.f64 im (+.f64 1/4 (*.f64 im (*.f64 (fma.f64 im 1/12 1/4) (fma.f64 im (fma.f64 im 1/12 1/4) -1/2))))))
(*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 1/12 im 1/4)) 3) 1/8) (/.f64 im (fma.f64 (*.f64 im (fma.f64 1/12 im 1/4)) (fma.f64 im (fma.f64 1/12 im 1/4) -1/2) 1/4)))
(/.f64 (*.f64 (-.f64 1/4 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 2)) im) (-.f64 1/2 (*.f64 im (fma.f64 im 1/12 1/4))))
(*.f64 (-.f64 1/4 (pow.f64 (*.f64 im (fma.f64 im 1/12 1/4)) 2)) (/.f64 im (-.f64 1/2 (*.f64 im (fma.f64 im 1/12 1/4)))))
(*.f64 im (/.f64 (-.f64 1/4 (pow.f64 (*.f64 im (fma.f64 1/12 im 1/4)) 2)) (-.f64 1/2 (*.f64 im (fma.f64 1/12 im 1/4)))))
(pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 1)
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))) 3)
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3) 1/3)
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))) 2)
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(log.f64 (pow.f64 (exp.f64 im) (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(+.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) -1)
(+.f64 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)) 0)
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))) 1))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(fma.f64 im 1/2 (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(fma.f64 1/2 im (*.f64 (fma.f64 im 1/12 1/4) (pow.f64 im 2)))
(*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))
(*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(+.f64 (cos.f64 re) (*.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) (cos.f64 re)))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(+.f64 (*.f64 (cos.f64 re) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))) (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(+.f64 (*.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) (cos.f64 re)) (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)))) 1)
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))))
(/.f64 (*.f64 (cos.f64 re) (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3))) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))))
(*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3)) (/.f64 (cos.f64 re) (-.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2)) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)) 3)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)) 2) (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)) 3)) (-.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)) 2) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) -1))))
(/.f64 (*.f64 (cos.f64 re) (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2))) (-.f64 1 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(*.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2)) (/.f64 (cos.f64 re) (-.f64 1 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))))
(*.f64 (cos.f64 re) (/.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)) 2)) (-.f64 1 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3)) (cos.f64 re)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))))
(*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 3)) (/.f64 (cos.f64 re) (-.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2)) (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)) 3)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)) 2) (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2))))))
(*.f64 (cos.f64 re) (/.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)) 3)) (-.f64 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)) 2) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) -1))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2)) (cos.f64 re)) (-.f64 1 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2))))
(*.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)) 2)) (/.f64 (cos.f64 re) (-.f64 1 (*.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2)))))
(*.f64 (cos.f64 re) (/.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)) 2)) (-.f64 1 (*.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2)))))
(pow.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)) 1)
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))) 3)
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(pow.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)) 3) 1/3)
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))) 2)
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)) 2))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1)))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re)) 3))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) 3) (pow.f64 (cos.f64 re) 3)))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) 3)))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(exp.f64 (log.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1) (cos.f64 re))) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 im 1/12 1/4) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 im (fma.f64 im (fma.f64 1/12 im 1/4) 1/2) 1))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 (*.f64 im 1/2) 1) (*.f64 (*.f64 1/4 (pow.f64 im 2)) 1))
(*.f64 im (fma.f64 im 1/4 1/2))
(-.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 1)
(+.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) -1)
(+.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 0)
(/.f64 (+.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (*.f64 1/4 (pow.f64 im 2)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (*.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2))))))
(/.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/8) (*.f64 1/64 (pow.f64 (pow.f64 im 2) 3))) (fma.f64 1/4 (pow.f64 im 2) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2)))))
(/.f64 (fma.f64 (pow.f64 im 3) 1/8 (*.f64 1/64 (pow.f64 (pow.f64 im 2) 3))) (-.f64 (fma.f64 1/4 (pow.f64 im 2) (*.f64 1/16 (pow.f64 im 4))) (*.f64 (pow.f64 im 3) 1/8)))
(/.f64 (fma.f64 (pow.f64 im 3) 1/8 (*.f64 1/64 (pow.f64 (pow.f64 im 2) 3))) (-.f64 (*.f64 1/16 (pow.f64 im 4)) (fma.f64 (pow.f64 im 3) 1/8 (*.f64 (pow.f64 im 2) -1/4))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2)))) (-.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/16 (*.f64 (pow.f64 im 2) (pow.f64 im 2)))) (+.f64 (*.f64 im 1/2) (*.f64 -1/4 (pow.f64 im 2))))
(/.f64 (fma.f64 1/4 (pow.f64 im 2) (*.f64 -1/16 (pow.f64 im 4))) (fma.f64 im 1/2 (*.f64 (pow.f64 im 2) -1/4)))
(/.f64 (*.f64 im (+.f64 (*.f64 1/64 (pow.f64 im 3)) 1/8)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 im (fma.f64 1/64 (pow.f64 im 3) 1/8)) (+.f64 1/4 (+.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 -1/8 im))))
(*.f64 im (/.f64 (fma.f64 (pow.f64 im 3) 1/64 1/8) (+.f64 1/4 (fma.f64 (pow.f64 im 2) 1/16 (*.f64 im -1/8)))))
(/.f64 (*.f64 im (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16))) (+.f64 1/2 (*.f64 -1/4 im)))
(*.f64 im (/.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) (+.f64 1/2 (*.f64 im -1/4))))
(*.f64 (+.f64 1/4 (*.f64 (pow.f64 im 2) -1/16)) (/.f64 im (fma.f64 im -1/4 1/2)))
(/.f64 (*.f64 (+.f64 (*.f64 1/64 (pow.f64 im 3)) 1/8) im) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 im (fma.f64 1/64 (pow.f64 im 3) 1/8)) (+.f64 1/4 (+.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 -1/8 im))))
(*.f64 im (/.f64 (fma.f64 (pow.f64 im 3) 1/64 1/8) (+.f64 1/4 (fma.f64 (pow.f64 im 2) 1/16 (*.f64 im -1/8)))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) im) (+.f64 1/2 (*.f64 -1/4 im)))
(*.f64 im (/.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) (+.f64 1/2 (*.f64 im -1/4))))
(*.f64 (+.f64 1/4 (*.f64 (pow.f64 im 2) -1/16)) (/.f64 im (fma.f64 im -1/4 1/2)))
(pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 1)
(*.f64 im (fma.f64 im 1/4 1/2))
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 3)
(*.f64 im (fma.f64 im 1/4 1/2))
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2)
(*.f64 im (fma.f64 im 1/4 1/2))
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 1/3)
(*.f64 im (fma.f64 im 1/4 1/2))
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))
(*.f64 im (fma.f64 im 1/4 1/2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im 1/4 1/2)) im))
(*.f64 im (fma.f64 im 1/4 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2)))))
(*.f64 im (fma.f64 im 1/4 1/2))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))
(*.f64 im (fma.f64 im 1/4 1/2))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(+.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) -1)
(+.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 0)
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(*.f64 im (fma.f64 im 1/4 1/2))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(*.f64 im (fma.f64 im 1/4 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(*.f64 im (fma.f64 im 1/4 1/2))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(fma.f64 1/2 im (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))) 1)
(expm1.f64 (log1p.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))) (/.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (-.f64 (*.f64 1/4 (*.f64 (pow.f64 re 4) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 2))) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (*.f64 im (fma.f64 im 1/4 1/2))))
(*.f64 1 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 1)
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(*.f64 (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) (pow.f64 (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 2))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 2) (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(*.f64 (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(*.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 3)) 1) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) (*.f64 -1/8 (pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3))) (fma.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))) (*.f64 1/4 (*.f64 (pow.f64 re 4) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 2)))))
(*.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (/.f64 1 (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (-.f64 (*.f64 1/4 (*.f64 (pow.f64 re 4) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 2))) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))) (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 3)) 1) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) (*.f64 -1/8 (pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3))) (fma.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))) (*.f64 1/4 (*.f64 (pow.f64 re 4) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 2)))))
(/.f64 1 (/.f64 (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2))) (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (-.f64 (*.f64 1/4 (*.f64 (pow.f64 re 4) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 2))) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 3)) 1) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) (*.f64 -1/8 (pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3))) (fma.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))) (*.f64 1/4 (*.f64 (pow.f64 re 4) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 2)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 3)) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (-.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) (*.f64 -1/8 (pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3))) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (*.f64 im (fma.f64 im 1/4 1/2))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (-.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (-.f64 (*.f64 1/4 (*.f64 (pow.f64 re 4) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 2))) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 3) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 3))) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2) (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))))))
(*.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) (*.f64 -1/8 (pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3))) (fma.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))) (*.f64 1/4 (*.f64 (pow.f64 re 4) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 2))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (neg.f64 (-.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (neg.f64 (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 1/4 (*.f64 (pow.f64 re 4) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 2)))) (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))))
(/.f64 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (pow.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) 2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (neg.f64 (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 1/4 (*.f64 (pow.f64 re 4) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 2)))) (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))))
(pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 1)
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(pow.f64 (cbrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 3)
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(pow.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 3) 1/3)
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(pow.f64 (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 2)
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(sqrt.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 2))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(log.f64 (exp.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))))))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(cbrt.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 3))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(expm1.f64 (log1p.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(expm1.f64 (log1p.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))))
(log1p.f64 (expm1.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(exp.f64 (log.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(exp.f64 (*.f64 (log.f64 (fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))) 1))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(fma.f64 1 (*.f64 im (fma.f64 im 1/4 1/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(fma.f64 1 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))) (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(fma.f64 (fma.f64 im 1/4 1/2) im (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(fma.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(fma.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) -1/2 (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) 2) (cbrt.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2)))) (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2) (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(fma.f64 (*.f64 (*.f64 re (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (sqrt.f64 -1/2)) (*.f64 (*.f64 re (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1))) (sqrt.f64 -1/2)) (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(fma.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 -1/2 (pow.f64 re 2))))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(fma.f64 (*.f64 -1/2 (pow.f64 re 2)) (fma.f64 im (fma.f64 im 1/4 1/2) 1) (*.f64 im (fma.f64 im 1/4 1/2)))
(fma.f64 im (fma.f64 im 1/4 1/2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(+.f64 (pow.f64 re 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(+.f64 (pow.f64 re 2) (*.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) 1))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(+.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) (pow.f64 re 2))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))) 1)
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(/.f64 (+.f64 (pow.f64 (pow.f64 re 2) 3) (pow.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) 3)) (+.f64 (pow.f64 re 4) (-.f64 (*.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2))) (*.f64 (pow.f64 re 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2))))))
(/.f64 (+.f64 (pow.f64 (pow.f64 re 2) 3) (pow.f64 (*.f64 (pow.f64 re 2) (*.f64 im (fma.f64 im 1/4 1/2))) 3)) (+.f64 (pow.f64 re 4) (*.f64 (*.f64 (pow.f64 re 2) (*.f64 im (fma.f64 im 1/4 1/2))) (-.f64 (*.f64 (pow.f64 re 2) (*.f64 im (fma.f64 im 1/4 1/2))) (pow.f64 re 2)))))
(/.f64 (+.f64 (pow.f64 (pow.f64 re 2) 3) (pow.f64 (*.f64 im (*.f64 (pow.f64 re 2) (fma.f64 im 1/4 1/2))) 3)) (+.f64 (pow.f64 re 4) (-.f64 (*.f64 (pow.f64 re 4) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (*.f64 (pow.f64 re 4) (*.f64 im (fma.f64 im 1/4 1/2))))))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))) (-.f64 (pow.f64 re 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2))))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (*.f64 (pow.f64 re 2) (*.f64 im (fma.f64 im 1/4 1/2))) (*.f64 (pow.f64 re 2) (*.f64 im (fma.f64 im 1/4 1/2))))) (-.f64 (pow.f64 re 2) (*.f64 (pow.f64 re 2) (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (pow.f64 re 4) (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (-.f64 (pow.f64 re 2) (*.f64 im (*.f64 (pow.f64 re 2) (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (pow.f64 re 2) (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2)))))
(*.f64 (pow.f64 re 2) (/.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2))))))
(*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (/.f64 (pow.f64 re 2) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))))
(*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (/.f64 (pow.f64 re 2) (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (fma.f64 im (fma.f64 im 1/4 1/2) -1))))
(/.f64 (*.f64 (pow.f64 re 2) (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))
(*.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (/.f64 (pow.f64 re 2) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2)))))
(*.f64 (pow.f64 re 2) (/.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (pow.f64 re 2)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2)))))
(*.f64 (pow.f64 re 2) (/.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (+.f64 1 (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (*.f64 im (fma.f64 im 1/4 1/2))))))
(*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (/.f64 (pow.f64 re 2) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))))
(*.f64 (+.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3)) (/.f64 (pow.f64 re 2) (-.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (fma.f64 im (fma.f64 im 1/4 1/2) -1))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (pow.f64 re 2)) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2))))
(*.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (/.f64 (pow.f64 re 2) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2)))))
(*.f64 (pow.f64 re 2) (/.f64 (-.f64 1 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (-.f64 1 (*.f64 im (fma.f64 im 1/4 1/2)))))
(pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 1)
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 3)
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(pow.f64 (pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3) 1/3)
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(pow.f64 (*.f64 re (sqrt.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 2)
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(sqrt.f64 (*.f64 (pow.f64 re 4) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 2)))
(fabs.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))
(log.f64 (pow.f64 (exp.f64 (pow.f64 re 2)) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)))))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1)) 3))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 re 2) 3) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 3)))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 3) (pow.f64 (pow.f64 re 2) 3)))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(exp.f64 (log.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))) 1))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(fma.f64 1 (pow.f64 re 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(fma.f64 re re (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(fma.f64 (pow.f64 re 2) 1 (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(fma.f64 im (fma.f64 1/4 (*.f64 im (pow.f64 re 2)) (*.f64 1/2 (pow.f64 re 2))) (pow.f64 re 2))
(*.f64 (pow.f64 re 2) (fma.f64 im (fma.f64 im 1/4 1/2) 1))
(fma.f64 (cbrt.f64 (pow.f64 re 4)) (pow.f64 (cbrt.f64 re) 2) (*.f64 (*.f64 (pow.f64 re 2) im) (fma.f64 im 1/4 1/2)))
(fma.f64 (cbrt.f64 (pow.f64 re 4)) (pow.f64 (cbrt.f64 re) 2) (*.f64 (pow.f64 re 2) (*.f64 im (fma.f64 im 1/4 1/2))))
(fma.f64 (cbrt.f64 (pow.f64 re 4)) (pow.f64 (cbrt.f64 re) 2) (*.f64 im (*.f64 (pow.f64 re 2) (fma.f64 im 1/4 1/2))))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 (*.f64 im 1/2) 1) (*.f64 (*.f64 1/4 (pow.f64 im 2)) 1))
(*.f64 im (fma.f64 im 1/4 1/2))
(-.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) 1)
(+.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) -1)
(+.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 0)
(/.f64 (+.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (*.f64 1/4 (pow.f64 im 2)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (*.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2))))))
(/.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/8) (*.f64 1/64 (pow.f64 (pow.f64 im 2) 3))) (fma.f64 1/4 (pow.f64 im 2) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2)))))
(/.f64 (fma.f64 (pow.f64 im 3) 1/8 (*.f64 1/64 (pow.f64 (pow.f64 im 2) 3))) (-.f64 (fma.f64 1/4 (pow.f64 im 2) (*.f64 1/16 (pow.f64 im 4))) (*.f64 (pow.f64 im 3) 1/8)))
(/.f64 (fma.f64 (pow.f64 im 3) 1/8 (*.f64 1/64 (pow.f64 (pow.f64 im 2) 3))) (-.f64 (*.f64 1/16 (pow.f64 im 4)) (fma.f64 (pow.f64 im 3) 1/8 (*.f64 (pow.f64 im 2) -1/4))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2)))) (-.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/16 (*.f64 (pow.f64 im 2) (pow.f64 im 2)))) (+.f64 (*.f64 im 1/2) (*.f64 -1/4 (pow.f64 im 2))))
(/.f64 (fma.f64 1/4 (pow.f64 im 2) (*.f64 -1/16 (pow.f64 im 4))) (fma.f64 im 1/2 (*.f64 (pow.f64 im 2) -1/4)))
(/.f64 (*.f64 im (+.f64 (*.f64 1/64 (pow.f64 im 3)) 1/8)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 im (fma.f64 1/64 (pow.f64 im 3) 1/8)) (+.f64 1/4 (+.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 -1/8 im))))
(*.f64 im (/.f64 (fma.f64 (pow.f64 im 3) 1/64 1/8) (+.f64 1/4 (fma.f64 (pow.f64 im 2) 1/16 (*.f64 im -1/8)))))
(/.f64 (*.f64 im (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16))) (+.f64 1/2 (*.f64 -1/4 im)))
(*.f64 im (/.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) (+.f64 1/2 (*.f64 im -1/4))))
(*.f64 (+.f64 1/4 (*.f64 (pow.f64 im 2) -1/16)) (/.f64 im (fma.f64 im -1/4 1/2)))
(/.f64 (*.f64 (+.f64 (*.f64 1/64 (pow.f64 im 3)) 1/8) im) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 1/8 im))))
(/.f64 (*.f64 im (fma.f64 1/64 (pow.f64 im 3) 1/8)) (+.f64 1/4 (+.f64 (*.f64 (pow.f64 im 2) 1/16) (*.f64 -1/8 im))))
(*.f64 im (/.f64 (fma.f64 (pow.f64 im 3) 1/64 1/8) (+.f64 1/4 (fma.f64 (pow.f64 im 2) 1/16 (*.f64 im -1/8)))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) im) (+.f64 1/2 (*.f64 -1/4 im)))
(*.f64 im (/.f64 (-.f64 1/4 (*.f64 (pow.f64 im 2) 1/16)) (+.f64 1/2 (*.f64 im -1/4))))
(*.f64 (+.f64 1/4 (*.f64 (pow.f64 im 2) -1/16)) (/.f64 im (fma.f64 im -1/4 1/2)))
(pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 1)
(*.f64 im (fma.f64 im 1/4 1/2))
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 3)
(*.f64 im (fma.f64 im 1/4 1/2))
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2)
(*.f64 im (fma.f64 im 1/4 1/2))
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 1/3)
(*.f64 im (fma.f64 im 1/4 1/2))
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))
(*.f64 im (fma.f64 im 1/4 1/2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im 1/4 1/2)) im))
(*.f64 im (fma.f64 im 1/4 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2)))))
(*.f64 im (fma.f64 im 1/4 1/2))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))
(*.f64 im (fma.f64 im 1/4 1/2))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(+.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 1) -1)
(+.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 0)
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(*.f64 im (fma.f64 im 1/4 1/2))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(*.f64 im (fma.f64 im 1/4 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(*.f64 im (fma.f64 im 1/4 1/2))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(fma.f64 1/2 im (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))

eval415.0ms (5.7%)

Compiler

Compiled 11626 to 8922 computations (23.3% saved)

prune108.0ms (1.5%)

Pruning

19 alts after pruning (9 fresh and 10 done)

PrunedKeptTotal
New4284432
Fresh156
Picked145
Done066
Total43019449
Accuracy
100.0%
Counts
449 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
67.1%
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
75.2%
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (cos.f64 re))))
27.0%
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))) (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
54.3%
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12))))))
47.3%
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
28.8%
(+.f64 1 (*.f64 1/2 im))
32.8%
(+.f64 1 (*.f64 -1/2 (pow.f64 re 2)))
36.4%
(+.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))))
65.8%
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
49.4%
(*.f64 (+.f64 (*.f64 im 1/2) 1) (cos.f64 re))
83.9%
(*.f64 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))) (cos.f64 re))
98.4%
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
74.3%
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))
75.2%
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
8.3%
(*.f64 (cos.f64 re) 512)
47.8%
(*.f64 1/2 (fma.f64 im im 2))
67.1%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
48.8%
(cos.f64 re)
28.2%
1
Compiler

Compiled 523 to 381 computations (27.2% saved)

regimes101.0ms (1.4%)

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

6 calls:

43.0ms
(*.f64 1/2 (cos.f64 re))
17.0ms
im
15.0ms
re
13.0ms
(cos.f64 re)
7.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 37 to 28 computations (24.3% saved)

regimes68.0ms (0.9%)

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

6 calls:

15.0ms
re
15.0ms
im
13.0ms
(*.f64 1/2 (cos.f64 re))
12.0ms
(cos.f64 re)
7.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 37 to 28 computations (24.3% saved)

regimes90.0ms (1.3%)

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

4 calls:

39.0ms
im
20.0ms
(*.f64 1/2 (cos.f64 re))
14.0ms
re
14.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
98.4%1re
100.0%3im
98.4%1(*.f64 1/2 (cos.f64 re))
98.4%1(cos.f64 re)
Compiler

Compiled 16 to 12 computations (25% saved)

regimes152.0ms (2.1%)

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

3 calls:

95.0ms
re
35.0ms
im
20.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
96.9%3im
92.9%2re
92.9%2(cos.f64 re)
Compiler

Compiled 10 to 7 computations (30% saved)

regimes75.0ms (1%)

Counts
22 → 3
Calls
Call 1
Inputs
1
(*.f64 1/2 2)
(+.f64 1 (*.f64 1/2 im))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12))))))
(cos.f64 re)
(*.f64 (cos.f64 re) 3/2)
(*.f64 (cos.f64 re) 512)
(*.f64 1/2 (fma.f64 im im 2))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1 (*.f64 -1/2 (pow.f64 re 2)))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 im)))
(*.f64 (+.f64 1 (*.f64 1/2 im)) (cos.f64 re))
(*.f64 (+.f64 (*.f64 im 1/2) 1) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))))
(*.f64 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))) (cos.f64 re))
(+.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))) (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(+.f64 (cos.f64 re) (cos.f64 re))
(*.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))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))))
Calls

1 calls:

74.0ms
im
Results
AccuracySegmentsBranch
96.5%3im
Compiler

Compiled 3 to 2 computations (33.3% saved)

regimes34.0ms (0.5%)

Counts
21 → 3
Calls
Call 1
Inputs
1
(*.f64 1/2 2)
(+.f64 1 (*.f64 1/2 im))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12))))))
(cos.f64 re)
(*.f64 (cos.f64 re) 3/2)
(*.f64 (cos.f64 re) 512)
(*.f64 1/2 (fma.f64 im im 2))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1 (*.f64 -1/2 (pow.f64 re 2)))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 im)))
(*.f64 (+.f64 1 (*.f64 1/2 im)) (cos.f64 re))
(*.f64 (+.f64 (*.f64 im 1/2) 1) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))))
(*.f64 (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))) (cos.f64 re))
(+.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))) (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 1/12 im)))))))
(+.f64 (cos.f64 re) (cos.f64 re))
Outputs
(cos.f64 re)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))))
Calls

1 calls:

33.0ms
im
Results
AccuracySegmentsBranch
95.7%3im
Compiler

Compiled 3 to 2 computations (33.3% saved)

regimes57.0ms (0.8%)

Counts
15 → 3
Calls
Call 1
Inputs
1
(*.f64 1/2 2)
(+.f64 1 (*.f64 1/2 im))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12))))))
(cos.f64 re)
(*.f64 (cos.f64 re) 3/2)
(*.f64 (cos.f64 re) 512)
(*.f64 1/2 (fma.f64 im im 2))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1 (*.f64 -1/2 (pow.f64 re 2)))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 1/2 im)))
(*.f64 (+.f64 1 (*.f64 1/2 im)) (cos.f64 re))
(*.f64 (+.f64 (*.f64 im 1/2) 1) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))
Outputs
(cos.f64 re)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))
Calls

3 calls:

25.0ms
im
17.0ms
re
14.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
86.6%2re
86.6%2(cos.f64 re)
93.0%3im
Compiler

Compiled 10 to 7 computations (30% saved)

regimes73.0ms (1%)

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

3 calls:

30.0ms
re
25.0ms
(cos.f64 re)
17.0ms
im
Results
AccuracySegmentsBranch
76.6%4re
78.6%4(cos.f64 re)
86.3%2im
Compiler

Compiled 10 to 7 computations (30% saved)

regimes27.0ms (0.4%)

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

2 calls:

14.0ms
(cos.f64 re)
12.0ms
im
Results
AccuracySegmentsBranch
66.9%2(cos.f64 re)
74.9%2im
Compiler

Compiled 7 to 5 computations (28.6% saved)

regimes9.0ms (0.1%)

Counts
5 → 1
Calls
Call 1
Inputs
1
(*.f64 1/2 2)
(+.f64 1 (*.f64 1/2 im))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12))))))
Outputs
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12))))))
Calls

2 calls:

4.0ms
re
4.0ms
im
Results
AccuracySegmentsBranch
54.3%1re
54.3%1im
Compiler

Compiled 6 to 4 computations (33.3% saved)

regimes86.0ms (1.2%)

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

2 calls:

81.0ms
im
4.0ms
re
Results
AccuracySegmentsBranch
47.3%1re
47.3%1im
Compiler

Compiled 6 to 4 computations (33.3% saved)

regimes7.0ms (0.1%)

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

2 calls:

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

Compiled 6 to 4 computations (33.3% saved)

regimes12.0ms (0.2%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
2 → 1
Calls
Call 1
Inputs
1
(*.f64 1/2 2)
Outputs
1
Calls

2 calls:

9.0ms
re
3.0ms
im
Results
AccuracySegmentsBranch
28.2%1im
28.2%1re
Compiler

Compiled 6 to 4 computations (33.3% saved)

bsearch104.0ms (1.4%)

Algorithm
binary-search
Stop Event
predicate-same
narrow-enough
Steps
TimeLeftRight
18.0ms
4.7969699187511436e+101
2.0242167043733767e+104
86.0ms
0.00010206844679162322
0.3003266091693011
Results
83.0ms128×256valid
14.0ms95×256infinite
0.0ms256infinite
Compiler

Compiled 382 to 302 computations (20.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 78.0ms
Operation ival-exp, time spent: 66.0ms, 84.0% of total-time
Operation ival-cos, time spent: 6.0ms, 8.0% of total-time
Operation ival-mult, time spent: 4.0ms, 5.0% of total-time
Operation ival-add, time spent: 1.0ms, 1.0% of total-time
Operation ival-neg, time spent: 1.0ms, 1.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

bsearch50.0ms (0.7%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
24.0ms
4.7969699187511436e+101
2.0242167043733767e+104
26.0ms
0.00010206844679162322
0.3003266091693011
Results
21.0ms128×256valid
21.0ms127×256infinite
0.0ms256infinite
Compiler

Compiled 386 to 310 computations (19.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 21.0ms
Operation ival-cos, time spent: 7.0ms, 34.0% of total-time
Operation ival-exp, time spent: 5.0ms, 24.0% of total-time
Operation ival-mult, time spent: 5.0ms, 24.0% of total-time
Operation ival-add, time spent: 1.0ms, 5.0% of total-time
Operation ival-neg, time spent: 1.0ms, 5.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

bsearch40.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
24.0ms
4.7969699187511436e+101
2.0242167043733767e+104
16.0ms
0.3003266091693011
0.7756224588987229
Results
21.0ms127×256infinite
14.0ms80×256valid
0.0ms256infinite
Compiler

Compiled 312 to 258 computations (17.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
Operation ival-cos, time spent: 6.0ms, 38.0% of total-time
Operation ival-exp, time spent: 4.0ms, 25.0% of total-time
Operation ival-mult, time spent: 3.0ms, 19.0% of total-time
Operation ival-add, time spent: 1.0ms, 6.0% of total-time
Operation ival-neg, time spent: 1.0ms, 6.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

bsearch34.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
18.0ms
1.1630730743207828e+154
5.085942188302513e+154
16.0ms
0.3003266091693011
0.7756224588987229
Results
16.0ms95×256infinite
13.0ms79×256valid
0.0ms256infinite
0.0ms512valid
Compiler

Compiled 232 to 194 computations (16.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
Operation ival-cos, time spent: 5.0ms, 38.0% of total-time
Operation ival-exp, time spent: 3.0ms, 23.0% of total-time
Operation ival-mult, time spent: 3.0ms, 23.0% of total-time
Operation ival-add, time spent: 1.0ms, 8.0% of total-time
Operation ival-neg, time spent: 1.0ms, 8.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

bsearch16.0ms (0.2%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
16.0ms
0.3003266091693011
0.7756224588987229
Results
13.0ms78×256valid
0.0ms256valid
0.0ms512valid
Compiler

Compiled 88 to 74 computations (15.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
Operation ival-exp, time spent: 2.0ms, 32.0% of total-time
Operation ival-cos, time spent: 2.0ms, 32.0% of total-time
Operation ival-mult, time spent: 1.0ms, 16.0% of total-time
Operation ival-add, time spent: 0.0ms, 0.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time
Operation ival-neg, time spent: 0.0ms, 0.0% of total-time

bsearch21.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
21.0ms
1.4141729455572068e+44
4.953933101092193e+45
Results
18.0ms111×256infinite
0.0ms256infinite
Compiler

Compiled 165 to 133 computations (19.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
Operation ival-cos, time spent: 3.0ms, 36.0% of total-time
Operation ival-mult, time spent: 2.0ms, 24.0% of total-time
Operation ival-exp, time spent: 1.0ms, 12.0% of total-time
Operation ival-add, time spent: 1.0ms, 12.0% of total-time
Operation ival-neg, time spent: 1.0ms, 12.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

simplify18.0ms (0.3%)

Algorithm
egg-herbie
Rules
36×*-commutative
22×+-commutative
1-exp
sub-neg
neg-sub0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
077796
1111796
2113796
3114796
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.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 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(if (<=.f64 im 3170534137668829/576460752303423488) (*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (if (<=.f64 im 11999999999999999227270922773157397385979864492268959973103800899436203985705502042479638521244763029504) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))))))
(if (<=.f64 im 48999163945791/72057594037927936) (cos.f64 re) (if (<=.f64 im 13000000000000000820620954370209321019419013689360840305716286965548279119394216856551265106459745058816) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))))))
(if (<=.f64 im 3422735716801577/4503599627370496) (cos.f64 re) (if (<=.f64 im 13000000000000000820620954370209321019419013689360840305716286965548279119394216856551265106459745058816) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))))))
(if (<=.f64 im 3422735716801577/4503599627370496) (cos.f64 re) (if (<=.f64 im 27000000000000000551014021370351243052980237974185272913314250084518251643289914535899806779332918392493800176419193521216216634153908468898165478989496320) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))))
(if (<=.f64 im 3422735716801577/4503599627370496) (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(if (<=.f64 im 1750000000000000114759743335730227415510679552) (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12))))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(+.f64 1 (*.f64 1/2 im))
1
Outputs
(*.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 (*.f64 (cos.f64 re) 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (cos.f64 re))
(*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(if (<=.f64 im 3170534137668829/576460752303423488) (*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (if (<=.f64 im 11999999999999999227270922773157397385979864492268959973103800899436203985705502042479638521244763029504) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))))))
(if (<=.f64 im 48999163945791/72057594037927936) (cos.f64 re) (if (<=.f64 im 13000000000000000820620954370209321019419013689360840305716286965548279119394216856551265106459745058816) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))))))
(if (<=.f64 im 3422735716801577/4503599627370496) (cos.f64 re) (if (<=.f64 im 13000000000000000820620954370209321019419013689360840305716286965548279119394216856551265106459745058816) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))))))
(if (<=.f64 im 3422735716801577/4503599627370496) (cos.f64 re) (if (<=.f64 im 27000000000000000551014021370351243052980237974185272913314250084518251643289914535899806779332918392493800176419193521216216634153908468898165478989496320) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (*.f64 (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))))
(if (<=.f64 im 3422735716801577/4503599627370496) (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(if (<=.f64 im 1750000000000000114759743335730227415510679552) (cos.f64 re) (+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12)))))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im (+.f64 1/4 (*.f64 im 1/12))))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4))))
(+.f64 1 (*.f64 1/2 im))
1
Compiler

Compiled 251 to 189 computations (24.7% saved)

soundness565.0ms (7.8%)

Rules
1728×distribute-lft-in
1726×fma-define
1712×distribute-rgt-in
1660×fma-define
1032×associate-*r*
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
032316
1100308
2280308
3673298
41117294
51661294
62231294
72749294
82903294
92917294
102917294
112917294
01563091
14502712
215172575
358662504
03668729
110137536
236587456
Stop Event
node limit
node limit
saturated
Compiler

Compiled 375 to 219 computations (41.6% saved)

end0.0ms (0%)

preprocess155.0ms (2.1%)

Remove

(abs im)

(abs re)

Compiler

Compiled 896 to 596 computations (33.5% saved)

Profiling

Loading profile data...