math.cos on complex, real part

Details

Time bar (total: 8.4s)

analyze0.0ms (0%)

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

Compiled 14 to 11 computations (21.4% saved)

sample2.1s (24.5%)

Results
485.0ms1040×body1024valid
481.0ms2563×body256valid
451.0ms1055×body1024infinite
384.0ms2555×body256infinite
137.0ms521×body512valid
110.0ms519×body512infinite
1.0msbody2048valid
1.0msbody2048infinite
Bogosity

preprocess179.0ms (2.1%)

Algorithm
egg-herbie
Rules
1744×fma-def
1496×times-frac
770×sqr-pow
640×unswap-sqr
620×associate-*r*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02070
15170
213870
326366
438066
568366
6155466
7263766
8378966
9453366
10512166
11601566
12750766
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.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 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (cos.f64 im)) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)))
(*.f64 1/2 (*.f64 (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))))
Compiler

Compiled 15 to 12 computations (20% saved)

simplify106.0ms (1.3%)

Algorithm
egg-herbie
Rules
1464×fma-def
1028×associate-/l*
860×unswap-sqr
748×times-frac
636×associate-/r/
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01335
13035
27335
313233
419433
534833
679033
7133733
8387933
9440133
10536833
11595233
12698433
Stop Event
node limit
Counts
1 → 3
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
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 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))

eval1.0ms (0%)

Compiler

Compiled 35 to 18 computations (48.6% saved)

prune2.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New123
Fresh011
Picked000
Done000
Total134
Accurracy
100.0%
Counts
4 → 2
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))))
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 52 to 38 computations (26.9% saved)

localize229.0ms (2.7%)

Local Accuracy

Found 5 expressions with local accuracy:

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

series12.0ms (0.1%)

Counts
5 → 76
Calls

21 calls:

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

rewrite105.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
370×add-sqr-sqrt
358×pow1
358×*-un-lft-identity
344×add-exp-log
342×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01799
135999
2558299
Stop Event
unsound
Counts
5 → 82
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 (exp.f64 (neg.f64 im)) (exp.f64 im))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Outputs
-2
-1/2
-1/4
-1/8
0
1/512
1/64
1/16
1/8
1/4
1/2
2
im
(+.f64 (cos.f64 re) (cos.f64 re))
(+.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) -2))) -1)
(/.f64 (*.f64 (cos.f64 re) -2) -2)
(/.f64 (*.f64 (cos.f64 re) -2) -1)
(/.f64 (*.f64 (cos.f64 re) -2) (+.f64 (*.f64 (cos.f64 re) -2) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))))
(/.f64 (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(pow.f64 (*.f64 (cos.f64 re) -2) -1)
(pow.f64 (*.f64 (cos.f64 re) -2) 3)
(pow.f64 (*.f64 (cos.f64 re) -2) 1/3)
(sqrt.f64 (*.f64 (cos.f64 re) -2))
(fabs.f64 (*.f64 (cos.f64 re) -2))
(log.f64 (pow.f64 -1 (cos.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 (cos.f64 re) -2))))
(cbrt.f64 (*.f64 (cos.f64 re) -2))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) -2)))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) -2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1))
(exp.f64 (+.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -2))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) -2)))
(fma.f64 (*.f64 (cos.f64 re) -2) -1 (*.f64 (cos.f64 re) -2))
(fma.f64 -1 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))
-2
-1/2
-1/4
-1/8
0
1/512
1/64
1/16
1/8
1/4
1/2
2
im
-2
-1/2
-1/4
-1/8
0
1/512
1/64
1/16
1/8
1/4
1/2
2
im
(+.f64 (cos.f64 re) (cos.f64 re))
(+.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) -2))) -1)
(/.f64 (*.f64 (cos.f64 re) -2) -2)
(/.f64 (*.f64 (cos.f64 re) -2) -1)
(/.f64 (*.f64 (cos.f64 re) -2) (+.f64 (*.f64 (cos.f64 re) -2) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))))
(/.f64 (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(pow.f64 (*.f64 (cos.f64 re) -2) -1)
(pow.f64 (*.f64 (cos.f64 re) -2) 3)
(pow.f64 (*.f64 (cos.f64 re) -2) 1/3)
(sqrt.f64 (*.f64 (cos.f64 re) -2))
(fabs.f64 (*.f64 (cos.f64 re) -2))
(log.f64 (pow.f64 -1 (cos.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 (cos.f64 re) -2))))
(cbrt.f64 (*.f64 (cos.f64 re) -2))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) -2)))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) -2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1))
(exp.f64 (+.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -2))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) -2)))
(fma.f64 (*.f64 (cos.f64 re) -2) -1 (*.f64 (cos.f64 re) -2))
(fma.f64 -1 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))

simplify109.0ms (1.3%)

Algorithm
egg-herbie
Rules
1606×fma-def
1192×associate-*r*
988×associate-*l*
846×associate-+l+
806×associate-+r+
Iterations

Useful iterations: 2 (0.0ms)

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

eval74.0ms (0.9%)

Compiler

Compiled 1730 to 1011 computations (41.6% saved)

prune60.0ms (0.7%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1146120
Fresh000
Picked112
Done000
Total1157122
Accurracy
100.0%
Counts
122 → 7
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)))
88.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
75.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
71.7%
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
10.9%
(*.f64 2 (cos.f64 re))
65.2%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
51.0%
(cos.f64 re)
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
88.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
75.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
71.7%
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
10.9%
(*.f64 2 (cos.f64 re))
65.2%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
51.0%
(cos.f64 re)
Compiler

Compiled 266 to 208 computations (21.8% saved)

localize202.0ms (2.4%)

Local Accuracy

Found 5 expressions with local accuracy:

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

Compiled 124 to 60 computations (51.6% saved)

series8.0ms (0.1%)

Counts
5 → 80
Calls

21 calls:

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

rewrite50.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
518×add-sqr-sqrt
502×pow1
500×*-un-lft-identity
490×add-exp-log
488×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023109
1519109
Stop Event
node limit
Counts
5 → 80
Calls
Call 1
Inputs
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
(+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
Outputs
1/5159780352
1/2985984
1/20736
1/1728
1/144
1/12
13/12
(+.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re)))
(+.f64 (*.f64 1/5159780352 (cos.f64 re)) (cos.f64 re))
(+.f64 (*.f64 1/5159780352 (cos.f64 re)) (*.f64 1/5159780352 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/5159780352 (cos.f64 re)))) -2)
(/.f64 (*.f64 1/5159780352 (cos.f64 re)) 1/5159780352)
(/.f64 (*.f64 1/5159780352 (cos.f64 re)) (+.f64 (cos.f64 re) (-.f64 (*.f64 1/5159780352 (cos.f64 re)) (*.f64 1/5159780352 (cos.f64 re)))))
(/.f64 (-.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) (-.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))))
(pow.f64 (*.f64 1/5159780352 (cos.f64 re)) -2)
(pow.f64 (*.f64 1/5159780352 (cos.f64 re)) 1/3)
(sqrt.f64 (*.f64 1/5159780352 (cos.f64 re)))
(fabs.f64 (*.f64 1/5159780352 (cos.f64 re)))
(log.f64 (pow.f64 (exp.f64 1/5159780352) (cos.f64 re)))
(log.f64 (+.f64 -2 (expm1.f64 (*.f64 1/5159780352 (cos.f64 re)))))
(cbrt.f64 (*.f64 1/5159780352 (cos.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/5159780352 (cos.f64 re))))
(exp.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2))
(log1p.f64 (expm1.f64 (*.f64 1/5159780352 (cos.f64 re))))
(fma.f64 (cos.f64 re) -2 (*.f64 1/5159780352 (cos.f64 re)))
(fma.f64 -2 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re)))
1/5159780352
1/2985984
1/20736
1/1728
1/144
1/12
13/12
(+.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)))
(exp.f64 (log.f64 (cos.f64 re)))
(exp.f64 (*.f64 (log.f64 (cos.f64 re)) -2))
(log1p.f64 (expm1.f64 (cos.f64 re)))
(fma.f64 (cos.f64 re) -2 (cos.f64 re))
(fma.f64 -2 (cos.f64 re) (cos.f64 re))
-2
-1
0
1/512
1/64
1/16
1/8
1/4
1/2
1
3/2
2
3
4
5
6
8
9
16
27
64
256
512
4096
262144
im

simplify85.0ms (1%)

