math.sin on complex, real part

Time bar (total: 8.2s)

analyze0.0ms (0%)

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

Compiled 15 to 12 computations (20% saved)

sample2.5s (30%)

Results
831.0ms2617×body256valid
467.0ms997×body1024valid
446.0ms1078×body1024infinite
413.0ms2542×body256infinite
173.0ms513×body512infinite
127.0ms509×body512valid
Bogosity

preprocess96.0ms (1.2%)

Algorithm
egg-herbie
Rules
1384×times-frac
1336×fma-def
864×unswap-sqr
632×associate-/r/
620×associate-*r*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02170
15270
214070
326666
436066
548866
684366
7216166
8478766
9540266
10686266
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (-.f64 0 re)) (exp.f64 re)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (-.f64 0 re)) (exp.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)))
(*.f64 (sin.f64 im) (fma.f64 1/2 (exp.f64 re) (/.f64 1/2 (exp.f64 re))))
Compiler

Compiled 16 to 13 computations (18.8% saved)

simplify88.0ms (1.1%)

Algorithm
egg-herbie
Rules
1568×unswap-sqr
1404×fma-def
900×fabs-mul
862×associate-/r*
692×times-frac
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01435
13035
27435
314133
418933
525633
643833
7110433
8315833
9354033
10403133
11567033
12665033
Stop Event
node limit
Counts
1 → 4
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))

eval1.0ms (0%)

Compiler

Compiled 47 to 25 computations (46.8% saved)

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New314
Fresh101
Picked000
Done000
Total415
Accurracy
100.0%
Counts
5 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 26 to 20 computations (23.1% saved)

localize78.0ms (0.9%)

Local Accuracy

Found 2 expressions with local accuracy:

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

Compiled 36 to 14 computations (61.1% saved)

series5.0ms (0.1%)

Counts
2 → 28
Calls

9 calls:

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

rewrite77.0ms (0.9%)

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
01340
127340
2427740
Stop Event
unsound
Counts
2 → 42
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(sin.f64 re)
Outputs
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) -2))) 1)
(/.f64 (*.f64 (sin.f64 re) -2) -2)
(/.f64 (*.f64 (sin.f64 re) -2) 1)
(/.f64 (*.f64 (sin.f64 re) -2) (+.f64 (*.f64 (sin.f64 re) -2) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))))
(/.f64 (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) -2) 1)
(pow.f64 (*.f64 (sin.f64 re) -2) 3)
(pow.f64 (*.f64 (sin.f64 re) -2) 1/3)
(sqrt.f64 (*.f64 (sin.f64 re) -2))
(fabs.f64 (*.f64 (sin.f64 re) -2))
(log.f64 (pow.f64 1 (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) -2))))
(cbrt.f64 (*.f64 (sin.f64 re) -2))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) -2)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) -2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) -2)) 1))
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) -2)) -2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) -2)))
(fma.f64 1 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(fma.f64 (*.f64 (sin.f64 re) -2) 1 (*.f64 (sin.f64 re) -2))
(-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 1)
(*.f64 (sin.f64 re) (sin.f64 re))
(*.f64 (sin.f64 re) 1)
(*.f64 1 (sin.f64 re))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 (+.f64 re re))) -2)
(pow.f64 (sin.f64 re) -2)
(pow.f64 (sin.f64 re) 1)
(pow.f64 (sin.f64 re) 3)
(pow.f64 (sin.f64 re) 1/3)
(sqrt.f64 (sin.f64 re))
(fabs.f64 (sin.f64 re))
(log.f64 (exp.f64 (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(expm1.f64 (log1p.f64 (sin.f64 re)))
(exp.f64 (log.f64 (sin.f64 re)))
(exp.f64 (*.f64 (log.f64 (sin.f64 re)) 1))
(log1p.f64 (expm1.f64 (sin.f64 re)))

simplify28.0ms (0.3%)

Algorithm
egg-herbie
Rules
176×associate-*r*
172×fma-def
154×associate-*l*
106×*-commutative
102×distribute-lft-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01431438
13851438
218031438
Stop Event
unsound
Counts
70 → 69
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
re
(+.f64 re (*.f64 -1/6 (pow.f64 re 3)))
(+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 re (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) -2))) 1)
(/.f64 (*.f64 (sin.f64 re) -2) -2)
(/.f64 (*.f64 (sin.f64 re) -2) 1)
(/.f64 (*.f64 (sin.f64 re) -2) (+.f64 (*.f64 (sin.f64 re) -2) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))))
(/.f64 (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) -2) 1)
(pow.f64 (*.f64 (sin.f64 re) -2) 3)
(pow.f64 (*.f64 (sin.f64 re) -2) 1/3)
(sqrt.f64 (*.f64 (sin.f64 re) -2))
(fabs.f64 (*.f64 (sin.f64 re) -2))
(log.f64 (pow.f64 1 (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) -2))))
(cbrt.f64 (*.f64 (sin.f64 re) -2))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) -2)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) -2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) -2)) 1))
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) -2)) -2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) -2)))
(fma.f64 1 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(fma.f64 (*.f64 (sin.f64 re) -2) 1 (*.f64 (sin.f64 re) -2))
(-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 1)
(*.f64 (sin.f64 re) (sin.f64 re))
(*.f64 (sin.f64 re) 1)
(*.f64 1 (sin.f64 re))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 (+.f64 re re))) -2)
(pow.f64 (sin.f64 re) -2)
(pow.f64 (sin.f64 re) 1)
(pow.f64 (sin.f64 re) 3)
(pow.f64 (sin.f64 re) 1/3)
(sqrt.f64 (sin.f64 re))
(fabs.f64 (sin.f64 re))
(log.f64 (exp.f64 (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(expm1.f64 (log1p.f64 (sin.f64 re)))
(exp.f64 (log.f64 (sin.f64 re)))
(exp.f64 (*.f64 (log.f64 (sin.f64 re)) 1))
(log1p.f64 (expm1.f64 (sin.f64 re)))
Outputs
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (fma.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 1/240 (pow.f64 re 5)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))
(fma.f64 -1/10080 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 7)) (fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (fma.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 1/240 (pow.f64 re 5)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (*.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 im 4))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(+.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 im 4)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
re
(+.f64 re (*.f64 -1/6 (pow.f64 re 3)))
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(fma.f64 1/120 (pow.f64 re 5) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)))
(+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 re (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(fma.f64 1/120 (pow.f64 re 5) (+.f64 re (fma.f64 -1/6 (pow.f64 re 3) (*.f64 (pow.f64 re 7) -1/5040))))
(+.f64 (sin.f64 re) (sin.f64 re))
(sin.f64 re)
(+.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) -2))) 1)
(sin.f64 re)
(/.f64 (*.f64 (sin.f64 re) -2) -2)
(sin.f64 re)
(/.f64 (*.f64 (sin.f64 re) -2) 1)
(sin.f64 re)
(/.f64 (*.f64 (sin.f64 re) -2) (+.f64 (*.f64 (sin.f64 re) -2) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))))
(sin.f64 re)
(/.f64 (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)))
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) -2) 1)
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) -2) 3)
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) -2) 1/3)
(sin.f64 re)
(sqrt.f64 (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(fabs.f64 (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(log.f64 (pow.f64 1 (sin.f64 re)))
(sin.f64 re)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) -2))))
(sin.f64 re)
(cbrt.f64 (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) -2)))
(sin.f64 re)
(exp.f64 (log.f64 (*.f64 (sin.f64 re) -2)))
(sin.f64 re)
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) -2)) 1))
(sin.f64 re)
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) -2)) -2))
(sin.f64 re)
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) -2)))
(sin.f64 re)
(fma.f64 1 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(fma.f64 (*.f64 (sin.f64 re) -2) 1 (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))
(+.f64 -2 (*.f64 2 (cos.f64 (*.f64 re -2))))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 1)
(sin.f64 re)
(*.f64 (sin.f64 re) (sin.f64 re))
(sin.f64 re)
(*.f64 (sin.f64 re) 1)
(sin.f64 re)
(*.f64 1 (sin.f64 re))
(sin.f64 re)
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 (+.f64 re re))) -2)
(/.f64 (-.f64 (cos.f64 0) (cos.f64 (+.f64 re re))) -2)
(pow.f64 (sin.f64 re) -2)
(sin.f64 re)
(pow.f64 (sin.f64 re) 1)
(sin.f64 re)
(pow.f64 (sin.f64 re) 3)
(sin.f64 re)
(pow.f64 (sin.f64 re) 1/3)
(sin.f64 re)
(sqrt.f64 (sin.f64 re))
(sin.f64 re)
(fabs.f64 (sin.f64 re))
(sin.f64 re)
(log.f64 (exp.f64 (sin.f64 re)))
(sin.f64 re)
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 re))))
(sin.f64 re)
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(sin.f64 re)
(exp.f64 (log.f64 (sin.f64 re)))
(sin.f64 re)
(exp.f64 (*.f64 (log.f64 (sin.f64 re)) 1))
(sin.f64 re)
(log1p.f64 (expm1.f64 (sin.f64 re)))
(sin.f64 re)

eval16.0ms (0.2%)

Compiler

Compiled 999 to 481 computations (51.9% saved)

prune18.0ms (0.2%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New64569
Fresh000
Picked011
Done000
Total64670
Accurracy
100.0%
Counts
70 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
9.4%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
74.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
11.3%
(+.f64 (sin.f64 re) (sin.f64 re))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
61.0%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
53.8%
(sin.f64 re)
9.4%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
74.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
11.3%
(+.f64 (sin.f64 re) (sin.f64 re))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
61.0%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
53.8%
(sin.f64 re)
Compiler

Compiled 202 to 144 computations (28.7% saved)

localize218.0ms (2.6%)

Local Accuracy

Found 7 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
100.0%
(sin.f64 re)
99.7%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
100.0%
(sin.f64 re)
100.0%
(sin.f64 re)
100.0%
(sin.f64 re)
95.4%
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
Compiler

Compiled 88 to 33 computations (62.5% saved)

series10.0ms (0.1%)

Counts
3 → 60
Calls

15 calls:

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

rewrite83.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
408×add-sqr-sqrt
394×pow1
392×*-un-lft-identity
382×add-exp-log
380×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01977
140577
2626877
Stop Event
unsound
Counts
3 → 64
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Outputs
-512
-8
-4
-2
-1
-1/2
0
1/512
1/64
1/16
1/8
1/4
1/2
1
3/2
2
3
4
8
9
16
27
64
im
-512
-8
-4
-2
-1
-1/2
0
1/512
1/64
1/16
1/8
1/4
1/2
1
3/2
2
3
4
8
9
16
27
64
im
(+.f64 re re)
(-.f64 (exp.f64 (log1p.f64 re)) -512)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
(/.f64 (-.f64 re re) (-.f64 re re))
(pow.f64 re -512)
(pow.f64 re 1/3)
(sqrt.f64 re)
(fabs.f64 re)
(log.f64 (exp.f64 re))
(log.f64 (+.f64 -512 (expm1.f64 re)))
(cbrt.f64 re)
re
(expm1.f64 (log1p.f64 re))
(exp.f64 (log.f64 re))
(exp.f64 (*.f64 (log.f64 re) -512))
(log1p.f64 (expm1.f64 re))
(fma.f64 -512 re re)
(fma.f64 re -512 re)

simplify74.0ms (0.9%)

Algorithm
egg-herbie
Rules
754×fma-def
748×distribute-lft-out
600×unswap-sqr
478×associate-*r*
450×associate-*l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01252214
12772194
26762158
326812158
473172158
Stop Event
unsound
Counts
124 → 71
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(/.f64 1/4 (pow.f64 re 2))
(+.f64 1/12 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))))
(+.f64 1/12 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2))))
(+.f64 1/12 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (+.f64 (*.f64 1/60 (pow.f64 re 2)) (*.f64 1/378 (pow.f64 re 4)))))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
re
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
-512
-8
-4
-2
-1
-1/2
0
1/512
1/64
1/16
1/8
1/4
1/2
1
3/2
2
3
4
8
9
16
27
64
-512
-8
-4
-2
-1
-1/2
0
1/512
1/64
1/16
1/8
1/4
1/2
1
3/2
2
3
4
8
9
16
27
64
(+.f64 re re)
(-.f64 (exp.f64 (log1p.f64 re)) -512)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
(/.f64 (-.f64 re re) (-.f64 re re))
(pow.f64 re -512)
(pow.f64 re 1/3)
(sqrt.f64 re)
(fabs.f64 re)
(log.f64 (exp.f64 re))
(log.f64 (+.f64 -512 (expm1.f64 re)))
(cbrt.f64 re)
(expm1.f64 (log1p.f64 re))
(exp.f64 (log.f64 re))
(exp.f64 (*.f64 (log.f64 re) -512))
(log1p.f64 (expm1.f64 re))
(fma.f64 -512 re re)
(fma.f64 re -512 re)
Outputs
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (*.f64 im im) (pow.f64 re 5)) (*.f64 (*.f64 1/2 re) (*.f64 im im))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (*.f64 (*.f64 im im) (+.f64 (*.f64 1/2 re) (*.f64 1/240 (pow.f64 re 5)))))
(*.f64 (*.f64 im im) (+.f64 (*.f64 1/2 re) (fma.f64 -1/12 (pow.f64 re 3) (*.f64 1/240 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (*.f64 im im) (pow.f64 re 5)) (fma.f64 -1/10080 (*.f64 (*.f64 im im) (pow.f64 re 7)) (*.f64 (*.f64 1/2 re) (*.f64 im im)))))
(+.f64 (*.f64 (*.f64 im im) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 -1/10080 (pow.f64 re 7)))) (*.f64 (*.f64 im im) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3)))))
(*.f64 (*.f64 im im) (+.f64 (fma.f64 -1/12 (pow.f64 re 3) (*.f64 1/240 (pow.f64 re 5))) (fma.f64 -1/10080 (pow.f64 re 7) (*.f64 1/2 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(/.f64 1/4 (pow.f64 re 2))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(+.f64 1/12 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(+.f64 1/12 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(+.f64 1/12 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (+.f64 (*.f64 1/60 (pow.f64 re 2)) (*.f64 1/378 (pow.f64 re 4)))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 1/60 (*.f64 re re) (*.f64 1/378 (pow.f64 re 4)))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 (*.f64 re re) 1/60 (*.f64 1/378 (pow.f64 re 4)))))
(+.f64 1/12 (fma.f64 1/378 (pow.f64 re 4) (fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re)))))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
re
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
-512
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
-8
-4
-2
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
-1
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
-1/2
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
0
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
1/512
1/64
1/16
1/8
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
1/4
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
1/2
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
1
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
3/2
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
2
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
3
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
4
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
8
9
16
27
64
-512
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
-8
-4
-2
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
-1
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
-1/2
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
0
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
1/512
1/64
1/16
1/8
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
1/4
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
1/2
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
1
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
3/2
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
2
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
3
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
4
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
8
9
16
27
64
(+.f64 re re)
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(-.f64 (exp.f64 (log1p.f64 re)) -512)
(+.f64 (exp.f64 (log1p.f64 re)) 512)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(/.f64 (-.f64 re re) (-.f64 re re))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(pow.f64 re -512)
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(pow.f64 re 1/3)
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(sqrt.f64 re)
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(fabs.f64 re)
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(log.f64 (exp.f64 re))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(log.f64 (+.f64 -512 (expm1.f64 re)))
(cbrt.f64 re)
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(expm1.f64 (log1p.f64 re))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(exp.f64 (log.f64 re))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(exp.f64 (*.f64 (log.f64 re) -512))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(log1p.f64 (expm1.f64 re))
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(fma.f64 -512 re re)
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(fma.f64 re -512 re)
(*.f64 (*.f64 1/2 re) (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))

eval169.0ms (2.1%)

Compiler

Compiled 8222 to 4292 computations (47.8% saved)

prune68.0ms (0.8%)

Pruning

20 alts after pruning (17 fresh and 3 done)

PrunedKeptTotal
New72617743
Fresh000
Picked325
Done011
Total72920749
Accurracy
100.0%
Counts
749 → 20
Alt Table
Click to see full alt table
StatusAccuracyProgram
3.0%
(fma.f64 re -512 re)
13.0%
(pow.f64 re -512)
5.0%
(/.f64 re (+.f64 re (-.f64 re re)))
3.0%
(/.f64 re -512)
60.2%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (*.f64 im im)))
58.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (+.f64 re (*.f64 (pow.f64 re 3) -1/6))) (*.f64 im im)))
70.5%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))
4.1%
(+.f64 (sin.f64 re) 64)
3.7%
(+.f64 (sin.f64 re) -512)
40.5%
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
50.9%
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
44.3%
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
7.1%
(+.f64 re re)
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
61.0%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
53.8%
(sin.f64 re)
35.6%
(log1p.f64 (expm1.f64 re))
17.1%
(fabs.f64 re)
4.0%
(cbrt.f64 re)
29.7%
re
3.0%
(fma.f64 re -512 re)
13.0%
(pow.f64 re -512)
5.0%
(/.f64 re (+.f64 re (-.f64 re re)))
3.0%
(/.f64 re -512)
60.2%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (*.f64 im im)))
58.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (+.f64 re (*.f64 (pow.f64 re 3) -1/6))) (*.f64 im im)))
70.5%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))
4.1%
(+.f64 (sin.f64 re) 64)
3.7%
(+.f64 (sin.f64 re) -512)
40.5%
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
50.9%
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
44.3%
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
7.1%
(+.f64 re re)
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
61.0%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
53.8%
(sin.f64 re)
35.6%
(log1p.f64 (expm1.f64 re))
17.1%
(fabs.f64 re)
4.0%
(cbrt.f64 re)
29.7%
re
Compiler

