math.cos on complex, real part

Details

Time bar (total: 10.1s)

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 (21.3%)

Results
605.0ms1044×body1024valid
456.0ms2550×body256infinite
396.0ms1074×body1024infinite
386.0ms2574×body256valid
168.0ms492×body512valid
121.0ms520×body512infinite
2.0msbody2048valid
Bogosity

preprocess131.0ms (1.3%)

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)

simplify109.0ms (1.1%)

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

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New213
Fresh011
Picked000
Done000
Total224
Accurracy
100.0%
Counts
4 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
100.0%
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 26 to 20 computations (23.1% saved)

localize78.0ms (0.8%)

Local Accuracy

Found 1 expressions with local accuracy:

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

Compiled 36 to 14 computations (61.1% saved)

series5.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite35.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
282×add-sqr-sqrt
272×pow1
272×*-un-lft-identity
264×add-exp-log
262×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01335
127335
2427735
Stop Event
unsound
Counts
1 → 23
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Outputs
(+.f64 (cos.f64 re) (cos.f64 re))
(+.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) -2))) 1)
(/.f64 (*.f64 (cos.f64 re) -2) -2)
(/.f64 (*.f64 (cos.f64 re) -2) 1)
(/.f64 (*.f64 (cos.f64 re) -2) (+.f64 (*.f64 (cos.f64 re) -2) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))))
(/.f64 (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(pow.f64 (*.f64 (cos.f64 re) -2) 1)
(pow.f64 (*.f64 (cos.f64 re) -2) 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 1 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))
(fma.f64 (*.f64 (cos.f64 re) -2) 1 (*.f64 (cos.f64 re) -2))

simplify64.0ms (0.6%)

Algorithm
egg-herbie
Rules
1156×fma-neg
1106×div-sub
876×cancel-sign-sub-inv
696×associate-*r*
696×fma-def
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0951035
1285921
2906921
34789921
Stop Event
node limit
Counts
47 → 45
Calls
Call 1
Inputs
(*.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)))))
(+.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 1 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))
(fma.f64 (*.f64 (cos.f64 re) -2) 1 (*.f64 (cos.f64 re) -2))
Outputs
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 -1/4 (*.f64 re re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 -1/4 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re re)) (*.f64 (*.f64 1/48 (pow.f64 re 4)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 1/48 (pow.f64 re 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/1440 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 6)) (fma.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 -1/4 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re re)) (*.f64 (*.f64 1/48 (pow.f64 re 4)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/4 (*.f64 re re)) (*.f64 1/48 (pow.f64 re 4)))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/1440 (pow.f64 re 6)) 1/2)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(cos.f64 re)
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 re) (pow.f64 im 2))) (cos.f64 re))
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (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 (cos.f64 re) (*.f64 im im)) (cos.f64 re)) (*.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4))))
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (fma.f64 (*.f64 (cos.f64 re) 1/24) (pow.f64 im 4) (cos.f64 re)))
(+.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 (cos.f64 re) (*.f64 im im)) (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 (cos.f64 re) (*.f64 im im)) (cos.f64 re)) (fma.f64 1/24 (*.f64 (cos.f64 re) (pow.f64 im 4)) (*.f64 (cos.f64 re) (*.f64 (pow.f64 im 6) 1/720))))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 (cos.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (cos.f64 re) (cos.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))
(cos.f64 re)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) -2))) 1)
(cos.f64 re)
(/.f64 (*.f64 (cos.f64 re) -2) -2)
(cos.f64 re)
(/.f64 (*.f64 (cos.f64 re) -2) 1)
(cos.f64 re)
(/.f64 (*.f64 (cos.f64 re) -2) (+.f64 (*.f64 (cos.f64 re) -2) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))))
(cos.f64 re)
(/.f64 (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)) (-.f64 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2)))
(cos.f64 re)
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(cos.f64 re)
(pow.f64 (*.f64 (cos.f64 re) -2) 1)
(cos.f64 re)
(pow.f64 (*.f64 (cos.f64 re) -2) 3)
(cos.f64 re)
(pow.f64 (*.f64 (cos.f64 re) -2) 1/3)
(cbrt.f64 (*.f64 (cos.f64 re) -2))
(sqrt.f64 (*.f64 (cos.f64 re) -2))
(cos.f64 re)
(fabs.f64 (*.f64 (cos.f64 re) -2))
(cos.f64 re)
(log.f64 (pow.f64 1 (cos.f64 re)))
(cos.f64 re)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) -2))))
(cos.f64 re)
(cbrt.f64 (*.f64 (cos.f64 re) -2))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) -2)))
(cos.f64 re)
(exp.f64 (log.f64 (*.f64 (cos.f64 re) -2)))
(cos.f64 re)
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) 1))
(cos.f64 re)
(exp.f64 (+.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -2))
(cos.f64 re)
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) -2)))
(cos.f64 re)
(fma.f64 1 (*.f64 (cos.f64 re) -2) (*.f64 (cos.f64 re) -2))
(cos.f64 re)
(fma.f64 (*.f64 (cos.f64 re) -2) 1 (*.f64 (cos.f64 re) -2))
(cos.f64 re)

eval10.0ms (0.1%)

Compiler

Compiled 653 to 319 computations (51.1% saved)

prune20.0ms (0.2%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New39645
Fresh000
Picked101
Done000
Total40646
Accurracy
100.0%
Counts
46 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.2%
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re))
8.4%
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
11.5%
(+.f64 (cos.f64 re) (cos.f64 re))
58.6%
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
58.1%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
54.9%
(cos.f64 re)
78.2%
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re))
8.4%
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
11.5%
(+.f64 (cos.f64 re) (cos.f64 re))
58.6%
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
58.1%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
54.9%
(cos.f64 re)
Compiler

Compiled 228 to 164 computations (28.1% saved)

localize163.0ms (1.6%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
99.6%
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
99.9%
(*.f64 (cos.f64 re) (*.f64 im im))
Compiler

Compiled 75 to 24 computations (68% saved)

series7.0ms (0.1%)

Counts
2 → 36
Calls

9 calls:

TimeVariablePointExpression
4.0ms
re
@-inf
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
2.0ms
re
@inf
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
0.0ms
re
@inf
(*.f64 (cos.f64 re) (*.f64 im im))
0.0ms
re
@0
(*.f64 (cos.f64 re) (*.f64 im im))
0.0ms
im
@inf
(*.f64 (cos.f64 re) (*.f64 im im))

rewrite75.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1066×log-prod
826×exp-prod
730×prod-exp
652×pow-prod-down
554×pow-prod-up
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01134
122734
2265134
Stop Event
node limit
Counts
2 → 67
Calls
Call 1
Inputs
(*.f64 (cos.f64 re) (*.f64 im im))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
Outputs
(+.f64 0 (*.f64 (cos.f64 re) (*.f64 im im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (*.f64 im im)))) 1)
(pow.f64 (*.f64 (cos.f64 re) (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 im im))) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 6) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 2)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im)))) 2)) (cbrt.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))))) (sqrt.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im)))))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 4))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (*.f64 im im)))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 6))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (*.f64 im im))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 im im)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 6)) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (cos.f64 re)))) 2))
(exp.f64 (+.f64 (log.f64 (cos.f64 re)) (*.f64 (log.f64 im) 2)))
(exp.f64 (+.f64 (log.f64 (cos.f64 re)) (*.f64 (log.f64 (*.f64 im im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 re)) 1) (log.f64 (*.f64 im im))))
(exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 re)) 1) (*.f64 (log.f64 im) 2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 re)) 1) (*.f64 (log.f64 (*.f64 im im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (*.f64 (cos.f64 re) im))))
(exp.f64 (+.f64 (log.f64 (*.f64 im im)) (*.f64 (log.f64 (cos.f64 re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 2) (log.f64 (cos.f64 re))))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 2) (*.f64 (log.f64 (cos.f64 re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im im)) 1) (log.f64 (cos.f64 re))))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im im)) 1) (*.f64 (log.f64 (cos.f64 re)) 1)))
(exp.f64 (+.f64 (log.f64 (*.f64 (cos.f64 re) im)) (*.f64 (log.f64 im) 1)))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (*.f64 im im))))
(+.f64 0 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))) 1)
(*.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4) 1)
(*.f64 1 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2) (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) -4) 1/16)))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) -4) 1/16)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2))
(*.f64 (*.f64 (/.f64 1 (cos.f64 re)) -1/2) (*.f64 (/.f64 1 (cos.f64 re)) -1/2))
(*.f64 (pow.f64 (cos.f64 re) -2) 1/4)
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -4) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2))
(/.f64 1 (*.f64 (pow.f64 (cos.f64 re) 2) 4))
(sqrt.f64 (*.f64 (pow.f64 (cos.f64 re) -4) 1/16))
(log.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -6))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))
(exp.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))))
(exp.f64 (*.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) 1) -2))
(exp.f64 (*.f64 (*.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))) 1) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -6)) 1/3))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 (cos.f64 re) -2))) -1))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 (cos.f64 re) -2))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1) 2))
(exp.f64 (+.f64 (neg.f64 (log.f64 (*.f64 (cos.f64 re) -2))) (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1) (neg.f64 (log.f64 (*.f64 (cos.f64 re) -2)))))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1) (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1)))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))

simplify92.0ms (0.9%)

Algorithm
egg-herbie
Rules
858×log-prod
564×fma-def
524×associate-*r*
472×associate-*l*
466×associate-/l*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02152169
14732073
210612037
332282031
477352031
Stop Event
node limit
Counts
103 → 109
Calls
Call 1
Inputs
(pow.f64 im 2)
(+.f64 (pow.f64 im 2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (pow.f64 im 2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -1/720 (*.f64 (pow.f64 re 6) (pow.f64 im 2))))))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (cos.f64 re) (pow.f64 im 2))
1/4
(+.f64 1/4 (*.f64 1/4 (pow.f64 re 2)))
(+.f64 1/4 (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/6 (pow.f64 re 4))))
(+.f64 (*.f64 17/180 (pow.f64 re 6)) (+.f64 1/4 (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/6 (pow.f64 re 4)))))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(+.f64 0 (*.f64 (cos.f64 re) (*.f64 im im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (*.f64 im im)))) 1)
(pow.f64 (*.f64 (cos.f64 re) (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 im im))) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 6) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 2)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im)))) 2)) (cbrt.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))))) (sqrt.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im)))))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 4))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (*.f64 im im)))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 6))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (*.f64 im im))))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 im im)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 6)) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (cos.f64 re)))) 2))
(exp.f64 (+.f64 (log.f64 (cos.f64 re)) (*.f64 (log.f64 im) 2)))
(exp.f64 (+.f64 (log.f64 (cos.f64 re)) (*.f64 (log.f64 (*.f64 im im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 re)) 1) (log.f64 (*.f64 im im))))
(exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 re)) 1) (*.f64 (log.f64 im) 2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 re)) 1) (*.f64 (log.f64 (*.f64 im im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (*.f64 (cos.f64 re) im))))
(exp.f64 (+.f64 (log.f64 (*.f64 im im)) (*.f64 (log.f64 (cos.f64 re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 2) (log.f64 (cos.f64 re))))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 2) (*.f64 (log.f64 (cos.f64 re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im im)) 1) (log.f64 (cos.f64 re))))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im im)) 1) (*.f64 (log.f64 (cos.f64 re)) 1)))
(exp.f64 (+.f64 (log.f64 (*.f64 (cos.f64 re) im)) (*.f64 (log.f64 im) 1)))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (*.f64 im im))))
(+.f64 0 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))) 1)
(*.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4) 1)
(*.f64 1 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2) (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) -4) 1/16)))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) -4) 1/16)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2))
(*.f64 (*.f64 (/.f64 1 (cos.f64 re)) -1/2) (*.f64 (/.f64 1 (cos.f64 re)) -1/2))
(*.f64 (pow.f64 (cos.f64 re) -2) 1/4)
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -4) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2))
(/.f64 1 (*.f64 (pow.f64 (cos.f64 re) 2) 4))
(sqrt.f64 (*.f64 (pow.f64 (cos.f64 re) -4) 1/16))
(log.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -6))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))
(exp.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))))
(exp.f64 (*.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) 1) -2))
(exp.f64 (*.f64 (*.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))) 1) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -6)) 1/3))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 (cos.f64 re) -2))) -1))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 (cos.f64 re) -2))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1) 2))
(exp.f64 (+.f64 (neg.f64 (log.f64 (*.f64 (cos.f64 re) -2))) (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1) (neg.f64 (log.f64 (*.f64 (cos.f64 re) -2)))))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1) (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1)))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))
Outputs
(pow.f64 im 2)
(*.f64 im im)
(+.f64 (pow.f64 im 2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))
(+.f64 (*.f64 im im) (*.f64 -1/2 (*.f64 (*.f64 im im) (*.f64 re re))))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 re re)) 1) (*.f64 im im))
(*.f64 (*.f64 im im) (fma.f64 -1/2 (*.f64 re re) 1))
(*.f64 im (*.f64 (fma.f64 (*.f64 -1/2 re) re 1) im))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (pow.f64 im 2) (*.f64 -1/2 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))))
(fma.f64 1/24 (*.f64 (*.f64 im im) (pow.f64 re 4)) (+.f64 (*.f64 im im) (*.f64 -1/2 (*.f64 (*.f64 im im) (*.f64 re re)))))
(fma.f64 1/24 (*.f64 (*.f64 (pow.f64 re 4) im) im) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 re re)) 1) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 (*.f64 re re)) (fma.f64 1/24 (pow.f64 re 4) 1)))
(*.f64 (*.f64 im im) (+.f64 (*.f64 1/24 (pow.f64 re 4)) (fma.f64 (*.f64 -1/2 re) re 1)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (+.f64 (pow.f64 im 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -1/720 (*.f64 (pow.f64 re 6) (pow.f64 im 2))))))
(fma.f64 1/24 (*.f64 (*.f64 im im) (pow.f64 re 4)) (+.f64 (*.f64 im im) (fma.f64 -1/2 (*.f64 (*.f64 im im) (*.f64 re re)) (*.f64 -1/720 (*.f64 (*.f64 im im) (pow.f64 re 6))))))
(fma.f64 1/24 (*.f64 (*.f64 (pow.f64 re 4) im) im) (fma.f64 im im (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 (*.f64 re re)) (*.f64 -1/720 (pow.f64 re 6))))))
(fma.f64 im im (*.f64 (*.f64 im im) (+.f64 (fma.f64 -1/2 (*.f64 re re) (*.f64 -1/720 (pow.f64 re 6))) (*.f64 1/24 (pow.f64 re 4)))))
(*.f64 (*.f64 im im) (+.f64 (fma.f64 -1/2 (*.f64 re re) (*.f64 -1/720 (pow.f64 re 6))) (fma.f64 1/24 (pow.f64 re 4) 1)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(*.f64 (cos.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
1/4
(+.f64 1/4 (*.f64 1/4 (pow.f64 re 2)))
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
(fma.f64 (*.f64 re re) 1/4 1/4)
(fma.f64 re (*.f64 re 1/4) 1/4)
(*.f64 1/4 (fma.f64 re re 1))
(+.f64 1/4 (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/6 (pow.f64 re 4))))
(+.f64 1/4 (fma.f64 1/4 (*.f64 re re) (*.f64 (pow.f64 re 4) 1/6)))
(+.f64 1/4 (fma.f64 (*.f64 re re) 1/4 (*.f64 (pow.f64 re 4) 1/6)))
(fma.f64 re (*.f64 re 1/4) (fma.f64 (pow.f64 re 4) 1/6 1/4))
(+.f64 (*.f64 17/180 (pow.f64 re 6)) (+.f64 1/4 (+.f64 (*.f64 1/4 (pow.f64 re 2)) (*.f64 1/6 (pow.f64 re 4)))))
(fma.f64 17/180 (pow.f64 re 6) (+.f64 1/4 (fma.f64 1/4 (*.f64 re re) (*.f64 (pow.f64 re 4) 1/6))))
(+.f64 (fma.f64 (*.f64 re re) 1/4 (*.f64 (pow.f64 re 4) 1/6)) (fma.f64 (pow.f64 re 6) 17/180 1/4))
(fma.f64 (pow.f64 re 6) 17/180 (fma.f64 re (*.f64 re 1/4) (fma.f64 (pow.f64 re 4) 1/6 1/4)))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(+.f64 0 (*.f64 (cos.f64 re) (*.f64 im im)))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))))
(*.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))) 3)
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 re) (*.f64 im im)))) 1)
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(pow.f64 (*.f64 (cos.f64 re) (*.f64 im im)) 1)
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 im im))) 3)
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 4) 1/2)
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 6) 1/3)
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 2)
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im)))) 2)) (cbrt.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (*.f64 im im) (cos.f64 re)))) 2)) (cbrt.f64 (log.f64 (*.f64 (*.f64 im im) (cos.f64 re)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (fma.f64 2 (log.f64 im) (log.f64 (cos.f64 re)))) 2)) (cbrt.f64 (fma.f64 2 (log.f64 im) (log.f64 (cos.f64 re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))))) (sqrt.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (*.f64 im im) (cos.f64 re))))) (sqrt.f64 (log.f64 (*.f64 (*.f64 im im) (cos.f64 re)))))
(pow.f64 (exp.f64 (sqrt.f64 (fma.f64 2 (log.f64 im) (log.f64 (cos.f64 re))))) (sqrt.f64 (fma.f64 2 (log.f64 im) (log.f64 (cos.f64 re)))))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 4))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(log.f64 (pow.f64 (exp.f64 (cos.f64 re)) (*.f64 im im)))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 re) (*.f64 im im)))))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 6))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 re) (*.f64 im im))))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))) 1))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) (*.f64 im im))) 1) 1))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (cos.f64 re) (*.f64 im im)))) 3))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (cos.f64 re))) 6)) 1/3))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (cos.f64 re)))) 2))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (+.f64 (log.f64 (cos.f64 re)) (*.f64 (log.f64 im) 2)))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (+.f64 (log.f64 (cos.f64 re)) (*.f64 (log.f64 (*.f64 im im)) 1)))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 re)) 1) (log.f64 (*.f64 im im))))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 re)) 1) (*.f64 (log.f64 im) 2)))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 re)) 1) (*.f64 (log.f64 (*.f64 im im)) 1)))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (*.f64 (cos.f64 re) im))))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (+.f64 (log.f64 (*.f64 im im)) (*.f64 (log.f64 (cos.f64 re)) 1)))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 2) (log.f64 (cos.f64 re))))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 2) (*.f64 (log.f64 (cos.f64 re)) 1)))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im im)) 1) (log.f64 (cos.f64 re))))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im im)) 1) (*.f64 (log.f64 (cos.f64 re)) 1)))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(exp.f64 (+.f64 (log.f64 (*.f64 (cos.f64 re) im)) (*.f64 (log.f64 im) 1)))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 re) (*.f64 im im))))
(*.f64 (*.f64 im im) (cos.f64 re))
(*.f64 im (*.f64 im (cos.f64 re)))
(+.f64 0 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2)))))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))) 1)
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4) 1)
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 1 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2) (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) -4) 1/16)))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) -4) 1/16)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2) (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) -4) 1/16)))
(*.f64 (*.f64 (/.f64 1 (cos.f64 re)) -1/2) (*.f64 (/.f64 1 (cos.f64 re)) -1/2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 (pow.f64 (cos.f64 re) -2) 1/4)
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -4) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(/.f64 1 (*.f64 (pow.f64 (cos.f64 re) 2) 4))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(sqrt.f64 (*.f64 (pow.f64 (cos.f64 re) -4) 1/16))
(log.f64 (pow.f64 (exp.f64 1/4) (pow.f64 (cos.f64 re) -2)))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4))))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -6))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(exp.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(exp.f64 (*.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))) 1))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) 1) -2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(exp.f64 (*.f64 (*.f64 (*.f64 -2 (log.f64 (*.f64 (cos.f64 re) -2))) 1) 1))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) -2)) -2)) 3))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (cos.f64 re) -2) -6)) 1/3))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 (cos.f64 re) -2))) -1))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 (cos.f64 re) -2))) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1) 2))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(exp.f64 (+.f64 (neg.f64 (log.f64 (*.f64 (cos.f64 re) -2))) (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1)))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1) (neg.f64 (log.f64 (*.f64 (cos.f64 re) -2)))))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1) (*.f64 (log.f64 (*.f64 (cos.f64 re) -2)) -1)))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 (cos.f64 re) -2) 1/4)))
(/.f64 1/4 (pow.f64 (cos.f64 re) 2))
(*.f64 1/4 (pow.f64 (cos.f64 re) -2))