Algorithm
egg-herbie
Rules
1154×fma-def
760×associate-+r-
754×distribute-lft-in
720×distribute-rgt-in
708×distribute-lft-out
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01663098
13812974
210122654
346962578
Stop Event
node limit
Counts
160 → 172
Calls
Call 1
Inputs
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/2 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))))
(+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) (pow.f64 re 2))) (*.f64 1/2 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) (pow.f64 re 4))) (+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) (pow.f64 re 2))) (*.f64 1/2 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))))))
(+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) (pow.f64 re 4))) (+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) (pow.f64 re 2))) (+.f64 (*.f64 -1/1440 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) (pow.f64 re 6))) (*.f64 1/2 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(cos.f64 re)
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))))
(*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))))
(*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))))
(pow.f64 im 2)
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))
(*.f64 1/12 (pow.f64 im 4))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(*.f64 1/12 (pow.f64 im 4))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(*.f64 1/2 (+.f64 2 (pow.f64 im 2)))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 4))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 4))) (+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))) (*.f64 -1/1440 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 6))))))
(*.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 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6)))))
(+.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/5159780352
1/2985984
1/20736
1/1728
1/144
1/12
13/12
(+.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re)))
(+.f64 (*.f64 1/5159780352 (cos.f64 re)) (cos.f64 re))
(+.f64 (*.f64 1/5159780352 (cos.f64 re)) (*.f64 1/5159780352 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/5159780352 (cos.f64 re)))) -2)
(/.f64 (*.f64 1/5159780352 (cos.f64 re)) 1/5159780352)
(/.f64 (*.f64 1/5159780352 (cos.f64 re)) (+.f64 (cos.f64 re) (-.f64 (*.f64 1/5159780352 (cos.f64 re)) (*.f64 1/5159780352 (cos.f64 re)))))
(/.f64 (-.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) (-.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))))
(pow.f64 (*.f64 1/5159780352 (cos.f64 re)) -2)
(pow.f64 (*.f64 1/5159780352 (cos.f64 re)) 1/3)
(sqrt.f64 (*.f64 1/5159780352 (cos.f64 re)))
(fabs.f64 (*.f64 1/5159780352 (cos.f64 re)))
(log.f64 (pow.f64 (exp.f64 1/5159780352) (cos.f64 re)))
(log.f64 (+.f64 -2 (expm1.f64 (*.f64 1/5159780352 (cos.f64 re)))))
(cbrt.f64 (*.f64 1/5159780352 (cos.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/5159780352 (cos.f64 re))))
(exp.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2))
(log1p.f64 (expm1.f64 (*.f64 1/5159780352 (cos.f64 re))))
(fma.f64 (cos.f64 re) -2 (*.f64 1/5159780352 (cos.f64 re)))
(fma.f64 -2 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re)))
1/5159780352
1/2985984
1/20736
1/1728
1/144
1/12
13/12
(+.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)))
(exp.f64 (log.f64 (cos.f64 re)))
(exp.f64 (*.f64 (log.f64 (cos.f64 re)) -2))
(log1p.f64 (expm1.f64 (cos.f64 re)))
(fma.f64 (cos.f64 re) -2 (cos.f64 re))
(fma.f64 -2 (cos.f64 re) (cos.f64 re))
-2
-1
0
1/512
1/64
1/16
1/8
1/4
1/2
1
3/2
2
3
4
5
6
8
9
16
27
64
256
512
4096
262144
Outputs
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/2 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))))
(+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)))
(*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) (pow.f64 re 2))) (*.f64 1/2 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(fma.f64 -1/4 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 re re)) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(fma.f64 1/2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (*.f64 (*.f64 re re) -1/4)))
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) (pow.f64 re 4))) (+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) (pow.f64 re 2))) (*.f64 1/2 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))))))
(fma.f64 1/48 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 4)) (fma.f64 -1/4 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 re re)) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))))
(fma.f64 1/48 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (pow.f64 re 4)) (fma.f64 1/2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (*.f64 (*.f64 re re) -1/4))))
(fma.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 1/48 (pow.f64 re 4)))))
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 1/2 (+.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 1/48 (pow.f64 re 4)))))
(+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) (pow.f64 re 4))) (+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) (pow.f64 re 2))) (+.f64 (*.f64 -1/1440 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) (pow.f64 re 6))) (*.f64 1/2 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))))
(fma.f64 1/48 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 4)) (fma.f64 -1/4 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 re re)) (fma.f64 -1/1440 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 6)) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))))
(fma.f64 1/48 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (pow.f64 re 4)) (fma.f64 -1/4 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (*.f64 re re)) (fma.f64 1/2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (*.f64 (pow.f64 re 6) -1/1440)))))
(+.f64 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 (*.f64 -1/1440 (pow.f64 re 6)) 1/2)) (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 1/48 (pow.f64 re 4)))))
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 (+.f64 (*.f64 -1/1440 (pow.f64 re 6)) 1/2) (+.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 1/48 (pow.f64 re 4)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(cos.f64 re)
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)) (*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))))
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) (*.f64 1/2 (cos.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)))
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re))))
(fma.f64 1/24 (*.f64 (pow.f64 im 4) (cos.f64 re)) (*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re)))))
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) (*.f64 1/2 (cos.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (cos.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (cos.f64 re)))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (cos.f64 re)))
(pow.f64 im 2)
(*.f64 im im)
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(*.f64 1/12 (pow.f64 im 4))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(*.f64 1/12 (pow.f64 im 4))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(*.f64 1/2 (+.f64 2 (pow.f64 im 2)))
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
(*.f64 1/2 (fma.f64 im im 2))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(fma.f64 1/2 (+.f64 2 (*.f64 im im)) (*.f64 -1/4 (*.f64 (*.f64 re re) (+.f64 2 (*.f64 im im)))))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re (*.f64 re (fma.f64 im im 2)))))
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 4))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))))
(fma.f64 1/2 (+.f64 2 (*.f64 im im)) (fma.f64 1/48 (*.f64 (pow.f64 re 4) (+.f64 2 (*.f64 im im))) (*.f64 -1/4 (*.f64 (*.f64 re re) (+.f64 2 (*.f64 im im))))))
(fma.f64 1/2 (fma.f64 im im 2) (fma.f64 -1/4 (*.f64 re (*.f64 re (fma.f64 im im 2))) (*.f64 1/48 (*.f64 (pow.f64 re 4) (fma.f64 im im 2)))))
(fma.f64 (fma.f64 im im 2) (*.f64 1/48 (pow.f64 re 4)) (*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (+.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 1/48 (pow.f64 re 4)))))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (+.f64 (*.f64 1/48 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 4))) (+.f64 (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))) (*.f64 -1/1440 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 6))))))
(fma.f64 1/2 (+.f64 2 (*.f64 im im)) (fma.f64 1/48 (*.f64 (pow.f64 re 4) (+.f64 2 (*.f64 im im))) (fma.f64 -1/4 (*.f64 (*.f64 re re) (+.f64 2 (*.f64 im im))) (*.f64 -1/1440 (*.f64 (pow.f64 re 6) (+.f64 2 (*.f64 im im)))))))
(fma.f64 1/2 (fma.f64 im im 2) (fma.f64 1/48 (*.f64 (pow.f64 re 4) (fma.f64 im im 2)) (fma.f64 -1/4 (*.f64 re (*.f64 re (fma.f64 im im 2))) (*.f64 -1/1440 (*.f64 (pow.f64 re 6) (fma.f64 im im 2))))))
(+.f64 (*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/1440 (pow.f64 re 6)) (*.f64 1/48 (pow.f64 re 4)))))
(*.f64 (fma.f64 im im 2) (+.f64 (+.f64 (*.f64 -1/1440 (pow.f64 re 6)) 1/2) (+.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 1/48 (pow.f64 re 4)))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 2 (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(cos.f64 re)
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im im))
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))))
(*.f64 im (*.f64 im (*.f64 1/2 (cos.f64 re))))
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im im))
(*.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))))
(*.f64 im (*.f64 im (*.f64 1/2 (cos.f64 re))))
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im (*.f64 im (cos.f64 re))) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (fma.f64 im im 2)))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6)))))
(+.f64 2 (+.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) (*.f64 1/360 (pow.f64 im 6))))
(+.f64 2 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) (*.f64 1/360 (pow.f64 im 6)))))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im (*.f64 1/360 (pow.f64 im 6)))))
(+.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)))
1/5159780352
1/2985984
1/20736
1/1728
1/144
1/12
13/12
(+.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re)))
(*.f64 5159780353/5159780352 (cos.f64 re))
(*.f64 (cos.f64 re) 5159780353/5159780352)
(+.f64 (*.f64 1/5159780352 (cos.f64 re)) (cos.f64 re))
(*.f64 5159780353/5159780352 (cos.f64 re))
(*.f64 (cos.f64 re) 5159780353/5159780352)
(+.f64 (*.f64 1/5159780352 (cos.f64 re)) (*.f64 1/5159780352 (cos.f64 re)))
(*.f64 (cos.f64 re) 1/2579890176)
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/5159780352 (cos.f64 re)))) -2)
(+.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) 1/5159780352))) 2)
(+.f64 2 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) 1/5159780352))))
(/.f64 (*.f64 1/5159780352 (cos.f64 re)) 1/5159780352)
(cos.f64 re)
(/.f64 (*.f64 1/5159780352 (cos.f64 re)) (+.f64 (cos.f64 re) (-.f64 (*.f64 1/5159780352 (cos.f64 re)) (*.f64 1/5159780352 (cos.f64 re)))))
1/5159780352
(/.f64 (-.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))) (-.f64 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re))))
1
(pow.f64 (*.f64 1/5159780352 (cos.f64 re)) -2)
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2)
(*.f64 (pow.f64 (cos.f64 re) -2) 26623333280885243904)
(pow.f64 (*.f64 1/5159780352 (cos.f64 re)) 1/3)
(cbrt.f64 (*.f64 (cos.f64 re) 1/5159780352))
(sqrt.f64 (*.f64 1/5159780352 (cos.f64 re)))
(sqrt.f64 (*.f64 (cos.f64 re) 1/5159780352))
(fabs.f64 (*.f64 1/5159780352 (cos.f64 re)))
(*.f64 1/5159780352 (fabs.f64 (cos.f64 re)))
(log.f64 (pow.f64 (exp.f64 1/5159780352) (cos.f64 re)))
(*.f64 (cos.f64 re) (log.f64 (exp.f64 1/5159780352)))
(*.f64 (cos.f64 re) 1/5159780352)
(log.f64 (+.f64 -2 (expm1.f64 (*.f64 1/5159780352 (cos.f64 re)))))
(log.f64 (+.f64 -2 (expm1.f64 (*.f64 (cos.f64 re) 1/5159780352))))
(cbrt.f64 (*.f64 1/5159780352 (cos.f64 re)))
(cbrt.f64 (*.f64 (cos.f64 re) 1/5159780352))
(expm1.f64 (log1p.f64 (*.f64 1/5159780352 (cos.f64 re))))
(*.f64 (cos.f64 re) (log.f64 (exp.f64 1/5159780352)))
(*.f64 (cos.f64 re) 1/5159780352)
(exp.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))))
(*.f64 (cos.f64 re) (log.f64 (exp.f64 1/5159780352)))
(*.f64 (cos.f64 re) 1/5159780352)
(exp.f64 (*.f64 (log.f64 (*.f64 1/5159780352 (cos.f64 re))) -2))
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2)
(*.f64 (pow.f64 (cos.f64 re) -2) 26623333280885243904)
(log1p.f64 (expm1.f64 (*.f64 1/5159780352 (cos.f64 re))))
(*.f64 (cos.f64 re) (log.f64 (exp.f64 1/5159780352)))
(*.f64 (cos.f64 re) 1/5159780352)
(fma.f64 (cos.f64 re) -2 (*.f64 1/5159780352 (cos.f64 re)))
(fma.f64 (cos.f64 re) -2 (*.f64 (cos.f64 re) 1/5159780352))
(*.f64 (cos.f64 re) -10319560703/5159780352)
(fma.f64 -2 (cos.f64 re) (*.f64 1/5159780352 (cos.f64 re)))
(fma.f64 (cos.f64 re) -2 (*.f64 (cos.f64 re) 1/5159780352))
(*.f64 (cos.f64 re) -10319560703/5159780352)
1/5159780352
1/2985984
1/20736
1/1728
1/144
1/12
13/12
(+.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 re re)) (cos.f64 0)) -2)
(/.f64 (+.f64 (cos.f64 (+.f64 re re)) 1) -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)))
(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)
(log1p.f64 (expm1.f64 (cos.f64 re)))
(cos.f64 re)
(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/512
1/64
1/16
1/8
1/4
1/2
1
3/2
2
3
4
5
6
8
9
16
27
64
256
512
4096
262144

eval49.0ms (0.6%)

Compiler

Compiled 2027 to 1343 computations (33.7% saved)

prune56.0ms (0.7%)

Pruning

22 alts after pruning (17 fresh and 5 done)

PrunedKeptTotal
New15616172
Fresh011
Picked145
Done011
Total15722179
Accurracy
100.0%
Counts
179 → 22
Alt Table
Click to see full alt table
StatusAccuracyProgram
5.0%
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2)
3.6%
(+.f64 (cos.f64 re) -2)
45.3%
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
43.0%
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
40.4%
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
88.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
52.2%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) 1/2985984)))
75.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
27.7%
(*.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im im))
71.7%
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
35.5%
(*.f64 (cos.f64 re) 5159780353/5159780352)
27.7%
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
65.2%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
6.0%
(*.f64 1/2 262144)
8.8%
(*.f64 1/2 3/2)
7.9%
(*.f64 1/2 1/2)
7.5%
(*.f64 1/2 1/4)
3.9%
(*.f64 1/2 -1)
4.2%
(*.f64 1/2 -2)
51.0%
(cos.f64 re)
26.7%
1
5.0%
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2)
3.6%
(+.f64 (cos.f64 re) -2)
45.3%
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
43.0%
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
40.4%
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
88.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
52.2%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) 1/2985984)))
75.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
27.7%
(*.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im im))
71.7%
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
35.5%
(*.f64 (cos.f64 re) 5159780353/5159780352)
27.7%
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
65.2%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
6.0%
(*.f64 1/2 262144)
8.8%
(*.f64 1/2 3/2)
7.9%
(*.f64 1/2 1/2)
7.5%
(*.f64 1/2 1/4)
3.9%
(*.f64 1/2 -1)
4.2%
(*.f64 1/2 -2)
51.0%
(cos.f64 re)
26.7%
1
Compiler

Compiled 628 to 514 computations (18.2% saved)

localize129.0ms (1.5%)

Local Accuracy

Found 4 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
99.8%
(+.f64 (cos.f64 re) -2)
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 77 to 45 computations (41.6% saved)

series9.0ms (0.1%)

Counts
4 → 72
Calls

18 calls:

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