Compiled 612 to 444 computations (27.5% saved)

localize347.0ms (4.2%)

Local Accuracy

Found 4 expressions with local accuracy:

NewAccuracyProgram
99.6%
(log1p.f64 (expm1.f64 re))
100.0%
(*.f64 im (sin.f64 re))
100.0%
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
99.9%
(*.f64 im (*.f64 im (sin.f64 re)))
Compiler

Compiled 56 to 19 computations (66.1% saved)

series3.0ms (0%)

Counts
4 → 84
Calls

21 calls:

TimeVariablePointExpression
0.0ms
im
@0
(*.f64 im (sin.f64 re))
0.0ms
re
@inf
(*.f64 im (*.f64 im (sin.f64 re)))
0.0ms
re
@0
(*.f64 im (sin.f64 re))
0.0ms
re
@-inf
(log1p.f64 (expm1.f64 re))
0.0ms
re
@inf
(log1p.f64 (expm1.f64 re))

rewrite76.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1098×log-prod
842×exp-prod
702×prod-exp
668×pow-prod-down
528×pow-prod-up
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01252
121852
2254452
Stop Event
node limit
Counts
4 → 118
Calls
Call 1
Inputs
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 im (sin.f64 re))
(log1p.f64 (expm1.f64 re))
Outputs
(+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 im im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 im im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 im im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 im im)))) 1)
(pow.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 2)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(pow.f64 (*.f64 (sqrt.f64 (sin.f64 re)) im) 2)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im)))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im)))))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 im im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 im im)))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im im)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6)) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (sin.f64 re)))) 2))
(exp.f64 (+.f64 (log.f64 im) (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (*.f64 im (sin.f64 re)))))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 2 (log.f64 im))))
(exp.f64 (+.f64 (log.f64 (*.f64 im (sin.f64 re))) (*.f64 (log.f64 im) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1) (log.f64 im)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1) (*.f64 (log.f64 im) 1)))
(exp.f64 (+.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 (sin.f64 re)) 1)))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(+.f64 0 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re))))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))) 1)
(pow.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) 1)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)) 3)
(pow.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) 1/2)
(pow.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) 3) 1/3)
(pow.f64 (*.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) (sqrt.f64 1/2)) 2)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))) 2)) (cbrt.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))) (sqrt.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))
(exp.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) (sqrt.f64 1/2))) 2))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1) (log.f64 (*.f64 im 1/2))))
(exp.f64 (+.f64 (log.f64 (*.f64 im 1/2)) (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))
(+.f64 0 (*.f64 im (sin.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) im))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) im))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) im))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (sin.f64 re)))) 1)
(pow.f64 (*.f64 im (sin.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (sin.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 im (sin.f64 re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 im (sin.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (sin.f64 re))) 2)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 im (sin.f64 re))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (sin.f64 re)))) 2)) (cbrt.f64 (log.f64 (*.f64 im (sin.f64 re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (sin.f64 re))))) (sqrt.f64 (log.f64 (*.f64 im (sin.f64 re)))))
(sqrt.f64 (pow.f64 (*.f64 im (sin.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 im (sin.f64 re)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 im (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (sin.f64 re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 im (sin.f64 re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (sin.f64 re)))) 2))
(exp.f64 (+.f64 (log.f64 im) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (sin.f64 re))))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (log.f64 (sin.f64 re)) (*.f64 (log.f64 im) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (log.f64 im)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 (log.f64 im) 1)))
(log1p.f64 (expm1.f64 (*.f64 im (sin.f64 re))))
(+.f64 0 re)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (log.f64 (cbrt.f64 (exp.f64 re))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 re))) (log.f64 (sqrt.f64 (exp.f64 re))))
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 re)) 1)
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 re) 2))) (log.f64 (-.f64 1 (expm1.f64 re))))
(*.f64 re 1)
(*.f64 1 re)
(*.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2))
(*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re))
(*.f64 (sqrt.f64 re) (sqrt.f64 re))
(pow.f64 re 1)
(pow.f64 (cbrt.f64 re) 3)
(pow.f64 (*.f64 re re) 1/2)
(pow.f64 (pow.f64 re 3) 1/3)
(pow.f64 (sqrt.f64 re) 2)
(pow.f64 (exp.f64 1) (log.f64 re))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 re)) 2)) (cbrt.f64 (log.f64 re)))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 re))) (sqrt.f64 (log.f64 re)))
(sqrt.f64 (*.f64 re re))
(log.f64 (exp.f64 re))
(cbrt.f64 (pow.f64 re 3))
re
(expm1.f64 (log1p.f64 re))
(exp.f64 (log.f64 re))
(exp.f64 (*.f64 (log.f64 re) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 re) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 re)) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 re)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 re)) 2))

simplify97.0ms (1.2%)

Algorithm
egg-herbie
Rules
1566×log-prod
564×prod-exp
552×associate-+r+
494×associate-+l+
474×distribute-lft-out
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03383786
17853602
225053536
363033536
Stop Event
node limit
Counts
202 → 184
Calls
Call 1
Inputs
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 re (pow.f64 im 2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 re (pow.f64 im 2)))))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 re im)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) im)) (*.f64 re im))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) im)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) im)) (*.f64 re im)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) im)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) im)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) im)) (*.f64 re im))))
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
re
re
re
re
re
re
re
re
re
re
re
re
(+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 im im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 im im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 im im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 im im)))) 1)
(pow.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 2)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(pow.f64 (*.f64 (sqrt.f64 (sin.f64 re)) im) 2)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im)))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im)))))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 im im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 im im)))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im im)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6)) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (sin.f64 re)))) 2))
(exp.f64 (+.f64 (log.f64 im) (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (*.f64 im (sin.f64 re)))))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 2 (log.f64 im))))
(exp.f64 (+.f64 (log.f64 (*.f64 im (sin.f64 re))) (*.f64 (log.f64 im) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1) (log.f64 im)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1) (*.f64 (log.f64 im) 1)))
(exp.f64 (+.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 (sin.f64 re)) 1)))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(+.f64 0 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re))))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))) 1)
(pow.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) 1)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)) 3)
(pow.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) 1/2)
(pow.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) 3) 1/3)
(pow.f64 (*.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) (sqrt.f64 1/2)) 2)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))) 2)) (cbrt.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))) (sqrt.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))
(exp.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) (sqrt.f64 1/2))) 2))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1) (log.f64 (*.f64 im 1/2))))
(exp.f64 (+.f64 (log.f64 (*.f64 im 1/2)) (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))
(+.f64 0 (*.f64 im (sin.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) im))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) im))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) im))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (sin.f64 re)))) 1)
(pow.f64 (*.f64 im (sin.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (sin.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 im (sin.f64 re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 im (sin.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (sin.f64 re))) 2)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 im (sin.f64 re))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (sin.f64 re)))) 2)) (cbrt.f64 (log.f64 (*.f64 im (sin.f64 re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (sin.f64 re))))) (sqrt.f64 (log.f64 (*.f64 im (sin.f64 re)))))
(sqrt.f64 (pow.f64 (*.f64 im (sin.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 im (sin.f64 re)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 im (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (sin.f64 re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 im (sin.f64 re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (sin.f64 re)))) 2))
(exp.f64 (+.f64 (log.f64 im) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (sin.f64 re))))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (log.f64 (sin.f64 re)) (*.f64 (log.f64 im) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (log.f64 im)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 (log.f64 im) 1)))
(log1p.f64 (expm1.f64 (*.f64 im (sin.f64 re))))
(+.f64 0 re)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (log.f64 (cbrt.f64 (exp.f64 re))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 re))) (log.f64 (sqrt.f64 (exp.f64 re))))
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 re)) 1)
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 re) 2))) (log.f64 (-.f64 1 (expm1.f64 re))))
(*.f64 re 1)
(*.f64 1 re)
(*.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2))
(*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re))
(*.f64 (sqrt.f64 re) (sqrt.f64 re))
(pow.f64 re 1)
(pow.f64 (cbrt.f64 re) 3)
(pow.f64 (*.f64 re re) 1/2)
(pow.f64 (pow.f64 re 3) 1/3)
(pow.f64 (sqrt.f64 re) 2)
(pow.f64 (exp.f64 1) (log.f64 re))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 re)) 2)) (cbrt.f64 (log.f64 re)))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 re))) (sqrt.f64 (log.f64 re)))
(sqrt.f64 (*.f64 re re))
(log.f64 (exp.f64 re))
(cbrt.f64 (pow.f64 re 3))
(expm1.f64 (log1p.f64 re))
(exp.f64 (log.f64 re))
(exp.f64 (*.f64 (log.f64 re) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 re) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 re)) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 re)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 re)) 2))
Outputs
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 re (pow.f64 im 2)))
(fma.f64 -1/6 (*.f64 (*.f64 im im) (pow.f64 re 3)) (*.f64 re (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(*.f64 im (*.f64 im (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 re (pow.f64 im 2))))
(fma.f64 -1/6 (*.f64 (*.f64 im im) (pow.f64 re 3)) (fma.f64 1/120 (*.f64 (*.f64 im im) (pow.f64 re 5)) (*.f64 re (*.f64 im im))))
(fma.f64 -1/6 (*.f64 im (*.f64 im (pow.f64 re 3))) (*.f64 (*.f64 im im) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (*.f64 im im) (+.f64 (+.f64 re (*.f64 -1/6 (pow.f64 re 3))) (*.f64 1/120 (pow.f64 re 5))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 re (pow.f64 im 2)))))
(fma.f64 -1/6 (*.f64 (*.f64 im im) (pow.f64 re 3)) (fma.f64 -1/5040 (*.f64 (*.f64 im im) (pow.f64 re 7)) (fma.f64 1/120 (*.f64 (*.f64 im im) (pow.f64 re 5)) (*.f64 re (*.f64 im im)))))
(+.f64 (*.f64 (*.f64 im im) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (*.f64 im im) (+.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/5040 (pow.f64 re 7))) (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (*.f64 re (*.f64 im im)) 1/2)
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (*.f64 (*.f64 re (*.f64 im im)) 1/2))
(*.f64 (*.f64 im im) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12)))
(*.f64 (*.f64 im im) (*.f64 re (+.f64 (*.f64 -1/12 (*.f64 re re)) 1/2)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (*.f64 im im) (pow.f64 re 5)) (*.f64 (*.f64 re (*.f64 im im)) 1/2)))
(fma.f64 (*.f64 im (*.f64 im (pow.f64 re 3))) -1/12 (*.f64 (*.f64 im im) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 5) 1/240))))
(*.f64 (*.f64 im im) (+.f64 (*.f64 re 1/2) (+.f64 (*.f64 (pow.f64 re 5) 1/240) (*.f64 (pow.f64 re 3) -1/12))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (*.f64 im im) (pow.f64 re 5)) (fma.f64 -1/10080 (*.f64 (*.f64 im im) (pow.f64 re 7)) (*.f64 (*.f64 re (*.f64 im im)) 1/2))))
(+.f64 (*.f64 (*.f64 im im) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 7) -1/10080))) (*.f64 (*.f64 im im) (+.f64 (*.f64 (pow.f64 re 3) -1/12) (*.f64 (pow.f64 re 5) 1/240))))
(*.f64 (*.f64 im im) (+.f64 (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 7) -1/10080)) (+.f64 (*.f64 (pow.f64 re 5) 1/240) (*.f64 (pow.f64 re 3) -1/12))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 re im)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) im)) (*.f64 re im))
(fma.f64 -1/6 (*.f64 im (pow.f64 re 3)) (*.f64 re im))
(*.f64 im (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) im)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) im)) (*.f64 re im)))
(fma.f64 1/120 (*.f64 im (pow.f64 re 5)) (fma.f64 -1/6 (*.f64 im (pow.f64 re 3)) (*.f64 re im)))
(fma.f64 1/120 (*.f64 im (pow.f64 re 5)) (*.f64 im (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))))
(*.f64 im (+.f64 (+.f64 re (*.f64 -1/6 (pow.f64 re 3))) (*.f64 1/120 (pow.f64 re 5))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) im)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) im)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) im)) (*.f64 re im))))
(fma.f64 1/120 (*.f64 im (pow.f64 re 5)) (fma.f64 -1/5040 (*.f64 im (pow.f64 re 7)) (fma.f64 -1/6 (*.f64 im (pow.f64 re 3)) (*.f64 re im))))
(fma.f64 1/120 (*.f64 im (pow.f64 re 5)) (fma.f64 -1/5040 (*.f64 im (pow.f64 re 7)) (*.f64 im (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))))
(*.f64 im (+.f64 (+.f64 re (*.f64 -1/6 (pow.f64 re 3))) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
(*.f64 (sin.f64 re) im)
re
re
re
re
re
re
re
re
re
re
re
re
(+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))
(*.f64 (sin.f64 re) (*.f64 im im))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 im im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 im im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 im im)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 im im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 im im)))) 1)
(*.f64 (sin.f64 re) (*.f64 im im))
(pow.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1)
(*.f64 (sin.f64 re) (*.f64 im im))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 3)
(*.f64 (sin.f64 re) (*.f64 im im))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/2)
(*.f64 (sin.f64 re) (*.f64 im im))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/3)
(*.f64 (sin.f64 re) (*.f64 im im))
(pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 2)
(*.f64 (sin.f64 re) (*.f64 im im))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (*.f64 im im))
(pow.f64 (*.f64 (sqrt.f64 (sin.f64 re)) im) 2)
(*.f64 (sin.f64 re) (*.f64 im im))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im)))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im)))))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4))
(*.f64 (sin.f64 re) (*.f64 im im))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 im im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 im im)))))
(*.f64 (sin.f64 re) (*.f64 im im))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6))
(*.f64 (sin.f64 re) (*.f64 im im))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 1) 1))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im im)))) 3))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6)) 1/3))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (sin.f64 re)))) 2))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (+.f64 (log.f64 im) (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1)))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (*.f64 im (sin.f64 re)))))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1)))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 2 (log.f64 im))))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (+.f64 (log.f64 (*.f64 im (sin.f64 re))) (*.f64 (log.f64 im) 1)))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1) (log.f64 im)))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1) (*.f64 (log.f64 im) 1)))
(*.f64 (sin.f64 re) (*.f64 im im))
(exp.f64 (+.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 (sin.f64 re)) 1)))
(*.f64 (sin.f64 re) (*.f64 im im))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (*.f64 im im))
(+.f64 0 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re))))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sin.f64 re) im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sin.f64 re) im)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sin.f64 re) im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re))))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re))))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sin.f64 re) im)))))
(*.f64 (*.f64 (sin.f64 re) im) (log.f64 (sqrt.f64 (exp.f64 im))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))) 1)
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(pow.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) 1)
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)) 3)
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(pow.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) 1/2)
(sqrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4))
(sqrt.f64 (*.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4)))
(pow.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) 3) 1/3)
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(pow.f64 (*.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) (sqrt.f64 1/2)) 2)
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))) 2)) (cbrt.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))) (sqrt.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))))))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4))
(sqrt.f64 (*.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4)))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 im (sin.f64 re))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sin.f64 re) im)))))
(*.f64 (*.f64 (sin.f64 re) im) (log.f64 (sqrt.f64 (exp.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) 3))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(exp.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)) 1))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)) 1) 1))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))) 3))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))) 1/3))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) (sqrt.f64 1/2))) 2))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1) (log.f64 (*.f64 im 1/2))))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(exp.f64 (+.f64 (log.f64 (*.f64 im 1/2)) (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)))
(*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(+.f64 0 (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) im)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) im))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) im))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) im))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) im))))
(*.f64 (sin.f64 re) im)
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (sin.f64 re)))) 1)
(*.f64 (sin.f64 re) im)
(pow.f64 (*.f64 im (sin.f64 re)) 1)
(*.f64 (sin.f64 re) im)
(pow.f64 (cbrt.f64 (*.f64 im (sin.f64 re))) 3)
(*.f64 (sin.f64 re) im)
(pow.f64 (pow.f64 (*.f64 im (sin.f64 re)) 2) 1/2)
(*.f64 (sin.f64 re) im)
(pow.f64 (pow.f64 (*.f64 im (sin.f64 re)) 3) 1/3)
(*.f64 (sin.f64 re) im)
(pow.f64 (sqrt.f64 (*.f64 im (sin.f64 re))) 2)
(*.f64 (sin.f64 re) im)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 im (sin.f64 re))))
(*.f64 (sin.f64 re) im)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 im (sin.f64 re)))) 2)) (cbrt.f64 (log.f64 (*.f64 im (sin.f64 re)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 re) im))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 re) im))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 im (sin.f64 re))))) (sqrt.f64 (log.f64 (*.f64 im (sin.f64 re)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 re) im)))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 re) im))))
(sqrt.f64 (pow.f64 (*.f64 im (sin.f64 re)) 2))
(*.f64 (sin.f64 re) im)
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) im))
(*.f64 (sin.f64 re) im)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (sin.f64 re)))))
(*.f64 (sin.f64 re) im)
(cbrt.f64 (pow.f64 (*.f64 im (sin.f64 re)) 3))
(*.f64 (sin.f64 re) im)
(expm1.f64 (log1p.f64 (*.f64 im (sin.f64 re))))
(*.f64 (sin.f64 re) im)
(exp.f64 (log.f64 (*.f64 im (sin.f64 re))))
(*.f64 (sin.f64 re) im)
(exp.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1))
(*.f64 (sin.f64 re) im)
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (sin.f64 re))) 1) 1))
(*.f64 (sin.f64 re) im)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (sin.f64 re)))) 3))
(*.f64 (sin.f64 re) im)
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 im (sin.f64 re)))) 1/3))
(*.f64 (sin.f64 re) im)
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (sin.f64 re)))) 2))
(*.f64 (sin.f64 re) im)
(exp.f64 (+.f64 (log.f64 im) (*.f64 (log.f64 (sin.f64 re)) 1)))
(*.f64 (sin.f64 re) im)
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (sin.f64 re))))
(*.f64 (sin.f64 re) im)
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (*.f64 (log.f64 (sin.f64 re)) 1)))
(*.f64 (sin.f64 re) im)
(exp.f64 (+.f64 (log.f64 (sin.f64 re)) (*.f64 (log.f64 im) 1)))
(*.f64 (sin.f64 re) im)
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (log.f64 im)))
(*.f64 (sin.f64 re) im)
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 (log.f64 im) 1)))
(*.f64 (sin.f64 re) im)
(log1p.f64 (expm1.f64 (*.f64 im (sin.f64 re))))
(*.f64 (sin.f64 re) im)
(+.f64 0 re)
re
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (log.f64 (cbrt.f64 (exp.f64 re))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 re))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 re))) (log.f64 (sqrt.f64 (exp.f64 re))))
re
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re)))))
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log1p.f64 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re))))
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log1p.f64 (*.f64 (expm1.f64 re) (+.f64 (expm1.f64 re) -1))))
(-.f64 (exp.f64 (log1p.f64 re)) 1)
re
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 re) 2))) (log.f64 (-.f64 1 (expm1.f64 re))))
(-.f64 (log1p.f64 (neg.f64 (pow.f64 (expm1.f64 re) 2))) (log1p.f64 (neg.f64 (expm1.f64 re))))
(*.f64 re 1)
re
(*.f64 1 re)
re
(*.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2))
re
(*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re))
re
(*.f64 (sqrt.f64 re) (sqrt.f64 re))
re
(pow.f64 re 1)
re
(pow.f64 (cbrt.f64 re) 3)
re
(pow.f64 (*.f64 re re) 1/2)
re
(pow.f64 (pow.f64 re 3) 1/3)
re
(pow.f64 (sqrt.f64 re) 2)
re
(pow.f64 (exp.f64 1) (log.f64 re))
re
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 re)) 2)) (cbrt.f64 (log.f64 re)))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 re))) (sqrt.f64 (log.f64 re)))
(sqrt.f64 (*.f64 re re))
re
(log.f64 (exp.f64 re))
re
(cbrt.f64 (pow.f64 re 3))
re
(expm1.f64 (log1p.f64 re))
re
(exp.f64 (log.f64 re))
re
(exp.f64 (*.f64 (log.f64 re) 1))
re
(exp.f64 (*.f64 (*.f64 (log.f64 re) 1) 1))
re
(exp.f64 (*.f64 (log.f64 (cbrt.f64 re)) 3))
re
(exp.f64 (*.f64 (*.f64 3 (log.f64 re)) 1/3))
re
(exp.f64 (*.f64 (log.f64 (sqrt.f64 re)) 2))
re