eval31.0ms (0.3%)

Compiler

Compiled 1555 to 855 computations (45% saved)

prune21.0ms (0.2%)

Pruning

8 alts after pruning (4 fresh and 4 done)

PrunedKeptTotal
New1063109
Fresh011
Picked145
Done000
Total1078115
Accurracy
100.0%
Counts
115 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.2%
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re))
68.5%
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
11.5%
(+.f64 (cos.f64 re) (cos.f64 re))
13.5%
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
58.6%
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
58.1%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
54.9%
(cos.f64 re)
8.4%
1/4
78.2%
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re))
68.5%
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
11.5%
(+.f64 (cos.f64 re) (cos.f64 re))
13.5%
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
58.6%
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
58.1%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
54.9%
(cos.f64 re)
8.4%
1/4
Compiler

Compiled 140 to 100 computations (28.6% saved)

localize176.0ms (1.7%)

Local Accuracy

Found 2 expressions with local accuracy:

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

Compiled 81 to 33 computations (59.3% saved)

series4.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite76.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
416×add-sqr-sqrt
400×pow1
400×*-un-lft-identity
388×add-exp-log
386×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

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

simplify83.0ms (0.8%)

Algorithm
egg-herbie
Rules
1788×unsub-neg
1208×unswap-sqr
814×*-commutative
792×fma-def
580×+-commutative
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01342149
13171901
27911809
329551809
455191803
Stop Event
node limit
Counts
101 → 118
Calls
Call 1
Inputs
(*.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 1/12 (*.f64 (pow.f64 im 4) (+.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 1/12 (*.f64 (pow.f64 im 4) (+.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 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)) (*.f64 1/360 (*.f64 (pow.f64 im 6) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.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 -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 -1/4 (*.f64 (pow.f64 re 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 -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 -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 -1/4 (*.f64 (pow.f64 re 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 -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 -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 -1/4 (*.f64 (pow.f64 re 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/2 (pow.f64 re 2))))
(+.f64 (*.f64 1/24 (pow.f64 re 4)) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/2 (pow.f64 re 2)))))
(+.f64 (*.f64 1/24 (pow.f64 re 4)) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/720 (pow.f64 re 6))))))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 re re)
(+.f64 re -1)
(+.f64 re (neg.f64 re))
(+.f64 re (fma.f64 (neg.f64 re) -1 re))
(+.f64 -1 re)
(+.f64 -1 (neg.f64 re))
(+.f64 -1 (*.f64 (neg.f64 re) re))
(+.f64 -1 (*.f64 (neg.f64 re) -1))
(-.f64 re re)
(-.f64 re -1)
(-.f64 -1 re)
(/.f64 re re)
(/.f64 re -1)
(/.f64 -1 re)
(/.f64 (neg.f64 re) (neg.f64 re))
(pow.f64 re -1)
(pow.f64 re 1/3)
(sqrt.f64 re)
(fabs.f64 re)
(log.f64 (exp.f64 re))
(log.f64 (+.f64 -1 (expm1.f64 re)))
(cbrt.f64 re)
(expm1.f64 (log.f64 re))
(exp.f64 (log.f64 re))
(exp.f64 (*.f64 (log.f64 re) -1))
(log1p.f64 (expm1.f64 re))
(fma.f64 re re -1)
(fma.f64 re re (neg.f64 re))
(fma.f64 re -1 -1)
(fma.f64 -1 re -1)
(fma.f64 -1 -1 re)
(+.f64 -1 (cos.f64 re))
(+.f64 (cos.f64 re) -1)
(+.f64 (cos.f64 re) (cos.f64 re))
(-.f64 (cos.f64 re) -1)
(*.f64 -1 (cos.f64 re))
(*.f64 (cos.f64 re) -1)
(*.f64 (cos.f64 re) (cos.f64 re))
(/.f64 (cos.f64 re) -1)
(/.f64 (cos.f64 re) (+.f64 -1 (-.f64 (cos.f64 re) (cos.f64 re))))
(/.f64 (-.f64 -1 (cos.f64 re)) (-.f64 -1 (cos.f64 re)))
(pow.f64 (cos.f64 re) -1)
(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 -1 (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)) -1))
(log1p.f64 (expm1.f64 (cos.f64 re)))
Outputs
(*.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 (*.f64 re re) -1/2))
(fma.f64 re (*.f64 re -1/2) 1)
(+.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 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 im im)))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (fma.f64 im im 2))
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 im 4) (+.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))))
(fma.f64 1/12 (*.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (pow.f64 im 4)) (fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 im im))))
(fma.f64 1/12 (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (pow.f64 im 4)) (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2)))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) (fma.f64 1/12 (pow.f64 im 4) 2)))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)))
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 im 4) (+.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 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2)) (*.f64 1/360 (*.f64 (pow.f64 im 6) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))))))
(fma.f64 1/12 (*.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (pow.f64 im 4)) (fma.f64 2 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (fma.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (*.f64 im im) (*.f64 (*.f64 1/360 (pow.f64 im 6)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))))))
(+.f64 (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) (*.f64 1/360 (pow.f64 im 6)))) (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) 2)))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (fma.f64 1/360 (pow.f64 im 6) (*.f64 im im)) (fma.f64 1/12 (pow.f64 im 4) 2)))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (fma.f64 im im (*.f64 1/360 (pow.f64 im 6))) (fma.f64 1/12 (pow.f64 im 4) 2)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (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))))))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 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 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 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 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 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/4 (*.f64 re re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (+.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 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 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 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 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 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 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/4 (*.f64 re re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 -1/4 (*.f64 (*.f64 re re) (+.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 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 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 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 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 -1/4 (*.f64 re re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 1/2 (*.f64 im im)) 1)
(fma.f64 1/2 (*.f64 im im) 1)
(+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/2 (pow.f64 re 2))))
(+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 (*.f64 re re) -1/2)))
(fma.f64 1/2 (*.f64 im im) (fma.f64 re (*.f64 re -1/2) 1))
(+.f64 (*.f64 1/24 (pow.f64 re 4)) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/2 (pow.f64 re 2)))))
(fma.f64 1/24 (pow.f64 re 4) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 (*.f64 re re) -1/2))))
(+.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 (*.f64 re re) -1/2)) (fma.f64 1/24 (pow.f64 re 4) 1))
(fma.f64 1/24 (pow.f64 re 4) (fma.f64 1/2 (*.f64 im im) (fma.f64 re (*.f64 re -1/2) 1)))
(+.f64 (*.f64 1/24 (pow.f64 re 4)) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/720 (pow.f64 re 6))))))
(fma.f64 1/24 (pow.f64 re 4) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (fma.f64 -1/2 (*.f64 re re) (*.f64 -1/720 (pow.f64 re 6))))))
(+.f64 (fma.f64 1/2 (*.f64 im im) (fma.f64 (*.f64 re re) -1/2 (*.f64 -1/720 (pow.f64 re 6)))) (fma.f64 1/24 (pow.f64 re 4) 1))
(+.f64 1 (fma.f64 1/24 (pow.f64 re 4) (fma.f64 1/2 (*.f64 im im) (fma.f64 re (*.f64 re -1/2) (*.f64 -1/720 (pow.f64 re 6))))))
(+.f64 (fma.f64 1/24 (pow.f64 re 4) (fma.f64 1/2 (*.f64 im im) (fma.f64 re (*.f64 re -1/2) 1))) (*.f64 -1/720 (pow.f64 re 6)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(+.f64 re re)
(+.f64 re -1)
(+.f64 re (neg.f64 re))
0
(+.f64 re (fma.f64 (neg.f64 re) -1 re))
(+.f64 re (+.f64 re (*.f64 re 1)))
(*.f64 re 3)
(+.f64 -1 re)
(+.f64 re -1)
(+.f64 -1 (neg.f64 re))
(-.f64 -1 re)
(+.f64 -1 (*.f64 (neg.f64 re) re))
(+.f64 -1 (*.f64 re (neg.f64 re)))
(-.f64 -1 (*.f64 re re))
(+.f64 -1 (*.f64 (neg.f64 re) -1))
(+.f64 re -1)
(-.f64 re re)
0
(-.f64 re -1)
(+.f64 re 1)
(-.f64 -1 re)
(/.f64 re re)
1
(/.f64 re -1)
(neg.f64 re)
(/.f64 -1 re)
(/.f64 (neg.f64 re) (neg.f64 re))
1
(pow.f64 re -1)
(/.f64 1 re)
(pow.f64 re 1/3)
(cbrt.f64 re)
(sqrt.f64 re)
(fabs.f64 re)
re
(log.f64 (exp.f64 re))
(fabs.f64 re)
re
(log.f64 (+.f64 -1 (expm1.f64 re)))
(cbrt.f64 re)
(expm1.f64 (log.f64 re))
(+.f64 re -1)
(exp.f64 (log.f64 re))
(fabs.f64 re)
re
(exp.f64 (*.f64 (log.f64 re) -1))
(/.f64 1 re)
(log1p.f64 (expm1.f64 re))
(fabs.f64 re)
re
(fma.f64 re re -1)
(fma.f64 re re (neg.f64 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re -1 -1)
(-.f64 -1 re)
(fma.f64 -1 re -1)
(-.f64 -1 re)
(fma.f64 -1 -1 re)
(+.f64 re 1)
(+.f64 -1 (cos.f64 re))
(+.f64 (cos.f64 re) -1)
(+.f64 -1 (cos.f64 re))
(+.f64 (cos.f64 re) (cos.f64 re))
(*.f64 2 (cos.f64 re))
(-.f64 (cos.f64 re) -1)
(+.f64 (cos.f64 re) 1)
(*.f64 -1 (cos.f64 re))
(neg.f64 (cos.f64 re))
(*.f64 (cos.f64 re) -1)
(neg.f64 (cos.f64 re))
(*.f64 (cos.f64 re) (cos.f64 re))
(pow.f64 (cos.f64 re) 2)
(/.f64 (cos.f64 re) -1)
(/.f64 (cos.f64 re) (+.f64 -1 (-.f64 (cos.f64 re) (cos.f64 re))))
(/.f64 (cos.f64 re) -1)
(/.f64 (-.f64 -1 (cos.f64 re)) (-.f64 -1 (cos.f64 re)))
1
(pow.f64 (cos.f64 re) -1)
(/.f64 1 (cos.f64 re))
(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 -1 (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)) -1))
(/.f64 1 (cos.f64 re))
(log1p.f64 (expm1.f64 (cos.f64 re)))
(cos.f64 re)

eval30.0ms (0.3%)

Compiler

Compiled 1070 to 641 computations (40.1% saved)

prune47.0ms (0.5%)

Pruning

22 alts after pruning (19 fresh and 3 done)

PrunedKeptTotal
New10018118
Fresh011
Picked303
Done134
Total10422126
Accurracy
100.0%
Counts
126 → 22
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.2%
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re))
2.7%
(/.f64 1 re)
2.9%
(/.f64 -1 re)
10.0%
(-.f64 (*.f64 re re) re)
9.5%
(-.f64 -1 (*.f64 re re))
68.5%
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
33.5%
(+.f64 1 (*.f64 (*.f64 re re) -1/2))
46.8%
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
17.0%
(*.f64 (*.f64 -1/4 (*.f64 re re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
3.0%
(*.f64 re 3)
17.0%
(*.f64 1/2 (pow.f64 im 2))
58.1%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
17.0%
(*.f64 1/2 (*.f64 im im))
3.1%
(neg.f64 re)
54.8%
(log1p.f64 (expm1.f64 (cos.f64 re)))
16.6%
(log1p.f64 (expm1.f64 re))
1.7%
(exp.f64 (*.f64 (log.f64 re) -1))
54.9%
(cos.f64 re)
3.0%
re
28.3%
1
8.4%
1/4
2.4%
0
78.2%
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re))
2.7%
(/.f64 1 re)
2.9%
(/.f64 -1 re)
10.0%
(-.f64 (*.f64 re re) re)
9.5%
(-.f64 -1 (*.f64 re re))
68.5%
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
33.5%
(+.f64 1 (*.f64 (*.f64 re re) -1/2))
46.8%
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
17.0%
(*.f64 (*.f64 -1/4 (*.f64 re re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
3.0%
(*.f64 re 3)
17.0%
(*.f64 1/2 (pow.f64 im 2))
58.1%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
17.0%
(*.f64 1/2 (*.f64 im im))
3.1%
(neg.f64 re)
54.8%
(log1p.f64 (expm1.f64 (cos.f64 re)))
16.6%
(log1p.f64 (expm1.f64 re))
1.7%
(exp.f64 (*.f64 (log.f64 re) -1))
54.9%
(cos.f64 re)
3.0%
re
28.3%
1
8.4%
1/4
2.4%
0
Compiler

Compiled 524 to 394 computations (24.8% saved)

localize117.0ms (1.2%)

Local Accuracy

Found 4 expressions with local accuracy:

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

Compiled 75 to 31 computations (58.7% saved)

series3.0ms (0%)

Counts
4 → 72
Calls

18 calls:

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

rewrite106.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1782×log-prod
1352×fma-def
698×expm1-udef
694×log1p-udef
544×fma-neg
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01878
139774
2531074
Stop Event
node limit
Counts
4 → 228
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 im im))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(-.f64 (*.f64 re re) re)
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
Outputs
(+.f64 0 (*.f64 1/2 (*.f64 im im)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2)) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2)))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im)))) 1)
(pow.f64 (*.f64 1/2 (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) 3)
(pow.f64 (*.f64 1/8 (pow.f64 im 6)) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 2)
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))))
(cbrt.f64 (*.f64 1/8 (pow.f64 im 6)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))))
(exp.f64 (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(exp.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 1/2)) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im im))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)))) 1)
(-.f64 (/.f64 (pow.f64 (cos.f64 re) 2) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im)))) (/.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(*.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 1)
(*.f64 1 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)))
(*.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(*.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2))))
(*.f64 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 1/4 (pow.f64 im 4))) (/.f64 1 (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2)) (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3))))
(/.f64 1 (/.f64 (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im))) (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 1/4 (pow.f64 im 4)))))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2)))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (fma.f64 1/4 (pow.f64 im 4) (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (*.f64 1/2 (*.f64 im im)) (cos.f64 re)))))
(/.f64 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 1/4 (pow.f64 im 4))) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im))))
(/.f64 (neg.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3))) (neg.f64 (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 1/4 (pow.f64 im 4)))) (neg.f64 (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 (cos.f64 re) 2)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))))
(pow.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)))))
(log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2) (+.f64 1 (expm1.f64 (cos.f64 re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))) (exp.f64 (cos.f64 re))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))) (+.f64 1 (expm1.f64 (cos.f64 re)))))
(log.f64 (*.f64 (exp.f64 (cos.f64 re)) (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 re))) (pow.f64 (pow.f64 (exp.f64 im) im) 1/2)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 re))) (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im))))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(exp.f64 (log.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 1))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(fma.f64 (*.f64 im im) 1/2 (cos.f64 re))
(fma.f64 (*.f64 1/2 (*.f64 im im)) 1 (cos.f64 re))
(fma.f64 (cos.f64 re) 1 (*.f64 1/2 (*.f64 im im)))
(fma.f64 1 (*.f64 1/2 (*.f64 im im)) (cos.f64 re))
(fma.f64 1 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 (cbrt.f64 (cos.f64 re)) (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (*.f64 1/2 (*.f64 im im)))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (cbrt.f64 (cos.f64 re)) (*.f64 1/2 (*.f64 im im)))
(fma.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (cos.f64 re))
(fma.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cos.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) 1/2) (cos.f64 re))
(fma.f64 (sqrt.f64 (cos.f64 re)) (sqrt.f64 (cos.f64 re)) (*.f64 1/2 (*.f64 im im)))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 1/2)) (cos.f64 re))
(fma.f64 (*.f64 1/2 im) im (cos.f64 re))
(fma.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) (pow.f64 (cbrt.f64 im) 2) (cos.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 im) 1) im (cos.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 im) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im) (cos.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 im) (sqrt.f64 im)) (sqrt.f64 im) (cos.f64 re))
(+.f64 (*.f64 re re) (neg.f64 re))
(+.f64 (*.f64 re re) (*.f64 (neg.f64 re) 1))
(+.f64 (*.f64 re (-.f64 re 1)) (fma.f64 (neg.f64 re) 1 re))
(+.f64 (*.f64 re (-.f64 re 1)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(+.f64 (*.f64 re (-.f64 re 1)) (+.f64 (neg.f64 re) re))
(+.f64 (neg.f64 re) (*.f64 re re))
(+.f64 0 (*.f64 re (-.f64 re 1)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 re (-.f64 re 1)))) (cbrt.f64 (exp.f64 (*.f64 re (-.f64 re 1)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 re (-.f64 re 1))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 re (-.f64 re 1))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 re (-.f64 re 1))))))
(*.f64 re (-.f64 re 1))
(*.f64 (*.f64 re (-.f64 re 1)) 1)
(*.f64 1 (*.f64 re (-.f64 re 1)))
(*.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (cbrt.f64 (*.f64 re (-.f64 re 1))))
(*.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) (hypot.f64 re (sqrt.f64 (neg.f64 re))))
(*.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))))
(*.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)))
(*.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)))
(/.f64 1 (/.f64 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)) (-.f64 (pow.f64 re 6) (pow.f64 re 3))))
(/.f64 1 (/.f64 (fma.f64 re re re) (-.f64 (pow.f64 re 4) (*.f64 re re))))
(/.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (fma.f64 re re re))
(/.f64 (neg.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3))) (neg.f64 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))))
(/.f64 (neg.f64 (-.f64 (pow.f64 re 4) (*.f64 re re))) (neg.f64 (fma.f64 re re re)))
(/.f64 (+.f64 (pow.f64 re 6) (pow.f64 (neg.f64 re) 3)) (+.f64 (pow.f64 re 4) (-.f64 (*.f64 (neg.f64 re) (neg.f64 re)) (*.f64 (*.f64 re re) (neg.f64 re)))))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (*.f64 re re) (neg.f64 re)))
(pow.f64 (*.f64 re (-.f64 re 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 3)
(pow.f64 (pow.f64 (*.f64 re (-.f64 re 1)) 3) 1/3)
(pow.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 re (-.f64 re 1)) 2))
(log.f64 (exp.f64 (*.f64 re (-.f64 re 1))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (-.f64 re 1)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 re) re) (/.f64 1 (exp.f64 re))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 re re))) (exp.f64 (neg.f64 re))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 re re))) (/.f64 1 (exp.f64 re))))
(log.f64 (*.f64 (exp.f64 (neg.f64 re)) (pow.f64 (exp.f64 re) re)))
(log.f64 (*.f64 (exp.f64 (neg.f64 re)) (+.f64 1 (expm1.f64 (*.f64 re re)))))
(log.f64 (*.f64 (/.f64 1 (exp.f64 re)) (pow.f64 (exp.f64 re) re)))
(log.f64 (*.f64 (/.f64 1 (exp.f64 re)) (+.f64 1 (expm1.f64 (*.f64 re re)))))
(log.f64 (/.f64 (pow.f64 (exp.f64 re) re) (+.f64 1 (expm1.f64 re))))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 re re))) (exp.f64 re)))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 re re))) (+.f64 1 (expm1.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 re (-.f64 re 1)) 3))
(expm1.f64 (log1p.f64 (*.f64 re (-.f64 re 1))))
(exp.f64 (log.f64 (*.f64 re (-.f64 re 1))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (-.f64 re 1))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1))))
(fma.f64 re re (neg.f64 re))
(fma.f64 re re (*.f64 (neg.f64 re) 1))
(fma.f64 re (-.f64 re 1) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 re (-.f64 re 1) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 re (-.f64 re 1) (+.f64 (neg.f64 re) re))
(fma.f64 (*.f64 re re) 1 (neg.f64 re))
(fma.f64 (*.f64 re re) 1 (*.f64 (neg.f64 re) 1))
(fma.f64 (*.f64 re (-.f64 re 1)) 1 (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (*.f64 re (-.f64 re 1)) 1 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (*.f64 re (-.f64 re 1)) 1 (+.f64 (neg.f64 re) re))
(fma.f64 1 (*.f64 re re) (neg.f64 re))
(fma.f64 1 (*.f64 re re) (*.f64 (neg.f64 re) 1))
(fma.f64 1 (*.f64 re (-.f64 re 1)) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 1 (*.f64 re (-.f64 re 1)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 1 (*.f64 re (-.f64 re 1)) (+.f64 (neg.f64 re) re))
(fma.f64 1 (neg.f64 re) (*.f64 re re))
(fma.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (+.f64 (neg.f64 re) re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (cbrt.f64 (*.f64 re (-.f64 re 1))) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (cbrt.f64 (*.f64 re (-.f64 re 1))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (cbrt.f64 (*.f64 re (-.f64 re 1))) (+.f64 (neg.f64 re) re))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 re 4)) (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 re 4)) (*.f64 (neg.f64 re) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (neg.f64 (cbrt.f64 re)) (*.f64 re re))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) re) (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) re) (*.f64 (neg.f64 re) 1))
(fma.f64 (cbrt.f64 (pow.f64 re 4)) (pow.f64 (cbrt.f64 re) 2) (neg.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 re 4)) (pow.f64 (cbrt.f64 re) 2) (*.f64 (neg.f64 re) 1))
(fma.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) (hypot.f64 re (sqrt.f64 (neg.f64 re))) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) (hypot.f64 re (sqrt.f64 (neg.f64 re))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) (hypot.f64 re (sqrt.f64 (neg.f64 re))) (+.f64 (neg.f64 re) re))
(fma.f64 (sqrt.f64 re) (neg.f64 (sqrt.f64 re)) (*.f64 re re))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) re) (neg.f64 re))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) re) (*.f64 (neg.f64 re) 1))
(fma.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))) (+.f64 (neg.f64 re) re))
(fma.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)) (+.f64 (neg.f64 re) re))
(fma.f64 (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (neg.f64 re))) (cbrt.f64 (neg.f64 re)) (*.f64 re re))
(fma.f64 (*.f64 re (sqrt.f64 re)) (sqrt.f64 re) (neg.f64 re))
(fma.f64 (*.f64 re (sqrt.f64 re)) (sqrt.f64 re) (*.f64 (neg.f64 re) 1))
(fma.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (neg.f64 re)) (*.f64 re re))
(fma.f64 (neg.f64 (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (*.f64 re re))
(fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) (*.f64 re re))
(fma.f64 -1 re (*.f64 re re))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (+.f64 (neg.f64 re) re))
(fma.f64 (*.f64 re (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (neg.f64 re))
(fma.f64 (*.f64 re (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (*.f64 (neg.f64 re) 1))
(+.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(+.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(+.f64 0 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)))
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 (*.f64 -1/4 re) re)) (*.f64 (fma.f64 im im 2) 1/2))
(+.f64 (*.f64 (*.f64 (*.f64 -1/4 re) re) (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) 1) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) 1))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) 3) (pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) 3)) (fma.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)))
(/.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (+.f64 8 (pow.f64 im 6))) (+.f64 (pow.f64 im 4) (-.f64 4 (*.f64 im (*.f64 im 2)))))
(/.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (+.f64 (pow.f64 im 4) -4)) (fma.f64 im im -2))
(/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (fma.f64 (*.f64 -1/4 re) re 1/2)) (+.f64 (pow.f64 im 4) (-.f64 4 (*.f64 im (*.f64 im 2)))))
(/.f64 (*.f64 (+.f64 (pow.f64 im 4) -4) (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im -2))
(pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (exp.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 3) (pow.f64 (fma.f64 im im 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))))
(exp.f64 (log.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 -1/4 re) re 1/2) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (*.f64 im im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 2 (fma.f64 (*.f64 -1/4 re) re 1/2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (fma.f64 im im 2) (*.f64 (*.f64 -1/4 re) re) (*.f64 (fma.f64 im im 2) 1/2))
(fma.f64 1 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2) (*.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 im im)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2) (*.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 im im)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (*.f64 (*.f64 -1/4 re) re) (fma.f64 im im 2) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) 1 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (cbrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))) (cbrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (cbrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))) (cbrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (sqrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (sqrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (sqrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 im (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2))) (*.f64 im (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2))) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) im) (*.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2)) (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2))) (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2)) (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (*.f64 2 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2))) (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (cbrt.f64 (pow.f64 im 4))) (pow.f64 (cbrt.f64 im) 2) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))