rewrite102.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
1874×log-prod
924×prod-diff
738×expm1-udef
732×log1p-udef
654×fma-def
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02080
142376
2523976
Stop Event
node limit
Counts
4 → 145
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 (cos.f64 re) -2)
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
Outputs
(+.f64 0 (*.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 (*.f64 (*.f64 1/2 (exp.f64 im)) (cos.f64 re)) (*.f64 1/2 (cos.f64 re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)))) 1)
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 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 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3) (pow.f64 (cos.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(fma.f64 (cos.f64 re) (*.f64 1/2 (exp.f64 im)) (*.f64 (cos.f64 re) 1/2))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (cos.f64 re) (*.f64 1/2 (cos.f64 re)))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (exp.f64 im)) 1/2)
(+.f64 0 (fma.f64 1/2 (exp.f64 im) 1/2))
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) 1) 1/2)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) (cbrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) 1)
(*.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) (fma.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im)) (-.f64 1/4 (*.f64 (*.f64 1/2 (exp.f64 im)) 1/2))))
(/.f64 (fma.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im)) -1/4) (fma.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)))
(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))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(-.f64 (exp.f64 (log1p.f64 (+.f64 (cos.f64 re) -2))) 1)
(-.f64 (/.f64 (pow.f64 (cos.f64 re) 2) (+.f64 (cos.f64 re) 2)) (/.f64 4 (+.f64 (cos.f64 re) 2)))
(*.f64 (+.f64 (cos.f64 re) -2) 1)
(*.f64 1 (+.f64 (cos.f64 re) -2))
(*.f64 (cbrt.f64 (+.f64 (cos.f64 re) -2)) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 re) -2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 re) -2)) 2) (cbrt.f64 (+.f64 (cos.f64 re) -2)))
(*.f64 (sqrt.f64 (+.f64 (cos.f64 re) -2)) (sqrt.f64 (+.f64 (cos.f64 re) -2)))
(*.f64 (+.f64 -8 (pow.f64 (cos.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2)))))
(*.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4) (/.f64 1 (+.f64 (cos.f64 re) 2)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2))) (+.f64 -8 (pow.f64 (cos.f64 re) 3))))
(/.f64 1 (/.f64 (+.f64 (cos.f64 re) 2) (fma.f64 (cos.f64 re) (cos.f64 re) -4)))
(/.f64 (+.f64 -8 (pow.f64 (cos.f64 re) 3)) (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2))))
(/.f64 (+.f64 -8 (pow.f64 (cos.f64 re) 3)) (+.f64 4 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (cos.f64 re) -2))))
(/.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4) (+.f64 (cos.f64 re) 2))
(/.f64 (neg.f64 (+.f64 -8 (pow.f64 (cos.f64 re) 3))) (neg.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2)))))
(/.f64 (neg.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4)) (neg.f64 (+.f64 (cos.f64 re) 2)))
(/.f64 (-.f64 4 (pow.f64 (cos.f64 re) 2)) (-.f64 -2 (cos.f64 re)))
(pow.f64 (+.f64 (cos.f64 re) -2) 1)
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 re) -2)) 3)
(pow.f64 (pow.f64 (+.f64 (cos.f64 re) -2) 3) 1/3)
(pow.f64 (sqrt.f64 (+.f64 (cos.f64 re) -2)) 2)
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 re) -2) 2))
(log.f64 (exp.f64 (+.f64 (cos.f64 re) -2)))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 (cos.f64 re) -2))))
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 re) -2) 3))
(expm1.f64 (log1p.f64 (+.f64 (cos.f64 re) -2)))
(exp.f64 (log.f64 (+.f64 (cos.f64 re) -2)))
(exp.f64 (*.f64 (log.f64 (+.f64 (cos.f64 re) -2)) 1))
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 re) -2)))
(fma.f64 (cos.f64 re) 1 -2)
(fma.f64 1 (cos.f64 re) -2)
(fma.f64 (cbrt.f64 (cos.f64 re)) (pow.f64 (cbrt.f64 (cos.f64 re)) 2) -2)
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (cbrt.f64 (cos.f64 re)) -2)
(fma.f64 (sqrt.f64 (cos.f64 re)) (sqrt.f64 (cos.f64 re)) -2)
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(+.f64 0 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)))
(+.f64 (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (*.f64 im im)) (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 2))
(+.f64 (*.f64 (*.f64 im im) (fma.f64 re (*.f64 re -1/4) 1/2)) (*.f64 2 (fma.f64 re (*.f64 re -1/4) 1/2)))
(+.f64 (*.f64 (*.f64 1/2 (fma.f64 im im 2)) 1) (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) 1))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (fma.f64 im im 2)) 3) (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) 3)) (fma.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)) (-.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (*.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))) (-.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))))
(/.f64 (*.f64 (fma.f64 im im 2) (fma.f64 (pow.f64 (*.f64 re re) 3) -1/64 1/8)) (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))
(/.f64 (*.f64 (fma.f64 im im 2) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 re re) 3) -1/64 1/8) (fma.f64 im im 2)) (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (fma.f64 im im 2)) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))
(pow.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (exp.f64 (*.f64 1/2 (fma.f64 im im 2)))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 3) (pow.f64 (fma.f64 im im 2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))))
(exp.f64 (log.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (fma.f64 im im 2) 1/2 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 im im 2) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (*.f64 im im) (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 2))
(fma.f64 1 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 1 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (cbrt.f64 (fma.f64 im im 2)) (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (cbrt.f64 (fma.f64 im im 2)) 1/2) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (*.f64 im im) (fma.f64 re (*.f64 re -1/4) 1/2) (*.f64 2 (fma.f64 re (*.f64 re -1/4) 1/2)))
(fma.f64 (*.f64 re (sqrt.f64 -1/4)) (*.f64 (*.f64 re (sqrt.f64 -1/4)) (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) 1/2) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (*.f64 1/2 (fma.f64 im im 2)) 1 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) 1))
(fma.f64 (*.f64 re -1/4) (*.f64 re (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (fma.f64 im im 2))) (cbrt.f64 (*.f64 1/2 (fma.f64 im im 2)))) (cbrt.f64 (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (cbrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))) (cbrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 im im 2))) (sqrt.f64 (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (sqrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (sqrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 re (sqrt.f64 -1/4))) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 re (sqrt.f64 -1/4))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 re (sqrt.f64 -1/4)) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (*.f64 re (sqrt.f64 -1/4)) (sqrt.f64 (fma.f64 im im 2))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) -1/4) (*.f64 re re) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (*.f64 re re)) -1/4 (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16))) (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (*.f64 re (sqrt.f64 -1/4))) (*.f64 re (sqrt.f64 -1/4)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (*.f64 re -1/4)) re (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (*.f64 1/2 (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))

simplify103.0ms (1.2%)

Algorithm
egg-herbie
Rules
742×associate-+l+
716×associate-+r+
614×associate-*r*
526×associate-*l*
522×log-prod
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04208173
110295867
238975535
Stop Event
node limit
Counts
217 → 245
Calls
Call 1
Inputs
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2)))))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 4))) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2))))))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 -1/720 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 6))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 4))) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2)))))))
(*.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 (cos.f64 re) im)))
(+.f64 (*.f64 1/4 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (cos.f64 re) im))))
(+.f64 (*.f64 1/4 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (+.f64 (*.f64 1/12 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/2 (*.f64 (cos.f64 re) 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 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im)))
(+.f64 1 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (+.f64 (*.f64 1/2 im) (*.f64 1/12 (pow.f64 im 3)))))
(+.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)))
-1
(-.f64 (*.f64 -1/2 (pow.f64 re 2)) 1)
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 re 4)) (*.f64 -1/2 (pow.f64 re 2))) 1)
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 re 4)) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/720 (pow.f64 re 6)))) 1)
(-.f64 (cos.f64 re) 2)
(-.f64 (cos.f64 re) 2)
(-.f64 (cos.f64 re) 2)
(-.f64 (cos.f64 re) 2)
(-.f64 (cos.f64 re) 2)
(-.f64 (cos.f64 re) 2)
(-.f64 (cos.f64 re) 2)
(-.f64 (cos.f64 re) 2)
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 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 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(+.f64 0 (*.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 (*.f64 (*.f64 1/2 (exp.f64 im)) (cos.f64 re)) (*.f64 1/2 (cos.f64 re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)))) 1)
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 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 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3) (pow.f64 (cos.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(fma.f64 (cos.f64 re) (*.f64 1/2 (exp.f64 im)) (*.f64 (cos.f64 re) 1/2))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (cos.f64 re) (*.f64 1/2 (cos.f64 re)))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (exp.f64 im)) 1/2)
(+.f64 0 (fma.f64 1/2 (exp.f64 im) 1/2))
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) 1) 1/2)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) (cbrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) 1)
(*.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) (fma.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im)) (-.f64 1/4 (*.f64 (*.f64 1/2 (exp.f64 im)) 1/2))))
(/.f64 (fma.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im)) -1/4) (fma.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)))
(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))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(-.f64 (exp.f64 (log1p.f64 (+.f64 (cos.f64 re) -2))) 1)
(-.f64 (/.f64 (pow.f64 (cos.f64 re) 2) (+.f64 (cos.f64 re) 2)) (/.f64 4 (+.f64 (cos.f64 re) 2)))
(*.f64 (+.f64 (cos.f64 re) -2) 1)
(*.f64 1 (+.f64 (cos.f64 re) -2))
(*.f64 (cbrt.f64 (+.f64 (cos.f64 re) -2)) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 re) -2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 re) -2)) 2) (cbrt.f64 (+.f64 (cos.f64 re) -2)))
(*.f64 (sqrt.f64 (+.f64 (cos.f64 re) -2)) (sqrt.f64 (+.f64 (cos.f64 re) -2)))
(*.f64 (+.f64 -8 (pow.f64 (cos.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2)))))
(*.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4) (/.f64 1 (+.f64 (cos.f64 re) 2)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2))) (+.f64 -8 (pow.f64 (cos.f64 re) 3))))
(/.f64 1 (/.f64 (+.f64 (cos.f64 re) 2) (fma.f64 (cos.f64 re) (cos.f64 re) -4)))
(/.f64 (+.f64 -8 (pow.f64 (cos.f64 re) 3)) (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2))))
(/.f64 (+.f64 -8 (pow.f64 (cos.f64 re) 3)) (+.f64 4 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (cos.f64 re) -2))))
(/.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4) (+.f64 (cos.f64 re) 2))
(/.f64 (neg.f64 (+.f64 -8 (pow.f64 (cos.f64 re) 3))) (neg.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2)))))
(/.f64 (neg.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4)) (neg.f64 (+.f64 (cos.f64 re) 2)))
(/.f64 (-.f64 4 (pow.f64 (cos.f64 re) 2)) (-.f64 -2 (cos.f64 re)))
(pow.f64 (+.f64 (cos.f64 re) -2) 1)
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 re) -2)) 3)
(pow.f64 (pow.f64 (+.f64 (cos.f64 re) -2) 3) 1/3)
(pow.f64 (sqrt.f64 (+.f64 (cos.f64 re) -2)) 2)
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 re) -2) 2))
(log.f64 (exp.f64 (+.f64 (cos.f64 re) -2)))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 (cos.f64 re) -2))))
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 re) -2) 3))
(expm1.f64 (log1p.f64 (+.f64 (cos.f64 re) -2)))
(exp.f64 (log.f64 (+.f64 (cos.f64 re) -2)))
(exp.f64 (*.f64 (log.f64 (+.f64 (cos.f64 re) -2)) 1))
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 re) -2)))
(fma.f64 (cos.f64 re) 1 -2)
(fma.f64 1 (cos.f64 re) -2)
(fma.f64 (cbrt.f64 (cos.f64 re)) (pow.f64 (cbrt.f64 (cos.f64 re)) 2) -2)
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (cbrt.f64 (cos.f64 re)) -2)
(fma.f64 (sqrt.f64 (cos.f64 re)) (sqrt.f64 (cos.f64 re)) -2)
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(+.f64 0 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)))
(+.f64 (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (*.f64 im im)) (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 2))
(+.f64 (*.f64 (*.f64 im im) (fma.f64 re (*.f64 re -1/4) 1/2)) (*.f64 2 (fma.f64 re (*.f64 re -1/4) 1/2)))
(+.f64 (*.f64 (*.f64 1/2 (fma.f64 im im 2)) 1) (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) 1))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (fma.f64 im im 2)) 3) (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) 3)) (fma.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)) (-.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (*.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))) (-.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))))
(/.f64 (*.f64 (fma.f64 im im 2) (fma.f64 (pow.f64 (*.f64 re re) 3) -1/64 1/8)) (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))
(/.f64 (*.f64 (fma.f64 im im 2) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 re re) 3) -1/64 1/8) (fma.f64 im im 2)) (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (fma.f64 im im 2)) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))
(pow.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (exp.f64 (*.f64 1/2 (fma.f64 im im 2)))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 3) (pow.f64 (fma.f64 im im 2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))))
(exp.f64 (log.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (fma.f64 im im 2) 1/2 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 im im 2) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (*.f64 im im) (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 2))
(fma.f64 1 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 1 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (cbrt.f64 (fma.f64 im im 2)) (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (cbrt.f64 (fma.f64 im im 2)) 1/2) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (*.f64 im im) (fma.f64 re (*.f64 re -1/4) 1/2) (*.f64 2 (fma.f64 re (*.f64 re -1/4) 1/2)))
(fma.f64 (*.f64 re (sqrt.f64 -1/4)) (*.f64 (*.f64 re (sqrt.f64 -1/4)) (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) 1/2) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (*.f64 1/2 (fma.f64 im im 2)) 1 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) 1))
(fma.f64 (*.f64 re -1/4) (*.f64 re (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (fma.f64 im im 2))) (cbrt.f64 (*.f64 1/2 (fma.f64 im im 2)))) (cbrt.f64 (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (cbrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))) (cbrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 im im 2))) (sqrt.f64 (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (sqrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (sqrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 re (sqrt.f64 -1/4))) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 re (sqrt.f64 -1/4))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 re (sqrt.f64 -1/4)) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (*.f64 re (sqrt.f64 -1/4)) (sqrt.f64 (fma.f64 im im 2))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) -1/4) (*.f64 re re) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (*.f64 re re)) -1/4 (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16))) (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (*.f64 re (sqrt.f64 -1/4))) (*.f64 re (sqrt.f64 -1/4)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (*.f64 re -1/4)) re (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (*.f64 1/2 (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
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 (exp.f64 im)) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2)))))
(+.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (*.f64 -1/2 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (*.f64 re re))))
(+.f64 1/2 (fma.f64 1/2 (exp.f64 im) (*.f64 (*.f64 -1/2 (*.f64 re re)) (fma.f64 1/2 (exp.f64 im) 1/2))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (+.f64 1 (*.f64 re (*.f64 re -1/2))))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 4))) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2))))))
(+.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (fma.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/2 (exp.f64 im) 1/2)) (*.f64 -1/2 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (*.f64 re re)))))
(+.f64 1/2 (fma.f64 1/2 (exp.f64 im) (fma.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/2 (exp.f64 im) 1/2)) (*.f64 (*.f64 -1/2 (*.f64 re re)) (fma.f64 1/2 (exp.f64 im) 1/2)))))
(+.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (fma.f64 1/24 (pow.f64 re 4) (*.f64 re (*.f64 re -1/2)))) (fma.f64 1/2 (exp.f64 im) 1/2))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 -1/720 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 6))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 4))) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2)))))))
(+.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (fma.f64 -1/720 (*.f64 (pow.f64 re 6) (fma.f64 1/2 (exp.f64 im) 1/2)) (fma.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/2 (exp.f64 im) 1/2)) (*.f64 -1/2 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (*.f64 re re))))))
(+.f64 1/2 (fma.f64 1/2 (exp.f64 im) (fma.f64 -1/720 (*.f64 (pow.f64 re 6) (fma.f64 1/2 (exp.f64 im) 1/2)) (fma.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/2 (exp.f64 im) 1/2)) (*.f64 (*.f64 -1/2 (*.f64 re re)) (fma.f64 1/2 (exp.f64 im) 1/2))))))
(+.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (fma.f64 1/24 (pow.f64 re 4) (*.f64 re (*.f64 re -1/2)))) (*.f64 (+.f64 (*.f64 -1/720 (pow.f64 re 6)) 1) (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 (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))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (cos.f64 re) im)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))
(fma.f64 (*.f64 1/2 (cos.f64 re)) im (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 1/2 im 1))
(+.f64 (*.f64 1/4 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (cos.f64 re) im))))
(fma.f64 1/4 (*.f64 (cos.f64 re) (*.f64 im im)) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re)))))
(fma.f64 1/4 (*.f64 (cos.f64 re) (*.f64 im im)) (fma.f64 (*.f64 1/2 (cos.f64 re)) im (cos.f64 re)))
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 (*.f64 1/4 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (+.f64 (*.f64 1/12 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/2 (*.f64 (cos.f64 re) im)))))
(fma.f64 1/4 (*.f64 (cos.f64 re) (*.f64 im im)) (+.f64 (cos.f64 re) (fma.f64 1/12 (*.f64 (cos.f64 re) (pow.f64 im 3)) (*.f64 1/2 (*.f64 im (cos.f64 re))))))
(+.f64 (fma.f64 1/4 (*.f64 (cos.f64 re) (*.f64 im im)) (fma.f64 (*.f64 1/2 (cos.f64 re)) im (cos.f64 re))) (*.f64 1/12 (*.f64 (cos.f64 re) (pow.f64 im 3))))
(+.f64 (*.f64 (cos.f64 re) (+.f64 (*.f64 1/12 (pow.f64 im 3)) 1)) (*.f64 (cos.f64 re) (*.f64 im (+.f64 1/2 (*.f64 1/4 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 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im)))
(+.f64 1 (fma.f64 1/4 (*.f64 im im) (*.f64 1/2 im)))
(+.f64 1 (fma.f64 1/2 im (*.f64 im (*.f64 im 1/4))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))
(+.f64 1 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (+.f64 (*.f64 1/2 im) (*.f64 1/12 (pow.f64 im 3)))))
(+.f64 1 (fma.f64 1/4 (*.f64 im im) (fma.f64 1/2 im (*.f64 1/12 (pow.f64 im 3)))))
(+.f64 (fma.f64 1/2 im 1) (*.f64 (*.f64 im im) (+.f64 (*.f64 1/12 im) 1/4)))
(+.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)
-1
(-.f64 (*.f64 -1/2 (pow.f64 re 2)) 1)
(fma.f64 -1/2 (*.f64 re re) -1)
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 re 4)) (*.f64 -1/2 (pow.f64 re 2))) 1)
(+.f64 (*.f64 1/24 (pow.f64 re 4)) (fma.f64 -1/2 (*.f64 re re) -1))
(fma.f64 1/24 (pow.f64 re 4) (fma.f64 -1/2 (*.f64 re re) -1))
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 re 4)) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/720 (pow.f64 re 6)))) 1)
(+.f64 (fma.f64 1/24 (pow.f64 re 4) (fma.f64 -1/2 (*.f64 re re) (*.f64 -1/720 (pow.f64 re 6)))) -1)
(+.f64 (fma.f64 1/24 (pow.f64 re 4) (*.f64 re (*.f64 re -1/2))) (fma.f64 -1/720 (pow.f64 re 6) -1))
(-.f64 (cos.f64 re) 2)
(+.f64 (cos.f64 re) -2)
(-.f64 (cos.f64 re) 2)
(+.f64 (cos.f64 re) -2)
(-.f64 (cos.f64 re) 2)
(+.f64 (cos.f64 re) -2)
(-.f64 (cos.f64 re) 2)
(+.f64 (cos.f64 re) -2)
(-.f64 (cos.f64 re) 2)
(+.f64 (cos.f64 re) -2)
(-.f64 (cos.f64 re) 2)
(+.f64 (cos.f64 re) -2)
(-.f64 (cos.f64 re) 2)
(+.f64 (cos.f64 re) -2)
(-.f64 (cos.f64 re) 2)
(+.f64 (cos.f64 re) -2)
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(+.f64 1 (*.f64 2 (*.f64 -1/4 (*.f64 re re))))
(+.f64 1 (*.f64 -1/2 (*.f64 re re)))
(+.f64 1 (*.f64 re (*.f64 re -1/2)))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(*.f64 (*.f64 im im) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(*.f64 (*.f64 im im) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2)))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(*.f64 1/2 (+.f64 2 (pow.f64 im 2)))
(*.f64 1/2 (fma.f64 im im 2))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 (*.f64 -1/4 (fma.f64 im im 2)) (*.f64 re re))
(*.f64 re (*.f64 (fma.f64 im im 2) (*.f64 re -1/4)))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 (*.f64 -1/4 (fma.f64 im im 2)) (*.f64 re re))
(*.f64 re (*.f64 (fma.f64 im im 2) (*.f64 re -1/4)))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 1/2 (+.f64 2 (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 0 (*.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))
(+.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 (*.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 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) 1/2)))) (log.f64 (sqrt.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))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)))) 1)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 1)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 3)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 3) 1/3)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 2)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 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 (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))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 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))
(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))
(expm1.f64 (log1p.f64 (*.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))
(exp.f64 (log.f64 (*.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))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 1))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(log1p.f64 (expm1.f64 (*.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))
(fma.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))
(fma.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 1/2 (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 (*.f64 1/2 (exp.f64 im)) 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 0 (fma.f64 1/2 (exp.f64 im) 1/2))
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) 1) 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) (cbrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) 1)
(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) (fma.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im)) (-.f64 1/4 (*.f64 (*.f64 1/2 (exp.f64 im)) 1/2))))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (fma.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im)) (-.f64 1/4 (*.f64 1/2 (*.f64 1/2 (exp.f64 im))))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (+.f64 (-.f64 1/4 (*.f64 (exp.f64 im) 1/4)) (*.f64 (exp.f64 im) (*.f64 (exp.f64 im) 1/4))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (+.f64 1/4 (+.f64 (*.f64 (exp.f64 im) -1/4) (*.f64 1/4 (exp.f64 (+.f64 im im))))))
(/.f64 (fma.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im)) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (+.f64 -1/4 (*.f64 (exp.f64 im) (*.f64 (exp.f64 im) 1/4))) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (+.f64 -1/4 (*.f64 1/4 (exp.f64 (+.f64 im im)))) (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)))
(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)
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(fma.f64 1/2 (exp.f64 im) 1/2)
(-.f64 (exp.f64 (log1p.f64 (+.f64 (cos.f64 re) -2))) 1)
(+.f64 (cos.f64 re) -2)
(-.f64 (/.f64 (pow.f64 (cos.f64 re) 2) (+.f64 (cos.f64 re) 2)) (/.f64 4 (+.f64 (cos.f64 re) 2)))
(-.f64 (/.f64 (pow.f64 (cos.f64 re) 2) (+.f64 2 (cos.f64 re))) (/.f64 4 (+.f64 2 (cos.f64 re))))
(+.f64 (/.f64 (pow.f64 (cos.f64 re) 2) (+.f64 2 (cos.f64 re))) (/.f64 -4 (+.f64 2 (cos.f64 re))))
(*.f64 (+.f64 (cos.f64 re) -2) 1)
(+.f64 (cos.f64 re) -2)
(*.f64 1 (+.f64 (cos.f64 re) -2))
(+.f64 (cos.f64 re) -2)
(*.f64 (cbrt.f64 (+.f64 (cos.f64 re) -2)) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 re) -2)) 2))
(+.f64 (cos.f64 re) -2)
(*.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 re) -2)) 2) (cbrt.f64 (+.f64 (cos.f64 re) -2)))
(+.f64 (cos.f64 re) -2)
(*.f64 (sqrt.f64 (+.f64 (cos.f64 re) -2)) (sqrt.f64 (+.f64 (cos.f64 re) -2)))
(+.f64 (cos.f64 re) -2)
(*.f64 (+.f64 -8 (pow.f64 (cos.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) 1) (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) (+.f64 4 (*.f64 (cos.f64 re) (-.f64 (cos.f64 re) -2))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) (+.f64 4 (*.f64 (cos.f64 re) (+.f64 2 (cos.f64 re)))))
(*.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4) (/.f64 1 (+.f64 (cos.f64 re) 2)))
(/.f64 1 (/.f64 (+.f64 2 (cos.f64 re)) (fma.f64 (cos.f64 re) (cos.f64 re) -4)))
(/.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4) (+.f64 2 (cos.f64 re)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2))) (+.f64 -8 (pow.f64 (cos.f64 re) 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) 1) (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) (+.f64 4 (*.f64 (cos.f64 re) (-.f64 (cos.f64 re) -2))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) (+.f64 4 (*.f64 (cos.f64 re) (+.f64 2 (cos.f64 re)))))
(/.f64 1 (/.f64 (+.f64 (cos.f64 re) 2) (fma.f64 (cos.f64 re) (cos.f64 re) -4)))
(/.f64 1 (/.f64 (+.f64 2 (cos.f64 re)) (fma.f64 (cos.f64 re) (cos.f64 re) -4)))
(/.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4) (+.f64 2 (cos.f64 re)))
(/.f64 (+.f64 -8 (pow.f64 (cos.f64 re) 3)) (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) 1) (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) (+.f64 4 (*.f64 (cos.f64 re) (-.f64 (cos.f64 re) -2))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) (+.f64 4 (*.f64 (cos.f64 re) (+.f64 2 (cos.f64 re)))))
(/.f64 (+.f64 -8 (pow.f64 (cos.f64 re) 3)) (+.f64 4 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (cos.f64 re) -2))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) 1) (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) (+.f64 4 (*.f64 (cos.f64 re) (-.f64 (cos.f64 re) -2))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) (+.f64 4 (*.f64 (cos.f64 re) (+.f64 2 (cos.f64 re)))))
(/.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4) (+.f64 (cos.f64 re) 2))
(/.f64 1 (/.f64 (+.f64 2 (cos.f64 re)) (fma.f64 (cos.f64 re) (cos.f64 re) -4)))
(/.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4) (+.f64 2 (cos.f64 re)))
(/.f64 (neg.f64 (+.f64 -8 (pow.f64 (cos.f64 re) 3))) (neg.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) 1) (+.f64 (pow.f64 (cos.f64 re) 2) (-.f64 4 (*.f64 (cos.f64 re) -2))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) (+.f64 4 (*.f64 (cos.f64 re) (-.f64 (cos.f64 re) -2))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 3) -8) (+.f64 4 (*.f64 (cos.f64 re) (+.f64 2 (cos.f64 re)))))
(/.f64 (neg.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4)) (neg.f64 (+.f64 (cos.f64 re) 2)))
(/.f64 1 (/.f64 (+.f64 2 (cos.f64 re)) (fma.f64 (cos.f64 re) (cos.f64 re) -4)))
(/.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4) (+.f64 2 (cos.f64 re)))
(/.f64 (-.f64 4 (pow.f64 (cos.f64 re) 2)) (-.f64 -2 (cos.f64 re)))
(/.f64 1 (/.f64 (+.f64 2 (cos.f64 re)) (fma.f64 (cos.f64 re) (cos.f64 re) -4)))
(/.f64 (fma.f64 (cos.f64 re) (cos.f64 re) -4) (+.f64 2 (cos.f64 re)))
(pow.f64 (+.f64 (cos.f64 re) -2) 1)
(+.f64 (cos.f64 re) -2)
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 re) -2)) 3)
(+.f64 (cos.f64 re) -2)
(pow.f64 (pow.f64 (+.f64 (cos.f64 re) -2) 3) 1/3)
(+.f64 (cos.f64 re) -2)
(pow.f64 (sqrt.f64 (+.f64 (cos.f64 re) -2)) 2)
(+.f64 (cos.f64 re) -2)
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 re) -2) 2))
(+.f64 (cos.f64 re) -2)
(log.f64 (exp.f64 (+.f64 (cos.f64 re) -2)))
(+.f64 (cos.f64 re) -2)
(log.f64 (+.f64 1 (expm1.f64 (+.f64 (cos.f64 re) -2))))
(+.f64 (cos.f64 re) -2)
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 re) -2) 3))
(+.f64 (cos.f64 re) -2)
(expm1.f64 (log1p.f64 (+.f64 (cos.f64 re) -2)))
(+.f64 (cos.f64 re) -2)
(exp.f64 (log.f64 (+.f64 (cos.f64 re) -2)))
(+.f64 (cos.f64 re) -2)
(exp.f64 (*.f64 (log.f64 (+.f64 (cos.f64 re) -2)) 1))
(+.f64 (cos.f64 re) -2)
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 re) -2)))
(+.f64 (cos.f64 re) -2)
(fma.f64 (cos.f64 re) 1 -2)
(+.f64 (cos.f64 re) -2)
(fma.f64 1 (cos.f64 re) -2)
(+.f64 (cos.f64 re) -2)
(fma.f64 (cbrt.f64 (cos.f64 re)) (pow.f64 (cbrt.f64 (cos.f64 re)) 2) -2)
(+.f64 (cos.f64 re) -2)
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (cbrt.f64 (cos.f64 re)) -2)
(+.f64 (cos.f64 re) -2)
(fma.f64 (sqrt.f64 (cos.f64 re)) (sqrt.f64 (cos.f64 re)) -2)
(+.f64 (cos.f64 re) -2)
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 0 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (*.f64 im im)) (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 2))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 (*.f64 im im) (fma.f64 re (*.f64 re -1/4) 1/2)) (*.f64 2 (fma.f64 re (*.f64 re -1/4) 1/2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (*.f64 (*.f64 1/2 (fma.f64 im im 2)) 1) (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) 1))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)))) 1)
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (fma.f64 im im 2)) 3) (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) 3)) (fma.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)) (-.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (*.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))))))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 (fma.f64 im im 2) 3)) (pow.f64 (*.f64 (*.f64 -1/4 (fma.f64 im im 2)) (*.f64 re re)) 3)) (+.f64 (*.f64 1/4 (*.f64 (fma.f64 im im 2) (fma.f64 im im 2))) (*.f64 (*.f64 (*.f64 -1/4 (fma.f64 im im 2)) (*.f64 re re)) (-.f64 (*.f64 (*.f64 -1/4 (fma.f64 im im 2)) (*.f64 re re)) (*.f64 1/2 (fma.f64 im im 2))))))
(/.f64 (fma.f64 1/8 (pow.f64 (fma.f64 im im 2) 3) (*.f64 -1/64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 re re)) 3))) (fma.f64 1/4 (*.f64 (fma.f64 im im 2) (fma.f64 im im 2)) (*.f64 -1/4 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 re re)) (*.f64 (fma.f64 im im 2) (-.f64 (*.f64 re (*.f64 re -1/4)) 1/2))))))
(/.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (fma.f64 (pow.f64 re 6) -1/64 1/8)) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) -1/2))) (*.f64 1/4 (fma.f64 im im 2)))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))) (-.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))))
(/.f64 (-.f64 (*.f64 1/4 (*.f64 (fma.f64 im im 2) (fma.f64 im im 2))) (*.f64 (*.f64 (*.f64 -1/4 (fma.f64 im im 2)) (*.f64 re re)) (*.f64 (*.f64 -1/4 (fma.f64 im im 2)) (*.f64 re re)))) (-.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (*.f64 -1/4 (fma.f64 im im 2)) (*.f64 re re))))
(/.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) (/.f64 (*.f64 (fma.f64 im im 2) (-.f64 1/2 (*.f64 re (*.f64 re -1/4)))) (*.f64 (fma.f64 im im 2) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))))
(/.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) 1)
(/.f64 (*.f64 (fma.f64 im im 2) (fma.f64 (pow.f64 (*.f64 re re) 3) -1/64 1/8)) (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))
(/.f64 (fma.f64 im im 2) (/.f64 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4) (fma.f64 (pow.f64 re 6) -1/64 1/8)))
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (/.f64 (fma.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4) (fma.f64 im im 2)))
(*.f64 (/.f64 (fma.f64 im im 2) (fma.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 re (*.f64 re -1/4) -1/2) 1/4)) (fma.f64 (pow.f64 re 6) -1/64 1/8))
(/.f64 (*.f64 (fma.f64 im im 2) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))) (fma.f64 im im 2)))
(*.f64 (/.f64 (fma.f64 im im 2) (fma.f64 1/4 (*.f64 re re) 1/2)) (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)) (/.f64 (fma.f64 1/4 (*.f64 re re) 1/2) (fma.f64 im im 2)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 re re) 3) -1/64 1/8) (fma.f64 im im 2)) (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4))
(/.f64 (fma.f64 im im 2) (/.f64 (fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4) (fma.f64 (pow.f64 re 6) -1/64 1/8)))
(/.f64 (fma.f64 (pow.f64 re 6) -1/64 1/8) (/.f64 (fma.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 -1/4 (*.f64 re re) -1/2) 1/4) (fma.f64 im im 2)))
(*.f64 (/.f64 (fma.f64 im im 2) (fma.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 re (*.f64 re -1/4) -1/2) 1/4)) (fma.f64 (pow.f64 re 6) -1/64 1/8))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (fma.f64 im im 2)) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 (+.f64 1/2 (*.f64 1/4 (*.f64 re re))) (fma.f64 im im 2)))
(*.f64 (/.f64 (fma.f64 im im 2) (fma.f64 1/4 (*.f64 re re) 1/2)) (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)))
(/.f64 (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)) (/.f64 (fma.f64 1/4 (*.f64 re re) 1/2) (fma.f64 im im 2)))
(pow.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) 1)
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))) 3)
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(pow.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) 3) 1/3)
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))) 2)
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) 2))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (fma.f64 re (*.f64 re -1/4) 1/2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(log.f64 (*.f64 (exp.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (exp.f64 (*.f64 1/2 (fma.f64 im im 2)))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2)) 3))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 3)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 3) (pow.f64 (fma.f64 im im 2) 3)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(exp.f64 (log.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))) 1))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (fma.f64 im im 2) 1/2 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 -1/4 (*.f64 re re)) (fma.f64 im im 2) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (*.f64 im im) (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 2))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 1 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 1 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 (fma.f64 im im 2) (cbrt.f64 (*.f64 -1/4 (*.f64 re re)))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 (fma.f64 im im 2) (cbrt.f64 (*.f64 re (*.f64 re -1/4)))) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) (cbrt.f64 (*.f64 re (*.f64 re -1/4))))))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (cbrt.f64 (fma.f64 im im 2)) (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (cbrt.f64 (fma.f64 im im 2)) 1/2) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 im im) (fma.f64 re (*.f64 re -1/4) 1/2) (*.f64 2 (fma.f64 re (*.f64 re -1/4) 1/2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 re (sqrt.f64 -1/4)) (*.f64 (*.f64 re (sqrt.f64 -1/4)) (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) 1/2) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 1/2 (fma.f64 im im 2)) 1 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))) 1))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 re -1/4) (*.f64 re (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (fma.f64 im im 2))) (cbrt.f64 (*.f64 1/2 (fma.f64 im im 2)))) (cbrt.f64 (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (cbrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))) (cbrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 im im 2))) (sqrt.f64 (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (sqrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (sqrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re)))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 re (sqrt.f64 -1/4))) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 re (sqrt.f64 -1/4))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 (*.f64 re (sqrt.f64 -1/4)) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (*.f64 re (sqrt.f64 -1/4)) (sqrt.f64 (fma.f64 im im 2))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 (fma.f64 im im 2) -1/4) (*.f64 re re) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 (fma.f64 im im 2) (*.f64 re re)) -1/4 (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 (fma.f64 im im 2) (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16))) (cbrt.f64 (*.f64 -1/4 (*.f64 re re))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 (fma.f64 im im 2) (cbrt.f64 (*.f64 -1/4 (*.f64 re re)))) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 (fma.f64 im im 2) (cbrt.f64 (*.f64 re (*.f64 re -1/4)))) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 (cbrt.f64 (*.f64 (pow.f64 re 4) 1/16)) (cbrt.f64 (*.f64 re (*.f64 re -1/4))))))
(fma.f64 (*.f64 (fma.f64 im im 2) (*.f64 re (sqrt.f64 -1/4))) (*.f64 re (sqrt.f64 -1/4)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 (fma.f64 im im 2) (*.f64 re -1/4)) re (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 1/2 (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 re re))))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))
(fma.f64 (*.f64 (*.f64 -1/4 (*.f64 re re)) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))
(*.f64 (fma.f64 im im 2) (fma.f64 re (*.f64 re -1/4) 1/2))