eval48.0ms (0.6%)

Compiler

Compiled 2934 to 1495 computations (49% saved)

prune54.0ms (0.7%)

Pruning

22 alts after pruning (14 fresh and 8 done)

PrunedKeptTotal
New1813184
Fresh11112
Picked055
Done033
Total18222204
Accurracy
100.0%
Counts
204 → 22
Alt Table
Click to see full alt table
StatusAccuracyProgram
3.0%
(fma.f64 re -512 re)
13.0%
(pow.f64 re -512)
5.0%
(/.f64 re (+.f64 re (-.f64 re re)))
3.0%
(/.f64 re -512)
58.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re (+.f64 (*.f64 -1/12 (*.f64 re re)) 1/2))))
60.2%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (*.f64 im im)))
56.7%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 re im))))
70.5%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))
4.1%
(+.f64 (sin.f64 re) 64)
3.7%
(+.f64 (sin.f64 re) -512)
40.5%
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
50.9%
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
44.3%
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
7.1%
(+.f64 re re)
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
61.0%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
15.3%
(sqrt.f64 (*.f64 re re))
53.8%
(sin.f64 re)
35.6%
(log1p.f64 (expm1.f64 re))
17.1%
(fabs.f64 re)
4.0%
(cbrt.f64 re)
29.7%
re
3.0%
(fma.f64 re -512 re)
13.0%
(pow.f64 re -512)
5.0%
(/.f64 re (+.f64 re (-.f64 re re)))
3.0%
(/.f64 re -512)
58.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re (+.f64 (*.f64 -1/12 (*.f64 re re)) 1/2))))
60.2%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (*.f64 im im)))
56.7%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 re im))))
70.5%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))
4.1%
(+.f64 (sin.f64 re) 64)
3.7%
(+.f64 (sin.f64 re) -512)
40.5%
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
50.9%
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
44.3%
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
7.1%
(+.f64 re re)
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
61.0%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
15.3%
(sqrt.f64 (*.f64 re re))
53.8%
(sin.f64 re)
35.6%
(log1p.f64 (expm1.f64 re))
17.1%
(fabs.f64 re)
4.0%
(cbrt.f64 re)
29.7%
re
Compiler

Compiled 618 to 444 computations (28.2% saved)

localize529.0ms (6.4%)

Local Accuracy

Found 9 expressions with local accuracy:

NewAccuracyProgram
100.0%
(sin.f64 re)
100.0%
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
95.4%
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
100.0%
(+.f64 (sin.f64 re) 64)
100.0%
(sin.f64 re)
100.0%
(*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
100.0%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (*.f64 im im)))
89.5%
(*.f64 (*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (*.f64 im im))
73.4%
(-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))
Compiler

Compiled 122 to 73 computations (40.2% saved)

series9.0ms (0.1%)

Counts
6 → 108
Calls

27 calls:

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

rewrite116.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
1562×fma-def
840×expm1-udef
836×log1p-udef
480×add-sqr-sqrt
468×pow1
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
021184
1470176
26446160
Stop Event
node limit
Counts
6 → 222
Calls
Call 1
Inputs
(-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))
(*.f64 (*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (*.f64 im im))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (*.f64 im im)))
(*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(+.f64 (sin.f64 re) 64)
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
Outputs
(+.f64 -2 (*.f64 (cos.f64 (*.f64 -2 re)) 2))
(+.f64 -2 (*.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) 1))
(+.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) -2)
(*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1)
(*.f64 1 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2))
(*.f64 (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 2) (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(*.f64 (sqrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) (sqrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(*.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3))) (/.f64 1 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4)))
(*.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2))) (/.f64 1 (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2)))
(/.f64 1 (/.f64 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4) (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3)))))
(/.f64 1 (/.f64 (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2)))))
(/.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3))) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4))
(/.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2))
(/.f64 (neg.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3)))) (neg.f64 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4)))
(/.f64 (neg.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2)))) (neg.f64 (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2)))
(/.f64 (+.f64 -8 (pow.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) 3)) (+.f64 4 (-.f64 (*.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) (*.f64 (cos.f64 (*.f64 -2 re)) 2)) (*.f64 -2 (*.f64 (cos.f64 (*.f64 -2 re)) 2)))))
(/.f64 (-.f64 4 (*.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) (*.f64 (cos.f64 (*.f64 -2 re)) 2))) (-.f64 -2 (*.f64 (cos.f64 (*.f64 -2 re)) 2)))
(pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1)
(pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 3)
(pow.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 2)
(sqrt.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2))
(log.f64 (exp.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2))))
(cbrt.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 3))
(expm1.f64 (log1p.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(exp.f64 (log.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(exp.f64 (*.f64 (log.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 1))
(log1p.f64 (expm1.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(fma.f64 -2 (neg.f64 (cos.f64 (*.f64 -2 re))) -2)
(fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)
(fma.f64 1 (*.f64 (cos.f64 (*.f64 -2 re)) 2) -2)
(fma.f64 (cbrt.f64 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2))) (neg.f64 (cbrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) -2)
(fma.f64 (sqrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (neg.f64 (sqrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) -2)
(fma.f64 2 (cos.f64 (*.f64 -2 re)) -2)
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2)) (cbrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2))) (cbrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2)) -2)
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2)) (sqrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2)) -2)
(fma.f64 -1 (*.f64 -2 (cos.f64 (*.f64 -2 re))) -2)
(fma.f64 (neg.f64 (cos.f64 (*.f64 -2 re))) -2 -2)
(fma.f64 (neg.f64 (cbrt.f64 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2)))) (cbrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) -2)
(fma.f64 (neg.f64 (sqrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (sqrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) -2)
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 -2 re))) 2)) (cbrt.f64 (cos.f64 (*.f64 -2 re))) -2)
(fma.f64 (*.f64 2 (sqrt.f64 (cos.f64 (*.f64 -2 re)))) (sqrt.f64 (cos.f64 (*.f64 -2 re))) -2)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))) 1)
(pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) 2)
(sqrt.f64 (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) (*.f64 im im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) 3))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))))
(exp.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)))) 1)
(-.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))) (/.f64 (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)) (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))))
(*.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 1)
(*.f64 1 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)))
(*.f64 (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) (pow.f64 (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 2) (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(*.f64 (sqrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) (sqrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(*.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4))) (/.f64 1 (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)) (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3))))
(/.f64 1 (/.f64 (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4))) (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (neg.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3))) (neg.f64 (fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)))) (neg.f64 (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)) (pow.f64 (sin.f64 re) 2)) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)))
(pow.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 1)
(pow.f64 (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 3)
(pow.f64 (pow.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 2)
(sqrt.f64 (pow.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 2))
(log.f64 (exp.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)))))
(cbrt.f64 (pow.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 3))
(expm1.f64 (log1p.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(exp.f64 (log.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 1))
(log1p.f64 (expm1.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))
(fma.f64 1/2 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) (*.f64 im im) (sin.f64 re))
(fma.f64 im (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) 1 (sin.f64 re))
(fma.f64 (sin.f64 re) 1 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(fma.f64 1 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re))
(fma.f64 1 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) 2) (sin.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) 2) (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) (sin.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 2) (*.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (*.f64 im im)) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (sin.f64 re))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (*.f64 im (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) (*.f64 im (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) (sin.f64 re))
(fma.f64 (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (*.f64 (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) im (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 1/2 (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) 1/2) (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 2)) (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) 1) im (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) (cbrt.f64 (*.f64 im im))) (cbrt.f64 im) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) (sqrt.f64 im)) (sqrt.f64 im) (sin.f64 re))
(+.f64 -1 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -2 re)) 2)))
(+.f64 -1 (*.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) 1/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) 1)
(/.f64 (*.f64 1/2 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3)))) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4))
(/.f64 (*.f64 1/2 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2)))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2))
(/.f64 (*.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3))) 1/2) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4))
(/.f64 (*.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2))) 1/2) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2))
(pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 2)
(sqrt.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4))
(log.f64 (pow.f64 (exp.f64 1/2) (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)))
(exp.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)))
(-.f64 (exp.f64 (log1p.f64 (+.f64 (sin.f64 re) 64))) 1)
(-.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (+.f64 (sin.f64 re) -64)) (/.f64 4096 (+.f64 (sin.f64 re) -64)))
(*.f64 (+.f64 (sin.f64 re) 64) 1)
(*.f64 1 (+.f64 (sin.f64 re) 64))
(*.f64 (cbrt.f64 (+.f64 (sin.f64 re) 64)) (pow.f64 (cbrt.f64 (+.f64 (sin.f64 re) 64)) 2))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 (sin.f64 re) 64)) 2) (cbrt.f64 (+.f64 (sin.f64 re) 64)))
(*.f64 (sqrt.f64 (+.f64 (sin.f64 re) 64)) (sqrt.f64 (+.f64 (sin.f64 re) 64)))
(*.f64 (+.f64 262144 (pow.f64 (sin.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 4096 (*.f64 (sin.f64 re) 64)))))
(*.f64 (fma.f64 (sin.f64 re) (sin.f64 re) -4096) (/.f64 1 (+.f64 (sin.f64 re) -64)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 4096 (*.f64 (sin.f64 re) 64))) (+.f64 262144 (pow.f64 (sin.f64 re) 3))))
(/.f64 1 (/.f64 (+.f64 (sin.f64 re) -64) (fma.f64 (sin.f64 re) (sin.f64 re) -4096)))
(/.f64 (+.f64 262144 (pow.f64 (sin.f64 re) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 4096 (*.f64 (sin.f64 re) 64))))
(/.f64 (+.f64 262144 (pow.f64 (sin.f64 re) 3)) (+.f64 4096 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) 64))))
(/.f64 (fma.f64 (sin.f64 re) (sin.f64 re) -4096) (+.f64 (sin.f64 re) -64))
(/.f64 (neg.f64 (+.f64 262144 (pow.f64 (sin.f64 re) 3))) (neg.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 4096 (*.f64 (sin.f64 re) 64)))))
(/.f64 (neg.f64 (fma.f64 (sin.f64 re) (sin.f64 re) -4096)) (neg.f64 (+.f64 (sin.f64 re) -64)))
(/.f64 (-.f64 4096 (pow.f64 (sin.f64 re) 2)) (-.f64 64 (sin.f64 re)))
(pow.f64 (+.f64 (sin.f64 re) 64) 1)
(pow.f64 (cbrt.f64 (+.f64 (sin.f64 re) 64)) 3)
(pow.f64 (pow.f64 (+.f64 (sin.f64 re) 64) 3) 1/3)
(pow.f64 (sqrt.f64 (+.f64 (sin.f64 re) 64)) 2)
(sqrt.f64 (pow.f64 (+.f64 (sin.f64 re) 64) 2))
(log.f64 (exp.f64 (+.f64 (sin.f64 re) 64)))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 (sin.f64 re) 64))))
(cbrt.f64 (pow.f64 (+.f64 (sin.f64 re) 64) 3))
(expm1.f64 (log1p.f64 (+.f64 (sin.f64 re) 64)))
(exp.f64 (log.f64 (+.f64 (sin.f64 re) 64)))
(exp.f64 (*.f64 (log.f64 (+.f64 (sin.f64 re) 64)) 1))
(log1p.f64 (expm1.f64 (+.f64 (sin.f64 re) 64)))
(fma.f64 (sin.f64 re) 1 64)
(fma.f64 1 (sin.f64 re) 64)
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) 64)
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) 64)
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) 64)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re))) 1)
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))) (/.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4)) (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))
(*.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 1)
(*.f64 1 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re))
(*.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) (sqrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re) (*.f64 re re))))
(*.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4))) (/.f64 1 (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re) (*.f64 re re)) (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3))))
(/.f64 1 (/.f64 (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) (-.f64 (*.f64 re re) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4)))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3)) (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re) (*.f64 re re)))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3)) (fma.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4) (-.f64 (*.f64 re re) (*.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))))
(/.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4))) (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (neg.f64 (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3))) (neg.f64 (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re) (*.f64 re re))))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4)))) (neg.f64 (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4)) (*.f64 re re)) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re))
(pow.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(exp.f64 (log.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 1))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(fma.f64 re 1 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)
(fma.f64 im (*.f64 1/2 (*.f64 (sin.f64 re) im)) re)
(fma.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re)) re)
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)) re)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) re)
(fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) 1 re)
(fma.f64 1 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 1 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re)
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) 2) re)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) re)
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 im im)) re)
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 1/2 (sin.f64 re))) re)
(fma.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) re)
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 im im)) re)
(fma.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) im re)
(fma.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 1/2 re)
(fma.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re) re)
(fma.f64 (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) re)
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) re)
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) re)
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) 1) im re)
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (cbrt.f64 (*.f64 im im))) (cbrt.f64 im) re)
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (sqrt.f64 im)) (sqrt.f64 im) re)