simplify121.0ms (1.2%)

Algorithm
egg-herbie
Rules
1192×unswap-sqr
908×times-frac
542×fma-neg
492×fma-def
478×log-prod
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
05288726
112817452
241127364
Stop Event
node limit
Counts
300 → 300
Calls
Call 1
Inputs
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/2 (pow.f64 re 2))))
(+.f64 (*.f64 1/24 (pow.f64 re 4)) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/2 (pow.f64 re 2)))))
(+.f64 (*.f64 1/24 (pow.f64 re 4)) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/720 (pow.f64 re 6))))))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 -1 re)
(+.f64 (pow.f64 re 2) (*.f64 -1 re))
(+.f64 (pow.f64 re 2) (*.f64 -1 re))
(+.f64 (pow.f64 re 2) (*.f64 -1 re))
(pow.f64 re 2)
(+.f64 (*.f64 -1 re) (pow.f64 re 2))
(+.f64 (*.f64 -1 re) (pow.f64 re 2))
(+.f64 (*.f64 -1 re) (pow.f64 re 2))
(pow.f64 re 2)
(+.f64 (*.f64 -1 re) (pow.f64 re 2))
(+.f64 (*.f64 -1 re) (pow.f64 re 2))
(+.f64 (*.f64 -1 re) (pow.f64 re 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 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 0 (*.f64 1/2 (*.f64 im im)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2)) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2)))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im)))) 1)
(pow.f64 (*.f64 1/2 (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) 3)
(pow.f64 (*.f64 1/8 (pow.f64 im 6)) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 2)
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))))
(cbrt.f64 (*.f64 1/8 (pow.f64 im 6)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))))
(exp.f64 (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(exp.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 1/2)) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im im))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)))) 1)
(-.f64 (/.f64 (pow.f64 (cos.f64 re) 2) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im)))) (/.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(*.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 1)
(*.f64 1 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)))
(*.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(*.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2))))
(*.f64 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 1/4 (pow.f64 im 4))) (/.f64 1 (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2)) (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3))))
(/.f64 1 (/.f64 (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im))) (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 1/4 (pow.f64 im 4)))))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2)))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (fma.f64 1/4 (pow.f64 im 4) (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (*.f64 1/2 (*.f64 im im)) (cos.f64 re)))))
(/.f64 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 1/4 (pow.f64 im 4))) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im))))
(/.f64 (neg.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3))) (neg.f64 (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 1/4 (pow.f64 im 4)))) (neg.f64 (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 (cos.f64 re) 2)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))))
(pow.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)))))
(log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2) (+.f64 1 (expm1.f64 (cos.f64 re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))) (exp.f64 (cos.f64 re))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))) (+.f64 1 (expm1.f64 (cos.f64 re)))))
(log.f64 (*.f64 (exp.f64 (cos.f64 re)) (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 re))) (pow.f64 (pow.f64 (exp.f64 im) im) 1/2)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 re))) (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im))))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(exp.f64 (log.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 1))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(fma.f64 (*.f64 im im) 1/2 (cos.f64 re))
(fma.f64 (*.f64 1/2 (*.f64 im im)) 1 (cos.f64 re))
(fma.f64 (cos.f64 re) 1 (*.f64 1/2 (*.f64 im im)))
(fma.f64 1 (*.f64 1/2 (*.f64 im im)) (cos.f64 re))
(fma.f64 1 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 (cbrt.f64 (cos.f64 re)) (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (*.f64 1/2 (*.f64 im im)))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (cbrt.f64 (cos.f64 re)) (*.f64 1/2 (*.f64 im im)))
(fma.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (cos.f64 re))
(fma.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cos.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) 1/2) (cos.f64 re))
(fma.f64 (sqrt.f64 (cos.f64 re)) (sqrt.f64 (cos.f64 re)) (*.f64 1/2 (*.f64 im im)))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 1/2)) (cos.f64 re))
(fma.f64 (*.f64 1/2 im) im (cos.f64 re))
(fma.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) (pow.f64 (cbrt.f64 im) 2) (cos.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 im) 1) im (cos.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 im) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im) (cos.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 im) (sqrt.f64 im)) (sqrt.f64 im) (cos.f64 re))
(+.f64 (*.f64 re re) (neg.f64 re))
(+.f64 (*.f64 re re) (*.f64 (neg.f64 re) 1))
(+.f64 (*.f64 re (-.f64 re 1)) (fma.f64 (neg.f64 re) 1 re))
(+.f64 (*.f64 re (-.f64 re 1)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(+.f64 (*.f64 re (-.f64 re 1)) (+.f64 (neg.f64 re) re))
(+.f64 (neg.f64 re) (*.f64 re re))
(+.f64 0 (*.f64 re (-.f64 re 1)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 re (-.f64 re 1)))) (cbrt.f64 (exp.f64 (*.f64 re (-.f64 re 1)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 re (-.f64 re 1))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 re (-.f64 re 1))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 re (-.f64 re 1))))))
(*.f64 re (-.f64 re 1))
(*.f64 (*.f64 re (-.f64 re 1)) 1)
(*.f64 1 (*.f64 re (-.f64 re 1)))
(*.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (cbrt.f64 (*.f64 re (-.f64 re 1))))
(*.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) (hypot.f64 re (sqrt.f64 (neg.f64 re))))
(*.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))))
(*.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)))
(*.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)))
(/.f64 1 (/.f64 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)) (-.f64 (pow.f64 re 6) (pow.f64 re 3))))
(/.f64 1 (/.f64 (fma.f64 re re re) (-.f64 (pow.f64 re 4) (*.f64 re re))))
(/.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (fma.f64 re re re))
(/.f64 (neg.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3))) (neg.f64 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))))
(/.f64 (neg.f64 (-.f64 (pow.f64 re 4) (*.f64 re re))) (neg.f64 (fma.f64 re re re)))
(/.f64 (+.f64 (pow.f64 re 6) (pow.f64 (neg.f64 re) 3)) (+.f64 (pow.f64 re 4) (-.f64 (*.f64 (neg.f64 re) (neg.f64 re)) (*.f64 (*.f64 re re) (neg.f64 re)))))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (*.f64 re re) (neg.f64 re)))
(pow.f64 (*.f64 re (-.f64 re 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 3)
(pow.f64 (pow.f64 (*.f64 re (-.f64 re 1)) 3) 1/3)
(pow.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 re (-.f64 re 1)) 2))
(log.f64 (exp.f64 (*.f64 re (-.f64 re 1))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (-.f64 re 1)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 re) re) (/.f64 1 (exp.f64 re))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 re re))) (exp.f64 (neg.f64 re))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 re re))) (/.f64 1 (exp.f64 re))))
(log.f64 (*.f64 (exp.f64 (neg.f64 re)) (pow.f64 (exp.f64 re) re)))
(log.f64 (*.f64 (exp.f64 (neg.f64 re)) (+.f64 1 (expm1.f64 (*.f64 re re)))))
(log.f64 (*.f64 (/.f64 1 (exp.f64 re)) (pow.f64 (exp.f64 re) re)))
(log.f64 (*.f64 (/.f64 1 (exp.f64 re)) (+.f64 1 (expm1.f64 (*.f64 re re)))))
(log.f64 (/.f64 (pow.f64 (exp.f64 re) re) (+.f64 1 (expm1.f64 re))))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 re re))) (exp.f64 re)))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 re re))) (+.f64 1 (expm1.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 re (-.f64 re 1)) 3))
(expm1.f64 (log1p.f64 (*.f64 re (-.f64 re 1))))
(exp.f64 (log.f64 (*.f64 re (-.f64 re 1))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (-.f64 re 1))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1))))
(fma.f64 re re (neg.f64 re))
(fma.f64 re re (*.f64 (neg.f64 re) 1))
(fma.f64 re (-.f64 re 1) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 re (-.f64 re 1) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 re (-.f64 re 1) (+.f64 (neg.f64 re) re))
(fma.f64 (*.f64 re re) 1 (neg.f64 re))
(fma.f64 (*.f64 re re) 1 (*.f64 (neg.f64 re) 1))
(fma.f64 (*.f64 re (-.f64 re 1)) 1 (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (*.f64 re (-.f64 re 1)) 1 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (*.f64 re (-.f64 re 1)) 1 (+.f64 (neg.f64 re) re))
(fma.f64 1 (*.f64 re re) (neg.f64 re))
(fma.f64 1 (*.f64 re re) (*.f64 (neg.f64 re) 1))
(fma.f64 1 (*.f64 re (-.f64 re 1)) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 1 (*.f64 re (-.f64 re 1)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 1 (*.f64 re (-.f64 re 1)) (+.f64 (neg.f64 re) re))
(fma.f64 1 (neg.f64 re) (*.f64 re re))
(fma.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (+.f64 (neg.f64 re) re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (cbrt.f64 (*.f64 re (-.f64 re 1))) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (cbrt.f64 (*.f64 re (-.f64 re 1))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (cbrt.f64 (*.f64 re (-.f64 re 1))) (+.f64 (neg.f64 re) re))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 re 4)) (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 re 4)) (*.f64 (neg.f64 re) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (neg.f64 (cbrt.f64 re)) (*.f64 re re))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) re) (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) re) (*.f64 (neg.f64 re) 1))
(fma.f64 (cbrt.f64 (pow.f64 re 4)) (pow.f64 (cbrt.f64 re) 2) (neg.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 re 4)) (pow.f64 (cbrt.f64 re) 2) (*.f64 (neg.f64 re) 1))
(fma.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) (hypot.f64 re (sqrt.f64 (neg.f64 re))) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) (hypot.f64 re (sqrt.f64 (neg.f64 re))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) (hypot.f64 re (sqrt.f64 (neg.f64 re))) (+.f64 (neg.f64 re) re))
(fma.f64 (sqrt.f64 re) (neg.f64 (sqrt.f64 re)) (*.f64 re re))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) re) (neg.f64 re))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) re) (*.f64 (neg.f64 re) 1))
(fma.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))) (+.f64 (neg.f64 re) re))
(fma.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)) (+.f64 (neg.f64 re) re))
(fma.f64 (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (neg.f64 re))) (cbrt.f64 (neg.f64 re)) (*.f64 re re))
(fma.f64 (*.f64 re (sqrt.f64 re)) (sqrt.f64 re) (neg.f64 re))
(fma.f64 (*.f64 re (sqrt.f64 re)) (sqrt.f64 re) (*.f64 (neg.f64 re) 1))
(fma.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (neg.f64 re)) (*.f64 re re))
(fma.f64 (neg.f64 (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (*.f64 re re))
(fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) (*.f64 re re))
(fma.f64 -1 re (*.f64 re re))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (+.f64 (neg.f64 re) re))
(fma.f64 (*.f64 re (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (neg.f64 re))
(fma.f64 (*.f64 re (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (*.f64 (neg.f64 re) 1))
(+.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(+.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(+.f64 0 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)))
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 (*.f64 -1/4 re) re)) (*.f64 (fma.f64 im im 2) 1/2))
(+.f64 (*.f64 (*.f64 (*.f64 -1/4 re) re) (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) 1) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) 1))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) 3) (pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) 3)) (fma.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)))
(/.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (+.f64 8 (pow.f64 im 6))) (+.f64 (pow.f64 im 4) (-.f64 4 (*.f64 im (*.f64 im 2)))))
(/.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (+.f64 (pow.f64 im 4) -4)) (fma.f64 im im -2))
(/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (fma.f64 (*.f64 -1/4 re) re 1/2)) (+.f64 (pow.f64 im 4) (-.f64 4 (*.f64 im (*.f64 im 2)))))
(/.f64 (*.f64 (+.f64 (pow.f64 im 4) -4) (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im -2))
(pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (exp.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 3) (pow.f64 (fma.f64 im im 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))))
(exp.f64 (log.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 -1/4 re) re 1/2) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (*.f64 im im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 2 (fma.f64 (*.f64 -1/4 re) re 1/2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (fma.f64 im im 2) (*.f64 (*.f64 -1/4 re) re) (*.f64 (fma.f64 im im 2) 1/2))
(fma.f64 1 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2) (*.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 im im)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2) (*.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 im im)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (*.f64 (*.f64 -1/4 re) re) (fma.f64 im im 2) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) 1 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (cbrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))) (cbrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (cbrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))) (cbrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (sqrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (sqrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (sqrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 im (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2))) (*.f64 im (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2))) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) im) (*.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2)) (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2))) (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2)) (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (*.f64 2 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2))) (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (cbrt.f64 (pow.f64 im 4))) (pow.f64 (cbrt.f64 im) 2) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
Outputs
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (fma.f64 im im 2))
(fma.f64 1/2 (*.f64 im im) 1)
(+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/2 (pow.f64 re 2))))
(+.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 -1/2 (*.f64 re re)))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/2 (*.f64 re re)))
(+.f64 (*.f64 1/24 (pow.f64 re 4)) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/2 (pow.f64 re 2)))))
(fma.f64 1/24 (pow.f64 re 4) (+.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 -1/2 (*.f64 re re))))
(fma.f64 1/24 (pow.f64 re 4) (fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/2 (*.f64 re re))))
(+.f64 (*.f64 1/24 (pow.f64 re 4)) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 -1/720 (pow.f64 re 6))))))
(fma.f64 1/24 (pow.f64 re 4) (+.f64 (*.f64 1/2 (fma.f64 im im 2)) (fma.f64 -1/2 (*.f64 re re) (*.f64 -1/720 (pow.f64 re 6)))))
(fma.f64 1/24 (pow.f64 re 4) (fma.f64 1/2 (fma.f64 im im 2) (fma.f64 -1/2 (*.f64 re re) (*.f64 -1/720 (pow.f64 re 6)))))
(fma.f64 1/24 (pow.f64 re 4) (fma.f64 1/2 (fma.f64 im im 2) (fma.f64 -1/720 (pow.f64 re 6) (*.f64 -1/2 (*.f64 re re)))))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(cos.f64 re)
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (cos.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(*.f64 -1 re)
(neg.f64 re)
(+.f64 (pow.f64 re 2) (*.f64 -1 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 (pow.f64 re 2) (*.f64 -1 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 (pow.f64 re 2) (*.f64 -1 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(pow.f64 re 2)
(*.f64 re re)
(+.f64 (*.f64 -1 re) (pow.f64 re 2))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 (*.f64 -1 re) (pow.f64 re 2))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 (*.f64 -1 re) (pow.f64 re 2))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(pow.f64 re 2)
(*.f64 re re)
(+.f64 (*.f64 -1 re) (pow.f64 re 2))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 (*.f64 -1 re) (pow.f64 re 2))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 (*.f64 -1 re) (pow.f64 re 2))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(*.f64 1/2 (+.f64 2 (pow.f64 im 2)))
(*.f64 1/2 (fma.f64 im im 2))
(fma.f64 1/2 (*.f64 im im) 1)
(+.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 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 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 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 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 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (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 (*.f64 re -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 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 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 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 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 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (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 (*.f64 re -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 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 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 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 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 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(*.f64 2 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))))
(*.f64 2 (fma.f64 (*.f64 re -1/4) re 1/2))
(+.f64 1 (*.f64 -1/2 (*.f64 re re)))
(+.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 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im 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)))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im 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)))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (*.f64 im im) (fma.f64 (*.f64 re -1/4) re 1/2))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.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 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im 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)))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im 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)))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(*.f64 (+.f64 1/2 (*.f64 -1/4 (pow.f64 re 2))) (pow.f64 im 2))
(*.f64 (*.f64 im im) (fma.f64 (*.f64 re -1/4) re 1/2))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.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 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im 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)))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im 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)))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(+.f64 0 (*.f64 1/2 (*.f64 im im)))
(*.f64 1/2 (*.f64 im im))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2)) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2)))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) im))) (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) im))))) (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) im)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) im))))) (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))))
(*.f64 1/2 (*.f64 im im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im)))) 1)
(*.f64 1/2 (*.f64 im im))
(pow.f64 (*.f64 1/2 (*.f64 im im)) 1)
(*.f64 1/2 (*.f64 im im))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) 3)
(*.f64 1/2 (*.f64 im im))
(pow.f64 (*.f64 1/8 (pow.f64 im 6)) 1/3)
(cbrt.f64 (*.f64 1/8 (pow.f64 im 6)))
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 2)
(*.f64 1/2 (*.f64 im im))
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))
(*.f64 1/2 (*.f64 im im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 1/2 (*.f64 im im))
(cbrt.f64 (*.f64 1/8 (pow.f64 im 6)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 1/2 (*.f64 im im))
(exp.f64 (fma.f64 2 (log.f64 im) (log.f64 1/2)))
(*.f64 1/2 (*.f64 im im))
(exp.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 1/2)) 1))
(*.f64 1/2 (*.f64 im im))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 1/2 (*.f64 im im))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)))) 1)
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(-.f64 (/.f64 (pow.f64 (cos.f64 re) 2) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im)))) (/.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 -1/4 (pow.f64 im 4))) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 -1/4 (pow.f64 im 4))) (fma.f64 -1/2 (*.f64 im im) (cos.f64 re)))
(*.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 1)
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(*.f64 1 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(*.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 2))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(*.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2))))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) 1) (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2)))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (fma.f64 (*.f64 1/2 (*.f64 im im)) (-.f64 (*.f64 1/2 (*.f64 im im)) (cos.f64 re)) (pow.f64 (cos.f64 re) 2)))
(*.f64 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 1/4 (pow.f64 im 4))) (/.f64 1 (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 -1/4 (pow.f64 im 4))) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 -1/4 (pow.f64 im 4))) (fma.f64 -1/2 (*.f64 im im) (cos.f64 re)))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2)) (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3))))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) 1) (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2)))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (fma.f64 (*.f64 1/2 (*.f64 im im)) (-.f64 (*.f64 1/2 (*.f64 im im)) (cos.f64 re)) (pow.f64 (cos.f64 re) 2)))
(/.f64 1 (/.f64 (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im))) (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 1/4 (pow.f64 im 4)))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 -1/4 (pow.f64 im 4))) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 -1/4 (pow.f64 im 4))) (fma.f64 -1/2 (*.f64 im im) (cos.f64 re)))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2)))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) 1) (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2)))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (fma.f64 (*.f64 1/2 (*.f64 im im)) (-.f64 (*.f64 1/2 (*.f64 im im)) (cos.f64 re)) (pow.f64 (cos.f64 re) 2)))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (fma.f64 1/4 (pow.f64 im 4) (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 (*.f64 1/2 (*.f64 im im)) (cos.f64 re)))))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (fma.f64 1/4 (pow.f64 im 4) (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 1/2 (*.f64 (*.f64 im im) (cos.f64 re))))))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (fma.f64 1/4 (pow.f64 im 4) (*.f64 (cos.f64 re) (fma.f64 -1/2 (*.f64 im im) (cos.f64 re)))))
(/.f64 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 1/4 (pow.f64 im 4))) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 -1/4 (pow.f64 im 4))) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 -1/4 (pow.f64 im 4))) (fma.f64 -1/2 (*.f64 im im) (cos.f64 re)))
(/.f64 (neg.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3))) (neg.f64 (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2))))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) 1) (fma.f64 (*.f64 1/2 (*.f64 im im)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))) (pow.f64 (cos.f64 re) 2)))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (pow.f64 (cos.f64 re) 3)) (fma.f64 (*.f64 1/2 (*.f64 im im)) (-.f64 (*.f64 1/2 (*.f64 im im)) (cos.f64 re)) (pow.f64 (cos.f64 re) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 re) 2) (*.f64 1/4 (pow.f64 im 4)))) (neg.f64 (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 -1/4 (pow.f64 im 4))) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 -1/4 (pow.f64 im 4))) (fma.f64 -1/2 (*.f64 im im) (cos.f64 re)))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 (cos.f64 re) 2)) (fma.f64 1/2 (*.f64 im im) (neg.f64 (cos.f64 re))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 -1/4 (pow.f64 im 4))) (+.f64 (cos.f64 re) (*.f64 -1/2 (*.f64 im im))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) 2) (*.f64 -1/4 (pow.f64 im 4))) (fma.f64 -1/2 (*.f64 im im) (cos.f64 re)))
(pow.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 1)
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 3)
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(pow.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 3) 1/3)
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(pow.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 2)
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(sqrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 2))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(log.f64 (exp.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2) (+.f64 1 (expm1.f64 (cos.f64 re)))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))) (exp.f64 (cos.f64 re))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))) (+.f64 1 (expm1.f64 (cos.f64 re)))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(log.f64 (*.f64 (exp.f64 (cos.f64 re)) (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im))))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 re))) (pow.f64 (pow.f64 (exp.f64 im) im) 1/2)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 re))) (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im))))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re)) 3))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(exp.f64 (log.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))) 1))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (*.f64 im im) (cos.f64 re))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 im (*.f64 1/2 im) (cos.f64 re))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 (*.f64 im im) 1/2 (cos.f64 re))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 (*.f64 1/2 (*.f64 im im)) 1 (cos.f64 re))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 (cos.f64 re) 1 (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 1 (*.f64 1/2 (*.f64 im im)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 1 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 (cbrt.f64 (cos.f64 re)) (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (cbrt.f64 (cos.f64 re)) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (cos.f64 re))
(fma.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cos.f64 re))
(fma.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (cos.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) 1/2) (cos.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 (cbrt.f64 im) 2)) (cos.f64 re))
(fma.f64 (sqrt.f64 (cos.f64 re)) (sqrt.f64 (cos.f64 re)) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 1/2)) (cos.f64 re))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 (*.f64 1/2 im) im (cos.f64 re))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) (pow.f64 (cbrt.f64 im) 2) (cos.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 (cbrt.f64 im) 2)) (cos.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 im) 1) im (cos.f64 re))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 im) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im) (cos.f64 re))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 im) (sqrt.f64 im)) (sqrt.f64 im) (cos.f64 re))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(+.f64 (*.f64 re re) (neg.f64 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 (*.f64 re re) (*.f64 (neg.f64 re) 1))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 (*.f64 re (-.f64 re 1)) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 (*.f64 re (-.f64 re 1)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 (*.f64 re (-.f64 re 1)) (+.f64 (neg.f64 re) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 (neg.f64 re) (*.f64 re re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 0 (*.f64 re (-.f64 re 1)))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 re (-.f64 re 1)))) (cbrt.f64 (exp.f64 (*.f64 re (-.f64 re 1)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 re (-.f64 re 1))))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (+.f64 re -1))) (cbrt.f64 (pow.f64 (exp.f64 re) (+.f64 re -1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (+.f64 re -1)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (+.f64 re -1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (+.f64 re -1)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 re (-.f64 re 1))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 re (-.f64 re 1))))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (+.f64 re -1)))))
(*.f64 re (-.f64 re 1))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(*.f64 (*.f64 re (-.f64 re 1)) 1)
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(*.f64 1 (*.f64 re (-.f64 re 1)))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(*.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (cbrt.f64 (*.f64 re (-.f64 re 1))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(*.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) (hypot.f64 re (sqrt.f64 (neg.f64 re))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(*.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))))
(/.f64 (*.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) 1) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(*.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (fma.f64 re re re))
(*.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)))
(/.f64 1 (/.f64 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)) (-.f64 (pow.f64 re 6) (pow.f64 re 3))))
(/.f64 (*.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) 1) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 1 (/.f64 (fma.f64 re re re) (-.f64 (pow.f64 re 4) (*.f64 re re))))
(*.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (fma.f64 re re re))
(/.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 (*.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) 1) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (fma.f64 re re re))
(*.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3))) (neg.f64 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))))
(/.f64 (*.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) 1) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 (neg.f64 (-.f64 (pow.f64 re 4) (*.f64 re re))) (neg.f64 (fma.f64 re re re)))
(*.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (fma.f64 re re re))
(/.f64 (+.f64 (pow.f64 re 6) (pow.f64 (neg.f64 re) 3)) (+.f64 (pow.f64 re 4) (-.f64 (*.f64 (neg.f64 re) (neg.f64 re)) (*.f64 (*.f64 re re) (neg.f64 re)))))
(/.f64 (*.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) 1) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (*.f64 re re) (neg.f64 re)))
(*.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (fma.f64 re re re))
(pow.f64 (*.f64 re (-.f64 re 1)) 1)
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 3)
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(pow.f64 (pow.f64 (*.f64 re (-.f64 re 1)) 3) 1/3)
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(pow.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) 2)
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(sqrt.f64 (pow.f64 (*.f64 re (-.f64 re 1)) 2))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(log.f64 (exp.f64 (*.f64 re (-.f64 re 1))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (-.f64 re 1)))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(log.f64 (*.f64 (pow.f64 (exp.f64 re) re) (/.f64 1 (exp.f64 re))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 re re))) (exp.f64 (neg.f64 re))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 re re))) (/.f64 1 (exp.f64 re))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(log.f64 (*.f64 (exp.f64 (neg.f64 re)) (pow.f64 (exp.f64 re) re)))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(log.f64 (*.f64 (exp.f64 (neg.f64 re)) (+.f64 1 (expm1.f64 (*.f64 re re)))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(log.f64 (*.f64 (/.f64 1 (exp.f64 re)) (pow.f64 (exp.f64 re) re)))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(log.f64 (*.f64 (/.f64 1 (exp.f64 re)) (+.f64 1 (expm1.f64 (*.f64 re re)))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(log.f64 (/.f64 (pow.f64 (exp.f64 re) re) (+.f64 1 (expm1.f64 re))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 re re))) (exp.f64 re)))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 re re))) (+.f64 1 (expm1.f64 re))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(cbrt.f64 (pow.f64 (*.f64 re (-.f64 re 1)) 3))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(expm1.f64 (log1p.f64 (*.f64 re (-.f64 re 1))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(exp.f64 (log.f64 (*.f64 re (-.f64 re 1))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 re (-.f64 re 1))) 1))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1))))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 re re (neg.f64 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (*.f64 (neg.f64 re) 1))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 re (-.f64 re 1) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 re (-.f64 re 1) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 re (-.f64 re 1) (+.f64 (neg.f64 re) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (*.f64 re re) 1 (neg.f64 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (*.f64 re re) 1 (*.f64 (neg.f64 re) 1))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (*.f64 re (-.f64 re 1)) 1 (fma.f64 (neg.f64 re) 1 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (*.f64 re (-.f64 re 1)) 1 (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (*.f64 re (-.f64 re 1)) 1 (+.f64 (neg.f64 re) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 1 (*.f64 re re) (neg.f64 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 1 (*.f64 re re) (*.f64 (neg.f64 re) 1))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 1 (*.f64 re (-.f64 re 1)) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 1 (*.f64 re (-.f64 re 1)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 1 (*.f64 re (-.f64 re 1)) (+.f64 (neg.f64 re) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 1 (neg.f64 re) (*.f64 re re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (+.f64 (neg.f64 re) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (cbrt.f64 (*.f64 re (-.f64 re 1))) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (cbrt.f64 (*.f64 re (-.f64 re 1))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (-.f64 re 1))) 2) (cbrt.f64 (*.f64 re (-.f64 re 1))) (+.f64 (neg.f64 re) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 re 4)) (neg.f64 re))
(-.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 re 4))) re)
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 re 4)) (*.f64 (neg.f64 re) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 re 4)) (neg.f64 re))
(-.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 re 4))) re)
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (neg.f64 (cbrt.f64 re)) (*.f64 re re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) re) (neg.f64 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) re) (*.f64 (neg.f64 re) 1))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 re 4)) (pow.f64 (cbrt.f64 re) 2) (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 re 4)) (neg.f64 re))
(-.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 re 4))) re)
(fma.f64 (cbrt.f64 (pow.f64 re 4)) (pow.f64 (cbrt.f64 re) 2) (*.f64 (neg.f64 re) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 re 4)) (neg.f64 re))
(-.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 re 4))) re)
(fma.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) (hypot.f64 re (sqrt.f64 (neg.f64 re))) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) (hypot.f64 re (sqrt.f64 (neg.f64 re))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (hypot.f64 re (sqrt.f64 (neg.f64 re))) (hypot.f64 re (sqrt.f64 (neg.f64 re))) (+.f64 (neg.f64 re) re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (sqrt.f64 re) (neg.f64 (sqrt.f64 re)) (*.f64 re re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) re) (neg.f64 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) re) (*.f64 (neg.f64 re) 1))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))) (fma.f64 (neg.f64 re) 1 re))
(/.f64 (*.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) 1) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(fma.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(/.f64 (*.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) 1) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(fma.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (/.f64 1 (fma.f64 re (fma.f64 re re re) (pow.f64 re 4))) (+.f64 (neg.f64 re) re))
(/.f64 (*.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) 1) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(/.f64 (-.f64 (pow.f64 re 6) (pow.f64 re 3)) (fma.f64 re (fma.f64 re re re) (pow.f64 re 4)))
(fma.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)) (fma.f64 (neg.f64 re) 1 re))
(*.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (fma.f64 re re re))
(fma.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(*.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (fma.f64 re re re))
(fma.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)) (+.f64 (neg.f64 re) re))
(*.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (/.f64 1 (fma.f64 re re re)))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 re re)) (fma.f64 re re re))
(fma.f64 (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (neg.f64 re))) (cbrt.f64 (neg.f64 re)) (*.f64 re re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (*.f64 re (sqrt.f64 re)) (sqrt.f64 re) (neg.f64 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (*.f64 re (sqrt.f64 re)) (sqrt.f64 re) (*.f64 (neg.f64 re) 1))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (neg.f64 re)) (*.f64 re re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (neg.f64 (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (*.f64 re re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) (*.f64 re re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 -1 re (*.f64 re re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (fma.f64 (neg.f64 re) 1 re))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (+.f64 re (neg.f64 re)))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (-.f64 re re))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) 0)
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (+.f64 re (neg.f64 re)))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (-.f64 re re))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) 0)
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (+.f64 (neg.f64 re) re))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (+.f64 re (neg.f64 re)))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) (-.f64 re re))
(fma.f64 (+.f64 re (sqrt.f64 re)) (-.f64 re (sqrt.f64 re)) 0)
(fma.f64 (*.f64 re (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (neg.f64 re))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(fma.f64 (*.f64 re (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (*.f64 (neg.f64 re) 1))
(-.f64 (*.f64 re re) re)
(fma.f64 re re (neg.f64 re))
(+.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(+.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(+.f64 0 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 (*.f64 -1/4 re) re)) (*.f64 (fma.f64 im im 2) 1/2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(+.f64 (*.f64 (*.f64 (*.f64 -1/4 re) re) (fma.f64 im im 2)) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(+.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) 1) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) 1))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2)))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 re -1/4) re 1/2)) (fma.f64 im im 2))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 re -1/4) re 1/2)) (fma.f64 im im 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 re -1/4) re 1/2)) (fma.f64 im im 2)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 re (*.f64 re -1/4) 1/2)) (fma.f64 im im 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 re (*.f64 re -1/4) 1/2)) (fma.f64 im im 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2)))))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)))) 1)
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) 3) (pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) 3)) (fma.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) (fma.f64 (*.f64 re -1/4) re 1/2)) 3) (*.f64 (pow.f64 (fma.f64 (*.f64 re -1/4) re 1/2) 3) 8)) (fma.f64 (*.f64 (*.f64 im im) (fma.f64 (*.f64 re -1/4) re 1/2)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 re -1/4) re 1/2)) (*.f64 (*.f64 2 (fma.f64 (*.f64 re -1/4) re 1/2)) (-.f64 (*.f64 2 (fma.f64 (*.f64 re -1/4) re 1/2)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 re -1/4) re 1/2))))))
(/.f64 (fma.f64 (pow.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 3) 8 (pow.f64 (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) 3)) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 re re))) (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (-.f64 2 (*.f64 im im)))) (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (*.f64 (pow.f64 im 4) (fma.f64 re (*.f64 re -1/4) 1/2)))))
(/.f64 (fma.f64 (pow.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 3) 8 (*.f64 (pow.f64 im 6) (pow.f64 (fma.f64 re (*.f64 re -1/4) 1/2) 3))) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 re re))) (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (-.f64 2 (*.f64 im im)))) (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (*.f64 (pow.f64 im 4) (fma.f64 re (*.f64 re -1/4) 1/2)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)))
(/.f64 (-.f64 (*.f64 (*.f64 im (fma.f64 (*.f64 re -1/4) re 1/2)) (*.f64 im (*.f64 (*.f64 im im) (fma.f64 (*.f64 re -1/4) re 1/2)))) (*.f64 (*.f64 (fma.f64 (*.f64 re -1/4) re 1/2) (fma.f64 (*.f64 re -1/4) re 1/2)) 4)) (-.f64 (*.f64 (*.f64 im im) (fma.f64 (*.f64 re -1/4) re 1/2)) (*.f64 2 (fma.f64 (*.f64 re -1/4) re 1/2))))
(/.f64 (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2)) (/.f64 (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (-.f64 (*.f64 im im) 2)) (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (-.f64 (*.f64 im im) 2))))
(/.f64 (*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2)) 1)
(/.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (+.f64 8 (pow.f64 im 6))) (+.f64 (pow.f64 im 4) (-.f64 4 (*.f64 im (*.f64 im 2)))))
(/.f64 (fma.f64 (*.f64 re -1/4) re 1/2) (/.f64 (+.f64 (pow.f64 im 4) (-.f64 4 (*.f64 im (*.f64 im 2)))) (+.f64 (pow.f64 im 6) 8)))
(*.f64 (/.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (+.f64 (pow.f64 im 4) (-.f64 4 (*.f64 im (*.f64 im 2))))) (+.f64 (pow.f64 im 6) 8))
(*.f64 (/.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (+.f64 4 (+.f64 (*.f64 (*.f64 im im) -2) (pow.f64 im 4)))) (+.f64 (pow.f64 im 6) 8))
(/.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (+.f64 (pow.f64 im 4) -4)) (fma.f64 im im -2))
(/.f64 (fma.f64 (*.f64 re -1/4) re 1/2) (/.f64 (fma.f64 im im -2) (+.f64 (pow.f64 im 4) -4)))
(*.f64 (/.f64 (+.f64 (pow.f64 im 4) -4) (fma.f64 im im -2)) (fma.f64 re (*.f64 re -1/4) 1/2))
(/.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (/.f64 (fma.f64 im im -2) (+.f64 (pow.f64 im 4) -4)))
(/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (fma.f64 (*.f64 -1/4 re) re 1/2)) (+.f64 (pow.f64 im 4) (-.f64 4 (*.f64 im (*.f64 im 2)))))
(/.f64 (fma.f64 (*.f64 re -1/4) re 1/2) (/.f64 (+.f64 (pow.f64 im 4) (-.f64 4 (*.f64 im (*.f64 im 2)))) (+.f64 (pow.f64 im 6) 8)))
(*.f64 (/.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (+.f64 (pow.f64 im 4) (-.f64 4 (*.f64 im (*.f64 im 2))))) (+.f64 (pow.f64 im 6) 8))
(*.f64 (/.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (+.f64 4 (+.f64 (*.f64 (*.f64 im im) -2) (pow.f64 im 4)))) (+.f64 (pow.f64 im 6) 8))
(/.f64 (*.f64 (+.f64 (pow.f64 im 4) -4) (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im -2))
(/.f64 (fma.f64 (*.f64 re -1/4) re 1/2) (/.f64 (fma.f64 im im -2) (+.f64 (pow.f64 im 4) -4)))
(*.f64 (/.f64 (+.f64 (pow.f64 im 4) -4) (fma.f64 im im -2)) (fma.f64 re (*.f64 re -1/4) 1/2))
(/.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (/.f64 (fma.f64 im im -2) (+.f64 (pow.f64 im 4) -4)))
(pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)) 1)
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))) 3)
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(pow.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)) 3) 1/3)
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))) 2)
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (fma.f64 im im 2)))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)))))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(log.f64 (*.f64 (exp.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (exp.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2)) 3))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 3) (pow.f64 (fma.f64 im im 2) 3)))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 3)))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(exp.f64 (log.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))) 1))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (fma.f64 im im 2))))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 -1/4 re) re 1/2) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (*.f64 im im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 2 (fma.f64 (*.f64 -1/4 re) re 1/2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (fma.f64 im im 2) (*.f64 (*.f64 -1/4 re) re) (*.f64 (fma.f64 im im 2) 1/2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 1 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 1 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2) (*.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 im im)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2) (*.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (fma.f64 (*.f64 re -1/4) re 1/2)) (*.f64 2 (fma.f64 (*.f64 re -1/4) re 1/2)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (fma.f64 re (*.f64 re -1/4) 1/2)) (+.f64 1 (*.f64 -1/2 (*.f64 re re))))
(fma.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 im im)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (*.f64 (*.f64 -1/4 re) re) (fma.f64 im im 2) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im) 1 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2) 1))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (cbrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))) (cbrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (cbrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))) (cbrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (sqrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (sqrt.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (sqrt.f64 (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (*.f64 im (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2))) (*.f64 im (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2))) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (*.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) im) (*.f64 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) im) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2)) (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2))) (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) 2)) (cbrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (*.f64 2 (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2))) (sqrt.f64 (fma.f64 (*.f64 -1/4 re) re 1/2)) (*.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) im) im (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 1/2 (fma.f64 im im 2) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))))
(*.f64 (fma.f64 re (*.f64 re -1/4) 1/2) (fma.f64 im im 2))
(fma.f64 (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) (cbrt.f64 (pow.f64 im 4))) (pow.f64 (cbrt.f64 im) 2) (*.f64 (fma.f64 (*.f64 -1/4 re) re 1/2) 2))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (fma.f64 (*.f64 re -1/4) re 1/2)) (*.f64 2 (fma.f64 (*.f64 re -1/4) re 1/2)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (fma.f64 re (*.f64 re -1/4) 1/2)) (+.f64 1 (*.f64 -1/2 (*.f64 re re))))