eval79.0ms (0.9%)

Compiler

Compiled 4115 to 2643 computations (35.8% saved)

prune65.0ms (0.8%)

Pruning

23 alts after pruning (17 fresh and 6 done)

PrunedKeptTotal
New2387245
Fresh21012
Picked415
Done055
Total24423267
Accurracy
100.0%
Counts
267 → 23
Alt Table
Click to see full alt table
StatusAccuracyProgram
5.0%
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2)
40.3%
(/.f64 (*.f64 (fma.f64 im im 2) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))
27.6%
(+.f64 1 (*.f64 re (*.f64 re -1/2)))
45.3%
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
43.0%
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
40.4%
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
9.4%
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
21.2%
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
88.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
52.2%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) 1/2985984)))
75.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
71.7%
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
35.5%
(*.f64 (cos.f64 re) 5159780353/5159780352)
65.2%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
6.0%
(*.f64 1/2 262144)
8.8%
(*.f64 1/2 3/2)
7.9%
(*.f64 1/2 1/2)
7.5%
(*.f64 1/2 1/4)
3.9%
(*.f64 1/2 -1)
51.0%
(cos.f64 re)
26.7%
1
4.2%
-1
5.0%
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2)
40.3%
(/.f64 (*.f64 (fma.f64 im im 2) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))
27.6%
(+.f64 1 (*.f64 re (*.f64 re -1/2)))
45.3%
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
43.0%
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
40.4%
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
9.4%
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
21.2%
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
88.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
52.2%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) 1/2985984)))
75.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
71.7%
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
35.5%
(*.f64 (cos.f64 re) 5159780353/5159780352)
65.2%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
6.0%
(*.f64 1/2 262144)
8.8%
(*.f64 1/2 3/2)
7.9%
(*.f64 1/2 1/2)
7.5%
(*.f64 1/2 1/4)
3.9%
(*.f64 1/2 -1)
51.0%
(cos.f64 re)
26.7%
1
4.2%
-1
Compiler