simplify174.0ms (2.1%)

Algorithm
egg-herbie
Rules
828×associate-*l*
814×log-prod
792×associate-*r*
548×cube-prod
452×exp-prod
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
057213518
1144011010
2495210998
Stop Event
node limit
Counts
330 → 346
Calls
Call 1
Inputs
(*.f64 -4 (pow.f64 re 2))
(+.f64 (*.f64 4/3 (pow.f64 re 4)) (*.f64 -4 (pow.f64 re 2)))
(+.f64 (*.f64 4/3 (pow.f64 re 4)) (+.f64 (*.f64 -4 (pow.f64 re 2)) (*.f64 -8/45 (pow.f64 re 6))))
(+.f64 (*.f64 4/3 (pow.f64 re 4)) (+.f64 (*.f64 4/315 (pow.f64 re 8)) (+.f64 (*.f64 -4 (pow.f64 re 2)) (*.f64 -8/45 (pow.f64 re 6)))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))
(+.f64 (*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 2/3 (*.f64 (pow.f64 re 4) (pow.f64 im 2))))
(+.f64 (*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (*.f64 -4/45 (*.f64 (pow.f64 re 6) (pow.f64 im 2)))))
(+.f64 (*.f64 2/315 (*.f64 (pow.f64 re 8) (pow.f64 im 2))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (*.f64 -4/45 (*.f64 (pow.f64 re 6) (pow.f64 im 2))))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
re
(+.f64 (*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) re)
(+.f64 (*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 re (+.f64 (*.f64 2/3 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (*.f64 -1/6 (pow.f64 re 3)))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(*.f64 -2 (pow.f64 re 2))
(+.f64 (*.f64 2/3 (pow.f64 re 4)) (*.f64 -2 (pow.f64 re 2)))
(+.f64 (*.f64 -4/45 (pow.f64 re 6)) (+.f64 (*.f64 2/3 (pow.f64 re 4)) (*.f64 -2 (pow.f64 re 2))))
(+.f64 (*.f64 -4/45 (pow.f64 re 6)) (+.f64 (*.f64 2/3 (pow.f64 re 4)) (+.f64 (*.f64 2/315 (pow.f64 re 8)) (*.f64 -2 (pow.f64 re 2)))))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
64
(+.f64 64 re)
(+.f64 64 (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 64 (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))))
(+.f64 64 (sin.f64 re))
(+.f64 64 (sin.f64 re))
(+.f64 64 (sin.f64 re))
(+.f64 64 (sin.f64 re))
(+.f64 64 (sin.f64 re))
(+.f64 64 (sin.f64 re))
(+.f64 64 (sin.f64 re))
(+.f64 64 (sin.f64 re))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2))))))
re
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
re
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
re
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(+.f64 -2 (*.f64 (cos.f64 (*.f64 -2 re)) 2))
(+.f64 -2 (*.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) 1))
(+.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) -2)
(*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1)
(*.f64 1 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2))
(*.f64 (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 2) (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(*.f64 (sqrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) (sqrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(*.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3))) (/.f64 1 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4)))
(*.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2))) (/.f64 1 (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2)))
(/.f64 1 (/.f64 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4) (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3)))))
(/.f64 1 (/.f64 (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2)))))
(/.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3))) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4))
(/.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2))
(/.f64 (neg.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3)))) (neg.f64 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4)))
(/.f64 (neg.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2)))) (neg.f64 (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2)))
(/.f64 (+.f64 -8 (pow.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) 3)) (+.f64 4 (-.f64 (*.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) (*.f64 (cos.f64 (*.f64 -2 re)) 2)) (*.f64 -2 (*.f64 (cos.f64 (*.f64 -2 re)) 2)))))
(/.f64 (-.f64 4 (*.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) (*.f64 (cos.f64 (*.f64 -2 re)) 2))) (-.f64 -2 (*.f64 (cos.f64 (*.f64 -2 re)) 2)))
(pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1)
(pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 3)
(pow.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 2)
(sqrt.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2))
(log.f64 (exp.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2))))
(cbrt.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 3))
(expm1.f64 (log1p.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(exp.f64 (log.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(exp.f64 (*.f64 (log.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 1))
(log1p.f64 (expm1.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(fma.f64 -2 (neg.f64 (cos.f64 (*.f64 -2 re))) -2)
(fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)
(fma.f64 1 (*.f64 (cos.f64 (*.f64 -2 re)) 2) -2)
(fma.f64 (cbrt.f64 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2))) (neg.f64 (cbrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) -2)
(fma.f64 (sqrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (neg.f64 (sqrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) -2)
(fma.f64 2 (cos.f64 (*.f64 -2 re)) -2)
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2)) (cbrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2))) (cbrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2)) -2)
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2)) (sqrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2)) -2)
(fma.f64 -1 (*.f64 -2 (cos.f64 (*.f64 -2 re))) -2)
(fma.f64 (neg.f64 (cos.f64 (*.f64 -2 re))) -2 -2)
(fma.f64 (neg.f64 (cbrt.f64 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2)))) (cbrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) -2)
(fma.f64 (neg.f64 (sqrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (sqrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) -2)
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 -2 re))) 2)) (cbrt.f64 (cos.f64 (*.f64 -2 re))) -2)
(fma.f64 (*.f64 2 (sqrt.f64 (cos.f64 (*.f64 -2 re)))) (sqrt.f64 (cos.f64 (*.f64 -2 re))) -2)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))) 1)
(pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) 2)
(sqrt.f64 (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) (*.f64 im im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) 3))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))))
(exp.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)))) 1)
(-.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))) (/.f64 (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)) (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))))
(*.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 1)
(*.f64 1 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)))
(*.f64 (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) (pow.f64 (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 2) (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(*.f64 (sqrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) (sqrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(*.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4))) (/.f64 1 (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)) (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3))))
(/.f64 1 (/.f64 (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4))) (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (neg.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3))) (neg.f64 (fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)))) (neg.f64 (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)) (pow.f64 (sin.f64 re) 2)) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)))
(pow.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 1)
(pow.f64 (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 3)
(pow.f64 (pow.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 2)
(sqrt.f64 (pow.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 2))
(log.f64 (exp.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)))))
(cbrt.f64 (pow.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 3))
(expm1.f64 (log1p.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(exp.f64 (log.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 1))
(log1p.f64 (expm1.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))
(fma.f64 1/2 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) (*.f64 im im) (sin.f64 re))
(fma.f64 im (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) 1 (sin.f64 re))
(fma.f64 (sin.f64 re) 1 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(fma.f64 1 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re))
(fma.f64 1 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) 2) (sin.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) 2) (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) (sin.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 2) (*.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (*.f64 im im)) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (sin.f64 re))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (*.f64 im (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) (*.f64 im (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) (sin.f64 re))
(fma.f64 (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (*.f64 (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) im (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 1/2 (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) 1/2) (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 2)) (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) 1) im (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) (cbrt.f64 (*.f64 im im))) (cbrt.f64 im) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) (sqrt.f64 im)) (sqrt.f64 im) (sin.f64 re))
(+.f64 -1 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -2 re)) 2)))
(+.f64 -1 (*.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) 1/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) 1)
(/.f64 (*.f64 1/2 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3)))) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4))
(/.f64 (*.f64 1/2 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2)))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2))
(/.f64 (*.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3))) 1/2) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4))
(/.f64 (*.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2))) 1/2) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2))
(pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 2)
(sqrt.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4))
(log.f64 (pow.f64 (exp.f64 1/2) (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)))
(exp.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)))
(-.f64 (exp.f64 (log1p.f64 (+.f64 (sin.f64 re) 64))) 1)
(-.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (+.f64 (sin.f64 re) -64)) (/.f64 4096 (+.f64 (sin.f64 re) -64)))
(*.f64 (+.f64 (sin.f64 re) 64) 1)
(*.f64 1 (+.f64 (sin.f64 re) 64))
(*.f64 (cbrt.f64 (+.f64 (sin.f64 re) 64)) (pow.f64 (cbrt.f64 (+.f64 (sin.f64 re) 64)) 2))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 (sin.f64 re) 64)) 2) (cbrt.f64 (+.f64 (sin.f64 re) 64)))
(*.f64 (sqrt.f64 (+.f64 (sin.f64 re) 64)) (sqrt.f64 (+.f64 (sin.f64 re) 64)))
(*.f64 (+.f64 262144 (pow.f64 (sin.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 4096 (*.f64 (sin.f64 re) 64)))))
(*.f64 (fma.f64 (sin.f64 re) (sin.f64 re) -4096) (/.f64 1 (+.f64 (sin.f64 re) -64)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 4096 (*.f64 (sin.f64 re) 64))) (+.f64 262144 (pow.f64 (sin.f64 re) 3))))
(/.f64 1 (/.f64 (+.f64 (sin.f64 re) -64) (fma.f64 (sin.f64 re) (sin.f64 re) -4096)))
(/.f64 (+.f64 262144 (pow.f64 (sin.f64 re) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 4096 (*.f64 (sin.f64 re) 64))))
(/.f64 (+.f64 262144 (pow.f64 (sin.f64 re) 3)) (+.f64 4096 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) 64))))
(/.f64 (fma.f64 (sin.f64 re) (sin.f64 re) -4096) (+.f64 (sin.f64 re) -64))
(/.f64 (neg.f64 (+.f64 262144 (pow.f64 (sin.f64 re) 3))) (neg.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 4096 (*.f64 (sin.f64 re) 64)))))
(/.f64 (neg.f64 (fma.f64 (sin.f64 re) (sin.f64 re) -4096)) (neg.f64 (+.f64 (sin.f64 re) -64)))
(/.f64 (-.f64 4096 (pow.f64 (sin.f64 re) 2)) (-.f64 64 (sin.f64 re)))
(pow.f64 (+.f64 (sin.f64 re) 64) 1)
(pow.f64 (cbrt.f64 (+.f64 (sin.f64 re) 64)) 3)
(pow.f64 (pow.f64 (+.f64 (sin.f64 re) 64) 3) 1/3)
(pow.f64 (sqrt.f64 (+.f64 (sin.f64 re) 64)) 2)
(sqrt.f64 (pow.f64 (+.f64 (sin.f64 re) 64) 2))
(log.f64 (exp.f64 (+.f64 (sin.f64 re) 64)))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 (sin.f64 re) 64))))
(cbrt.f64 (pow.f64 (+.f64 (sin.f64 re) 64) 3))
(expm1.f64 (log1p.f64 (+.f64 (sin.f64 re) 64)))
(exp.f64 (log.f64 (+.f64 (sin.f64 re) 64)))
(exp.f64 (*.f64 (log.f64 (+.f64 (sin.f64 re) 64)) 1))
(log1p.f64 (expm1.f64 (+.f64 (sin.f64 re) 64)))
(fma.f64 (sin.f64 re) 1 64)
(fma.f64 1 (sin.f64 re) 64)
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) 64)
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) 64)
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) 64)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re))) 1)
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))) (/.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4)) (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))
(*.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 1)
(*.f64 1 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re))
(*.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) (sqrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re) (*.f64 re re))))
(*.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4))) (/.f64 1 (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re) (*.f64 re re)) (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3))))
(/.f64 1 (/.f64 (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) (-.f64 (*.f64 re re) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4)))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3)) (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re) (*.f64 re re)))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3)) (fma.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4) (-.f64 (*.f64 re re) (*.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))))
(/.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4))) (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (neg.f64 (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3))) (neg.f64 (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re) (*.f64 re re))))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4)))) (neg.f64 (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4)) (*.f64 re re)) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re))
(pow.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(exp.f64 (log.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 1))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(fma.f64 re 1 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)
(fma.f64 im (*.f64 1/2 (*.f64 (sin.f64 re) im)) re)
(fma.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re)) re)
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)) re)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) re)
(fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) 1 re)
(fma.f64 1 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 1 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re)
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) 2) re)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) re)
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 im im)) re)
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 1/2 (sin.f64 re))) re)
(fma.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) re)
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 im im)) re)
(fma.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) im re)
(fma.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 1/2 re)
(fma.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re) re)
(fma.f64 (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) re)
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) re)
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) re)
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) 1) im re)
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (cbrt.f64 (*.f64 im im))) (cbrt.f64 im) re)
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (sqrt.f64 im)) (sqrt.f64 im) re)
Outputs
(*.f64 -4 (pow.f64 re 2))
(*.f64 -4 (*.f64 re re))
(+.f64 (*.f64 4/3 (pow.f64 re 4)) (*.f64 -4 (pow.f64 re 2)))
(fma.f64 4/3 (pow.f64 re 4) (*.f64 -4 (*.f64 re re)))
(+.f64 (*.f64 4/3 (pow.f64 re 4)) (+.f64 (*.f64 -4 (pow.f64 re 2)) (*.f64 -8/45 (pow.f64 re 6))))
(fma.f64 4/3 (pow.f64 re 4) (fma.f64 -4 (*.f64 re re) (*.f64 -8/45 (pow.f64 re 6))))
(+.f64 (*.f64 4/3 (pow.f64 re 4)) (+.f64 (*.f64 4/315 (pow.f64 re 8)) (+.f64 (*.f64 -4 (pow.f64 re 2)) (*.f64 -8/45 (pow.f64 re 6)))))
(fma.f64 4/3 (pow.f64 re 4) (fma.f64 4/315 (pow.f64 re 8) (fma.f64 -4 (*.f64 re re) (*.f64 -8/45 (pow.f64 re 6)))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))
(*.f64 -2 (*.f64 (*.f64 im im) (*.f64 re re)))
(+.f64 (*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 2/3 (*.f64 (pow.f64 re 4) (pow.f64 im 2))))
(fma.f64 -2 (*.f64 (*.f64 im im) (*.f64 re re)) (*.f64 2/3 (*.f64 (pow.f64 re 4) (*.f64 im im))))
(*.f64 (*.f64 im im) (fma.f64 (pow.f64 re 4) 2/3 (*.f64 -2 (*.f64 re re))))
(+.f64 (*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (*.f64 -4/45 (*.f64 (pow.f64 re 6) (pow.f64 im 2)))))
(fma.f64 -2 (*.f64 (*.f64 im im) (*.f64 re re)) (fma.f64 2/3 (*.f64 (pow.f64 re 4) (*.f64 im im)) (*.f64 (*.f64 (pow.f64 re 6) -4/45) (*.f64 im im))))
(fma.f64 -2 (*.f64 (*.f64 im im) (*.f64 re re)) (*.f64 (*.f64 im im) (fma.f64 (pow.f64 re 6) -4/45 (*.f64 (pow.f64 re 4) 2/3))))
(+.f64 (*.f64 2/315 (*.f64 (pow.f64 re 8) (pow.f64 im 2))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (*.f64 -4/45 (*.f64 (pow.f64 re 6) (pow.f64 im 2))))))
(fma.f64 2/315 (*.f64 (pow.f64 re 8) (*.f64 im im)) (fma.f64 -2 (*.f64 (*.f64 im im) (*.f64 re re)) (fma.f64 2/3 (*.f64 (pow.f64 re 4) (*.f64 im im)) (*.f64 (*.f64 (pow.f64 re 6) -4/45) (*.f64 im im)))))
(+.f64 (*.f64 (*.f64 im im) (fma.f64 (pow.f64 re 6) -4/45 (*.f64 (pow.f64 re 4) 2/3))) (*.f64 (*.f64 im im) (fma.f64 (pow.f64 re 8) 2/315 (*.f64 -2 (*.f64 re re)))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
re
(+.f64 (*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) re)
(fma.f64 -2 (*.f64 (*.f64 im im) (*.f64 re re)) re)
(fma.f64 (*.f64 -2 (*.f64 re re)) (*.f64 im im) re)
(+.f64 (*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (fma.f64 -2 (*.f64 (*.f64 im im) (*.f64 re re)) re) (*.f64 -1/6 (pow.f64 re 3)))
(fma.f64 -2 (*.f64 (*.f64 im im) (*.f64 re re)) (fma.f64 -1/6 (pow.f64 re 3) re))
(+.f64 (*.f64 -2 (*.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 re (+.f64 (*.f64 2/3 (*.f64 (pow.f64 re 4) (pow.f64 im 2))) (*.f64 -1/6 (pow.f64 re 3)))))
(+.f64 (fma.f64 -2 (*.f64 (*.f64 im im) (*.f64 re re)) re) (fma.f64 2/3 (*.f64 (pow.f64 re 4) (*.f64 im im)) (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (fma.f64 (*.f64 -2 (*.f64 re re)) (*.f64 im im) re) (fma.f64 2/3 (*.f64 (pow.f64 re 4) (*.f64 im im)) (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(*.f64 -2 (pow.f64 re 2))
(*.f64 -2 (*.f64 re re))
(+.f64 (*.f64 2/3 (pow.f64 re 4)) (*.f64 -2 (pow.f64 re 2)))
(fma.f64 2/3 (pow.f64 re 4) (*.f64 -2 (*.f64 re re)))
(fma.f64 (pow.f64 re 4) 2/3 (*.f64 -2 (*.f64 re re)))
(+.f64 (*.f64 -4/45 (pow.f64 re 6)) (+.f64 (*.f64 2/3 (pow.f64 re 4)) (*.f64 -2 (pow.f64 re 2))))
(fma.f64 -4/45 (pow.f64 re 6) (fma.f64 2/3 (pow.f64 re 4) (*.f64 -2 (*.f64 re re))))
(fma.f64 (pow.f64 re 6) -4/45 (fma.f64 (pow.f64 re 4) 2/3 (*.f64 -2 (*.f64 re re))))
(+.f64 (*.f64 -4/45 (pow.f64 re 6)) (+.f64 (*.f64 2/3 (pow.f64 re 4)) (+.f64 (*.f64 2/315 (pow.f64 re 8)) (*.f64 -2 (pow.f64 re 2)))))
(fma.f64 -4/45 (pow.f64 re 6) (fma.f64 2/3 (pow.f64 re 4) (fma.f64 2/315 (pow.f64 re 8) (*.f64 -2 (*.f64 re re)))))
(fma.f64 (pow.f64 re 6) -4/45 (fma.f64 (pow.f64 re 4) 2/3 (fma.f64 (pow.f64 re 8) 2/315 (*.f64 -2 (*.f64 re re)))))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(*.f64 -1/2 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
64
(+.f64 64 re)
(+.f64 re 64)
(+.f64 64 (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (+.f64 re (*.f64 -1/6 (pow.f64 re 3))) 64)
(+.f64 (fma.f64 -1/6 (pow.f64 re 3) re) 64)
(+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 64 (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))))
(fma.f64 1/120 (pow.f64 re 5) (+.f64 (+.f64 re (*.f64 -1/6 (pow.f64 re 3))) 64))
(+.f64 (fma.f64 -1/6 (pow.f64 re 3) re) (fma.f64 1/120 (pow.f64 re 5) 64))
(+.f64 64 (sin.f64 re))
(+.f64 (sin.f64 re) 64)
(+.f64 64 (sin.f64 re))
(+.f64 (sin.f64 re) 64)
(+.f64 64 (sin.f64 re))
(+.f64 (sin.f64 re) 64)
(+.f64 64 (sin.f64 re))
(+.f64 (sin.f64 re) 64)
(+.f64 64 (sin.f64 re))
(+.f64 (sin.f64 re) 64)
(+.f64 64 (sin.f64 re))
(+.f64 (sin.f64 re) 64)
(+.f64 64 (sin.f64 re))
(+.f64 (sin.f64 re) 64)
(+.f64 64 (sin.f64 re))
(+.f64 (sin.f64 re) 64)
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (+.f64 1 (*.f64 im (*.f64 im 1/2))))
(*.f64 re (fma.f64 im (*.f64 im 1/2) 1))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (*.f64 im im)) (*.f64 re (+.f64 1 (*.f64 im (*.f64 im 1/2)))))
(fma.f64 re (fma.f64 im (*.f64 im 1/2) 1) (*.f64 (pow.f64 re 3) (*.f64 (*.f64 im im) -1/12)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2)))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (*.f64 im im)) (fma.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) re (*.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 im im))))
(fma.f64 -1/12 (*.f64 im (*.f64 im (pow.f64 re 3))) (fma.f64 re (fma.f64 im (*.f64 im 1/2) 1) (*.f64 (pow.f64 re 5) (*.f64 (*.f64 im im) 1/240))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2))))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (*.f64 im im)) (fma.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) re (fma.f64 1/240 (*.f64 (pow.f64 re 5) (*.f64 im im)) (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (*.f64 im im))))))
(fma.f64 -1/12 (*.f64 im (*.f64 im (pow.f64 re 3))) (fma.f64 re (fma.f64 im (*.f64 im 1/2) 1) (*.f64 (*.f64 im im) (+.f64 (*.f64 (pow.f64 re 5) 1/240) (*.f64 -1/10080 (pow.f64 re 7))))))
re
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
re
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
re
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(+.f64 -2 (*.f64 (cos.f64 (*.f64 -2 re)) 2))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(+.f64 -2 (*.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) 1))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(+.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 1 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 2))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 2) (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 (sqrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) (sqrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(*.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3))) (/.f64 1 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4)))
(*.f64 (+.f64 -8 (*.f64 8 (pow.f64 (cos.f64 (*.f64 re -2)) 3))) (/.f64 1 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4)))
(/.f64 (fma.f64 (pow.f64 (cos.f64 (*.f64 re -2)) 3) 8 -8) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4))
(*.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2))) (/.f64 1 (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2)))
(/.f64 1 (/.f64 (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 re -2)) 2)))))
(/.f64 (+.f64 4 (*.f64 -4 (pow.f64 (cos.f64 (*.f64 re -2)) 2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2))
(/.f64 1 (/.f64 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4) (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3)))))
(*.f64 (+.f64 -8 (*.f64 8 (pow.f64 (cos.f64 (*.f64 re -2)) 3))) (/.f64 1 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4)))
(/.f64 (fma.f64 (pow.f64 (cos.f64 (*.f64 re -2)) 3) 8 -8) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4))
(/.f64 1 (/.f64 (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2)))))
(/.f64 1 (/.f64 (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 re -2)) 2)))))
(/.f64 (+.f64 4 (*.f64 -4 (pow.f64 (cos.f64 (*.f64 re -2)) 2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2))
(/.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3))) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4))
(*.f64 (+.f64 -8 (*.f64 8 (pow.f64 (cos.f64 (*.f64 re -2)) 3))) (/.f64 1 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4)))
(/.f64 (fma.f64 (pow.f64 (cos.f64 (*.f64 re -2)) 3) 8 -8) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4))
(/.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2))
(/.f64 1 (/.f64 (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 re -2)) 2)))))
(/.f64 (+.f64 4 (*.f64 -4 (pow.f64 (cos.f64 (*.f64 re -2)) 2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2))
(/.f64 (neg.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3)))) (neg.f64 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4)))
(*.f64 (+.f64 -8 (*.f64 8 (pow.f64 (cos.f64 (*.f64 re -2)) 3))) (/.f64 1 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4)))
(/.f64 (fma.f64 (pow.f64 (cos.f64 (*.f64 re -2)) 3) 8 -8) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4))
(/.f64 (neg.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2)))) (neg.f64 (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2)))
(/.f64 1 (/.f64 (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 re -2)) 2)))))
(/.f64 (+.f64 4 (*.f64 -4 (pow.f64 (cos.f64 (*.f64 re -2)) 2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2))
(/.f64 (+.f64 -8 (pow.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) 3)) (+.f64 4 (-.f64 (*.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) (*.f64 (cos.f64 (*.f64 -2 re)) 2)) (*.f64 -2 (*.f64 (cos.f64 (*.f64 -2 re)) 2)))))
(*.f64 (+.f64 -8 (*.f64 8 (pow.f64 (cos.f64 (*.f64 re -2)) 3))) (/.f64 1 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4)))
(/.f64 (fma.f64 (pow.f64 (cos.f64 (*.f64 re -2)) 3) 8 -8) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4))
(/.f64 (-.f64 4 (*.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) (*.f64 (cos.f64 (*.f64 -2 re)) 2))) (-.f64 -2 (*.f64 (cos.f64 (*.f64 -2 re)) 2)))
(/.f64 1 (/.f64 (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 re -2)) 2)))))
(/.f64 (+.f64 4 (*.f64 -4 (pow.f64 (cos.f64 (*.f64 re -2)) 2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2))
(pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 3)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(pow.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 3) 1/3)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(pow.f64 (sqrt.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(sqrt.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(log.f64 (exp.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(cbrt.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 3))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(expm1.f64 (log1p.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(exp.f64 (log.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(exp.f64 (*.f64 (log.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) 1))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(log1p.f64 (expm1.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(fma.f64 -2 (neg.f64 (cos.f64 (*.f64 -2 re))) -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(fma.f64 1 (*.f64 (cos.f64 (*.f64 -2 re)) 2) -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(fma.f64 (cbrt.f64 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2))) (neg.f64 (cbrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) -2)
(fma.f64 (cbrt.f64 (*.f64 4 (pow.f64 (cos.f64 (*.f64 re -2)) 2))) (neg.f64 (cbrt.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))))) -2)
(fma.f64 (neg.f64 (cbrt.f64 (*.f64 4 (pow.f64 (cos.f64 (*.f64 re -2)) 2)))) (cbrt.f64 (*.f64 -2 (cos.f64 (*.f64 re -2)))) -2)
(fma.f64 (sqrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (neg.f64 (sqrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(fma.f64 2 (cos.f64 (*.f64 -2 re)) -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2)) (cbrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2))) (cbrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2)) -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2)) (sqrt.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2)) -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(fma.f64 -1 (*.f64 -2 (cos.f64 (*.f64 -2 re))) -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(fma.f64 (neg.f64 (cos.f64 (*.f64 -2 re))) -2 -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(fma.f64 (neg.f64 (cbrt.f64 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2)))) (cbrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) -2)
(fma.f64 (cbrt.f64 (*.f64 4 (pow.f64 (cos.f64 (*.f64 re -2)) 2))) (neg.f64 (cbrt.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))))) -2)
(fma.f64 (neg.f64 (cbrt.f64 (*.f64 4 (pow.f64 (cos.f64 (*.f64 re -2)) 2)))) (cbrt.f64 (*.f64 -2 (cos.f64 (*.f64 re -2)))) -2)
(fma.f64 (neg.f64 (sqrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (sqrt.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 -2 re))) 2)) (cbrt.f64 (cos.f64 (*.f64 -2 re))) -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(fma.f64 (*.f64 2 (sqrt.f64 (cos.f64 (*.f64 -2 re)))) (sqrt.f64 (cos.f64 (*.f64 -2 re))) -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(fma.f64 2 (cos.f64 (*.f64 re -2)) -2)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))) 1)
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) 1)
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) 3)
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(pow.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) 3) 1/3)
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) 2)
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(sqrt.f64 (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)))
(sqrt.f64 (*.f64 (pow.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) 2) (*.f64 1/4 (pow.f64 im 4))))
(sqrt.f64 (pow.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) 2))
(fabs.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)) (*.f64 im im)))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) 3))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(exp.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) 1))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))))
(*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)))) 1)
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(-.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))) (/.f64 (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)) (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) 2) (*.f64 1/4 (pow.f64 im 4)))) (-.f64 (sin.f64 re) (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) 2)) (-.f64 (sin.f64 re) (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))))
(*.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 1)
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(*.f64 1 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(*.f64 (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) (pow.f64 (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 2))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 2) (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(*.f64 (sqrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) (sqrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2))) (fma.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2)) (neg.f64 (sin.f64 re))) (pow.f64 (sin.f64 re) 2))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) 3)) (fma.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) (-.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(*.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4))) (/.f64 1 (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) 2) (*.f64 1/4 (pow.f64 im 4)))) (-.f64 (sin.f64 re) (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) 2)) (-.f64 (sin.f64 re) (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)) (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3))))
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2))) (fma.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2)) (neg.f64 (sin.f64 re))) (pow.f64 (sin.f64 re) 2))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) 3)) (fma.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) (-.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(/.f64 1 (/.f64 (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) 2) (*.f64 1/4 (pow.f64 im 4)))) (-.f64 (sin.f64 re) (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) 2)) (-.f64 (sin.f64 re) (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2))) (fma.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2)) (neg.f64 (sin.f64 re))) (pow.f64 (sin.f64 re) 2))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) 3)) (fma.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) (-.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 (pow.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) 2) 1/4) (pow.f64 im 4) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) 3)) (fma.f64 (pow.f64 (+.f64 -1 (cos.f64 (*.f64 re -2))) 2) (pow.f64 im 4) (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4))) (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) 2) (*.f64 1/4 (pow.f64 im 4)))) (-.f64 (sin.f64 re) (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) 2)) (-.f64 (sin.f64 re) (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))))
(/.f64 (neg.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3))) (neg.f64 (fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2))) (fma.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2)) (neg.f64 (sin.f64 re))) (pow.f64 (sin.f64 re) 2))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) 3)) (fma.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) (-.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)))) (neg.f64 (-.f64 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) 2) (*.f64 1/4 (pow.f64 im 4)))) (-.f64 (sin.f64 re) (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) 2)) (-.f64 (sin.f64 re) (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4) (pow.f64 im 4)) (pow.f64 (sin.f64 re) 2)) (-.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) 2) (*.f64 1/4 (pow.f64 im 4)))) (-.f64 (sin.f64 re) (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 im (*.f64 im 1/2)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2)))) 2)) (-.f64 (sin.f64 re) (*.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))))))
(pow.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 1)
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(pow.f64 (cbrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 3)
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(pow.f64 (pow.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 3) 1/3)
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(pow.f64 (sqrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 2)
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(sqrt.f64 (pow.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 2))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(log.f64 (exp.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(cbrt.f64 (pow.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) 3))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(expm1.f64 (log1p.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(exp.f64 (log.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 1))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(log1p.f64 (expm1.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 1/2 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) (*.f64 im im) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 im (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) 1 (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (sin.f64 re) 1 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 1 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 1 (sin.f64 re) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) 2) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) 2) (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)))) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 2) (*.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (*.f64 im im)) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (*.f64 1/2 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2)) (cbrt.f64 (*.f64 im im))) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (+.f64 -1 (cos.f64 (*.f64 re -2))) (cbrt.f64 (*.f64 im im))) (sin.f64 re))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (*.f64 im (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) (*.f64 im (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (*.f64 (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (*.f64 im im)) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) im (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 im im)) 1/2 (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) 1/2) (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (*.f64 1/2 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2)) (cbrt.f64 (*.f64 im im))) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (+.f64 -1 (cos.f64 (*.f64 re -2))) (cbrt.f64 (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 2)) (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) 1) im (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) (cbrt.f64 (*.f64 im im))) (cbrt.f64 im) (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) (*.f64 (*.f64 im 1/2) (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im) (sin.f64 re))
(fma.f64 (*.f64 (+.f64 -1 (cos.f64 (*.f64 re -2))) (*.f64 im (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 im)) (sqrt.f64 im)) (sqrt.f64 im) (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 2 (*.f64 -2 (cos.f64 (*.f64 re -2)))) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 im im) (+.f64 -1 (cos.f64 (*.f64 re -2))) (sin.f64 re))
(+.f64 -1 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -2 re)) 2)))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(+.f64 -1 (*.f64 (*.f64 (cos.f64 (*.f64 -2 re)) 2) 1/2))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))) 1)
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(/.f64 (*.f64 1/2 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3)))) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4))
(/.f64 1/2 (/.f64 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4) (+.f64 -8 (*.f64 8 (pow.f64 (cos.f64 (*.f64 re -2)) 3)))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (cos.f64 (*.f64 re -2)) 3) 8 -8) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4)) 1/2)
(/.f64 (*.f64 1/2 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2)))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2))
(/.f64 1/2 (/.f64 (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 re -2)) 2)))))
(*.f64 (/.f64 1/2 (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2)) (+.f64 4 (*.f64 -4 (pow.f64 (cos.f64 (*.f64 re -2)) 2))))
(/.f64 (*.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 (*.f64 -2 re)) 3))) 1/2) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 -2 re))) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2) 4))
(/.f64 1/2 (/.f64 (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4) (+.f64 -8 (*.f64 8 (pow.f64 (cos.f64 (*.f64 re -2)) 3)))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (cos.f64 (*.f64 re -2)) 3) 8 -8) (fma.f64 (*.f64 -2 (cos.f64 (*.f64 re -2))) (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) 4)) 1/2)
(/.f64 (*.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 -2 re)) 2))) 1/2) (fma.f64 -2 (cos.f64 (*.f64 -2 re)) -2))
(/.f64 1/2 (/.f64 (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 (*.f64 re -2)) 2)))))
(*.f64 (/.f64 1/2 (fma.f64 -2 (cos.f64 (*.f64 re -2)) -2)) (+.f64 4 (*.f64 -4 (pow.f64 (cos.f64 (*.f64 re -2)) 2))))
(pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) 1)
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 3)
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(pow.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) 3) 1/3)
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 2)
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(sqrt.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 2) 1/4))
(sqrt.f64 (*.f64 (pow.f64 (fma.f64 2 (cos.f64 (*.f64 re -2)) -2) 2) 1/4))
(sqrt.f64 (pow.f64 (+.f64 -1 (cos.f64 (*.f64 re -2))) 2))
(fabs.f64 (+.f64 -1 (cos.f64 (*.f64 re -2))))
(log.f64 (pow.f64 (exp.f64 1/2) (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2)))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2))))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2) 3))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(exp.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)) 1))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) 1/2)))
(+.f64 -1 (*.f64 -1/2 (*.f64 -2 (cos.f64 (*.f64 re -2)))))
(+.f64 -1 (cos.f64 (*.f64 re -2)))
(-.f64 (exp.f64 (log1p.f64 (+.f64 (sin.f64 re) 64))) 1)
(+.f64 (sin.f64 re) 64)
(-.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (+.f64 (sin.f64 re) -64)) (/.f64 4096 (+.f64 (sin.f64 re) -64)))
(+.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (+.f64 (sin.f64 re) -64)) (/.f64 -4096 (+.f64 (sin.f64 re) -64)))
(*.f64 (+.f64 (sin.f64 re) 64) 1)
(+.f64 (sin.f64 re) 64)
(*.f64 1 (+.f64 (sin.f64 re) 64))
(+.f64 (sin.f64 re) 64)
(*.f64 (cbrt.f64 (+.f64 (sin.f64 re) 64)) (pow.f64 (cbrt.f64 (+.f64 (sin.f64 re) 64)) 2))
(+.f64 (sin.f64 re) 64)
(*.f64 (pow.f64 (cbrt.f64 (+.f64 (sin.f64 re) 64)) 2) (cbrt.f64 (+.f64 (sin.f64 re) 64)))
(+.f64 (sin.f64 re) 64)
(*.f64 (sqrt.f64 (+.f64 (sin.f64 re) 64)) (sqrt.f64 (+.f64 (sin.f64 re) 64)))
(+.f64 (sin.f64 re) 64)
(*.f64 (+.f64 262144 (pow.f64 (sin.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 4096 (*.f64 (sin.f64 re) 64)))))
(*.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (/.f64 1 (-.f64 (+.f64 (pow.f64 (sin.f64 re) 2) 4096) (*.f64 (sin.f64 re) 64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (+.f64 4096 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) 64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (+.f64 4096 (*.f64 (sin.f64 re) (+.f64 (sin.f64 re) -64))))
(*.f64 (fma.f64 (sin.f64 re) (sin.f64 re) -4096) (/.f64 1 (+.f64 (sin.f64 re) -64)))
(*.f64 (+.f64 (pow.f64 (sin.f64 re) 2) -4096) (/.f64 1 (+.f64 (sin.f64 re) -64)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) -4096) (+.f64 (sin.f64 re) -64))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 4096 (*.f64 (sin.f64 re) 64))) (+.f64 262144 (pow.f64 (sin.f64 re) 3))))
(*.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (/.f64 1 (-.f64 (+.f64 (pow.f64 (sin.f64 re) 2) 4096) (*.f64 (sin.f64 re) 64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (+.f64 4096 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) 64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (+.f64 4096 (*.f64 (sin.f64 re) (+.f64 (sin.f64 re) -64))))
(/.f64 1 (/.f64 (+.f64 (sin.f64 re) -64) (fma.f64 (sin.f64 re) (sin.f64 re) -4096)))
(*.f64 (+.f64 (pow.f64 (sin.f64 re) 2) -4096) (/.f64 1 (+.f64 (sin.f64 re) -64)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) -4096) (+.f64 (sin.f64 re) -64))
(/.f64 (+.f64 262144 (pow.f64 (sin.f64 re) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 4096 (*.f64 (sin.f64 re) 64))))
(*.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (/.f64 1 (-.f64 (+.f64 (pow.f64 (sin.f64 re) 2) 4096) (*.f64 (sin.f64 re) 64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (+.f64 4096 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) 64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (+.f64 4096 (*.f64 (sin.f64 re) (+.f64 (sin.f64 re) -64))))
(/.f64 (+.f64 262144 (pow.f64 (sin.f64 re) 3)) (+.f64 4096 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) 64))))
(*.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (/.f64 1 (-.f64 (+.f64 (pow.f64 (sin.f64 re) 2) 4096) (*.f64 (sin.f64 re) 64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (+.f64 4096 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) 64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (+.f64 4096 (*.f64 (sin.f64 re) (+.f64 (sin.f64 re) -64))))
(/.f64 (fma.f64 (sin.f64 re) (sin.f64 re) -4096) (+.f64 (sin.f64 re) -64))
(*.f64 (+.f64 (pow.f64 (sin.f64 re) 2) -4096) (/.f64 1 (+.f64 (sin.f64 re) -64)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) -4096) (+.f64 (sin.f64 re) -64))
(/.f64 (neg.f64 (+.f64 262144 (pow.f64 (sin.f64 re) 3))) (neg.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 4096 (*.f64 (sin.f64 re) 64)))))
(*.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (/.f64 1 (-.f64 (+.f64 (pow.f64 (sin.f64 re) 2) 4096) (*.f64 (sin.f64 re) 64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (+.f64 4096 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) 64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) 262144) (+.f64 4096 (*.f64 (sin.f64 re) (+.f64 (sin.f64 re) -64))))
(/.f64 (neg.f64 (fma.f64 (sin.f64 re) (sin.f64 re) -4096)) (neg.f64 (+.f64 (sin.f64 re) -64)))
(*.f64 (+.f64 (pow.f64 (sin.f64 re) 2) -4096) (/.f64 1 (+.f64 (sin.f64 re) -64)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) -4096) (+.f64 (sin.f64 re) -64))
(/.f64 (-.f64 4096 (pow.f64 (sin.f64 re) 2)) (-.f64 64 (sin.f64 re)))
(*.f64 (+.f64 (pow.f64 (sin.f64 re) 2) -4096) (/.f64 1 (+.f64 (sin.f64 re) -64)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) -4096) (+.f64 (sin.f64 re) -64))
(pow.f64 (+.f64 (sin.f64 re) 64) 1)
(+.f64 (sin.f64 re) 64)
(pow.f64 (cbrt.f64 (+.f64 (sin.f64 re) 64)) 3)
(+.f64 (sin.f64 re) 64)
(pow.f64 (pow.f64 (+.f64 (sin.f64 re) 64) 3) 1/3)
(+.f64 (sin.f64 re) 64)
(pow.f64 (sqrt.f64 (+.f64 (sin.f64 re) 64)) 2)
(+.f64 (sin.f64 re) 64)
(sqrt.f64 (pow.f64 (+.f64 (sin.f64 re) 64) 2))
(+.f64 (sin.f64 re) 64)
(log.f64 (exp.f64 (+.f64 (sin.f64 re) 64)))
(+.f64 (sin.f64 re) 64)
(log.f64 (+.f64 1 (expm1.f64 (+.f64 (sin.f64 re) 64))))
(+.f64 (sin.f64 re) 64)
(cbrt.f64 (pow.f64 (+.f64 (sin.f64 re) 64) 3))
(+.f64 (sin.f64 re) 64)
(expm1.f64 (log1p.f64 (+.f64 (sin.f64 re) 64)))
(+.f64 (sin.f64 re) 64)
(exp.f64 (log.f64 (+.f64 (sin.f64 re) 64)))
(+.f64 (sin.f64 re) 64)
(exp.f64 (*.f64 (log.f64 (+.f64 (sin.f64 re) 64)) 1))
(+.f64 (sin.f64 re) 64)
(log1p.f64 (expm1.f64 (+.f64 (sin.f64 re) 64)))
(+.f64 (sin.f64 re) 64)
(fma.f64 (sin.f64 re) 1 64)
(+.f64 (sin.f64 re) 64)
(fma.f64 1 (sin.f64 re) 64)
(+.f64 (sin.f64 re) 64)
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) 64)
(+.f64 (sin.f64 re) 64)
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) 64)
(+.f64 (sin.f64 re) 64)
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) 64)
(+.f64 (sin.f64 re) 64)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re))) 1)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))) (/.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4)) (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 re re) (*.f64 (pow.f64 im 4) (*.f64 1/4 (pow.f64 (sin.f64 re) 2)))) (-.f64 re (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))))
(/.f64 (fma.f64 re re (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 (sin.f64 re) 2) -1/4))) (+.f64 re (*.f64 -1/2 (*.f64 im (*.f64 im (sin.f64 re))))))
(*.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 1)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(*.f64 1 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(*.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 2))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) (sqrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re) (*.f64 re re))))
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 im (*.f64 im (sin.f64 re))) 3) (pow.f64 re 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))) (fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) (neg.f64 re)) (*.f64 re re))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 im (*.f64 im (sin.f64 re))) 3) (pow.f64 re 3)) (fma.f64 (*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2))) (-.f64 (*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2))) re) (*.f64 re re)))
(*.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4))) (/.f64 1 (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 re re) (*.f64 (pow.f64 im 4) (*.f64 1/4 (pow.f64 (sin.f64 re) 2)))) (-.f64 re (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))))
(/.f64 (fma.f64 re re (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 (sin.f64 re) 2) -1/4))) (+.f64 re (*.f64 -1/2 (*.f64 im (*.f64 im (sin.f64 re))))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re) (*.f64 re re)) (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3))))
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 im (*.f64 im (sin.f64 re))) 3) (pow.f64 re 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))) (fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) (neg.f64 re)) (*.f64 re re))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 im (*.f64 im (sin.f64 re))) 3) (pow.f64 re 3)) (fma.f64 (*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2))) (-.f64 (*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2))) re) (*.f64 re re)))
(/.f64 1 (/.f64 (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) (-.f64 (*.f64 re re) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4)))))
(/.f64 (-.f64 (*.f64 re re) (*.f64 (pow.f64 im 4) (*.f64 1/4 (pow.f64 (sin.f64 re) 2)))) (-.f64 re (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))))
(/.f64 (fma.f64 re re (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 (sin.f64 re) 2) -1/4))) (+.f64 re (*.f64 -1/2 (*.f64 im (*.f64 im (sin.f64 re))))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3)) (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re) (*.f64 re re)))
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 im (*.f64 im (sin.f64 re))) 3) (pow.f64 re 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))) (fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) (neg.f64 re)) (*.f64 re re))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 im (*.f64 im (sin.f64 re))) 3) (pow.f64 re 3)) (fma.f64 (*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2))) (-.f64 (*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2))) re) (*.f64 re re)))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3)) (fma.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4) (-.f64 (*.f64 re re) (*.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 im (*.f64 im (sin.f64 re))) 3) (pow.f64 re 3)) (fma.f64 (*.f64 1/4 (pow.f64 (sin.f64 re) 2)) (pow.f64 im 4) (*.f64 re (-.f64 re (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 im (*.f64 im (sin.f64 re))) 3) (pow.f64 re 3)) (fma.f64 (pow.f64 im 4) (*.f64 1/4 (pow.f64 (sin.f64 re) 2)) (*.f64 re (+.f64 re (*.f64 -1/2 (*.f64 im (*.f64 im (sin.f64 re))))))))
(/.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4))) (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (-.f64 (*.f64 re re) (*.f64 (pow.f64 im 4) (*.f64 1/4 (pow.f64 (sin.f64 re) 2)))) (-.f64 re (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))))
(/.f64 (fma.f64 re re (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 (sin.f64 re) 2) -1/4))) (+.f64 re (*.f64 -1/2 (*.f64 im (*.f64 im (sin.f64 re))))))
(/.f64 (neg.f64 (fma.f64 1/8 (pow.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 3) (pow.f64 re 3))) (neg.f64 (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re) (*.f64 re re))))
(*.f64 (fma.f64 1/8 (pow.f64 (*.f64 im (*.f64 im (sin.f64 re))) 3) (pow.f64 re 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))) (fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) (neg.f64 re)) (*.f64 re re))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 im (*.f64 im (sin.f64 re))) 3) (pow.f64 re 3)) (fma.f64 (*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2))) (-.f64 (*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2))) re) (*.f64 re re)))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4)))) (neg.f64 (-.f64 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 re re) (*.f64 (pow.f64 im 4) (*.f64 1/4 (pow.f64 (sin.f64 re) 2)))) (-.f64 re (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))))
(/.f64 (fma.f64 re re (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 (sin.f64 re) 2) -1/4))) (+.f64 re (*.f64 -1/2 (*.f64 im (*.f64 im (sin.f64 re))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4)) (*.f64 re re)) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re))
(/.f64 (-.f64 (*.f64 re re) (*.f64 (pow.f64 im 4) (*.f64 1/4 (pow.f64 (sin.f64 re) 2)))) (-.f64 re (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))))
(/.f64 (fma.f64 re re (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 (sin.f64 re) 2) -1/4))) (+.f64 re (*.f64 -1/2 (*.f64 im (*.f64 im (sin.f64 re))))))
(pow.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 1)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 3)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(pow.f64 (pow.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 3) 1/3)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 2)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 2))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(log.f64 (exp.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re))))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(cbrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re) 3))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(expm1.f64 (log1p.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(exp.f64 (log.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)) 1))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(log1p.f64 (expm1.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 re 1 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 1/2 (*.f64 (sin.f64 re) im)) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re)) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) 1 re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 1 re (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 1 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) 2) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 im im)) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 1/2 (sin.f64 re))) re)
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (sin.f64 re) 1/2)) re)
(fma.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (sin.f64 re) 1/2)) (cbrt.f64 (*.f64 im im)) re)
(fma.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 im im)) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) im re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 1/2 re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) re)
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (sin.f64 re) 1/2)) re)
(fma.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (sin.f64 re) 1/2)) (cbrt.f64 (*.f64 im im)) re)
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) 1) im re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (cbrt.f64 (*.f64 im im))) (cbrt.f64 im) re)
(fma.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 1/2 (*.f64 im (sin.f64 re)))) (cbrt.f64 im) re)
(fma.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (sin.f64 re) (*.f64 im 1/2))) (cbrt.f64 im) re)
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (sqrt.f64 im)) (sqrt.f64 im) re)
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)) re)
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)) re)