eval96.0ms (1%)

Compiler

Compiled 4826 to 2851 computations (40.9% saved)

prune62.0ms (0.6%)

Pruning

25 alts after pruning (19 fresh and 6 done)

PrunedKeptTotal
New2955300
Fresh01414
Picked235
Done033
Total29725322
Accurracy
100.0%
Counts
322 → 25
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.2%
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re))
3.7%
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (*.f64 re re) (neg.f64 re)))
2.7%
(/.f64 1 re)
2.9%
(/.f64 -1 re)
9.5%
(-.f64 -1 (*.f64 re re))
68.5%
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
33.5%
(+.f64 1 (*.f64 (*.f64 re re) -1/2))
17.0%
(*.f64 (*.f64 -1/4 (*.f64 re re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
10.2%
(*.f64 re re)
3.0%
(*.f64 re 3)
23.9%
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
17.0%
(*.f64 1/2 (pow.f64 im 2))
58.1%
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
17.0%
(*.f64 1/2 (*.f64 im im))
15.3%
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
3.1%
(neg.f64 re)
14.3%
(log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1))))
54.8%
(log1p.f64 (expm1.f64 (cos.f64 re)))
16.6%
(log1p.f64 (expm1.f64 re))
1.7%
(exp.f64 (*.f64 (log.f64 re) -1))
54.9%
(cos.f64 re)
3.0%
re
28.3%
1
8.4%
1/4
2.4%
0
Compiler