Compiled 704 to 570 computations (19% saved)

localize144.0ms (1.7%)

Local Accuracy

Found 4 expressions with local accuracy:

NewAccuracyProgram
88.3%
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
86.0%
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
100.0%
(+.f64 (*.f64 1/2 (exp.f64 im)) 1/2)
100.0%
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
Compiler

Compiled 99 to 55 computations (44.4% saved)

series6.0ms (0.1%)

Counts
4 → 84
Calls

21 calls:

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

rewrite99.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
1416×prod-diff
822×expm1-udef
478×add-sqr-sqrt
464×pow1
464×*-un-lft-identity
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02294
147390
2610890
Stop Event
node limit
Counts
4 → 105
Calls
Call 1
Inputs
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
(+.f64 (*.f64 1/2 (exp.f64 im)) 1/2)
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
Outputs
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 (cos.f64 re) 1/2))
(+.f64 (*.f64 (cos.f64 re) 1/2) (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))))
(+.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) 1) (*.f64 (*.f64 (cos.f64 re) 1/2) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) 3) (pow.f64 (*.f64 (cos.f64 re) 1/2) 3)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re)))) (-.f64 (*.f64 (*.f64 (cos.f64 re) 1/2) (*.f64 (cos.f64 re) 1/2)) (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 (cos.f64 re) 1/2)))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re)))) (*.f64 (*.f64 (cos.f64 re) 1/2) (*.f64 (cos.f64 re) 1/2))) (-.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 (cos.f64 re) 1/2)))
(/.f64 (*.f64 (cos.f64 re) (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8)) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))))
(/.f64 (*.f64 (cos.f64 re) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4)) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (cos.f64 re)) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))))
(/.f64 (*.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4) (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) -1/2))
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 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 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3) (pow.f64 (cos.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(fma.f64 (cos.f64 re) (*.f64 1/2 (exp.f64 im)) (*.f64 (cos.f64 re) 1/2))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (cos.f64 re) (*.f64 (cos.f64 re) 1/2))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) 1)
(-.f64 (/.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/2 (exp.f64 im) -1/2)) (/.f64 1/4 (fma.f64 1/2 (exp.f64 im) -1/2)))
(*.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)) (cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 2)))
(*.f64 (cbrt.f64 (pow.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 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (/.f64 1 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4)))))
(*.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4) (/.f64 1 (fma.f64 1/2 (exp.f64 im) -1/2)))
(*.f64 (+.f64 (exp.f64 im) 1) 1/2)
(/.f64 1 (/.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))) (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8)))
(/.f64 1 (/.f64 (fma.f64 1/2 (exp.f64 im) -1/2) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4)))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (+.f64 1/4 (-.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 im) 1/4))))
(/.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8)) (neg.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4)))))
(/.f64 (neg.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4)) (neg.f64 (fma.f64 1/2 (exp.f64 im) -1/2)))
(/.f64 (-.f64 1/4 (*.f64 1/4 (exp.f64 (+.f64 im im)))) (-.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(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)))
(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))
(log1p.f64 (expm1.f64 (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 (*.f64 1/2 (exp.f64 im)) 1/2)
(fma.f64 (cbrt.f64 (*.f64 1/4 (exp.f64 (+.f64 im im)))) (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 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))
(+.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 1/2 (*.f64 im im)))
(+.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) 1) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 im im)) 3) (pow.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) 3)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))) (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
(/.f64 (*.f64 (*.f64 im im) (+.f64 (*.f64 (pow.f64 (*.f64 re re) 3) -1/64) 1/8)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 re 4) 1/16) (*.f64 -1/8 (*.f64 re re)))))
(/.f64 (*.f64 (*.f64 im im) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 re re) 3) -1/64) 1/8) (*.f64 im im)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 re 4) 1/16) (*.f64 -1/8 (*.f64 re re)))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 im im)) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))
(pow.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 2)
(sqrt.f64 (*.f64 (pow.f64 im 4) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)))
(log.f64 (pow.f64 (exp.f64 (*.f64 im im)) (fma.f64 -1/4 (*.f64 re re) 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im im) 3) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) (pow.f64 (*.f64 im im) 3)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))))
(exp.f64 (log.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))))
(fma.f64 1/2 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))
(fma.f64 (*.f64 im im) 1/2 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))
(+.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 (*.f64 re (*.f64 re -1/4)) 2))
(+.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 2 (*.f64 re (*.f64 re -1/4))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)))) 1)
(pow.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))) 3)
(pow.f64 (pow.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)) 3) 1/3)
(pow.f64 (*.f64 re (sqrt.f64 (*.f64 -1/4 (fma.f64 im im 2)))) 2)
(sqrt.f64 (pow.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)) 2))
(log.f64 (exp.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 re re) 3) (pow.f64 (*.f64 -1/4 (fma.f64 im im 2)) 3)))
(cbrt.f64 (*.f64 (*.f64 (pow.f64 (*.f64 re re) 3) -1/64) (pow.f64 (fma.f64 im im 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 -1/4 (fma.f64 im im 2)) 3) (pow.f64 (*.f64 re re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))))
(exp.f64 (log.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))))

simplify90.0ms (1.1%)