eval188.0ms (2.3%)

Compiler

Compiled 9882 to 6228 computations (37% saved)

prune87.0ms (1.1%)

Pruning

26 alts after pruning (15 fresh and 11 done)

PrunedKeptTotal
New5439552
Fresh369
Picked235
Done088
Total54826574
Accurracy
100.0%
Counts
574 → 26
Alt Table
Click to see full alt table
StatusAccuracyProgram
43.4%
(fma.f64 (*.f64 -2 (*.f64 re re)) (*.f64 im im) re)
3.0%
(fma.f64 re -512 re)
28.5%
(pow.f64 (sqrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 2)
13.0%
(pow.f64 re -512)
5.0%
(/.f64 re (+.f64 re (-.f64 re re)))
3.0%
(/.f64 re -512)
11.5%
(+.f64 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (*.f64 (*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (*.f64 im im)))
60.2%
(+.f64 (sin.f64 re) (*.f64 (+.f64 -1 (cos.f64 (*.f64 re -2))) (*.f64 im im)))
56.7%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 re im))))
70.5%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))
4.1%
(+.f64 (sin.f64 re) 64)
3.7%
(+.f64 (sin.f64 re) -512)
40.5%
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
44.3%
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
7.1%
(+.f64 re re)
2.8%
(+.f64 re 64)
2.7%
(+.f64 re -512)
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
61.0%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
20.7%
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
15.3%
(sqrt.f64 (*.f64 re re))
53.8%
(sin.f64 re)
35.6%
(log1p.f64 (expm1.f64 re))
17.1%
(fabs.f64 re)
29.7%
re
4.1%
64
Compiler