Compiled 389 to 234 computations (39.8% saved)

regimes89.0ms (0.9%)

Counts
33 → 1
Calls
Call 1
Inputs
0
1/4
1
re
(neg.f64 re)
(*.f64 re 3)
(*.f64 re re)
(/.f64 -1 re)
(/.f64 1 re)
(*.f64 1/2 (*.f64 im im))
(-.f64 -1 (*.f64 re re))
(-.f64 (*.f64 re re) re)
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
(+.f64 1 (*.f64 (*.f64 re re) -1/2))
(cos.f64 re)
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (*.f64 re re) (neg.f64 re)))
(log1p.f64 (expm1.f64 re))
(exp.f64 (*.f64 (log.f64 re) -1))
(+.f64 (cos.f64 re) (cos.f64 re))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (*.f64 -1/4 (*.f64 re re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(log1p.f64 (expm1.f64 (cos.f64 re)))
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re))
(*.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:

18.0ms
re
18.0ms
im
17.0ms
(cos.f64 re)
17.0ms
(*.f64 1/2 (cos.f64 re))
9.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 241 to 127 computations (47.3% saved)

regimes226.0ms (2.2%)

Counts
32 → 6
Calls
Call 1
Inputs
0
1/4
1
re
(neg.f64 re)
(*.f64 re 3)
(*.f64 re re)
(/.f64 -1 re)
(/.f64 1 re)
(*.f64 1/2 (*.f64 im im))
(-.f64 -1 (*.f64 re re))
(-.f64 (*.f64 re re) re)
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
(+.f64 1 (*.f64 (*.f64 re re) -1/2))
(cos.f64 re)
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (*.f64 re re) (neg.f64 re)))
(log1p.f64 (expm1.f64 re))
(exp.f64 (*.f64 (log.f64 re) -1))
(+.f64 (cos.f64 re) (cos.f64 re))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (*.f64 -1/4 (*.f64 re re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(log1p.f64 (expm1.f64 (cos.f64 re)))
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re))
Outputs
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re))
Calls