Algorithm
egg-herbie
Rules
1424×times-frac
734×associate-*r*
656×associate-*l*
632×log-prod
544×cancel-sign-sub-inv
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03355741
19495549
238575293
Stop Event
node limit
Counts
189 → 197
Calls
Call 1
Inputs
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2)))))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 4))) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2))))))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 -1/720 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 6))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 4))) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2)))))))
(*.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 (cos.f64 re) im)))
(+.f64 (*.f64 1/4 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (cos.f64 re) im))))
(+.f64 (*.f64 1/4 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (+.f64 (*.f64 1/12 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/2 (*.f64 (cos.f64 re) 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 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im)))
(+.f64 1 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (+.f64 (*.f64 1/2 im) (*.f64 1/12 (pow.f64 im 3)))))
(+.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)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/2 (pow.f64 re 2))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 (cos.f64 re) 1/2))
(+.f64 (*.f64 (cos.f64 re) 1/2) (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))))
(+.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) 1) (*.f64 (*.f64 (cos.f64 re) 1/2) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) 3) (pow.f64 (*.f64 (cos.f64 re) 1/2) 3)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re)))) (-.f64 (*.f64 (*.f64 (cos.f64 re) 1/2) (*.f64 (cos.f64 re) 1/2)) (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 (cos.f64 re) 1/2)))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re)))) (*.f64 (*.f64 (cos.f64 re) 1/2) (*.f64 (cos.f64 re) 1/2))) (-.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 (cos.f64 re) 1/2)))
(/.f64 (*.f64 (cos.f64 re) (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8)) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))))
(/.f64 (*.f64 (cos.f64 re) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4)) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (cos.f64 re)) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))))
(/.f64 (*.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4) (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) -1/2))
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 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 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 3) (pow.f64 (cos.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(fma.f64 (cos.f64 re) (*.f64 1/2 (exp.f64 im)) (*.f64 (cos.f64 re) 1/2))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (cos.f64 re) (*.f64 (cos.f64 re) 1/2))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 1/2))) 1)
(-.f64 (/.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/2 (exp.f64 im) -1/2)) (/.f64 1/4 (fma.f64 1/2 (exp.f64 im) -1/2)))
(*.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)) (cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 2)))
(*.f64 (cbrt.f64 (pow.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 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (/.f64 1 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4)))))
(*.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4) (/.f64 1 (fma.f64 1/2 (exp.f64 im) -1/2)))
(*.f64 (+.f64 (exp.f64 im) 1) 1/2)
(/.f64 1 (/.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))) (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8)))
(/.f64 1 (/.f64 (fma.f64 1/2 (exp.f64 im) -1/2) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4)))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (+.f64 1/4 (-.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 im) 1/4))))
(/.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8)) (neg.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4)))))
(/.f64 (neg.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4)) (neg.f64 (fma.f64 1/2 (exp.f64 im) -1/2)))
(/.f64 (-.f64 1/4 (*.f64 1/4 (exp.f64 (+.f64 im im)))) (-.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(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)))
(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))
(log1p.f64 (expm1.f64 (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 (*.f64 1/2 (exp.f64 im)) 1/2)
(fma.f64 (cbrt.f64 (*.f64 1/4 (exp.f64 (+.f64 im im)))) (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 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))
(+.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 1/2 (*.f64 im im)))
(+.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) 1) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 im im)) 3) (pow.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) 3)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))) (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
(/.f64 (*.f64 (*.f64 im im) (+.f64 (*.f64 (pow.f64 (*.f64 re re) 3) -1/64) 1/8)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 re 4) 1/16) (*.f64 -1/8 (*.f64 re re)))))
(/.f64 (*.f64 (*.f64 im im) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 re re) 3) -1/64) 1/8) (*.f64 im im)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 re 4) 1/16) (*.f64 -1/8 (*.f64 re re)))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 im im)) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))
(pow.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 2)
(sqrt.f64 (*.f64 (pow.f64 im 4) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)))
(log.f64 (pow.f64 (exp.f64 (*.f64 im im)) (fma.f64 -1/4 (*.f64 re re) 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im im) 3) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) (pow.f64 (*.f64 im im) 3)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))))
(exp.f64 (log.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))))
(fma.f64 1/2 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))
(fma.f64 (*.f64 im im) 1/2 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))
(+.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 (*.f64 re (*.f64 re -1/4)) 2))
(+.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 2 (*.f64 re (*.f64 re -1/4))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)))) 1)
(pow.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))) 3)
(pow.f64 (pow.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)) 3) 1/3)
(pow.f64 (*.f64 re (sqrt.f64 (*.f64 -1/4 (fma.f64 im im 2)))) 2)
(sqrt.f64 (pow.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)) 2))
(log.f64 (exp.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 re re) 3) (pow.f64 (*.f64 -1/4 (fma.f64 im im 2)) 3)))
(cbrt.f64 (*.f64 (*.f64 (pow.f64 (*.f64 re re) 3) -1/64) (pow.f64 (fma.f64 im im 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 -1/4 (fma.f64 im im 2)) 3) (pow.f64 (*.f64 re re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))))
(exp.f64 (log.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))))
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 (exp.f64 im)) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2)))))
(+.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (*.f64 -1/2 (*.f64 (*.f64 re re) (fma.f64 1/2 (exp.f64 im) 1/2))))
(+.f64 1/2 (fma.f64 1/2 (exp.f64 im) (*.f64 -1/2 (*.f64 re (*.f64 re (fma.f64 1/2 (exp.f64 im) 1/2))))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (+.f64 (*.f64 -1/2 (*.f64 re re)) 1))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 4))) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2))))))
(+.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (fma.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/2 (exp.f64 im) 1/2)) (*.f64 -1/2 (*.f64 (*.f64 re re) (fma.f64 1/2 (exp.f64 im) 1/2)))))
(+.f64 1/2 (fma.f64 1/2 (exp.f64 im) (fma.f64 -1/2 (*.f64 re (*.f64 re (fma.f64 1/2 (exp.f64 im) 1/2))) (*.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/2 (exp.f64 im) 1/2))))))
(+.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (+.f64 (*.f64 -1/2 (*.f64 re re)) (*.f64 (pow.f64 re 4) 1/24))) (fma.f64 1/2 (exp.f64 im) 1/2))
(+.f64 1/2 (+.f64 (*.f64 1/2 (exp.f64 im)) (+.f64 (*.f64 -1/720 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 6))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 4))) (*.f64 -1/2 (*.f64 (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (pow.f64 re 2)))))))
(+.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (fma.f64 -1/720 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (pow.f64 re 6)) (fma.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/2 (exp.f64 im) 1/2)) (*.f64 -1/2 (*.f64 (*.f64 re re) (fma.f64 1/2 (exp.f64 im) 1/2))))))
(+.f64 1/2 (fma.f64 1/2 (exp.f64 im) (fma.f64 -1/720 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (pow.f64 re 6)) (fma.f64 -1/2 (*.f64 re (*.f64 re (fma.f64 1/2 (exp.f64 im) 1/2))) (*.f64 1/24 (*.f64 (pow.f64 re 4) (fma.f64 1/2 (exp.f64 im) 1/2)))))))
(+.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (+.f64 1 (*.f64 (pow.f64 re 6) -1/720))) (*.f64 (fma.f64 1/2 (exp.f64 im) 1/2) (+.f64 (*.f64 -1/2 (*.f64 re re)) (*.f64 (pow.f64 re 4) 1/24))))
(*.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))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (cos.f64 re) im)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re))))
(fma.f64 1/2 (*.f64 im (cos.f64 re)) (cos.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 (cos.f64 re) im))))
(fma.f64 1/4 (*.f64 (cos.f64 re) (*.f64 im im)) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im (cos.f64 re)))))
(fma.f64 1/4 (*.f64 (cos.f64 re) (*.f64 im im)) (fma.f64 1/2 (*.f64 im (cos.f64 re)) (cos.f64 re)))
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))
(+.f64 (*.f64 1/4 (*.f64 (cos.f64 re) (pow.f64 im 2))) (+.f64 (cos.f64 re) (+.f64 (*.f64 1/12 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/2 (*.f64 (cos.f64 re) im)))))
(fma.f64 1/4 (*.f64 (cos.f64 re) (*.f64 im im)) (+.f64 (cos.f64 re) (fma.f64 1/12 (*.f64 (cos.f64 re) (pow.f64 im 3)) (*.f64 1/2 (*.f64 im (cos.f64 re))))))
(+.f64 (fma.f64 1/2 (*.f64 im (cos.f64 re)) (*.f64 1/12 (*.f64 (cos.f64 re) (pow.f64 im 3)))) (fma.f64 1/4 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re)))
(+.f64 (*.f64 (cos.f64 re) (fma.f64 1/12 (pow.f64 im 3) (*.f64 1/2 im))) (fma.f64 (*.f64 (cos.f64 re) 1/4) (*.f64 im im) (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))
1
(+.f64 1 (*.f64 1/2 im))
(fma.f64 1/2 im 1)
(+.f64 1 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im)))
(+.f64 1 (fma.f64 1/4 (*.f64 im im) (*.f64 1/2 im)))
(+.f64 1 (fma.f64 1/2 im (*.f64 1/4 (*.f64 im im))))
(+.f64 1 (*.f64 im (+.f64 1/2 (*.f64 im 1/4))))
(+.f64 1 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (+.f64 (*.f64 1/2 im) (*.f64 1/12 (pow.f64 im 3)))))
(+.f64 1 (fma.f64 1/4 (*.f64 im im) (fma.f64 1/2 im (*.f64 1/12 (pow.f64 im 3)))))
(+.f64 1 (fma.f64 1/4 (*.f64 im im) (fma.f64 1/12 (pow.f64 im 3) (*.f64 1/2 im))))
(+.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)
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 (*.f64 1/2 im) im)
(*.f64 1/2 (*.f64 im im))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
(*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
(*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 2)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/2 (pow.f64 re 2))
(*.f64 -1/2 (*.f64 re re))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
(*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
(*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 (cos.f64 re) 1/2))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(+.f64 (*.f64 (cos.f64 re) 1/2) (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(+.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) 1) (*.f64 (*.f64 (cos.f64 re) 1/2) 1))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)))) 1)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) 3) (pow.f64 (*.f64 (cos.f64 re) 1/2) 3)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re)))) (-.f64 (*.f64 (*.f64 (cos.f64 re) 1/2) (*.f64 (cos.f64 re) 1/2)) (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 (cos.f64 re) 1/2)))))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 (*.f64 (exp.f64 im) (cos.f64 re)) 3)) (*.f64 (pow.f64 (cos.f64 re) 3) 1/8)) (+.f64 (*.f64 1/4 (*.f64 (*.f64 (exp.f64 im) (cos.f64 re)) (*.f64 (exp.f64 im) (cos.f64 re)))) (*.f64 (*.f64 1/2 (cos.f64 re)) (-.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re)))))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (exp.f64 im) (cos.f64 re)) 3) (*.f64 1/8 (pow.f64 (cos.f64 re) 3))) (fma.f64 1/4 (*.f64 (pow.f64 (exp.f64 2) im) (*.f64 (cos.f64 re) (cos.f64 re))) (*.f64 1/2 (*.f64 (cos.f64 re) (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 (exp.f64 im) -1/2)))))))
(/.f64 (*.f64 1/8 (+.f64 (pow.f64 (*.f64 (exp.f64 im) (cos.f64 re)) 3) (pow.f64 (cos.f64 re) 3))) (+.f64 (*.f64 (cos.f64 re) (*.f64 (cos.f64 re) 1/4)) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (cos.f64 re))) (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) -1/2)))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re)))) (*.f64 (*.f64 (cos.f64 re) 1/2) (*.f64 (cos.f64 re) 1/2))) (-.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 (cos.f64 re) 1/2)))
(/.f64 (*.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) (-.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 1/2 (cos.f64 re)))) (-.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 1/2 (cos.f64 re))))
(/.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) (/.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 1/2 (exp.f64 im)) 1/2)) (*.f64 (cos.f64 re) (-.f64 (*.f64 1/2 (exp.f64 im)) 1/2))))
(/.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 1)
(/.f64 (*.f64 (cos.f64 re) (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8)) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))))
(/.f64 (cos.f64 re) (/.f64 (fma.f64 1/4 (exp.f64 (+.f64 im im)) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8)))
(/.f64 (cos.f64 re) (/.f64 (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 2) im) (exp.f64 im)))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8)))
(*.f64 (/.f64 (cos.f64 re) (+.f64 1/4 (*.f64 (exp.f64 im) (fma.f64 (exp.f64 im) 1/4 -1/4)))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8))
(/.f64 (*.f64 (cos.f64 re) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4)) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (cos.f64 re) (/.f64 (fma.f64 1/2 (exp.f64 im) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4)))
(*.f64 (/.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) -1/2)) (fma.f64 1/4 (pow.f64 (exp.f64 2) im) -1/4))
(*.f64 (/.f64 (fma.f64 -1/4 (pow.f64 (exp.f64 im) 2) 1/4) (fma.f64 (exp.f64 im) -1/2 1/2)) (cos.f64 re))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (cos.f64 re)) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))))
(/.f64 (cos.f64 re) (/.f64 (fma.f64 1/4 (exp.f64 (+.f64 im im)) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8)))
(/.f64 (cos.f64 re) (/.f64 (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 2) im) (exp.f64 im)))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8)))
(*.f64 (/.f64 (cos.f64 re) (+.f64 1/4 (*.f64 (exp.f64 im) (fma.f64 (exp.f64 im) 1/4 -1/4)))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8))
(/.f64 (*.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4) (cos.f64 re)) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (cos.f64 re) (/.f64 (fma.f64 1/2 (exp.f64 im) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4)))
(*.f64 (/.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) -1/2)) (fma.f64 1/4 (pow.f64 (exp.f64 2) im) -1/4))
(*.f64 (/.f64 (fma.f64 -1/4 (pow.f64 (exp.f64 im) 2) 1/4) (fma.f64 (exp.f64 im) -1/2 1/2)) (cos.f64 re))
(pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 1)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 3)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(pow.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 3) 1/3)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 2)
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 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 (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))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2)) 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))
(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))
(expm1.f64 (log1p.f64 (*.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))
(exp.f64 (log.f64 (*.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))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))) 1))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(log1p.f64 (expm1.f64 (*.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))
(fma.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))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (cos.f64 re) (*.f64 (cos.f64 re) 1/2))
(*.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)
(fma.f64 1/2 (exp.f64 im) 1/2)
(-.f64 (/.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/2 (exp.f64 im) -1/2)) (/.f64 1/4 (fma.f64 1/2 (exp.f64 im) -1/2)))
(+.f64 (*.f64 (/.f64 1/4 (fma.f64 1/2 (exp.f64 im) -1/2)) (pow.f64 (exp.f64 2) im)) (/.f64 -1/4 (fma.f64 1/2 (exp.f64 im) -1/2)))
(fma.f64 (/.f64 1/4 (fma.f64 1/2 (exp.f64 im) -1/2)) (pow.f64 (exp.f64 im) 2) (/.f64 -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)) (cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 2)) (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(*.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 1/2)) (cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 1/2) 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 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (/.f64 1 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4)))))
(*.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (/.f64 1 (fma.f64 1/4 (exp.f64 (+.f64 im im)) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 2) im) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (+.f64 1/4 (*.f64 (exp.f64 im) (fma.f64 (exp.f64 im) 1/4 -1/4))))
(*.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4) (/.f64 1 (fma.f64 1/2 (exp.f64 im) -1/2)))
(*.f64 (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4) (/.f64 1 (fma.f64 1/2 (exp.f64 im) -1/2)))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 2) im) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (fma.f64 -1/4 (pow.f64 (exp.f64 im) 2) 1/4) (fma.f64 (exp.f64 im) -1/2 1/2))
(*.f64 (+.f64 (exp.f64 im) 1) 1/2)
(fma.f64 1/2 (exp.f64 im) 1/2)
(/.f64 1 (/.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))) (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8)))
(*.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (/.f64 1 (fma.f64 1/4 (exp.f64 (+.f64 im im)) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 2) im) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (+.f64 1/4 (*.f64 (exp.f64 im) (fma.f64 (exp.f64 im) 1/4 -1/4))))
(/.f64 1 (/.f64 (fma.f64 1/2 (exp.f64 im) -1/2) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4)))
(*.f64 (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4) (/.f64 1 (fma.f64 1/2 (exp.f64 im) -1/2)))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 2) im) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (fma.f64 -1/4 (pow.f64 (exp.f64 im) 2) 1/4) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4))))
(*.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (/.f64 1 (fma.f64 1/4 (exp.f64 (+.f64 im im)) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 2) im) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (+.f64 1/4 (*.f64 (exp.f64 im) (fma.f64 (exp.f64 im) 1/4 -1/4))))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8) (+.f64 1/4 (-.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 im) 1/4))))
(*.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (/.f64 1 (fma.f64 1/4 (exp.f64 (+.f64 im im)) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 2) im) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (+.f64 1/4 (*.f64 (exp.f64 im) (fma.f64 (exp.f64 im) 1/4 -1/4))))
(/.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(*.f64 (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4) (/.f64 1 (fma.f64 1/2 (exp.f64 im) -1/2)))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 2) im) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (fma.f64 -1/4 (pow.f64 (exp.f64 im) 2) 1/4) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 (exp.f64 im) 3)) 1/8)) (neg.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4)))))
(*.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (/.f64 1 (fma.f64 1/4 (exp.f64 (+.f64 im im)) (-.f64 1/4 (*.f64 (exp.f64 im) 1/4)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (+.f64 1/4 (*.f64 1/4 (-.f64 (pow.f64 (exp.f64 2) im) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) 1/8) (+.f64 1/4 (*.f64 (exp.f64 im) (fma.f64 (exp.f64 im) 1/4 -1/4))))
(/.f64 (neg.f64 (+.f64 (*.f64 1/4 (exp.f64 (+.f64 im im))) -1/4)) (neg.f64 (fma.f64 1/2 (exp.f64 im) -1/2)))
(*.f64 (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4) (/.f64 1 (fma.f64 1/2 (exp.f64 im) -1/2)))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 2) im) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (fma.f64 -1/4 (pow.f64 (exp.f64 im) 2) 1/4) (fma.f64 (exp.f64 im) -1/2 1/2))
(/.f64 (-.f64 1/4 (*.f64 1/4 (exp.f64 (+.f64 im im)))) (-.f64 1/2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4) (/.f64 1 (fma.f64 1/2 (exp.f64 im) -1/2)))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 2) im) -1/4) (fma.f64 1/2 (exp.f64 im) -1/2))
(/.f64 (fma.f64 -1/4 (pow.f64 (exp.f64 im) 2) 1/4) (fma.f64 (exp.f64 im) -1/2 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)))
(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)
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 1/2)))
(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 (cbrt.f64 (*.f64 1/4 (exp.f64 (+.f64 im im)))) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(fma.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (exp.f64 2) im))) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 1/2)
(fma.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (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)
(fma.f64 1/2 (exp.f64 im) 1/2)
(+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(+.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(+.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) 1) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) 1))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)))) 1)
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 im im)) 3) (pow.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) 3)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))) (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 1/2 im) im) 3) (pow.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)) (-.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)) (*.f64 (*.f64 1/2 im) im)))))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 im 6) (*.f64 (pow.f64 re 6) -1/64))) (fma.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 (*.f64 im im) (-.f64 (*.f64 re (*.f64 re -1/4)) 1/2)) (*.f64 1/4 (pow.f64 im 4))))
(/.f64 (*.f64 (pow.f64 im 6) (fma.f64 (pow.f64 re 6) -1/64 1/8)) (+.f64 (*.f64 (pow.f64 im 4) (+.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (*.f64 1/2 (*.f64 (pow.f64 im 4) (*.f64 re (*.f64 re 1/4))))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)))) (-.f64 (*.f64 (*.f64 1/2 im) im) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (pow.f64 im 4) (*.f64 (*.f64 re (*.f64 re -1/4)) (*.f64 re (*.f64 re -1/4))))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))))
(/.f64 (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) 1)
(/.f64 (*.f64 (*.f64 im im) (+.f64 (*.f64 (pow.f64 (*.f64 re re) 3) -1/64) 1/8)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 re 4) 1/16) (*.f64 -1/8 (*.f64 re re)))))
(/.f64 (*.f64 (*.f64 im im) (fma.f64 (pow.f64 re 6) -1/64 1/8)) (+.f64 1/4 (fma.f64 (pow.f64 re 4) 1/16 (neg.f64 (*.f64 (*.f64 re re) -1/8)))))
(/.f64 (*.f64 (*.f64 im im) (fma.f64 (pow.f64 re 6) -1/64 1/8)) (+.f64 1/4 (fma.f64 (pow.f64 re 4) 1/16 (*.f64 (*.f64 re re) 1/8))))
(*.f64 (/.f64 (*.f64 im im) (+.f64 1/4 (fma.f64 (pow.f64 re 4) 1/16 (*.f64 re (*.f64 re 1/8))))) (fma.f64 (pow.f64 re 6) -1/64 1/8))
(/.f64 (*.f64 (*.f64 im im) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 (-.f64 1/2 (*.f64 (*.f64 re re) -1/4)) (*.f64 im im)))
(*.f64 (/.f64 (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))) (*.f64 im im))
(*.f64 (/.f64 (*.f64 im im) (+.f64 1/2 (*.f64 re (*.f64 re 1/4)))) (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 re re) 3) -1/64) 1/8) (*.f64 im im)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 re 4) 1/16) (*.f64 -1/8 (*.f64 re re)))))
(/.f64 (*.f64 (*.f64 im im) (fma.f64 (pow.f64 re 6) -1/64 1/8)) (+.f64 1/4 (fma.f64 (pow.f64 re 4) 1/16 (neg.f64 (*.f64 (*.f64 re re) -1/8)))))
(/.f64 (*.f64 (*.f64 im im) (fma.f64 (pow.f64 re 6) -1/64 1/8)) (+.f64 1/4 (fma.f64 (pow.f64 re 4) 1/16 (*.f64 (*.f64 re re) 1/8))))
(*.f64 (/.f64 (*.f64 im im) (+.f64 1/4 (fma.f64 (pow.f64 re 4) 1/16 (*.f64 re (*.f64 re 1/8))))) (fma.f64 (pow.f64 re 6) -1/64 1/8))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 im im)) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 (-.f64 1/2 (*.f64 (*.f64 re re) -1/4)) (*.f64 im im)))
(*.f64 (/.f64 (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))) (*.f64 im im))
(*.f64 (/.f64 (*.f64 im im) (+.f64 1/2 (*.f64 re (*.f64 re 1/4)))) (+.f64 1/4 (*.f64 (pow.f64 re 4) -1/16)))
(pow.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)) 1)
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))) 3)
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(pow.f64 (pow.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)) 3) 1/3)
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/4 (*.f64 re re) 1/2))) 2)
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(sqrt.f64 (*.f64 (pow.f64 im 4) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2)))
(sqrt.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 2) (pow.f64 im 4)))
(sqrt.f64 (pow.f64 (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) 2))
(fabs.f64 (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))))
(log.f64 (pow.f64 (exp.f64 (*.f64 im im)) (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2)) 3))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im im) 3) (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3)))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) 3) (pow.f64 (*.f64 im im) 3)))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(exp.f64 (log.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))) 1))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 im im) (fma.f64 -1/4 (*.f64 re re) 1/2))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(fma.f64 1/2 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(fma.f64 (*.f64 im im) 1/2 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) 1/2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(+.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 (*.f64 re (*.f64 re -1/4)) 2))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(+.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 2 (*.f64 re (*.f64 re -1/4))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)))) 1)
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(pow.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)) 1)
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))) 3)
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(pow.f64 (pow.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)) 3) 1/3)
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(pow.f64 (*.f64 re (sqrt.f64 (*.f64 -1/4 (fma.f64 im im 2)))) 2)
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(sqrt.f64 (pow.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)) 2))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(log.f64 (exp.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2)) 3))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 re re) 3) (pow.f64 (*.f64 -1/4 (fma.f64 im im 2)) 3)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(cbrt.f64 (*.f64 (*.f64 (pow.f64 (*.f64 re re) 3) -1/64) (pow.f64 (fma.f64 im im 2) 3)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 -1/4 (fma.f64 im im 2)) 3) (pow.f64 (*.f64 re re) 3)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(exp.f64 (log.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))) 1))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 re (*.f64 re -1/4)) (fma.f64 im im 2))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 re (*.f64 re (*.f64 -1/4 (fma.f64 im im 2))))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))

eval70.0ms (0.8%)

Compiler

Compiled 3380 to 2048 computations (39.4% saved)