Compiled 512 to 323 computations (36.9% saved)

regimes103.0ms (1.2%)

Counts
36 → 1
Calls
Call 1
Inputs
64
re
(+.f64 re -512)
(+.f64 re 64)
(+.f64 re re)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(cbrt.f64 re)
(fabs.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(sqrt.f64 (*.f64 re re))
(+.f64 (sin.f64 re) -512)
(+.f64 (sin.f64 re) 64)
(fma.f64 re -512 re)
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 re im))))
(fma.f64 (*.f64 -2 (*.f64 re re)) (*.f64 im im) re)
(+.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re (+.f64 (*.f64 -1/12 (*.f64 re re)) 1/2))))
(log1p.f64 (expm1.f64 re))
(+.f64 (sin.f64 re) (sin.f64 re))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 (+.f64 -1 (cos.f64 (*.f64 re -2))) (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (+.f64 re (*.f64 (pow.f64 re 3) -1/6))) (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (*.f64 im im)))
(+.f64 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (*.f64 (*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(pow.f64 (sqrt.f64 (fma.f64 (fma.f64 (cos.f64 (*.f64 -2 re)) 2 -2) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))) 2)
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Calls

6 calls:

25.0ms
im
18.0ms
re
17.0ms
(sin.f64 re)
17.0ms
(*.f64 1/2 (sin.f64 re))
11.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
100.0%1re
100.0%1im
100.0%1(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
100.0%1(*.f64 1/2 (sin.f64 re))
100.0%1(sin.f64 re)
100.0%1(+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
Compiler

Compiled 322 to 185 computations (42.5% saved)

regimes177.0ms (2.1%)

Counts
33 → 5
Calls
Call 1
Inputs
64
re
(+.f64 re -512)
(+.f64 re 64)
(+.f64 re re)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(cbrt.f64 re)
(fabs.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(sqrt.f64 (*.f64 re re))
(+.f64 (sin.f64 re) -512)
(+.f64 (sin.f64 re) 64)
(fma.f64 re -512 re)
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 re im))))
(fma.f64 (*.f64 -2 (*.f64 re re)) (*.f64 im im) re)
(+.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re (+.f64 (*.f64 -1/12 (*.f64 re re)) 1/2))))
(log1p.f64 (expm1.f64 re))
(+.f64 (sin.f64 re) (sin.f64 re))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 (+.f64 -1 (cos.f64 (*.f64 re -2))) (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (+.f64 re (*.f64 (pow.f64 re 3) -1/6))) (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (*.f64 im im)))
(+.f64 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re)))) (*.f64 (*.f64 1/2 (-.f64 -2 (*.f64 -2 (cos.f64 (*.f64 -2 re))))) (*.f64 im im)))
Outputs
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
Calls