3 calls:

144.0ms
im
43.0ms
re
26.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
88.1%3re
95.7%6im
88.5%2(cos.f64 re)
Compiler

Compiled 203 to 102 computations (49.8% saved)

regimes231.0ms (2.3%)

Counts
31 → 5
Calls
Call 1
Inputs
0
1/4
1
re
(neg.f64 re)
(*.f64 re 3)
(*.f64 re re)
(/.f64 -1 re)
(/.f64 1 re)
(*.f64 1/2 (*.f64 im im))
(-.f64 -1 (*.f64 re re))
(-.f64 (*.f64 re re) re)
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
(+.f64 1 (*.f64 (*.f64 re re) -1/2))
(cos.f64 re)
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (*.f64 re re) (neg.f64 re)))
(log1p.f64 (expm1.f64 re))
(exp.f64 (*.f64 (log.f64 re) -1))
(+.f64 (cos.f64 re) (cos.f64 re))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (*.f64 -1/4 (*.f64 re re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(log1p.f64 (expm1.f64 (cos.f64 re)))
Outputs
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
(cos.f64 re)
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))
Calls

3 calls:

96.0ms
im
69.0ms
re
59.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
80.4%5re
85.5%5(cos.f64 re)
89.4%5im
Compiler

Compiled 193 to 99 computations (48.7% saved)

regimes84.0ms (0.8%)

Counts
29 → 6
Calls
Call 1
Inputs
0
1/4
1
re
(neg.f64 re)
(*.f64 re 3)
(*.f64 re re)
(/.f64 -1 re)
(/.f64 1 re)
(*.f64 1/2 (*.f64 im im))
(-.f64 -1 (*.f64 re re))
(-.f64 (*.f64 re re) re)
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
(+.f64 1 (*.f64 (*.f64 re re) -1/2))
(cos.f64 re)
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (*.f64 re re) (neg.f64 re)))
(log1p.f64 (expm1.f64 re))
(exp.f64 (*.f64 (log.f64 re) -1))
(+.f64 (cos.f64 re) (cos.f64 re))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (*.f64 -1/4 (*.f64 re re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
Outputs
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(cos.f64 re)
(*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 1/2 (*.f64 im im))
Calls

1 calls:

78.0ms
im
Results
AccuracySegmentsBranch
88.3%6im
Compiler

Compiled 168 to 87 computations (48.2% saved)

regimes159.0ms (1.6%)

Counts
27 → 6
Calls
Call 1
Inputs
0
1/4
1
re
(neg.f64 re)
(*.f64 re 3)
(*.f64 re re)
(/.f64 -1 re)
(/.f64 1 re)
(*.f64 1/2 (*.f64 im im))
(-.f64 -1 (*.f64 re re))
(-.f64 (*.f64 re re) re)
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
(+.f64 1 (*.f64 (*.f64 re re) -1/2))
(cos.f64 re)
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (*.f64 re re) (neg.f64 re)))
(log1p.f64 (expm1.f64 re))
(exp.f64 (*.f64 (log.f64 re) -1))
(+.f64 (cos.f64 re) (cos.f64 re))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
(log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1))))
(fma.f64 1/2 (*.f64 im im) (cos.f64 re))
Outputs
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
(cos.f64 re)
(log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1))))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
Calls

3 calls:

89.0ms
im
51.0ms
(cos.f64 re)
14.0ms
re
Results
AccuracySegmentsBranch
68.5%1re
74.2%4(cos.f64 re)
79.8%6im
Compiler

Compiled 155 to 83 computations (46.5% saved)

regimes40.0ms (0.4%)

Counts
25 → 3
Calls
Call 1
Inputs
0
1/4
1
re
(neg.f64 re)
(*.f64 re 3)
(*.f64 re re)
(/.f64 -1 re)
(/.f64 1 re)
(*.f64 1/2 (*.f64 im im))
(-.f64 -1 (*.f64 re re))
(-.f64 (*.f64 re re) re)
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
(+.f64 1 (*.f64 (*.f64 re re) -1/2))
(cos.f64 re)
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2)))
(*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
(/.f64 (-.f64 (pow.f64 re 4) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (*.f64 re re) (neg.f64 re)))
(log1p.f64 (expm1.f64 re))
(exp.f64 (*.f64 (log.f64 re) -1))
(+.f64 (cos.f64 re) (cos.f64 re))
(pow.f64 (*.f64 (cos.f64 re) -2) -2)
Outputs
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))
Calls

1 calls:

35.0ms
im
Results
AccuracySegmentsBranch
75.7%3im
Compiler

Compiled 134 to 71 computations (47% saved)

regimes32.0ms (0.3%)

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

1 calls:

28.0ms
im
Results
AccuracySegmentsBranch
75.7%3im
Compiler

Compiled 87 to 48 computations (44.8% saved)

regimes93.0ms (0.9%)

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

2 calls:

51.0ms
im
39.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
74.1%4(cos.f64 re)
73.8%5im
Compiler

Compiled 81 to 45 computations (44.4% saved)

regimes37.0ms (0.4%)

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

2 calls:

24.0ms
(cos.f64 re)
9.0ms
re
Results
AccuracySegmentsBranch
68.5%1re
70.7%3(cos.f64 re)
Compiler

Compiled 71 to 40 computations (43.7% saved)

regimes106.0ms (1.1%)

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

3 calls:

57.0ms
im
25.0ms
re
21.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
56.8%3(cos.f64 re)
74.3%6im
56.8%3re
Compiler

Compiled 66 to 39 computations (40.9% saved)

regimes103.0ms (1%)

Counts
14 → 6
Calls
Call 1
Inputs
0
1/4
1
re
(neg.f64 re)
(*.f64 re 3)
(*.f64 re re)
(/.f64 -1 re)
(/.f64 1 re)
(*.f64 1/2 (*.f64 im im))
(-.f64 -1 (*.f64 re re))
(-.f64 (*.f64 re re) re)
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
(+.f64 1 (*.f64 (*.f64 re re) -1/2))
Outputs
(*.f64 1/2 (*.f64 im im))
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
1
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
(+.f64 1 (*.f64 (*.f64 re re) -1/2))
(*.f64 1/2 (*.f64 im im))
Calls

2 calls:

53.0ms
im
46.0ms
re
Results
AccuracySegmentsBranch
38.9%5re
48.1%6im
Compiler

Compiled 55 to 31 computations (43.6% saved)

regimes53.0ms (0.5%)