prune57.0ms (0.7%)

Pruning

31 alts after pruning (22 fresh and 9 done)

PrunedKeptTotal
New18611197
Fresh11112
Picked235
Done066
Total18931220
Accurracy
100.0%
Counts
220 → 31
Alt Table
Click to see full alt table
StatusAccuracyProgram
5.0%
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2)
6.8%
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
1.6%
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (pow.f64 im 4) (*.f64 (*.f64 re (*.f64 re -1/4)) (*.f64 re (*.f64 re -1/4))))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))))
6.7%
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)))) (-.f64 (*.f64 (*.f64 1/2 im) im) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4))))
17.8%
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 (-.f64 1/2 (*.f64 (*.f64 re re) -1/4)) (*.f64 im im)))
3.6%
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 im im)) 3) (pow.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) 3)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))) (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))))
18.6%
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 im im)) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))
16.4%
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 re re) 3) -1/64) 1/8) (*.f64 im im)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 re 4) 1/16) (*.f64 -1/8 (*.f64 re re)))))
27.6%
(+.f64 1 (*.f64 re (*.f64 re -1/2)))
45.3%
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
43.0%
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
40.4%
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
9.4%
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
88.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
52.2%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) 1/2985984)))
75.1%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
21.8%
(*.f64 (*.f64 1/2 im) im)
71.7%
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
35.5%
(*.f64 (cos.f64 re) 5159780353/5159780352)
9.6%
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
65.2%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
6.0%
(*.f64 1/2 262144)
8.8%
(*.f64 1/2 3/2)
7.9%
(*.f64 1/2 1/2)
7.5%
(*.f64 1/2 1/4)
3.9%
(*.f64 1/2 -1)
5.1%
(*.f64 -1/2 (*.f64 re re))
51.0%
(cos.f64 re)
26.7%
1
4.2%
-1
Compiler

Compiled 971 to 630 computations (35.1% saved)

regimes107.0ms (1.3%)

Counts
42 → 1
Calls
Call 1
Inputs
-1
1
(*.f64 1/2 -2)
(*.f64 1/2 -1)
(*.f64 1/2 1/4)
(*.f64 1/2 1/2)
(*.f64 1/2 3/2)
(*.f64 1/2 262144)
(*.f64 -1/2 (*.f64 re re))
(*.f64 (*.f64 1/2 im) im)
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
(+.f64 1 (*.f64 re (*.f64 re -1/2)))
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
(cos.f64 re)
(*.f64 2 (cos.f64 re))
(*.f64 (cos.f64 re) 5159780353/5159780352)
(+.f64 (cos.f64 re) -2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im im))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) 1/2985984)))
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 im im)) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 (-.f64 1/2 (*.f64 (*.f64 re re) -1/4)) (*.f64 im im)))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)))) (-.f64 (*.f64 (*.f64 1/2 im) im) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4))))
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2)
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
(/.f64 (*.f64 (fma.f64 im im 2) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 re re) 3) -1/64) 1/8) (*.f64 im im)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 re 4) 1/16) (*.f64 -1/8 (*.f64 re re)))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (pow.f64 im 4) (*.f64 (*.f64 re (*.f64 re -1/4)) (*.f64 re (*.f64 re -1/4))))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 im im)) 3) (pow.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) 3)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))) (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))))
(*.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) (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:

22.0ms
re
20.0ms
im
18.0ms
(cos.f64 re)
17.0ms
(*.f64 1/2 (cos.f64 re))
12.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 542 to 325 computations (40% saved)

regimes107.0ms (1.3%)

Counts
41 → 1
Calls
Call 1
Inputs
-1
1
(*.f64 1/2 -2)
(*.f64 1/2 -1)
(*.f64 1/2 1/4)
(*.f64 1/2 1/2)
(*.f64 1/2 3/2)
(*.f64 1/2 262144)
(*.f64 -1/2 (*.f64 re re))
(*.f64 (*.f64 1/2 im) im)
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
(+.f64 1 (*.f64 re (*.f64 re -1/2)))
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
(cos.f64 re)
(*.f64 2 (cos.f64 re))
(*.f64 (cos.f64 re) 5159780353/5159780352)
(+.f64 (cos.f64 re) -2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im im))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) 1/2985984)))
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 im im)) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 (-.f64 1/2 (*.f64 (*.f64 re re) -1/4)) (*.f64 im im)))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)))) (-.f64 (*.f64 (*.f64 1/2 im) im) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4))))
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2)
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
(/.f64 (*.f64 (fma.f64 im im 2) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 re re) 3) -1/64) 1/8) (*.f64 im im)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 re 4) 1/16) (*.f64 -1/8 (*.f64 re re)))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (pow.f64 im 4) (*.f64 (*.f64 re (*.f64 re -1/4)) (*.f64 re (*.f64 re -1/4))))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 im im)) 3) (pow.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) 3)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))) (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))))
(*.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)))
Outputs
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Calls

6 calls:

21.0ms
re
20.0ms
im
17.0ms
(*.f64 1/2 (cos.f64 re))
17.0ms
(cos.f64 re)
12.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 531 to 320 computations (39.7% saved)

regimes312.0ms (3.7%)

Counts
40 → 3
Calls
Call 1
Inputs
-1
1
(*.f64 1/2 -2)
(*.f64 1/2 -1)
(*.f64 1/2 1/4)
(*.f64 1/2 1/2)
(*.f64 1/2 3/2)
(*.f64 1/2 262144)
(*.f64 -1/2 (*.f64 re re))
(*.f64 (*.f64 1/2 im) im)
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
(+.f64 1 (*.f64 re (*.f64 re -1/2)))
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
(cos.f64 re)
(*.f64 2 (cos.f64 re))
(*.f64 (cos.f64 re) 5159780353/5159780352)
(+.f64 (cos.f64 re) -2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im im))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) 1/2985984)))
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 im im)) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 (-.f64 1/2 (*.f64 (*.f64 re re) -1/4)) (*.f64 im im)))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)))) (-.f64 (*.f64 (*.f64 1/2 im) im) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4))))
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2)
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
(/.f64 (*.f64 (fma.f64 im im 2) (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16))) (+.f64 1/2 (*.f64 1/4 (*.f64 re re))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 re re) 3) -1/64) 1/8) (*.f64 im im)) (+.f64 1/4 (-.f64 (*.f64 (pow.f64 re 4) 1/16) (*.f64 -1/8 (*.f64 re re)))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (pow.f64 im 4) (*.f64 (*.f64 re (*.f64 re -1/4)) (*.f64 re (*.f64 re -1/4))))) (*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 (*.f64 re re) 1/4))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 im im)) 3) (pow.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) 3)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))) (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))))
(*.f64 (cos.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
Outputs
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) 1/2))
Calls

4 calls:

136.0ms
re
103.0ms
im
31.0ms
(*.f64 1/2 (cos.f64 re))
30.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
93.5%3re
97.0%3im
93.9%2(*.f64 1/2 (cos.f64 re))
93.9%2(cos.f64 re)
Compiler

Compiled 499 to 300 computations (39.9% saved)

regimes289.0ms (3.4%)

Counts
33 → 5
Calls
Call 1
Inputs
-1
1
(*.f64 1/2 -2)
(*.f64 1/2 -1)
(*.f64 1/2 1/4)
(*.f64 1/2 1/2)
(*.f64 1/2 3/2)
(*.f64 1/2 262144)
(*.f64 -1/2 (*.f64 re re))
(*.f64 (*.f64 1/2 im) im)
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
(+.f64 1 (*.f64 re (*.f64 re -1/2)))
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
(cos.f64 re)
(*.f64 2 (cos.f64 re))
(*.f64 (cos.f64 re) 5159780353/5159780352)
(+.f64 (cos.f64 re) -2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im im))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) 1/2985984)))
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 im im)) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 (-.f64 1/2 (*.f64 (*.f64 re re) -1/4)) (*.f64 im im)))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)))) (-.f64 (*.f64 (*.f64 1/2 im) im) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4))))
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2)
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
Outputs
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))
Calls

3 calls:

182.0ms
im
43.0ms
(*.f64 1/2 (cos.f64 re))
36.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
87.7%2(*.f64 1/2 (cos.f64 re))
87.7%2(cos.f64 re)
96.8%5im
Compiler

Compiled 316 to 188 computations (40.5% saved)

regimes191.0ms (2.3%)

Counts
32 → 5
Calls
Call 1
Inputs
-1
1
(*.f64 1/2 -2)
(*.f64 1/2 -1)
(*.f64 1/2 1/4)
(*.f64 1/2 1/2)
(*.f64 1/2 3/2)
(*.f64 1/2 262144)
(*.f64 -1/2 (*.f64 re re))
(*.f64 (*.f64 1/2 im) im)
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
(+.f64 1 (*.f64 re (*.f64 re -1/2)))
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
(cos.f64 re)
(*.f64 2 (cos.f64 re))
(*.f64 (cos.f64 re) 5159780353/5159780352)
(+.f64 (cos.f64 re) -2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im im))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) 1/2985984)))
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 im im)) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 (-.f64 1/2 (*.f64 (*.f64 re re) -1/4)) (*.f64 im im)))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)))) (-.f64 (*.f64 (*.f64 1/2 im) im) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4))))
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2)
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
Outputs
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
Calls

2 calls:

113.0ms
re
69.0ms
im
Results
AccuracySegmentsBranch
86.4%3re
94.9%5im
Compiler

Compiled 301 to 177 computations (41.2% saved)

regimes140.0ms (1.7%)

Counts
31 → 3
Calls
Call 1
Inputs
-1
1
(*.f64 1/2 -2)
(*.f64 1/2 -1)
(*.f64 1/2 1/4)
(*.f64 1/2 1/2)
(*.f64 1/2 3/2)
(*.f64 1/2 262144)
(*.f64 -1/2 (*.f64 re re))
(*.f64 (*.f64 1/2 im) im)
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
(+.f64 1 (*.f64 re (*.f64 re -1/2)))
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
(cos.f64 re)
(*.f64 2 (cos.f64 re))
(*.f64 (cos.f64 re) 5159780353/5159780352)
(+.f64 (cos.f64 re) -2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im im))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 re re) (*.f64 -1/4 (fma.f64 im im 2)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) 1/2985984)))
(*.f64 (fma.f64 im im 2) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (*.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (*.f64 im im)) (-.f64 1/2 (*.f64 re (*.f64 re -1/4))))
(/.f64 (-.f64 1/4 (*.f64 (pow.f64 re 4) 1/16)) (/.f64 (-.f64 1/2 (*.f64 (*.f64 re re) -1/4)) (*.f64 im im)))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4)))) (-.f64 (*.f64 (*.f64 1/2 im) im) (*.f64 (*.f64 im im) (*.f64 (*.f64 re re) -1/4))))
(pow.f64 (*.f64 (cos.f64 re) 1/5159780352) -2)
Outputs
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im)))
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
Calls

4 calls:

82.0ms
im
25.0ms
re
13.0ms
(cos.f64 re)
13.0ms
(*.f64 1/2 (cos.f64 re))
Results
AccuracySegmentsBranch
75.1%1re
75.1%1(*.f64 1/2 (cos.f64 re))
75.1%1(cos.f64 re)
85.0%3im
Compiler

Compiled 303 to 180 computations (40.6% saved)

regimes70.0ms (0.8%)

Counts
23 → 4
Calls
Call 1
Inputs
-1
1
(*.f64 1/2 -2)
(*.f64 1/2 -1)
(*.f64 1/2 1/4)
(*.f64 1/2 1/2)
(*.f64 1/2 3/2)
(*.f64 1/2 262144)
(*.f64 -1/2 (*.f64 re re))
(*.f64 (*.f64 1/2 im) im)
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
(+.f64 1 (*.f64 re (*.f64 re -1/2)))
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
(cos.f64 re)
(*.f64 2 (cos.f64 re))
(*.f64 (cos.f64 re) 5159780353/5159780352)
(+.f64 (cos.f64 re) -2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
(*.f64 (*.f64 1/2 (cos.f64 re)) (*.f64 im im))
Outputs
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
(cos.f64 re)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
(*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))
Calls

1 calls:

65.0ms
im
Results
AccuracySegmentsBranch
84.9%4im
Compiler

Compiled 161 to 97 computations (39.8% saved)

regimes111.0ms (1.3%)

Counts
21 → 3
Calls
Call 1
Inputs
-1
1
(*.f64 1/2 -2)
(*.f64 1/2 -1)
(*.f64 1/2 1/4)
(*.f64 1/2 1/2)
(*.f64 1/2 3/2)
(*.f64 1/2 262144)
(*.f64 -1/2 (*.f64 re re))
(*.f64 (*.f64 1/2 im) im)
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
(+.f64 1 (*.f64 re (*.f64 re -1/2)))
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
(cos.f64 re)
(*.f64 2 (cos.f64 re))
(*.f64 (cos.f64 re) 5159780353/5159780352)
(+.f64 (cos.f64 re) -2)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
Outputs
(*.f64 (*.f64 1/2 im) im)
(cos.f64 re)
(+.f64 1/2 (*.f64 1/2 (exp.f64 im)))
Calls

1 calls:

97.0ms
im
Results
AccuracySegmentsBranch
79.3%3im
Compiler

Compiled 145 to 90 computations (37.9% saved)

regimes125.0ms (1.5%)

Counts
20 → 4
Calls
Call 1
Inputs
-1
1
(*.f64 1/2 -2)
(*.f64 1/2 -1)
(*.f64 1/2 1/4)
(*.f64 1/2 1/2)
(*.f64 1/2 3/2)
(*.f64 1/2 262144)
(*.f64 -1/2 (*.f64 re re))
(*.f64 (*.f64 1/2 im) im)
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
(+.f64 1 (*.f64 re (*.f64 re -1/2)))
(*.f64 im (*.f64 (*.f64 re re) (*.f64 -1/4 im)))
(*.f64 (*.f64 (*.f64 re re) -1/4) (*.f64 im im))
(*.f64 (*.f64 im im) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
(cos.f64 re)
(*.f64 2 (cos.f64 re))
(*.f64 (cos.f64 re) 5159780353/5159780352)
(+.f64 (cos.f64 re) -2)
Outputs
(*.f64 (*.f64 1/2 im) im)
(cos.f64 re)
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4))))))
(*.f64 (*.f64 1/2 im) im)
Calls

3 calls:

49.0ms
re
38.0ms
im
33.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
64.9%5re
64.5%4(cos.f64 re)
72.5%4im
Compiler

Compiled 146 to 90 computations (38.4% saved)

regimes42.0ms (0.5%)

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

2 calls:

26.0ms
im
9.0ms
re
Results
AccuracySegmentsBranch
45.3%1re
48.5%3im
Compiler

Compiled 128 to 80 computations (37.5% saved)

regimes37.0ms (0.4%)

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

2 calls:

24.0ms
im
10.0ms
re
Results
AccuracySegmentsBranch
45.3%1re
48.0%3im
Compiler

Compiled 81 to 54 computations (33.3% saved)

regimes59.0ms (0.7%)

Counts
10 → 3
Calls
Call 1
Inputs
-1
1
(*.f64 1/2 -2)
(*.f64 1/2 -1)
(*.f64 1/2 1/4)
(*.f64 1/2 1/2)
(*.f64 1/2 3/2)
(*.f64 1/2 262144)
(*.f64 -1/2 (*.f64 re re))
(*.f64 (*.f64 1/2 im) im)
Outputs
(*.f64 (*.f64 1/2 im) im)
1
(*.f64 (*.f64 1/2 im) im)
Calls