3 calls:

76.0ms
im
51.0ms
(sin.f64 re)
43.0ms
re
Results
AccuracySegmentsBranch
89.7%3re
93.1%5im
89.3%3(sin.f64 re)
Compiler

Compiled 252 to 140 computations (44.4% saved)

regimes130.0ms (1.6%)

Counts
27 → 5
Calls
Call 1
Inputs
64
re
(+.f64 re -512)
(+.f64 re 64)
(+.f64 re re)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(cbrt.f64 re)
(fabs.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(sqrt.f64 (*.f64 re re))
(+.f64 (sin.f64 re) -512)
(+.f64 (sin.f64 re) 64)
(fma.f64 re -512 re)
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 re im))))
(fma.f64 (*.f64 -2 (*.f64 re re)) (*.f64 im im) re)
(+.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re (+.f64 (*.f64 -1/12 (*.f64 re re)) 1/2))))
(log1p.f64 (expm1.f64 re))
(+.f64 (sin.f64 re) (sin.f64 re))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Outputs
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(sin.f64 re)
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
Calls

1 calls:

122.0ms
im
Results
AccuracySegmentsBranch
93.1%5im
Compiler

Compiled 154 to 81 computations (47.4% saved)

regimes225.0ms (2.7%)

Counts
26 → 5
Calls
Call 1
Inputs
64
re
(+.f64 re -512)
(+.f64 re 64)
(+.f64 re re)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(cbrt.f64 re)
(fabs.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(sqrt.f64 (*.f64 re re))
(+.f64 (sin.f64 re) -512)
(+.f64 (sin.f64 re) 64)
(fma.f64 re -512 re)
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 re im))))
(fma.f64 (*.f64 -2 (*.f64 re re)) (*.f64 im im) re)
(+.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re (+.f64 (*.f64 -1/12 (*.f64 re re)) 1/2))))
(log1p.f64 (expm1.f64 re))
(+.f64 (sin.f64 re) (sin.f64 re))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
Outputs
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(pow.f64 re -512)
(+.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re (+.f64 (*.f64 -1/12 (*.f64 re re)) 1/2))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re (+.f64 (*.f64 -1/12 (*.f64 re re)) 1/2))))
Calls

3 calls:

126.0ms
(sin.f64 re)
59.0ms
im
35.0ms
re
Results
AccuracySegmentsBranch
68.8%6(sin.f64 re)
66.5%3re
82.0%5im
Compiler

Compiled 151 to 79 computations (47.7% saved)

regimes68.0ms (0.8%)

Counts
22 → 6
Calls
Call 1
Inputs
64
re
(+.f64 re -512)
(+.f64 re 64)
(+.f64 re re)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(cbrt.f64 re)
(fabs.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(sqrt.f64 (*.f64 re re))
(+.f64 (sin.f64 re) -512)
(+.f64 (sin.f64 re) 64)
(fma.f64 re -512 re)
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 re im))))
(fma.f64 (*.f64 -2 (*.f64 re re)) (*.f64 im im) re)
Outputs
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(pow.f64 re -512)
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(sin.f64 re)
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
Calls

1 calls:

64.0ms
im
Results
AccuracySegmentsBranch
82.7%6im
Compiler

Compiled 114 to 60 computations (47.4% saved)

regimes55.0ms (0.7%)