Counts
13 → 6
Calls
Call 1
Inputs
0
1/4
1
re
(neg.f64 re)
(*.f64 re 3)
(*.f64 re re)
(/.f64 -1 re)
(/.f64 1 re)
(*.f64 1/2 (*.f64 im im))
(-.f64 -1 (*.f64 re re))
(-.f64 (*.f64 re re) re)
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
Outputs
(*.f64 1/2 (*.f64 im im))
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
1
(+.f64 1/4 (*.f64 (*.f64 re re) 1/4))
(-.f64 -1 (*.f64 re re))
(*.f64 1/2 (*.f64 im im))
Calls

1 calls:

50.0ms
im
Results
AccuracySegmentsBranch
48.1%6im
Compiler

Compiled 45 to 25 computations (44.4% saved)

regimes47.0ms (0.5%)

Counts
12 → 6
Calls
Call 1
Inputs
0
1/4
1
re
(neg.f64 re)
(*.f64 re 3)
(*.f64 re re)
(/.f64 -1 re)
(/.f64 1 re)
(*.f64 1/2 (*.f64 im im))
(-.f64 -1 (*.f64 re re))
(-.f64 (*.f64 re re) re)
Outputs
(*.f64 1/2 (*.f64 im im))
(-.f64 (*.f64 re re) re)
1
(*.f64 re re)
(-.f64 -1 (*.f64 re re))
(*.f64 1/2 (*.f64 im im))
Calls

1 calls:

44.0ms
im
Results
AccuracySegmentsBranch
48.0%6im
Compiler

Compiled 38 to 21 computations (44.7% saved)

regimes47.0ms (0.5%)

Counts
11 → 6
Calls
Call 1
Inputs
0
1/4
1
re
(neg.f64 re)
(*.f64 re 3)
(*.f64 re re)
(/.f64 -1 re)
(/.f64 1 re)
(*.f64 1/2 (*.f64 im im))
(-.f64 -1 (*.f64 re re))
Outputs
(*.f64 1/2 (*.f64 im im))
(*.f64 re re)
1
(*.f64 re re)
(-.f64 -1 (*.f64 re re))
(*.f64 1/2 (*.f64 im im))
Calls

1 calls:

45.0ms
im
Results
AccuracySegmentsBranch
48.0%6im
Compiler

Compiled 33 to 20 computations (39.4% saved)

regimes32.0ms (0.3%)

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

1 calls:

28.0ms
im
Results
AccuracySegmentsBranch
46.1%5im
Compiler

Compiled 28 to 18 computations (35.7% saved)

regimes34.0ms (0.3%)

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

2 calls:

16.0ms
im
15.0ms
re
Results
AccuracySegmentsBranch
34.4%3re
35.7%3im
Compiler

Compiled 26 to 17 computations (34.6% saved)

regimes11.0ms (0.1%)

Counts
6 → 1
Calls
Call 1
Inputs
0
1/4
1
re
(neg.f64 re)
(*.f64 re 3)
Outputs
1
Calls

2 calls:

5.0ms
im
5.0ms
re
Results
AccuracySegmentsBranch
28.3%1re
28.3%1im
Compiler

Compiled 17 to 12 computations (29.4% saved)

regimes7.0ms (0.1%)

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

2 calls:

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

Compiled 10 to 8 computations (20% saved)