2 calls:

36.0ms
re
21.0ms
im
Results
AccuracySegmentsBranch
45.3%3im
34.1%5re
Compiler

Compiled 38 to 32 computations (15.8% saved)

regimes15.0ms (0.2%)

Counts
9 → 1
Calls
Call 1
Inputs
-1
1
(*.f64 1/2 -2)
(*.f64 1/2 -1)
(*.f64 1/2 1/4)
(*.f64 1/2 1/2)
(*.f64 1/2 3/2)
(*.f64 1/2 262144)
(*.f64 -1/2 (*.f64 re re))
Outputs
1
Calls

2 calls:

8.0ms
re
6.0ms
im
Results
AccuracySegmentsBranch
26.7%1re
26.7%1im
Compiler

Compiled 33 to 29 computations (12.1% saved)

regimes6.0ms (0.1%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
-1
Outputs
-1
Calls

2 calls:

3.0ms
re
2.0ms
im
Results
AccuracySegmentsBranch
4.2%1im
4.2%1re
Compiler

Compiled 9 to 7 computations (22.2% saved)

bsearch64.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
26.0ms
-9.217858568212743e-10
-1.494063905933795e-11
37.0ms
-1.293274303084975e+95
-5.017922297455495e+82
Results
17.0ms110×body256infinite
14.0ms33×body1024infinite
12.0ms74×body256valid
9.0ms26×body1024valid
4.0ms17×body512infinite
3.0ms12×body512valid
Compiler

Compiled 399 to 327 computations (18% saved)

bsearch112.0ms (1.3%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
16.0ms
5.100121162787935e+72
1.1681680132632175e+73
33.0ms
1.753723470233009e-8
54.489572978871145
32.0ms
-19.169517944893403
-0.0421704547101383
32.0ms
-1.293274303084975e+95
-5.017922297455495e+82
Results
27.0ms65×body1024valid
26.0ms178×body256valid
22.0ms160×body256infinite
16.0ms52×body1024infinite
7.0ms29×body512valid
6.0ms28×body512infinite
Compiler

Compiled 756 to 607 computations (19.7% saved)

bsearch120.0ms (1.4%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
31.0ms
2.3396536380005254e+139
8.149933923998441e+151
31.0ms
1.753723470233009e-8
54.489572978871145
31.0ms
-19.169517944893403
-0.0421704547101383
26.0ms
-3.940321888643703e+163
-1.3543990281299483e+159
Results
26.0ms66×body1024valid
25.0ms172×body256valid
24.0ms184×body256infinite
21.0ms65×body1024infinite
8.0ms39×body512infinite
8.0ms34×body512valid
Compiler

Compiled 822 to 643 computations (21.8% saved)

bsearch69.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
33.0ms
2.3396536380005254e+139
8.149933923998441e+151
36.0ms
1.753723470233009e-8
54.489572978871145
Results
16.0ms41×body1024valid
15.0ms47×body1024infinite
13.0ms83×body256valid
13.0ms97×body256infinite
5.0ms20×body512valid
3.0ms16×body512infinite
Compiler

Compiled 416 to 336 computations (19.2% saved)

bsearch98.0ms (1.2%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
33.0ms
2.3396536380005254e+139
8.149933923998441e+151
32.0ms
1.753723470233009e-8
54.489572978871145
32.0ms
-19.169517944893403
-0.0421704547101383
Results
26.0ms70×body1024valid
25.0ms166×body256valid
14.0ms46×body1024infinite
13.0ms90×body256infinite
10.0ms36×body512valid
5.0ms24×body512infinite
Compiler

Compiled 472 to 378 computations (19.9% saved)

bsearch56.0ms (0.7%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
34.0ms
1.753723470233009e-8
54.489572978871145
22.0ms
-5.54192610381081e+47
-1.7624099918782153e+46
Results
14.0ms94×body256valid
14.0ms34×body1024valid
10.0ms70×body256infinite
9.0ms29×body1024infinite
4.0ms16×body512valid
3.0ms13×body512infinite
Compiler

Compiled 235 to 192 computations (18.3% saved)

bsearch70.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
23.0ms
1.560403381724219e+137
2.3396536380005254e+139
24.0ms
5.715024584448146e+86
1.4989947034734122e+88
23.0ms
-5.54192610381081e+47
-1.7624099918782153e+46
Results
29.0ms219×body256infinite
29.0ms89×body1024infinite
6.0ms28×body512infinite
Compiler

Compiled 900 to 574 computations (36.2% saved)

bsearch48.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
23.0ms
1.560403381724219e+137
2.3396536380005254e+139
25.0ms
5.715024584448146e+86
1.4989947034734122e+88
Results
20.0ms68×body1024infinite
17.0ms132×body256infinite
6.0ms24×body512infinite
Compiler

Compiled 844 to 532 computations (37% saved)

bsearch73.0ms (0.9%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
34.0ms
1.753723470233009e-8
54.489572978871145
39.0ms
-0.0421704547101383
-9.217858568212743e-10
Results
34.0ms77×body1024valid
23.0ms161×body256valid
12.0ms50×body512valid
Compiler

Compiled 234 to 194 computations (17.1% saved)

simplify37.0ms (0.4%)

Algorithm
egg-herbie
Rules
52×*-commutative
28×+-commutative
20×sub-neg
18×distribute-lft-neg-in
18×distribute-rgt-neg-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01111164
11501164
21641164
31761164
41881164
52001164
62071164
72111164
82121164
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)))
(if (<=.f64 im -51000000000000002514737958129500495109628382089585180213805824264321169337205391360) (*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24)) (if (<=.f64 im -4352132950612665/4835703278458516698824704) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) 1/2))))
(if (<=.f64 im -51000000000000002514737958129500495109628382089585180213805824264321169337205391360) (*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24)) (if (<=.f64 im -3170534137668829/36028797018963968) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im 8358680908399641/576460752303423488) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 11499999999999999255641111295720679841723867746116543361158120938898718720) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))))))
(if (<=.f64 im -1400000000000000055965999097835400650307888347741571982811810376347438911784699754332023333694925686818879491778584177324528983291895437681585472000385638989824) (*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re))) (if (<=.f64 im -8214565720323785/144115188075855872) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im 8358680908399641/576460752303423488) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 80000000000000001374202590977417529443144832674443640861858627561600250102255083360661013942889385461780367676348342678295449011561384049997076395720704) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))))))
(if (<=.f64 im 7/2) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 80000000000000001374202590977417529443144832674443640861858627561600250102255083360661013942889385461780367676348342678295449011561384049997076395720704) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))))
(if (<=.f64 im -3152519739159347/2251799813685248) (*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re))) (if (<=.f64 im 7/4) (cos.f64 re) (if (<=.f64 im 80000000000000001374202590977417529443144832674443640861858627561600250102255083360661013942889385461780367676348342678295449011561384049997076395720704) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re))))))
(if (<=.f64 im -120000000000000009317983086139477767345535975424) (*.f64 (*.f64 1/2 im) im) (if (<=.f64 im 2) (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im -400000000000000017538337218030478941853619060736) (*.f64 (*.f64 1/2 im) im) (if (<=.f64 im 579999999999999980878817846629171208223601483853398124577158367876935670615569070030848) (cos.f64 re) (if (<=.f64 im 23000000000000000094299968461464700864785980993500029168378525839669961874023328623106239023126384666541628170324131170717703259563506008064) (/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (*.f64 (*.f64 1/2 im) im))))
(if (<=.f64 im 579999999999999980878817846629171208223601483853398124577158367876935670615569070030848) (+.f64 1 (*.f64 1/2 (*.f64 im im))) (if (<=.f64 im 23000000000000000094299968461464700864785980993500029168378525839669961874023328623106239023126384666541628170324131170717703259563506008064) (/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (*.f64 (*.f64 1/2 im) im)))
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
(if (<=.f64 im -6052837899185947/144115188075855872) (*.f64 (*.f64 1/2 im) im) (if (<=.f64 im 6530219459687219/4503599627370496) 1 (*.f64 (*.f64 1/2 im) im)))
1
-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))))
(if (<=.f64 im -51000000000000002514737958129500495109628382089585180213805824264321169337205391360) (*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24)) (if (<=.f64 im -4352132950612665/4835703278458516698824704) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (cos.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) 1/2))))
(if (<=.f64 im -51000000000000002514737958129500495109628382089585180213805824264321169337205391360) (*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24)) (if (<=.f64 im -4352132950612665/4835703278458516698824704) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))))))
(if (<=.f64 im -51000000000000002514737958129500495109628382089585180213805824264321169337205391360) (*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24)) (if (<=.f64 im -3170534137668829/36028797018963968) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im 8358680908399641/576460752303423488) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 11499999999999999255641111295720679841723867746116543361158120938898718720) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))))))
(if (<=.f64 im -51000000000000002514737958129500495109628382089585180213805824264321169337205391360) (*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24)) (if (<=.f64 im -3170534137668829/36028797018963968) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im 8358680908399641/576460752303423488) (*.f64 (*.f64 (cos.f64 re) 1/2) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 11499999999999999255641111295720679841723867746116543361158120938898718720) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 im 4) (*.f64 (cos.f64 re) 1/24))))))
(if (<=.f64 im -1400000000000000055965999097835400650307888347741571982811810376347438911784699754332023333694925686818879491778584177324528983291895437681585472000385638989824) (*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re))) (if (<=.f64 im -8214565720323785/144115188075855872) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im 8358680908399641/576460752303423488) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 80000000000000001374202590977417529443144832674443640861858627561600250102255083360661013942889385461780367676348342678295449011561384049997076395720704) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))))))
(if (<=.f64 im -1400000000000000055965999097835400650307888347741571982811810376347438911784699754332023333694925686818879491778584177324528983291895437681585472000385638989824) (*.f64 im (*.f64 (cos.f64 re) (*.f64 1/2 im))) (if (<=.f64 im -8214565720323785/144115188075855872) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im 8358680908399641/576460752303423488) (*.f64 (*.f64 (cos.f64 re) 1/2) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 80000000000000001374202590977417529443144832674443640861858627561600250102255083360661013942889385461780367676348342678295449011561384049997076395720704) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 im (*.f64 (cos.f64 re) (*.f64 1/2 im)))))))
(if (<=.f64 im 7/2) (*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 80000000000000001374202590977417529443144832674443640861858627561600250102255083360661013942889385461780367676348342678295449011561384049997076395720704) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re)))))
(if (<=.f64 im 7/2) (*.f64 (*.f64 (cos.f64 re) 1/2) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 80000000000000001374202590977417529443144832674443640861858627561600250102255083360661013942889385461780367676348342678295449011561384049997076395720704) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (*.f64 im (*.f64 (cos.f64 re) (*.f64 1/2 im)))))
(if (<=.f64 im -3152519739159347/2251799813685248) (*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re))) (if (<=.f64 im 7/4) (cos.f64 re) (if (<=.f64 im 80000000000000001374202590977417529443144832674443640861858627561600250102255083360661013942889385461780367676348342678295449011561384049997076395720704) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (*.f64 im (*.f64 (*.f64 im 1/2) (cos.f64 re))))))
(if (<=.f64 im -3152519739159347/2251799813685248) (*.f64 im (*.f64 (cos.f64 re) (*.f64 1/2 im))) (if (<=.f64 im 7/4) (cos.f64 re) (if (<=.f64 im 80000000000000001374202590977417529443144832674443640861858627561600250102255083360661013942889385461780367676348342678295449011561384049997076395720704) (+.f64 1/2 (*.f64 1/2 (exp.f64 im))) (*.f64 im (*.f64 (cos.f64 re) (*.f64 1/2 im))))))
(if (<=.f64 im -120000000000000009317983086139477767345535975424) (*.f64 (*.f64 1/2 im) im) (if (<=.f64 im 2) (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im -120000000000000009317983086139477767345535975424) (*.f64 im (*.f64 1/2 im)) (if (<=.f64 im 2) (cos.f64 re) (+.f64 1/2 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im -400000000000000017538337218030478941853619060736) (*.f64 (*.f64 1/2 im) im) (if (<=.f64 im 579999999999999980878817846629171208223601483853398124577158367876935670615569070030848) (cos.f64 re) (if (<=.f64 im 23000000000000000094299968461464700864785980993500029168378525839669961874023328623106239023126384666541628170324131170717703259563506008064) (/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (*.f64 (*.f64 1/2 im) im))))
(if (<=.f64 im -400000000000000017538337218030478941853619060736) (*.f64 im (*.f64 1/2 im)) (if (<=.f64 im 579999999999999980878817846629171208223601483853398124577158367876935670615569070030848) (cos.f64 re) (if (<=.f64 im 23000000000000000094299968461464700864785980993500029168378525839669961874023328623106239023126384666541628170324131170717703259563506008064) (/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (*.f64 im (*.f64 1/2 im)))))
(if (<=.f64 im 579999999999999980878817846629171208223601483853398124577158367876935670615569070030848) (+.f64 1 (*.f64 1/2 (*.f64 im im))) (if (<=.f64 im 23000000000000000094299968461464700864785980993500029168378525839669961874023328623106239023126384666541628170324131170717703259563506008064) (/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (*.f64 (*.f64 1/2 im) im)))
(if (<=.f64 im 579999999999999980878817846629171208223601483853398124577158367876935670615569070030848) (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (if (<=.f64 im 23000000000000000094299968461464700864785980993500029168378525839669961874023328623106239023126384666541628170324131170717703259563506008064) (/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (-.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 re (*.f64 re -1/4)))))) (*.f64 im (*.f64 1/2 im))))
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
(+.f64 (*.f64 1/2 (*.f64 im im)) 1)
(if (<=.f64 im -6052837899185947/144115188075855872) (*.f64 (*.f64 1/2 im) im) (if (<=.f64 im 6530219459687219/4503599627370496) 1 (*.f64 (*.f64 1/2 im) im)))
(if (or (<=.f64 im -6052837899185947/144115188075855872) (not (<=.f64 im 6530219459687219/4503599627370496))) (*.f64 im (*.f64 1/2 im)) 1)
1
-1
Compiler

Compiled 450 to 299 computations (33.6% saved)

soundness1.5s (18.4%)

Rules
1874×log-prod
1606×fma-def
1606×fma-def
1464×fma-def
1424×times-frac
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01335
13035
27335
313233
419433
534833
679033
7133733
8387933
9440133
10536833
11595233
12698433
01533310
14673142
214082888
364332888
023109
1519109
01663098
13812974
210122654
346962578
01533310
14673142
214082888
364332888
023109
1519109
01663098
13812974
210122654
346962578
01663098
13812974
210122654
346962578
04208173
110295867
238975535
03355741
19495549
238575293
01663098
13812974
210122654
346962578
02294
147390
2610890
01663098
13812974
210122654
346962578
01663098
13812974
210122654
346962578
02080
142376
2523976
Stop Event
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
Compiler

Compiled 1149 to 661 computations (42.5% saved)

end181.0ms (2.2%)

Compiler

Compiled 874 to 508 computations (41.9% saved)

Profiling

Loading profile data...