Counts
19 → 6
Calls
Call 1
Inputs
64
re
(+.f64 re -512)
(+.f64 re 64)
(+.f64 re re)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(cbrt.f64 re)
(fabs.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(sqrt.f64 (*.f64 re re))
(+.f64 (sin.f64 re) -512)
(+.f64 (sin.f64 re) 64)
(fma.f64 re -512 re)
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
Outputs
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(pow.f64 re -512)
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(sin.f64 re)
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
Calls

1 calls:

52.0ms
im
Results
AccuracySegmentsBranch
79.0%6im
Compiler

Compiled 84 to 48 computations (42.9% saved)

regimes86.0ms (1%)

Counts
17 → 8
Calls
Call 1
Inputs
64
re
(+.f64 re -512)
(+.f64 re 64)
(+.f64 re re)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(cbrt.f64 re)
(fabs.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(sqrt.f64 (*.f64 re re))
(+.f64 (sin.f64 re) -512)
(+.f64 (sin.f64 re) 64)
(fma.f64 re -512 re)
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
Outputs
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(pow.f64 re -512)
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(sin.f64 re)
(+.f64 re (*.f64 (pow.f64 re 3) -1/6))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
Calls

1 calls:

81.0ms
im
Results
AccuracySegmentsBranch
77.9%8im
Compiler

Compiled 67 to 38 computations (43.3% saved)

regimes34.0ms (0.4%)

Counts
16 → 4
Calls
Call 1
Inputs
64
re
(+.f64 re -512)
(+.f64 re 64)
(+.f64 re re)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(cbrt.f64 re)
(fabs.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(sqrt.f64 (*.f64 re re))
(+.f64 (sin.f64 re) -512)
(+.f64 (sin.f64 re) 64)
(fma.f64 re -512 re)
Outputs
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(pow.f64 re -512)
(sin.f64 re)
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
Calls

1 calls:

31.0ms
im
Results
AccuracySegmentsBranch
71.0%4im
Compiler

Compiled 60 to 33 computations (45% saved)

regimes20.0ms (0.2%)

Counts
11 → 3
Calls
Call 1
Inputs
64
re
(+.f64 re -512)
(+.f64 re 64)
(+.f64 re re)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(cbrt.f64 re)
(fabs.f64 re)
(sin.f64 re)
Outputs
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(sin.f64 re)
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
Calls

1 calls:

18.0ms
im
Results
AccuracySegmentsBranch
68.1%3im
Compiler

Compiled 41 to 23 computations (43.9% saved)

regimes15.0ms (0.2%)

Counts
10 → 1
Calls
Call 1
Inputs
64
re
(+.f64 re -512)
(+.f64 re 64)
(+.f64 re re)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(cbrt.f64 re)
(fabs.f64 re)
Outputs
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
Calls

2 calls:

7.0ms
im
6.0ms
re
Results
AccuracySegmentsBranch
44.3%1re
44.3%1im
Compiler

Compiled 42 to 24 computations (42.9% saved)

regimes33.0ms (0.4%)

Counts
7 → 1
Calls
Call 1
Inputs
64
re
(+.f64 re -512)
(+.f64 re 64)
(+.f64 re re)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
Outputs
re
Calls

2 calls:

27.0ms
re
5.0ms
im
Results
AccuracySegmentsBranch
29.7%1im
29.7%1re
Compiler

Compiled 29 to 17 computations (41.4% saved)

regimes7.0ms (0.1%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
64
Outputs
64
Calls

2 calls:

4.0ms
im
2.0ms
re
Results
AccuracySegmentsBranch
4.1%1im
4.1%1re
Compiler

Compiled 9 to 7 computations (22.2% saved)

bsearch124.0ms (1.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
31.0ms
9.107178764667454e+150
3.19083170767729e+153
38.0ms
2.1917537117753196e-7
0.22936713181565768
24.0ms
-945792.0584403853
-106122.85996102684
30.0ms
-1.7690822129748793e+156
-6.806666107854758e+150
Results
35.0ms241×body256infinite
30.0ms68×body1024infinite
14.0ms96×body256valid
14.0ms59×body512infinite
13.0ms27×body1024valid
8.0ms21×body512valid
Compiler

Compiled 866 to 623 computations (28.1% saved)

bsearch163.0ms (2%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
30.0ms
9.107178764667454e+150
3.19083170767729e+153
73.0ms
2.1917537117753196e-7
0.22936713181565768
24.0ms
-945792.0584403853
-106122.85996102684
35.0ms
-1.7690822129748793e+156
-6.806666107854758e+150
Results
55.0ms102×body256valid
41.0ms222×body256infinite
28.0ms80×body1024infinite
16.0ms66×body512infinite
9.0ms23×body1024valid
6.0ms19×body512valid
Compiler

Compiled 731 to 548 computations (25% saved)

bsearch144.0ms (1.7%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
44.0ms
2.1917537117753196e-7
0.22936713181565768
41.0ms
-56161.51466407158
-65.82533140279152
36.0ms
-9.594719599651517e+33
-1.6656432415847894e+31
23.0ms
-4.7317122469627994e+85
-8.194754654264324e+84
Results
39.0ms58×body1024valid
25.0ms135×body256infinite
24.0ms156×body256valid
23.0ms59×body1024infinite
14.0ms39×body512valid
12.0ms49×body512infinite
Compiler

Compiled 741 to 532 computations (28.2% saved)

bsearch223.0ms (2.7%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
35.0ms
3.19083170767729e+153
2.84355269658201e+156
47.0ms
2.1917537117753196e-7
0.22936713181565768
38.0ms
-56161.51466407158
-65.82533140279152
37.0ms
-9.594719599651517e+33
-1.6656432415847894e+31
65.0ms
-4.7317122469627994e+85
-8.194754654264324e+84
Results
78.0ms79×body1024infinite
45.0ms241×body256infinite
37.0ms50×body1024valid
24.0ms159×body256valid
15.0ms57×body512infinite
10.0ms38×body512valid
Compiler

Compiled 700 to 543 computations (22.4% saved)

bsearch168.0ms (2%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
32.0ms
2.946501431693962e+217
2.9207367833989095e+221
49.0ms
2.1917537117753196e-7
0.22936713181565768
33.0ms
-56161.51466407158
-65.82533140279152
31.0ms
-9.594719599651517e+33
-1.6656432415847894e+31
23.0ms
-2.636261482517249e+182
-5.9425396464668985e+181
Results
40.0ms229×body256infinite
34.0ms89×body1024infinite
29.0ms43×body512valid
27.0ms170×body256valid
14.0ms59×body512infinite
13.0ms34×body1024valid
Compiler

Compiled 680 to 529 computations (22.2% saved)

bsearch209.0ms (2.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
29.0ms
2.946501431693962e+217
2.9207367833989095e+221
36.0ms
2.1917537117753196e-7
0.22936713181565768
34.0ms
-56161.51466407158
-65.82533140279152
31.0ms
-9.594719599651517e+33
-1.6656432415847894e+31
21.0ms
-4.7317122469627994e+85
-8.194754654264324e+84
26.0ms
-2.636261482517249e+182
-5.9425396464668985e+181
31.0ms
-2.7966347637446174e+216
-2.623435034870004e+213
Results
59.0ms373×body256infinite
54.0ms131×body1024infinite
27.0ms157×body256valid
24.0ms100×body512infinite
17.0ms43×body1024valid
15.0ms44×body512valid
Compiler

Compiled 994 to 753 computations (24.2% saved)

bsearch94.0ms (1.1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
34.0ms
2.1917537117753196e-7
0.22936713181565768
36.0ms
-9.594719599651517e+33
-1.6656432415847894e+31
23.0ms
-4.7317122469627994e+85
-8.194754654264324e+84
Results
29.0ms141×body256infinite
19.0ms101×body256valid
18.0ms56×body1024infinite
9.0ms22×body1024valid
7.0ms27×body512infinite
5.0ms21×body512valid
Compiler

Compiled 368 to 273 computations (25.8% saved)

bsearch65.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
35.0ms
2.1917537117753196e-7
0.22936713181565768
29.0ms
-1.6656432415847894e+31
-3.985024502522287e+26
Results
17.0ms101×body256valid
11.0ms28×body1024valid
11.0ms79×body256infinite
10.0ms30×body1024infinite
7.0ms19×body512infinite
5.0ms15×body512valid
Compiler

Compiled 308 to 219 computations (28.9% saved)

simplify28.0ms (0.3%)

Algorithm
egg-herbie
Rules
34×*-commutative
16×+-commutative
if-if-or-not
sub-neg
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01301190
11651190
21671190
31681190
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 im -13199999999999999773196063550815192655340841269168371305534464478777571651222204465790151517816444445650545021209011632002935604597533337723926189038370816) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im -108000) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (if (<=.f64 im 1098878309078401/36028797018963968) (+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))) (if (<=.f64 im 3150000000000000064284969159874311689514361096988281839886662509860462691717156695854977457588840479124276687248905910808558607317955988038119305882107904) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))))))
(if (<=.f64 im -13199999999999999773196063550815192655340841269168371305534464478777571651222204465790151517816444445650545021209011632002935604597533337723926189038370816) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im -108000) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (if (<=.f64 im 4722366482869645/295147905179352825856) (sin.f64 re) (if (<=.f64 im 3150000000000000064284969159874311689514361096988281839886662509860462691717156695854977457588840479124276687248905910808558607317955988038119305882107904) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))))))
(if (<=.f64 im -47000000000000002067991945199831789942543192885043878276316501431057740152308810907648) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im -1600000000000000085858595270295552) (pow.f64 re -512) (if (<=.f64 im -480) (+.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re (+.f64 (*.f64 -1/12 (*.f64 re re)) 1/2)))) (if (<=.f64 im 5902958103587057/147573952589676412928) (sin.f64 re) (+.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re (+.f64 (*.f64 -1/12 (*.f64 re re)) 1/2))))))))
(if (<=.f64 im -47000000000000002067991945199831789942543192885043878276316501431057740152308810907648) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im -147999999999999992809825314537472) (pow.f64 re -512) (if (<=.f64 im -540) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (if (<=.f64 im 8106479329266893/36028797018963968) (sin.f64 re) (if (<=.f64 im 7200000000000000146937072365426998147461396793116072776883800022538200438210643876239948474488778237998346713711784938990991102441042258372844127730532352) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))))
(if (<=.f64 im -60000000000000002397667851438389145073169193247630966347479222974469443260556585900315967561591564074843977650814154437229232880663246516408538316129302675379884516264761400431214592) (*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2))) (if (<=.f64 im -560000000000000015638989537017856) (pow.f64 re -512) (if (<=.f64 im -405) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (if (<=.f64 im 8106479329266893/36028797018963968) (sin.f64 re) (if (<=.f64 im 29999999999999997580844339580419700182387541526323725998906408721602526446615191946946201932569919986881337873998546910379499936163647588911697809620642786552334405855287308671981133120496360598595652152815026207457280) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))))))))
(if (<=.f64 im -2649999999999999891238425074803327536673580625264027429891306760160430281807370350676172350277076708681125281612205431898275230009935358355865615222623416098519704122576666457579150343030141207414273505766561284096) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))) (if (<=.f64 im -259999999999999993190846513947349403591231825090071273170815862762360426893763368511154911031843415285985962890760181734322362524965920908086678790809303502212546601711835661278904320) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (if (<=.f64 im -37000000000000001921684992893083059632842763006397327683530393559359776509797328748544) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))) (if (<=.f64 im -4900000000000000136841158448906240) (pow.f64 re -512) (if (<=.f64 im -500) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (if (<=.f64 im 8106479329266893/36028797018963968) (sin.f64 re) (if (<=.f64 im 29999999999999997580844339580419700182387541526323725998906408721602526446615191946946201932569919986881337873998546910379499936163647588911697809620642786552334405855287308671981133120496360598595652152815026207457280) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))))))))))
(if (<=.f64 im -45000000000000000658381285380369286393651934453909477667537485422640836391301669715968) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))) (if (<=.f64 im -16999999999999998930663738703872) (pow.f64 re -512) (if (<=.f64 im 8762203435012037/576460752303423488) (sin.f64 re) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))))))
(if (<=.f64 im -240000000000000007587059728384) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))) (if (<=.f64 im 2582544170319337/36893488147419103232) (sin.f64 re) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
re
64
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 im -13199999999999999773196063550815192655340841269168371305534464478777571651222204465790151517816444445650545021209011632002935604597533337723926189038370816) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im -108000) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (if (<=.f64 im 1098878309078401/36028797018963968) (+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))) (if (<=.f64 im 3150000000000000064284969159874311689514361096988281839886662509860462691717156695854977457588840479124276687248905910808558607317955988038119305882107904) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))))))
(if (<=.f64 im -13199999999999999773196063550815192655340841269168371305534464478777571651222204465790151517816444445650545021209011632002935604597533337723926189038370816) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im -108000) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 1/2 re)) (if (<=.f64 im 1098878309078401/36028797018963968) (+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (*.f64 (sin.f64 re) im)))) (if (<=.f64 im 3150000000000000064284969159874311689514361096988281839886662509860462691717156695854977457588840479124276687248905910808558607317955988038119305882107904) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 1/2 re)) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))))))
(if (<=.f64 im -13199999999999999773196063550815192655340841269168371305534464478777571651222204465790151517816444445650545021209011632002935604597533337723926189038370816) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im -108000) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (if (<=.f64 im 4722366482869645/295147905179352825856) (sin.f64 re) (if (<=.f64 im 3150000000000000064284969159874311689514361096988281839886662509860462691717156695854977457588840479124276687248905910808558607317955988038119305882107904) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))))))
(if (<=.f64 im -13199999999999999773196063550815192655340841269168371305534464478777571651222204465790151517816444445650545021209011632002935604597533337723926189038370816) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im -108000) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 1/2 re)) (if (<=.f64 im 4722366482869645/295147905179352825856) (sin.f64 re) (if (<=.f64 im 3150000000000000064284969159874311689514361096988281839886662509860462691717156695854977457588840479124276687248905910808558607317955988038119305882107904) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 1/2 re)) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))))))
(if (<=.f64 im -47000000000000002067991945199831789942543192885043878276316501431057740152308810907648) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im -1600000000000000085858595270295552) (pow.f64 re -512) (if (<=.f64 im -480) (+.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re (+.f64 (*.f64 -1/12 (*.f64 re re)) 1/2)))) (if (<=.f64 im 5902958103587057/147573952589676412928) (sin.f64 re) (+.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re (+.f64 (*.f64 -1/12 (*.f64 re re)) 1/2))))))))
(if (<=.f64 im -47000000000000002067991945199831789942543192885043878276316501431057740152308810907648) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im -1600000000000000085858595270295552) (pow.f64 re -512) (if (or (<=.f64 im -480) (not (<=.f64 im 5902958103587057/147573952589676412928))) (+.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re (+.f64 1/2 (*.f64 -1/12 (*.f64 re re)))))) (sin.f64 re))))
(if (<=.f64 im -47000000000000002067991945199831789942543192885043878276316501431057740152308810907648) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im -147999999999999992809825314537472) (pow.f64 re -512) (if (<=.f64 im -540) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (if (<=.f64 im 8106479329266893/36028797018963968) (sin.f64 re) (if (<=.f64 im 7200000000000000146937072365426998147461396793116072776883800022538200438210643876239948474488778237998346713711784938990991102441042258372844127730532352) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (+.f64 re (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))))
(if (<=.f64 im -60000000000000002397667851438389145073169193247630966347479222974469443260556585900315967561591564074843977650814154437229232880663246516408538316129302675379884516264761400431214592) (*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2))) (if (<=.f64 im -560000000000000015638989537017856) (pow.f64 re -512) (if (<=.f64 im -405) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (if (<=.f64 im 8106479329266893/36028797018963968) (sin.f64 re) (if (<=.f64 im 29999999999999997580844339580419700182387541526323725998906408721602526446615191946946201932569919986881337873998546910379499936163647588911697809620642786552334405855287308671981133120496360598595652152815026207457280) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))))))))
(if (<=.f64 im -60000000000000002397667851438389145073169193247630966347479222974469443260556585900315967561591564074843977650814154437229232880663246516408538316129302675379884516264761400431214592) (*.f64 im (*.f64 (sin.f64 re) (*.f64 1/2 im))) (if (<=.f64 im -560000000000000015638989537017856) (pow.f64 re -512) (if (<=.f64 im -405) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (if (<=.f64 im 8106479329266893/36028797018963968) (sin.f64 re) (if (<=.f64 im 29999999999999997580844339580419700182387541526323725998906408721602526446615191946946201932569919986881337873998546910379499936163647588911697809620642786552334405855287308671981133120496360598595652152815026207457280) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (+.f64 re (*.f64 (*.f64 im im) (*.f64 1/2 re))))))))
(if (<=.f64 im -2649999999999999891238425074803327536673580625264027429891306760160430281807370350676172350277076708681125281612205431898275230009935358355865615222623416098519704122576666457579150343030141207414273505766561284096) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))) (if (<=.f64 im -259999999999999993190846513947349403591231825090071273170815862762360426893763368511154911031843415285985962890760181734322362524965920908086678790809303502212546601711835661278904320) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (if (<=.f64 im -37000000000000001921684992893083059632842763006397327683530393559359776509797328748544) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))) (if (<=.f64 im -4900000000000000136841158448906240) (pow.f64 re -512) (if (<=.f64 im -500) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (if (<=.f64 im 8106479329266893/36028797018963968) (sin.f64 re) (if (<=.f64 im 29999999999999997580844339580419700182387541526323725998906408721602526446615191946946201932569919986881337873998546910379499936163647588911697809620642786552334405855287308671981133120496360598595652152815026207457280) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))))))))))
(if (<=.f64 im -2649999999999999891238425074803327536673580625264027429891306760160430281807370350676172350277076708681125281612205431898275230009935358355865615222623416098519704122576666457579150343030141207414273505766561284096) (+.f64 re (*.f64 (*.f64 im im) (*.f64 1/2 re))) (if (<=.f64 im -259999999999999993190846513947349403591231825090071273170815862762360426893763368511154911031843415285985962890760181734322362524965920908086678790809303502212546601711835661278904320) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (if (<=.f64 im -37000000000000001921684992893083059632842763006397327683530393559359776509797328748544) (+.f64 re (*.f64 (*.f64 im im) (*.f64 1/2 re))) (if (<=.f64 im -4900000000000000136841158448906240) (pow.f64 re -512) (if (<=.f64 im -500) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (if (<=.f64 im 8106479329266893/36028797018963968) (sin.f64 re) (if (<=.f64 im 29999999999999997580844339580419700182387541526323725998906408721602526446615191946946201932569919986881337873998546910379499936163647588911697809620642786552334405855287308671981133120496360598595652152815026207457280) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)) (+.f64 re (*.f64 (*.f64 im im) (*.f64 1/2 re))))))))))
(if (<=.f64 im -45000000000000000658381285380369286393651934453909477667537485422640836391301669715968) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))) (if (<=.f64 im -16999999999999998930663738703872) (pow.f64 re -512) (if (<=.f64 im 8762203435012037/576460752303423488) (sin.f64 re) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))))))
(if (<=.f64 im -45000000000000000658381285380369286393651934453909477667537485422640836391301669715968) (+.f64 re (*.f64 (*.f64 im im) (*.f64 1/2 re))) (if (<=.f64 im -16999999999999998930663738703872) (pow.f64 re -512) (if (<=.f64 im 8762203435012037/576460752303423488) (sin.f64 re) (+.f64 re (*.f64 (*.f64 im im) (*.f64 1/2 re))))))
(if (<=.f64 im -240000000000000007587059728384) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im))) (if (<=.f64 im 2582544170319337/36893488147419103232) (sin.f64 re) (+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))))
(if (or (<=.f64 im -240000000000000007587059728384) (not (<=.f64 im 2582544170319337/36893488147419103232))) (+.f64 re (*.f64 (*.f64 im im) (*.f64 1/2 re))) (sin.f64 re))
(+.f64 re (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(+.f64 re (*.f64 (*.f64 im im) (*.f64 1/2 re)))
re
64
Compiler

Compiled 470 to 296 computations (37% saved)

soundness641.0ms (7.8%)

Rules
1568×unswap-sqr
1566×log-prod
1404×fma-def
900×fabs-mul
862×associate-/r*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01435
13035
27435
314133
418933
525633
643833
7110433
8315833
9354033
10403133
11567033
12665033
01431438
13851438
218031438
01977
140577
2626877
01977
140577
2626877
01431438
13851438
218031438
057213518
1144011010
2495210998
01252214
12772194
26762158
326812158
473172158
03383786
17853602
225053536
363033536
Stop Event
node limit
unsound
node limit
unsound
unsound
unsound
unsound
node limit
Compiler

Compiled 229 to 138 computations (39.7% saved)

end201.0ms (2.4%)

Compiler

Compiled 924 to 522 computations (43.5% saved)

Profiling

Loading profile data...