regimes5.0ms (0.1%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
0
Outputs
0
Calls

2 calls:

2.0ms
im
2.0ms
re
Results
AccuracySegmentsBranch
2.4%1im
2.4%1re
Compiler

Compiled 9 to 7 computations (22.2% saved)

bsearch204.0ms (2%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
predicate-same
narrow-enough
Steps
TimeLeftRight
45.0ms
1.771065008678854e+150
5.108254530761333e+154
39.0ms
1.7256931298133413e-7
102017679646.02696
80.0ms
-1686.71460103234
-2.8361922340972502e-8
17.0ms
-7.371899743343044e+64
-8.817204292196928e+55
22.0ms
-1.2813607070782754e+156
-3.0578165769447836e+155
Results
64.0ms174×body256valid
49.0ms98×body1024infinite
41.0ms107×body1024valid
22.0ms161×body256infinite
10.0ms45×body512infinite
10.0ms39×body512valid
Compiler

Compiled 1034 to 742 computations (28.2% saved)

bsearch246.0ms (2.4%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
60.0ms
1.7256931298133413e-7
102017679646.02696
78.0ms
-1686.71460103234
-2.8361922340972502e-8
32.0ms
-7.371899743343044e+64
-8.817204292196928e+55
75.0ms
-9.292787410898683e+174
-2.4105557138809376e+166
Results
95.0ms111×body1024valid
67.0ms167×body256infinite
29.0ms86×body1024infinite
22.0ms155×body256valid
16.0ms54×body512valid
7.0ms35×body512infinite
Compiler

Compiled 926 to 714 computations (22.9% saved)

bsearch149.0ms (1.5%)

Algorithm
binary-search
Stop Event
predicate-same
narrow-enough
narrow-enough
narrow-enough
predicate-same
Steps
TimeLeftRight
4.0ms
1.0187406266478414e+293
5.697480968068144e+299
16.0ms
1.9484135362251253e+174
4.949941866141554e+174
51.0ms
1.7256931298133413e-7
102017679646.02696
52.0ms
-2.0520802700652191e+21
-4.805248022008785e+20
26.0ms
-9.292787410898683e+174
-2.4105557138809376e+166
Results
59.0ms84×body1024infinite
25.0ms191×body256infinite
24.0ms86×body256valid
19.0ms48×body1024valid
10.0ms45×body512infinite
6.0ms26×body512valid
Compiler

Compiled 607 to 471 computations (22.4% saved)

bsearch161.0ms (1.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
29.0ms
1.6733168137344898e+95
6.43518391178851e+97
29.0ms
7832485184088.829
94460100548345360.0
40.0ms
-1686.71460103234
-2.8361922340972502e-8
32.0ms
-7.371899743343044e+64
-8.817204292196928e+55
30.0ms
-3.908590742137978e+121
-5.413961221532381e+114
Results
51.0ms335×body256infinite
50.0ms158×body1024infinite
15.0ms67×body512infinite
15.0ms38×body1024valid
11.0ms78×body256valid
7.0ms28×body512valid
Compiler

Compiled 970 to 736 computations (24.1% saved)

bsearch107.0ms (1.1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
34.0ms
1.1941282394837806e+35
1.9241070086820892e+41
73.0ms
-1686.71460103234
-2.8361922340972502e-8
Results
52.0ms51×body1024valid
17.0ms45×body1024infinite
12.0ms82×body256valid
10.0ms79×body256infinite
7.0ms27×body512valid
4.0ms20×body512infinite
Compiler

Compiled 512 to 375 computations (26.8% saved)

bsearch77.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
33.0ms
1.1941282394837806e+35
1.9241070086820892e+41
44.0ms
-1686.71460103234
-2.8361922340972502e-8
Results
23.0ms47×body1024valid
16.0ms45×body1024infinite
13.0ms92×body256valid
10.0ms80×body256infinite
5.0ms21×body512valid
4.0ms19×body512infinite
Compiler

Compiled 474 to 337 computations (28.9% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.6886128755795545
-0.6399758165519839
0.0ms
-0.8474579132794823
-0.843556781552383
0.0ms
-0.9369862431543636
-0.9185702541544881
Compiler

Compiled 18 to 14 computations (22.2% saved)

bsearch193.0ms (1.9%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
27.0ms
3.2752676357325493e+155
3.582300035795556e+159
27.0ms
1.6733168137344898e+95
6.43518391178851e+97
58.0ms
7832485184088.829
94460100548345360.0
35.0ms
-7.371899743343044e+64
-8.817204292196928e+55
45.0ms
-7.255745209926876e+149
-2.29454133789212e+146
Results
95.0ms200×body1024infinite
48.0ms357×body256infinite
21.0ms99×body512infinite
Compiler

Compiled 721 to 570 computations (20.9% saved)

bsearch190.0ms (1.9%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
28.0ms
3.2752676357325493e+155
3.582300035795556e+159
28.0ms
1.6733168137344898e+95
6.43518391178851e+97
27.0ms
7832485184088.829
94460100548345360.0
57.0ms
-7.371899743343044e+64
-8.817204292196928e+55
51.0ms
-7.255745209926876e+149
-2.29454133789212e+146
Results
84.0ms202×body1024infinite
74.0ms362×body256infinite
22.0ms92×body512infinite
Compiler

Compiled 704 to 570 computations (19% saved)

bsearch219.0ms (2.2%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
27.0ms
3.2752676357325493e+155
3.582300035795556e+159
25.0ms
7.173566862825258e+99
1.33751739250974e+102
29.0ms
7832485184088.829
94460100548345360.0
78.0ms
-7.371899743343044e+64
-8.817204292196928e+55
60.0ms
-7.255745209926876e+149
-2.29454133789212e+146
Results
115.0ms218×body1024infinite
77.0ms341×body256infinite
18.0ms81×body512infinite
Compiler

Compiled 654 to 524 computations (19.9% saved)

bsearch161.0ms (1.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
27.0ms
3.2752676357325493e+155
3.582300035795556e+159
24.0ms
7.173566862825258e+99
1.33751739250974e+102
28.0ms
7832485184088.829
94460100548345360.0
48.0ms
-7.371899743343044e+64
-8.817204292196928e+55
34.0ms
-7.255745209926876e+149
-2.29454133789212e+146
Results
58.0ms190×body1024infinite
54.0ms356×body256infinite
41.0ms94×body512infinite
Compiler

Compiled 560 to 413 computations (26.3% saved)

bsearch142.0ms (1.4%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
31.0ms
3.2752676357325493e+155
3.582300035795556e+159
26.0ms
7.173566862825258e+99
1.33751739250974e+102
27.0ms
7832485184088.829
94460100548345360.0
30.0ms
-7.371899743343044e+64
-8.817204292196928e+55
29.0ms
-7.255745209926876e+149
-2.29454133789212e+146
Results
60.0ms192×body1024infinite
50.0ms358×body256infinite
23.0ms90×body512infinite
Compiler

Compiled 526 to 396 computations (24.7% saved)

bsearch137.0ms (1.4%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
32.0ms
1.745478083967913e+134
1.2466720643973722e+138
35.0ms
7832485184088.829
94460100548345360.0
36.0ms
-7.371899743343044e+64
-8.817204292196928e+55
34.0ms
-7.255745209926876e+149
-2.29454133789212e+146
Results
66.0ms170×body1024infinite
43.0ms283×body256infinite
16.0ms75×body512infinite
Compiler

Compiled 412 to 310 computations (24.8% saved)

bsearch62.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
25.0ms
7832485184088.829
94460100548345360.0
37.0ms
-7.371899743343044e+64
-8.817204292196928e+55
Results
26.0ms152×body256infinite
25.0ms82×body1024infinite
8.0ms38×body512infinite
Compiler

Compiled 188 to 150 computations (20.2% saved)

simplify50.0ms (0.5%)

Algorithm
egg-herbie
Rules
40×*-commutative
26×+-commutative
14×sub-neg
10×if-if-or-not
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01851735
12341735
22461735
32561735
42581735
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 im -309999999999999989125253552937006550028857196405624046665743534802256041592384888684472975557283453570252786437487478660119783359339789411119469934854275072) (fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re)) (if (<=.f64 im -499999999999999974693567648537009433481822505506705036541952) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im -5224175567749775/18014398509481984) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (if (<=.f64 im 7566047373982433/18014398509481984) (fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re)) (if (<=.f64 im 13999999999999999624126215218373424466723756628999792018937385960434328649190950682933561119844203475201553338089456373175085254909523321112146188185894912) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re)))))))
(if (<=.f64 im -15499999999999999393831667749222265078453509548602830022211420639281653077705151654503358645033955206207747414011059198184355970936083687475640444707088104397214498947072) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (if (<=.f64 im -259999999999999983986159791827325143293975763964496346236321792) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im -5810724383218509/18446744073709551616) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (if (<=.f64 im 6124895493223875/72057594037927936) (cos.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))))))
(if (<=.f64 im -59999999999999998096432111295738427076716862709520194748523905709690618971404681190693206587076991257743515193685039152797269009525540599074865463363995488800445046963830784) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (if (<=.f64 im -490000000000000000000) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im 3112888062438487/1152921504606846976) (cos.f64 re) (if (<=.f64 im 3700000000000000189240942349071103605589108892722642380860417591831896456189323183713676597965051455701847386488880870075066831073553329267732167561456478771000708232575451136) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im 199999999999999984924696874707920970120897867915847050405221309697980696558932154585003938846536810050657940462325091296687310550613357744883467580356118956661470790120934939455989945801060127957611687906204227736000759240738169004268617951010459111545827258847272611683204755172652495528787968) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (*.f64 1/2 (*.f64 im im)))))))
(if (<=.f64 im -66000000000000001026921464544811639601701292196790054602404858308435029556873876415489035734393131546629614537277440) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (if (<=.f64 im -1419999999999999995477982621407588678526245099037094051840) (log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1)))) (if (<=.f64 im -550) (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2)) (if (<=.f64 im 8000000000000) (cos.f64 re) (if (<=.f64 im 14199999999999999071754314970743660071979509138455599096234672307590296712827131445837300450197504) (log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1)))) (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2)))))))
(if (<=.f64 im -245) (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2)) (if (<=.f64 im 120000000000000007304085773727301632) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))))
(if (<=.f64 im -230) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (if (<=.f64 im 120000000000000007304085773727301632) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))))
(if (<=.f64 (cos.f64 re) -8286623314361713/9007199254740992) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))) (if (<=.f64 (cos.f64 re) -3805541685128069/4503599627370496) (cos.f64 re) (if (<=.f64 (cos.f64 re) -5854679515581645/9007199254740992) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))))))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(if (<=.f64 im -719999999999999989835822865632944157959265449541852202793845466747542382194099575646131193970668846044100736960464551721020871309800940510401037074432) (*.f64 1/2 (*.f64 im im)) (if (<=.f64 im -89999999999999999560026564153015749613241063490849865728) (+.f64 1/4 (*.f64 (*.f64 re re) 1/4)) (if (<=.f64 im 8000000000000) (cos.f64 re) (if (<=.f64 im 1299999999999999981820380598173312042497666976842508447823435801464428615345901343127665394057216) (+.f64 1/4 (*.f64 (*.f64 re re) 1/4)) (if (<=.f64 im 329999999999999986887073051983365257158445238956042850857074078531302353998095472035007477664216376281067266221286379457865168866772671403703834048945192960) (+.f64 1 (*.f64 (*.f64 re re) -1/2)) (*.f64 1/2 (*.f64 im im)))))))
(if (<=.f64 im -12500000000000000612209082189381507244652837544134298609313029682377103294917309452015394115590955797413913308518878459525667911483282315213778452480) (*.f64 1/2 (*.f64 im im)) (if (<=.f64 im -89999999999999999560026564153015749613241063490849865728) (+.f64 1/4 (*.f64 (*.f64 re re) 1/4)) (if (<=.f64 im 8000000000000) 1 (if (<=.f64 im 2799999999999999997327311866530759511144725380551992854311543048574442425792577054152831541444608) (+.f64 1/4 (*.f64 (*.f64 re re) 1/4)) (if (<=.f64 im 329999999999999986887073051983365257158445238956042850857074078531302353998095472035007477664216376281067266221286379457865168866772671403703834048945192960) (+.f64 1 (*.f64 (*.f64 re re) -1/2)) (*.f64 1/2 (*.f64 im im)))))))
(if (<=.f64 im -679999999999999965163043668389208005110007372900480748692751250285246267853795461004704179257092683548905879568092716876709933797236376678760645132288) (*.f64 1/2 (*.f64 im im)) (if (<=.f64 im -89999999999999999560026564153015749613241063490849865728) (+.f64 1/4 (*.f64 (*.f64 re re) 1/4)) (if (<=.f64 im 8000000000000) 1 (if (<=.f64 im 66000000000000002215192148579592033642858480616150201158000865312419448647411960844711473029780078592) (+.f64 1/4 (*.f64 (*.f64 re re) 1/4)) (if (<=.f64 im 329999999999999986887073051983365257158445238956042850857074078531302353998095472035007477664216376281067266221286379457865168866772671403703834048945192960) (-.f64 -1 (*.f64 re re)) (*.f64 1/2 (*.f64 im im)))))))
(if (<=.f64 im -95000000000000001813575257859585038851065440772902957111867460401229812066800461285944776085530626067411949294104548320666476102795688042755178627072) (*.f64 1/2 (*.f64 im im)) (if (<=.f64 im -125000000000000006043336514444207382191049355736314281984) (-.f64 (*.f64 re re) re) (if (<=.f64 im 8000000000000) 1 (if (<=.f64 im 1100000000000000036919869142993200560714308010269170019300014421873657477456866014078524550496334643200) (*.f64 re re) (if (<=.f64 im 329999999999999986887073051983365257158445238956042850857074078531302353998095472035007477664216376281067266221286379457865168866772671403703834048945192960) (-.f64 -1 (*.f64 re re)) (*.f64 1/2 (*.f64 im im)))))))
(if (<=.f64 im -719999999999999989835822865632944157959265449541852202793845466747542382194099575646131193970668846044100736960464551721020871309800940510401037074432) (*.f64 1/2 (*.f64 im im)) (if (<=.f64 im -89999999999999999560026564153015749613241063490849865728) (*.f64 re re) (if (<=.f64 im 8000000000000) 1 (if (<=.f64 im 1250000000000000002394593857168335920269943909081490013941004393249224155254985944951545181385225404416) (*.f64 re re) (if (<=.f64 im 329999999999999986887073051983365257158445238956042850857074078531302353998095472035007477664216376281067266221286379457865168866772671403703834048945192960) (-.f64 -1 (*.f64 re re)) (*.f64 1/2 (*.f64 im im)))))))
(if (<=.f64 im -719999999999999989835822865632944157959265449541852202793845466747542382194099575646131193970668846044100736960464551721020871309800940510401037074432) (*.f64 1/2 (*.f64 im im)) (if (<=.f64 im -89999999999999999560026564153015749613241063490849865728) (*.f64 re re) (if (<=.f64 im 8000000000000) 1 (if (<=.f64 im 1220000000000000007013907797317579868768389929320174277104788231821610384184081590843392043250260152214957873851109129026390557322570104832) (*.f64 re re) (*.f64 1/2 (*.f64 im im))))))
(if (<=.f64 im -89999999999999999560026564153015749613241063490849865728) (*.f64 re re) (if (<=.f64 im 8000000000000) 1 (*.f64 re re)))
1
1/4
0
Outputs
(*.f64 (*.f64 1/2 (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 im -309999999999999989125253552937006550028857196405624046665743534802256041592384888684472975557283453570252786437487478660119783359339789411119469934854275072) (fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re)) (if (<=.f64 im -499999999999999974693567648537009433481822505506705036541952) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im -5224175567749775/18014398509481984) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (if (<=.f64 im 7566047373982433/18014398509481984) (fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re)) (if (<=.f64 im 13999999999999999624126215218373424466723756628999792018937385960434328649190950682933561119844203475201553338089456373175085254909523321112146188185894912) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re)))))))
(if (<=.f64 im -309999999999999989125253552937006550028857196405624046665743534802256041592384888684472975557283453570252786437487478660119783359339789411119469934854275072) (fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re)) (if (<=.f64 im -499999999999999974693567648537009433481822505506705036541952) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (if (<=.f64 im -5224175567749775/18014398509481984) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (if (or (<=.f64 im 7566047373982433/18014398509481984) (not (<=.f64 im 13999999999999999624126215218373424466723756628999792018937385960434328649190950682933561119844203475201553338089456373175085254909523321112146188185894912))) (fma.f64 1/2 (*.f64 (cos.f64 re) (*.f64 im im)) (cos.f64 re)) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))
(if (<=.f64 im -15499999999999999393831667749222265078453509548602830022211420639281653077705151654503358645033955206207747414011059198184355970936083687475640444707088104397214498947072) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (if (<=.f64 im -259999999999999983986159791827325143293975763964496346236321792) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im -5810724383218509/18446744073709551616) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (if (<=.f64 im 6124895493223875/72057594037927936) (cos.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re))))))))
(if (<=.f64 im -15499999999999999393831667749222265078453509548602830022211420639281653077705151654503358645033955206207747414011059198184355970936083687475640444707088104397214498947072) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (if (<=.f64 im -259999999999999983986159791827325143293975763964496346236321792) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (if (or (<=.f64 im -5810724383218509/18446744073709551616) (not (<=.f64 im 6124895493223875/72057594037927936))) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 1/2 (*.f64 -1/4 (*.f64 re re)))) (cos.f64 re))))
(if (<=.f64 im -59999999999999998096432111295738427076716862709520194748523905709690618971404681190693206587076991257743515193685039152797269009525540599074865463363995488800445046963830784) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (if (<=.f64 im -490000000000000000000) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im 3112888062438487/1152921504606846976) (cos.f64 re) (if (<=.f64 im 3700000000000000189240942349071103605589108892722642380860417591831896456189323183713676597965051455701847386488880870075066831073553329267732167561456478771000708232575451136) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im 199999999999999984924696874707920970120897867915847050405221309697980696558932154585003938846536810050657940462325091296687310550613357744883467580356118956661470790120934939455989945801060127957611687906204227736000759240738169004268617951010459111545827258847272611683204755172652495528787968) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (*.f64 1/2 (*.f64 im im)))))))
(if (<=.f64 im -59999999999999998096432111295738427076716862709520194748523905709690618971404681190693206587076991257743515193685039152797269009525540599074865463363995488800445046963830784) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (if (<=.f64 im -490000000000000000000) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (if (<=.f64 im 3112888062438487/1152921504606846976) (cos.f64 re) (if (<=.f64 im 3700000000000000189240942349071103605589108892722642380860417591831896456189323183713676597965051455701847386488880870075066831073553329267732167561456478771000708232575451136) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (if (<=.f64 im 199999999999999984924696874707920970120897867915847050405221309697980696558932154585003938846536810050657940462325091296687310550613357744883467580356118956661470790120934939455989945801060127957611687906204227736000759240738169004268617951010459111545827258847272611683204755172652495528787968) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (*.f64 1/2 (*.f64 im im)))))))
(if (<=.f64 im -66000000000000001026921464544811639601701292196790054602404858308435029556873876415489035734393131546629614537277440) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (if (<=.f64 im -1419999999999999995477982621407588678526245099037094051840) (log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1)))) (if (<=.f64 im -550) (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2)) (if (<=.f64 im 8000000000000) (cos.f64 re) (if (<=.f64 im 14199999999999999071754314970743660071979509138455599096234672307590296712827131445837300450197504) (log1p.f64 (expm1.f64 (*.f64 re (-.f64 re 1)))) (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2)))))))
(if (<=.f64 im -66000000000000001026921464544811639601701292196790054602404858308435029556873876415489035734393131546629614537277440) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (if (<=.f64 im -1419999999999999995477982621407588678526245099037094051840) (log1p.f64 (expm1.f64 (*.f64 re (+.f64 re -1)))) (if (<=.f64 im -550) (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2)) (if (<=.f64 im 8000000000000) (cos.f64 re) (if (<=.f64 im 14199999999999999071754314970743660071979509138455599096234672307590296712827131445837300450197504) (log1p.f64 (expm1.f64 (*.f64 re (+.f64 re -1)))) (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2)))))))
(if (<=.f64 im -245) (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2)) (if (<=.f64 im 120000000000000007304085773727301632) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2))))
(if (or (<=.f64 im -245) (not (<=.f64 im 120000000000000007304085773727301632))) (*.f64 (fma.f64 -1/4 (*.f64 re re) 1/2) (+.f64 (*.f64 im im) 2)) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))))
(if (<=.f64 im -230) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (if (<=.f64 im 120000000000000007304085773727301632) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2)))))
(if (or (<=.f64 im -230) (not (<=.f64 im 120000000000000007304085773727301632))) (*.f64 im (*.f64 im (fma.f64 re (*.f64 re -1/4) 1/2))) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))))
(if (<=.f64 (cos.f64 re) -8286623314361713/9007199254740992) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))) (if (<=.f64 (cos.f64 re) -3805541685128069/4503599627370496) (cos.f64 re) (if (<=.f64 (cos.f64 re) -5854679515581645/9007199254740992) (*.f64 -1/4 (*.f64 (*.f64 re re) (fma.f64 im im 2))) (+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im))))))
(+.f64 (cos.f64 re) (*.f64 1/2 (*.f64 im im)))
(if (<=.f64 im -719999999999999989835822865632944157959265449541852202793845466747542382194099575646131193970668846044100736960464551721020871309800940510401037074432) (*.f64 1/2 (*.f64 im im)) (if (<=.f64 im -89999999999999999560026564153015749613241063490849865728) (+.f64 1/4 (*.f64 (*.f64 re re) 1/4)) (if (<=.f64 im 8000000000000) (cos.f64 re) (if (<=.f64 im 1299999999999999981820380598173312042497666976842508447823435801464428615345901343127665394057216) (+.f64 1/4 (*.f64 (*.f64 re re) 1/4)) (if (<=.f64 im 329999999999999986887073051983365257158445238956042850857074078531302353998095472035007477664216376281067266221286379457865168866772671403703834048945192960) (+.f64 1 (*.f64 (*.f64 re re) -1/2)) (*.f64 1/2 (*.f64 im im)))))))
(if (<=.f64 im -12500000000000000612209082189381507244652837544134298609313029682377103294917309452015394115590955797413913308518878459525667911483282315213778452480) (*.f64 1/2 (*.f64 im im)) (if (<=.f64 im -89999999999999999560026564153015749613241063490849865728) (+.f64 1/4 (*.f64 (*.f64 re re) 1/4)) (if (<=.f64 im 8000000000000) 1 (if (<=.f64 im 2799999999999999997327311866530759511144725380551992854311543048574442425792577054152831541444608) (+.f64 1/4 (*.f64 (*.f64 re re) 1/4)) (if (<=.f64 im 329999999999999986887073051983365257158445238956042850857074078531302353998095472035007477664216376281067266221286379457865168866772671403703834048945192960) (+.f64 1 (*.f64 (*.f64 re re) -1/2)) (*.f64 1/2 (*.f64 im im)))))))
(if (<=.f64 im -679999999999999965163043668389208005110007372900480748692751250285246267853795461004704179257092683548905879568092716876709933797236376678760645132288) (*.f64 1/2 (*.f64 im im)) (if (<=.f64 im -89999999999999999560026564153015749613241063490849865728) (+.f64 1/4 (*.f64 (*.f64 re re) 1/4)) (if (<=.f64 im 8000000000000) 1 (if (<=.f64 im 66000000000000002215192148579592033642858480616150201158000865312419448647411960844711473029780078592) (+.f64 1/4 (*.f64 (*.f64 re re) 1/4)) (if (<=.f64 im 329999999999999986887073051983365257158445238956042850857074078531302353998095472035007477664216376281067266221286379457865168866772671403703834048945192960) (-.f64 -1 (*.f64 re re)) (*.f64 1/2 (*.f64 im im)))))))
(if (<=.f64 im -95000000000000001813575257859585038851065440772902957111867460401229812066800461285944776085530626067411949294104548320666476102795688042755178627072) (*.f64 1/2 (*.f64 im im)) (if (<=.f64 im -125000000000000006043336514444207382191049355736314281984) (-.f64 (*.f64 re re) re) (if (<=.f64 im 8000000000000) 1 (if (<=.f64 im 1100000000000000036919869142993200560714308010269170019300014421873657477456866014078524550496334643200) (*.f64 re re) (if (<=.f64 im 329999999999999986887073051983365257158445238956042850857074078531302353998095472035007477664216376281067266221286379457865168866772671403703834048945192960) (-.f64 -1 (*.f64 re re)) (*.f64 1/2 (*.f64 im im)))))))
(if (<=.f64 im -719999999999999989835822865632944157959265449541852202793845466747542382194099575646131193970668846044100736960464551721020871309800940510401037074432) (*.f64 1/2 (*.f64 im im)) (if (<=.f64 im -89999999999999999560026564153015749613241063490849865728) (*.f64 re re) (if (<=.f64 im 8000000000000) 1 (if (<=.f64 im 1250000000000000002394593857168335920269943909081490013941004393249224155254985944951545181385225404416) (*.f64 re re) (if (<=.f64 im 329999999999999986887073051983365257158445238956042850857074078531302353998095472035007477664216376281067266221286379457865168866772671403703834048945192960) (-.f64 -1 (*.f64 re re)) (*.f64 1/2 (*.f64 im im)))))))
(if (<=.f64 im -719999999999999989835822865632944157959265449541852202793845466747542382194099575646131193970668846044100736960464551721020871309800940510401037074432) (*.f64 1/2 (*.f64 im im)) (if (<=.f64 im -89999999999999999560026564153015749613241063490849865728) (*.f64 re re) (if (<=.f64 im 8000000000000) 1 (if (<=.f64 im 1220000000000000007013907797317579868768389929320174277104788231821610384184081590843392043250260152214957873851109129026390557322570104832) (*.f64 re re) (*.f64 1/2 (*.f64 im im))))))
(if (<=.f64 im -89999999999999999560026564153015749613241063490849865728) (*.f64 re re) (if (<=.f64 im 8000000000000) 1 (*.f64 re re)))
1
1/4
0
Compiler

Compiled 705 to 446 computations (36.7% saved)

soundness1.9s (18.6%)

Rules
1788×unsub-neg
1788×unsub-neg
1788×unsub-neg
1788×unsub-neg
1788×unsub-neg
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0951035
1285921
2906921
34789921
01954
140554
2637754
01342149
13171901
27911809
329551809
455191803
01335
127335
2427735
01954
140554
2637754
01342149
13171901
27911809
329551809
455191803
01954
140554
2637754
01342149
13171901
27911809
329551809
455191803
05288726
112817452
241127364
0951035
1285921
2906921
34789921
02152169
14732073
210612037
332282031
477352031
01342149
13171901
27911809
329551809
455191803
01954
140554
2637754
01342149
13171901
27911809
329551809
455191803
02152169
14732073
210612037
332282031
477352031
01342149
13171901
27911809
329551809
455191803
01342149
13171901
27911809
329551809
455191803
01342149
13171901
27911809
329551809
455191803
05288726
112817452
241127364
05288726
112817452
241127364
01878
139774
2531074
Stop Event
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
unsound
node limit
node limit
node limit
node limit
node limit
unsound
node limit
unsound
unsound
node limit
unsound
node limit
Compiler

Compiled 535 to 379 computations (29.2% saved)

end768.0ms (7.6%)

Compiler

Compiled 1364 to 752 computations (44.9% saved)

Profiling

Loading profile data...