math.sin on complex, real part

Time bar (total: 8.5s)

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)

sample1.9s (22.8%)

Results
485.0ms1032×body1024valid
471.0ms2618×body256valid
368.0ms1019×body1024infinite
357.0ms2600×body256infinite
125.0ms497×body512valid
109.0ms489×body512infinite
1.0msbody2048valid
Bogosity

preprocess199.0ms (2.3%)

Algorithm
egg-herbie
Rules
1388×fma-def
1228×distribute-lft-neg-in
1086×fma-neg
802×times-frac
798×distribute-rgt-neg-in
Problems
256×No Errors
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
034224
197224
2259220
3527212
41154210
53089210
65254210
77984210
Stop Event
node limit
Calls
Call 1
Inputs
(*.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 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 (neg.f64 re))) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 (neg.f64 im))) (exp.f64 (neg.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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 1/2 (*.f64 (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 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 1/2 (*.f64 (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 (neg.f64 re))) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 1/2 (*.f64 (neg.f64 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (neg.f64 (sin.f64 re))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) -1/2))
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) -1/2))
(*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.f64 -1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 (neg.f64 im))) (exp.f64 (neg.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 1/2 (*.f64 (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) (*.f64 1/2 (+.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))))
Symmetry

(abs im)

Compiler

Compiled 55 to 36 computations (34.5% saved)

eval1.0ms (0%)

Compiler

Compiled 35 to 18 computations (48.6% saved)

prune2.0ms (0%)

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

Compiled 52 to 38 computations (26.9% saved)

localize145.0ms (1.7%)

Localize:

Found 5 expressions with local error:

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

Compiled 66 to 26 computations (60.6% saved)

series47.0ms (0.6%)

Counts
5 → 76
Calls

21 calls:

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

rewrite86.0ms (1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
020126
1270126
24365126
Stop Event
unsound
Counts
5 → 64
Calls
Call 1
Inputs
(/.f64 1/2 (exp.f64 im))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Outputs
-1/2
-1/4
0
1/4
1/2
2
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re)))) -1)
(/.f64 (*.f64 -1/2 (sin.f64 re)) -1/2)
(/.f64 (*.f64 -1/2 (sin.f64 re)) -1)
(/.f64 (*.f64 -1/2 (sin.f64 re)) (+.f64 (*.f64 -1/2 (sin.f64 re)) (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))))
(/.f64 (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re))) (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re))))
(pow.f64 (*.f64 -1/2 (sin.f64 re)) -1/2)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) -1)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) 3)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) 1/3)
(sqrt.f64 (*.f64 -1/2 (sin.f64 re)))
(fabs.f64 (*.f64 -1/2 (sin.f64 re)))
(log.f64 (pow.f64 -1 (sin.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 -1/2 (sin.f64 re)))))
(cbrt.f64 (*.f64 -1/2 (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))) -1))
(exp.f64 (+.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))) -1/2))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (sin.f64 re))))
(fma.f64 -1 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))
(fma.f64 (*.f64 -1/2 (sin.f64 re)) -1 (*.f64 -1/2 (sin.f64 re)))
-1/2
-1/4
0
1/4
1/2
2
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re)))) -1)
(/.f64 (*.f64 -1/2 (sin.f64 re)) -1/2)
(/.f64 (*.f64 -1/2 (sin.f64 re)) -1)
(/.f64 (*.f64 -1/2 (sin.f64 re)) (+.f64 (*.f64 -1/2 (sin.f64 re)) (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))))
(/.f64 (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re))) (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re))))
(pow.f64 (*.f64 -1/2 (sin.f64 re)) -1/2)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) -1)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) 3)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) 1/3)
(sqrt.f64 (*.f64 -1/2 (sin.f64 re)))
(fabs.f64 (*.f64 -1/2 (sin.f64 re)))
(log.f64 (pow.f64 -1 (sin.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 -1/2 (sin.f64 re)))))
(cbrt.f64 (*.f64 -1/2 (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))) -1))
(exp.f64 (+.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))) -1/2))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (sin.f64 re))))
(fma.f64 -1 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))
(fma.f64 (*.f64 -1/2 (sin.f64 re)) -1 (*.f64 -1/2 (sin.f64 re)))
-1/2
-1/4
0
1/4
1/2
2

simplify81.0ms (1%)

Algorithm
egg-herbie
Rules
1666×fma-def
1298×associate-*r*
1118×associate-*l*
978×distribute-lft-in
762×associate-+r+
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01514180
14753815
215223601
363713601
Stop Event
node limit
Counts
140 → 113
Calls
Call 1
Inputs
1/2
(+.f64 1/2 (*.f64 -1/2 im))
(+.f64 1/2 (+.f64 (*.f64 -1/2 im) (*.f64 1/4 (pow.f64 im 2))))
(+.f64 1/2 (+.f64 (*.f64 -1/2 im) (+.f64 (*.f64 -1/12 (pow.f64 im 3)) (*.f64 1/4 (pow.f64 im 2)))))
(*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
1
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 1 (+.f64 (*.f64 1/720 (pow.f64 im 6)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(*.f64 1/2 (*.f64 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/240 (*.f64 (pow.f64 re 5) (+.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/10080 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.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 (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 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))))
(*.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)))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))
(+.f64 2 (+.f64 (*.f64 1/360 (pow.f64 im 6)) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
-1/2
-1/4
0
1/4
1/2
2
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re)))) -1)
(/.f64 (*.f64 -1/2 (sin.f64 re)) -1/2)
(/.f64 (*.f64 -1/2 (sin.f64 re)) -1)
(/.f64 (*.f64 -1/2 (sin.f64 re)) (+.f64 (*.f64 -1/2 (sin.f64 re)) (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))))
(/.f64 (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re))) (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re))))
(pow.f64 (*.f64 -1/2 (sin.f64 re)) -1/2)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) -1)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) 3)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) 1/3)
(sqrt.f64 (*.f64 -1/2 (sin.f64 re)))
(fabs.f64 (*.f64 -1/2 (sin.f64 re)))
(log.f64 (pow.f64 -1 (sin.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 -1/2 (sin.f64 re)))))
(cbrt.f64 (*.f64 -1/2 (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))) -1))
(exp.f64 (+.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))) -1/2))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (sin.f64 re))))
(fma.f64 -1 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))
(fma.f64 (*.f64 -1/2 (sin.f64 re)) -1 (*.f64 -1/2 (sin.f64 re)))
-1/2
-1/4
0
1/4
1/2
2
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re)))) -1)
(/.f64 (*.f64 -1/2 (sin.f64 re)) -1/2)
(/.f64 (*.f64 -1/2 (sin.f64 re)) -1)
(/.f64 (*.f64 -1/2 (sin.f64 re)) (+.f64 (*.f64 -1/2 (sin.f64 re)) (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))))
(/.f64 (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re))) (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re))))
(pow.f64 (*.f64 -1/2 (sin.f64 re)) -1/2)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) -1)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) 3)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) 1/3)
(sqrt.f64 (*.f64 -1/2 (sin.f64 re)))
(fabs.f64 (*.f64 -1/2 (sin.f64 re)))
(log.f64 (pow.f64 -1 (sin.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 -1/2 (sin.f64 re)))))
(cbrt.f64 (*.f64 -1/2 (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))) -1))
(exp.f64 (+.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))) -1/2))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (sin.f64 re))))
(fma.f64 -1 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))
(fma.f64 (*.f64 -1/2 (sin.f64 re)) -1 (*.f64 -1/2 (sin.f64 re)))
-1/2
-1/4
0
1/4
1/2
2
Outputs
1/2
(+.f64 1/2 (*.f64 -1/2 im))
(fma.f64 -1/2 im 1/2)
(+.f64 1/2 (+.f64 (*.f64 -1/2 im) (*.f64 1/4 (pow.f64 im 2))))
(+.f64 1/2 (fma.f64 -1/2 im (*.f64 1/4 (pow.f64 im 2))))
(+.f64 (fma.f64 -1/2 im 1/2) (*.f64 1/4 (pow.f64 im 2)))
(fma.f64 -1/2 im (fma.f64 1/4 (pow.f64 im 2) 1/2))
(+.f64 1/2 (+.f64 (*.f64 -1/2 im) (+.f64 (*.f64 -1/12 (pow.f64 im 3)) (*.f64 1/4 (pow.f64 im 2)))))
(+.f64 1/2 (fma.f64 -1/2 im (fma.f64 -1/12 (pow.f64 im 3) (*.f64 1/4 (pow.f64 im 2)))))
(+.f64 (fma.f64 -1/2 im 1/2) (fma.f64 1/4 (pow.f64 im 2) (*.f64 -1/12 (pow.f64 im 3))))
(+.f64 (fma.f64 -1/2 im 1/2) (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 im -1/12))))
(*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3)) (*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (fma.f64 -1/6 (pow.f64 re 3) re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3)) (fma.f64 1/120 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 5)) (*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3)) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (fma.f64 1/120 (pow.f64 re 5) re)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3)) (fma.f64 -1/5040 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 7)) (fma.f64 1/120 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 5)) (*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))))
(+.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (fma.f64 1/120 (pow.f64 re 5) re) (fma.f64 -1/6 (pow.f64 re 3) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))))
(+.f64 (sin.f64 re) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) (fma.f64 1/24 (pow.f64 im 4) 1)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))))
(+.f64 (sin.f64 re) (fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))))
(+.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
1
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 1 (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 1/2 (pow.f64 im 2) (fma.f64 1/24 (pow.f64 im 4) 1))
(+.f64 1 (+.f64 (*.f64 1/720 (pow.f64 im 6)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 1 (fma.f64 1/720 (pow.f64 im 6) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (fma.f64 1/2 (pow.f64 im 2) 1))
(fma.f64 1/720 (pow.f64 im 6) (fma.f64 1/2 (pow.f64 im 2) (fma.f64 1/24 (pow.f64 im 4) 1)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.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/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3)) (*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (fma.f64 -1/6 (pow.f64 re 3) re))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.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/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3)) (fma.f64 1/120 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 5)) (*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3)) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (fma.f64 1/120 (pow.f64 re 5) re)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.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/240 (*.f64 (pow.f64 re 5) (+.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/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3)) (fma.f64 -1/5040 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 7)) (fma.f64 1/120 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 5)) (*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))))
(+.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (fma.f64 1/120 (pow.f64 re 5) re) (fma.f64 -1/6 (pow.f64 re 3) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))))
(+.f64 (sin.f64 re) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) (fma.f64 1/24 (pow.f64 im 4) 1)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))))
(+.f64 (sin.f64 re) (fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))))
(+.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
2
(+.f64 2 (pow.f64 im 2))
(fma.f64 im im 2)
(+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (pow.f64 im 2)))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (pow.f64 im 2)))
(fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))
(+.f64 2 (+.f64 (*.f64 1/360 (pow.f64 im 6)) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))))
(+.f64 2 (fma.f64 1/360 (pow.f64 im 6) (fma.f64 1/12 (pow.f64 im 4) (pow.f64 im 2))))
(+.f64 2 (fma.f64 (pow.f64 im 6) 1/360 (fma.f64 (pow.f64 im 4) 1/12 (pow.f64 im 2))))
(fma.f64 (pow.f64 im 6) 1/360 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
-1/2
-1/4
0
1/4
1/2
2
(+.f64 (sin.f64 re) (sin.f64 re))
(*.f64 2 (sin.f64 re))
(+.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))
(*.f64 (sin.f64 re) -1)
(neg.f64 (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re)))) -1)
(+.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re)))) 1)
(+.f64 1 (exp.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re)))))
(/.f64 (*.f64 -1/2 (sin.f64 re)) -1/2)
(sin.f64 re)
(/.f64 (*.f64 -1/2 (sin.f64 re)) -1)
(/.f64 -1/2 (/.f64 -1 (sin.f64 re)))
(*.f64 1/2 (sin.f64 re))
(/.f64 (*.f64 -1/2 (sin.f64 re)) (+.f64 (*.f64 -1/2 (sin.f64 re)) (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))))
1
(/.f64 (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re))) (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re))))
1
(pow.f64 (*.f64 -1/2 (sin.f64 re)) -1/2)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) -1)
(/.f64 1 (*.f64 -1/2 (sin.f64 re)))
(/.f64 -2 (sin.f64 re))
(pow.f64 (*.f64 -1/2 (sin.f64 re)) 3)
(*.f64 -1/8 (pow.f64 (sin.f64 re) 3))
(pow.f64 (*.f64 -1/2 (sin.f64 re)) 1/3)
(cbrt.f64 (*.f64 -1/2 (sin.f64 re)))
(sqrt.f64 (*.f64 -1/2 (sin.f64 re)))
(fabs.f64 (*.f64 -1/2 (sin.f64 re)))
(*.f64 1/2 (fabs.f64 (sin.f64 re)))
(log.f64 (pow.f64 -1 (sin.f64 re)))
(*.f64 (sin.f64 re) (log.f64 -1))
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 -1/2 (sin.f64 re)))))
(cbrt.f64 (*.f64 -1/2 (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re))))
(*.f64 -1/2 (sin.f64 re))
(exp.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))))
(*.f64 -1/2 (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))) -1))
(/.f64 1 (*.f64 -1/2 (sin.f64 re)))
(/.f64 -2 (sin.f64 re))
(exp.f64 (+.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))) -1/2))
(*.f64 (*.f64 -1/2 (sin.f64 re)) (exp.f64 -1/2))
(*.f64 -1/2 (*.f64 (sin.f64 re) (exp.f64 -1/2)))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (sin.f64 re))))
(*.f64 -1/2 (sin.f64 re))
(fma.f64 -1 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))
0
(fma.f64 (*.f64 -1/2 (sin.f64 re)) -1 (*.f64 -1/2 (sin.f64 re)))
0
-1/2
-1/4
0
1/4
1/2
2
(+.f64 (sin.f64 re) (sin.f64 re))
(*.f64 2 (sin.f64 re))
(+.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))
(*.f64 (sin.f64 re) -1)
(neg.f64 (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re)))) -1)
(+.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re)))) 1)
(+.f64 1 (exp.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re)))))
(/.f64 (*.f64 -1/2 (sin.f64 re)) -1/2)
(sin.f64 re)
(/.f64 (*.f64 -1/2 (sin.f64 re)) -1)
(/.f64 -1/2 (/.f64 -1 (sin.f64 re)))
(*.f64 1/2 (sin.f64 re))
(/.f64 (*.f64 -1/2 (sin.f64 re)) (+.f64 (*.f64 -1/2 (sin.f64 re)) (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))))
1
(/.f64 (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re))) (-.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re))))
1
(pow.f64 (*.f64 -1/2 (sin.f64 re)) -1/2)
(pow.f64 (*.f64 -1/2 (sin.f64 re)) -1)
(/.f64 1 (*.f64 -1/2 (sin.f64 re)))
(/.f64 -2 (sin.f64 re))
(pow.f64 (*.f64 -1/2 (sin.f64 re)) 3)
(*.f64 -1/8 (pow.f64 (sin.f64 re) 3))
(pow.f64 (*.f64 -1/2 (sin.f64 re)) 1/3)
(cbrt.f64 (*.f64 -1/2 (sin.f64 re)))
(sqrt.f64 (*.f64 -1/2 (sin.f64 re)))
(fabs.f64 (*.f64 -1/2 (sin.f64 re)))
(*.f64 1/2 (fabs.f64 (sin.f64 re)))
(log.f64 (pow.f64 -1 (sin.f64 re)))
(*.f64 (sin.f64 re) (log.f64 -1))
(log.f64 (+.f64 -1 (expm1.f64 (*.f64 -1/2 (sin.f64 re)))))
(cbrt.f64 (*.f64 -1/2 (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (sin.f64 re))))
(*.f64 -1/2 (sin.f64 re))
(exp.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))))
(*.f64 -1/2 (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))) -1))
(/.f64 1 (*.f64 -1/2 (sin.f64 re)))
(/.f64 -2 (sin.f64 re))
(exp.f64 (+.f64 (log.f64 (*.f64 -1/2 (sin.f64 re))) -1/2))
(*.f64 (*.f64 -1/2 (sin.f64 re)) (exp.f64 -1/2))
(*.f64 -1/2 (*.f64 (sin.f64 re) (exp.f64 -1/2)))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (sin.f64 re))))
(*.f64 -1/2 (sin.f64 re))
(fma.f64 -1 (*.f64 -1/2 (sin.f64 re)) (*.f64 -1/2 (sin.f64 re)))
0
(fma.f64 (*.f64 -1/2 (sin.f64 re)) -1 (*.f64 -1/2 (sin.f64 re)))
0
-1/2
-1/4
0
1/4
1/2
2

eval39.0ms (0.5%)

Compiler

Compiled 1654 to 1042 computations (37% saved)

prune30.0ms (0.3%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1067113
Fresh000
Picked112
Done000
Total1078115
Accuracy
100.0%
Counts
115 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
91.4%
(+.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))
77.5%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
98.7%
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
100.0%
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
11.3%
(*.f64 2 (sin.f64 re))
62.3%
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
54.0%
(sin.f64 re)
91.4%
(+.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))
77.5%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
98.7%
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
100.0%
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
11.3%
(*.f64 2 (sin.f64 re))
62.3%
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
54.0%
(sin.f64 re)
Compiler

Compiled 362 to 276 computations (23.8% saved)

localize177.0ms (2.1%)

Localize:

Found 5 expressions with local error:

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

Compiled 118 to 51 computations (56.8% saved)

series93.0ms (1.1%)

Counts
5 → 48
Calls

21 calls:

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

rewrite33.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
326×associate-*r*
206×associate-*l*
149×log1p-expm1-u
149×expm1-log1p-u
148×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025102
1336102
25639102
Stop Event
unsound
Counts
5 → 77
Calls
Call 1
Inputs
(/.f64 1 (exp.f64 im))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
Outputs
-2
-1
-1/2
0
1/8
1/4
1/2
1
2
4
8
(+.f64 (sin.f64 re) (sin.f64 re))
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -2)
(/.f64 (sin.f64 re) -2)
(/.f64 (sin.f64 re) (+.f64 (sin.f64 re) (-.f64 (sin.f64 re) (sin.f64 re))))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 (+.f64 re re))) -2)
(/.f64 (-.f64 (sin.f64 re) (sin.f64 re)) (-.f64 (sin.f64 re) (sin.f64 re)))
(pow.f64 (sin.f64 re) -2)
(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 -2 (expm1.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(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)) -2))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(fma.f64 -2 (sin.f64 re) (sin.f64 re))
(fma.f64 (sin.f64 re) -2 (sin.f64 re))
-2
-1
-1/2
0
1/8
1/4
1/2
1
2
4
8
(+.f64 (sin.f64 re) (sin.f64 re))
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -2)
(/.f64 (sin.f64 re) -2)
(/.f64 (sin.f64 re) (+.f64 (sin.f64 re) (-.f64 (sin.f64 re) (sin.f64 re))))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 (+.f64 re re))) -2)
(/.f64 (-.f64 (sin.f64 re) (sin.f64 re)) (-.f64 (sin.f64 re) (sin.f64 re)))
(pow.f64 (sin.f64 re) -2)
(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 -2 (expm1.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(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)) -2))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(fma.f64 -2 (sin.f64 re) (sin.f64 re))
(fma.f64 (sin.f64 re) -2 (sin.f64 re))
-2
-1
-1/2
0
1/8
1/4
1/2
1
2
4
8

simplify72.0ms (0.8%)

Algorithm
egg-herbie
Rules
1674×fma-def
1260×distribute-rgt-out
1230×associate-*r*
1078×associate-*l*
842×associate-+r+
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01492863
14182381
213812205
364782190
Stop Event
node limit
Counts
125 → 122
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 -1 im))
(+.f64 1 (+.f64 (*.f64 -1 im) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 1 (+.f64 (*.f64 -1 im) (+.f64 (*.f64 -1/6 (pow.f64 im 3)) (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))))
1
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 1 (+.f64 (*.f64 1/720 (pow.f64 im 6)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2)))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))
(+.f64 2 (+.f64 (*.f64 1/360 (pow.f64 im 6)) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
-2
-1
-1/2
0
1/8
1/4
1/2
1
2
4
8
(+.f64 (sin.f64 re) (sin.f64 re))
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -2)
(/.f64 (sin.f64 re) -2)
(/.f64 (sin.f64 re) (+.f64 (sin.f64 re) (-.f64 (sin.f64 re) (sin.f64 re))))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 (+.f64 re re))) -2)
(/.f64 (-.f64 (sin.f64 re) (sin.f64 re)) (-.f64 (sin.f64 re) (sin.f64 re)))
(pow.f64 (sin.f64 re) -2)
(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 -2 (expm1.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(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)) -2))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(fma.f64 -2 (sin.f64 re) (sin.f64 re))
(fma.f64 (sin.f64 re) -2 (sin.f64 re))
-2
-1
-1/2
0
1/8
1/4
1/2
1
2
4
8
(+.f64 (sin.f64 re) (sin.f64 re))
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -2)
(/.f64 (sin.f64 re) -2)
(/.f64 (sin.f64 re) (+.f64 (sin.f64 re) (-.f64 (sin.f64 re) (sin.f64 re))))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 (+.f64 re re))) -2)
(/.f64 (-.f64 (sin.f64 re) (sin.f64 re)) (-.f64 (sin.f64 re) (sin.f64 re)))
(pow.f64 (sin.f64 re) -2)
(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 -2 (expm1.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(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)) -2))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(fma.f64 -2 (sin.f64 re) (sin.f64 re))
(fma.f64 (sin.f64 re) -2 (sin.f64 re))
-2
-1
-1/2
0
1/8
1/4
1/2
1
2
4
8
Outputs
1
(+.f64 1 (*.f64 -1 im))
(+.f64 1 (neg.f64 im))
(-.f64 1 im)
(+.f64 1 (+.f64 (*.f64 -1 im) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 1 (fma.f64 -1 im (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (neg.f64 im) (fma.f64 1/2 (pow.f64 im 2) 1))
(-.f64 (fma.f64 1/2 (pow.f64 im 2) 1) im)
(+.f64 1 (+.f64 (*.f64 -1 im) (+.f64 (*.f64 -1/6 (pow.f64 im 3)) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 1 (fma.f64 -1 im (fma.f64 -1/6 (pow.f64 im 3) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (-.f64 1 im) (fma.f64 1/2 (pow.f64 im 2) (*.f64 -1/6 (pow.f64 im 3))))
(+.f64 (-.f64 1 im) (*.f64 (pow.f64 im 2) (+.f64 1/2 (*.f64 im -1/6))))
(fma.f64 (pow.f64 im 2) (+.f64 1/2 (*.f64 im -1/6)) (-.f64 1 im))
(*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3)) (*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (fma.f64 -1/6 (pow.f64 re 3) re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3)) (fma.f64 1/120 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 5)) (*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))
(fma.f64 (*.f64 -1/6 (pow.f64 re 3)) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (fma.f64 -1/6 (pow.f64 re 3) (*.f64 1/120 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im))))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3)) (fma.f64 -1/5040 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 7)) (fma.f64 1/120 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 5)) (*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))))
(+.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (fma.f64 1/120 (pow.f64 re 5) re) (fma.f64 -1/6 (pow.f64 re 3) (*.f64 -1/5040 (pow.f64 re 7)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))))
(+.f64 (sin.f64 re) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (pow.f64 im 2) 1)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))))
(+.f64 (sin.f64 re) (fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))))
(+.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (pow.f64 im 2) 1))))
1
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 1 (+.f64 (*.f64 1/720 (pow.f64 im 6)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 1 (fma.f64 1/720 (pow.f64 im 6) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (fma.f64 1/2 (pow.f64 im 2) 1))
(fma.f64 1/720 (pow.f64 im 6) (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (pow.f64 im 2) 1)))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 re))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2)))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2)))))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 (pow.f64 re 3) -1/12)))
(*.f64 (fma.f64 im im 2) (fma.f64 1/2 re (*.f64 (pow.f64 re 3) -1/12)))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (fma.f64 -1/6 (pow.f64 re 3) re)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))) (fma.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 (pow.f64 re 5) 1/240))))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (fma.f64 (pow.f64 re 3) -1/12 (*.f64 (pow.f64 re 5) 1/240))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2)))))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))) (fma.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))) (fma.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2)))))))
(+.f64 (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 (pow.f64 re 5) 1/240))) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 (pow.f64 re 3) -1/12) (*.f64 (pow.f64 re 7) -1/10080))))
(*.f64 (fma.f64 im im 2) (+.f64 (fma.f64 (pow.f64 re 7) -1/10080 (*.f64 (pow.f64 re 5) 1/240)) (fma.f64 1/2 re (*.f64 (pow.f64 re 3) -1/12))))
(*.f64 (fma.f64 im im 2) (+.f64 (fma.f64 (pow.f64 re 7) -1/10080 (*.f64 (pow.f64 re 5) 1/240)) (*.f64 1/2 (fma.f64 -1/6 (pow.f64 re 3) re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
2
(+.f64 2 (pow.f64 im 2))
(fma.f64 im im 2)
(+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (pow.f64 im 2)))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (pow.f64 im 2)))
(fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))
(+.f64 2 (+.f64 (*.f64 1/360 (pow.f64 im 6)) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))))
(+.f64 2 (fma.f64 1/360 (pow.f64 im 6) (fma.f64 1/12 (pow.f64 im 4) (pow.f64 im 2))))
(+.f64 2 (fma.f64 (pow.f64 im 6) 1/360 (fma.f64 (pow.f64 im 4) 1/12 (pow.f64 im 2))))
(fma.f64 (pow.f64 im 6) 1/360 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
-2
-1
-1/2
0
1/8
1/4
1/2
1
2
4
8
(+.f64 (sin.f64 re) (sin.f64 re))
(*.f64 2 (sin.f64 re))
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
(+.f64 -2 (*.f64 2 (cos.f64 re)))
(fma.f64 2 (cos.f64 re) -2)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -2)
(+.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 2)
(+.f64 2 (exp.f64 (log1p.f64 (sin.f64 re))))
(/.f64 (sin.f64 re) -2)
(/.f64 (sin.f64 re) (+.f64 (sin.f64 re) (-.f64 (sin.f64 re) (sin.f64 re))))
1
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 (+.f64 re re))) -2)
(/.f64 (-.f64 (cos.f64 0) (cos.f64 (*.f64 2 re))) -2)
(-.f64 -1/2 (/.f64 (cos.f64 (*.f64 2 re)) -2))
(/.f64 (-.f64 (sin.f64 re) (sin.f64 re)) (-.f64 (sin.f64 re) (sin.f64 re)))
1
(pow.f64 (sin.f64 re) -2)
(pow.f64 (sin.f64 re) -3)
(pow.f64 (sin.f64 re) 1/3)
(cbrt.f64 (sin.f64 re))
(sqrt.f64 (sin.f64 re))
(fabs.f64 (sin.f64 re))
(log.f64 (exp.f64 (sin.f64 re)))
(sin.f64 re)
(log.f64 (+.f64 -2 (expm1.f64 (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)) -2))
(pow.f64 (sin.f64 re) -2)
(log1p.f64 (expm1.f64 (sin.f64 re)))
(sin.f64 re)
(fma.f64 -2 (sin.f64 re) (sin.f64 re))
(neg.f64 (sin.f64 re))
(fma.f64 (sin.f64 re) -2 (sin.f64 re))
(fma.f64 -2 (sin.f64 re) (sin.f64 re))
(neg.f64 (sin.f64 re))
-2
-1
-1/2
0
1/8
1/4
1/2
1
2
4
8
(+.f64 (sin.f64 re) (sin.f64 re))
(*.f64 2 (sin.f64 re))
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
(+.f64 -2 (*.f64 2 (cos.f64 re)))
(fma.f64 2 (cos.f64 re) -2)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -2)
(+.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 2)
(+.f64 2 (exp.f64 (log1p.f64 (sin.f64 re))))
(/.f64 (sin.f64 re) -2)
(/.f64 (sin.f64 re) (+.f64 (sin.f64 re) (-.f64 (sin.f64 re) (sin.f64 re))))
1
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 (+.f64 re re))) -2)
(/.f64 (-.f64 (cos.f64 0) (cos.f64 (*.f64 2 re))) -2)
(-.f64 -1/2 (/.f64 (cos.f64 (*.f64 2 re)) -2))
(/.f64 (-.f64 (sin.f64 re) (sin.f64 re)) (-.f64 (sin.f64 re) (sin.f64 re)))
1
(pow.f64 (sin.f64 re) -2)
(pow.f64 (sin.f64 re) -3)
(pow.f64 (sin.f64 re) 1/3)
(cbrt.f64 (sin.f64 re))
(sqrt.f64 (sin.f64 re))
(fabs.f64 (sin.f64 re))
(log.f64 (exp.f64 (sin.f64 re)))
(sin.f64 re)
(log.f64 (+.f64 -2 (expm1.f64 (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)) -2))
(pow.f64 (sin.f64 re) -2)
(log1p.f64 (expm1.f64 (sin.f64 re)))
(sin.f64 re)
(fma.f64 -2 (sin.f64 re) (sin.f64 re))
(neg.f64 (sin.f64 re))
(fma.f64 (sin.f64 re) -2 (sin.f64 re))
(fma.f64 -2 (sin.f64 re) (sin.f64 re))
(neg.f64 (sin.f64 re))
-2
-1
-1/2
0
1/8
1/4
1/2
1
2
4
8

eval50.0ms (0.6%)

Compiler

Compiled 1912 to 1299 computations (32.1% saved)

prune43.0ms (0.5%)

Pruning

15 alts after pruning (9 fresh and 6 done)

PrunedKeptTotal
New1148122
Fresh112
Picked055
Done011
Total11515130
Accuracy
100.0%
Counts
130 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
22.2%
(pow.f64 (sin.f64 re) -3)
4.5%
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
91.4%
(+.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))
49.2%
(*.f64 (fma.f64 im im 2) (*.f64 1/2 re))
27.1%
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
77.5%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
100.0%
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
55.6%
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 8)))
11.3%
(*.f64 2 (sin.f64 re))
62.3%
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
27.6%
(*.f64 1/2 (*.f64 re 2))
54.0%
(sin.f64 re)
53.9%
(expm1.f64 (log1p.f64 (sin.f64 re)))
9.1%
(cbrt.f64 (sin.f64 re))
22.2%
(pow.f64 (sin.f64 re) -3)
4.5%
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
91.4%
(+.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))
49.2%
(*.f64 (fma.f64 im im 2) (*.f64 1/2 re))
27.1%
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
77.5%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
100.0%
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
55.6%
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 8)))
11.3%
(*.f64 2 (sin.f64 re))
62.3%
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
27.6%
(*.f64 1/2 (*.f64 re 2))
54.0%
(sin.f64 re)
53.9%
(expm1.f64 (log1p.f64 (sin.f64 re)))
9.1%
(cbrt.f64 (sin.f64 re))
Compiler

Compiled 484 to 382 computations (21.1% saved)

localize414.0ms (4.9%)

Localize:

Found 7 expressions with local error:

NewAccuracyProgram
99.9%
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 8)))
99.5%
(pow.f64 (sin.f64 re) -3)
94.8%
(*.f64 (fma.f64 im im 2) (*.f64 1/2 re))
99.8%
(*.f64 1/24 (pow.f64 im 4))
99.7%
(fma.f64 1/2 (pow.f64 im 2) 1)
98.8%
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
94.7%
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
Compiler

Compiled 161 to 108 computations (32.9% saved)

series17.0ms (0.2%)

Counts
7 → 120
Calls

33 calls:

TimeVariablePointExpression
2.0ms
im
@0
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
2.0ms
im
@-inf
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
1.0ms
re
@inf
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
1.0ms
re
@inf
(pow.f64 (sin.f64 re) -3)
1.0ms
re
@-inf
(pow.f64 (sin.f64 re) -3)

rewrite118.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
918×prod-diff
747×log1p-expm1-u
676×expm1-udef
676×log1p-udef
388×associate-*r*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
036184
1433184
25186184
Stop Event
node limit
Counts
7 → 129
Calls
Call 1
Inputs
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 1/2 (pow.f64 im 2) 1)
(*.f64 1/24 (pow.f64 im 4))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 re))
(pow.f64 (sin.f64 re) -3)
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 8)))
Outputs
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (sin.f64 re))
(+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re)) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))) 1)
(pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3) (pow.f64 (sin.f64 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 (*.f64 1/720 (pow.f64 im 6)) (sin.f64 re)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))))) 1)
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)
(+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) 1) 1)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (pow.f64 im 2) 1))) 1)
(*.f64 1 (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 1)
(*.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) 2) (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(*.f64 (sqrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) (sqrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 3) 1) (+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/2 (pow.f64 im 2))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/2 (pow.f64 im 2))) 1) (-.f64 (*.f64 1/2 (pow.f64 im 2)) 1))
(pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (pow.f64 im 2) 1))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(exp.f64 (log1p.f64 (*.f64 1/2 (pow.f64 im 2))))
(exp.f64 (*.f64 (log1p.f64 (*.f64 1/2 (pow.f64 im 2))) 1))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4)))) 1)
(pow.f64 (*.f64 1/24 (pow.f64 im 4)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) 3)
(pow.f64 (pow.f64 (*.f64 1/24 (pow.f64 im 4)) 3) 1/3)
(pow.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 8) 1/576))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))))
(cbrt.f64 (pow.f64 (*.f64 1/24 (pow.f64 im 4)) 3))
(expm1.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 (*.f64 1/2 re) (pow.f64 im 2)) (*.f64 (*.f64 1/2 re) 2))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 re)) (*.f64 2 (*.f64 1/2 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))) 1)
(pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) re) (fma.f64 im im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 re) 3) (pow.f64 (fma.f64 im im 2) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 re) -3))) 1)
(*.f64 1 (pow.f64 (sin.f64 re) -3))
(*.f64 (pow.f64 (sin.f64 re) -3) 1)
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 re) -3)) (cbrt.f64 (pow.f64 (sin.f64 re) -6)))
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 re) -6)) (cbrt.f64 (pow.f64 (sin.f64 re) -3)))
(*.f64 (pow.f64 (sin.f64 re) -3/2) (pow.f64 (sin.f64 re) -3/2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) -3) (pow.f64 (cbrt.f64 (sin.f64 re)) -3))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 re)) -3) (pow.f64 (sqrt.f64 (sin.f64 re)) -3))
(sqrt.f64 (pow.f64 (sin.f64 re) -6))
(log.f64 (exp.f64 (pow.f64 (sin.f64 re) -3)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 re) -3))))
(cbrt.f64 (pow.f64 (pow.f64 (sin.f64 re) -3) 3))
(expm1.f64 (log1p.f64 (pow.f64 (sin.f64 re) -3)))
(exp.f64 (*.f64 -3 (log.f64 (sin.f64 re))))
(exp.f64 (*.f64 (*.f64 -3 (log.f64 (sin.f64 re))) 1))
(log1p.f64 (expm1.f64 (pow.f64 (sin.f64 re) -3)))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (sin.f64 re) 4))
(+.f64 (*.f64 (sin.f64 re) 4) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))))
(+.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) 1) (*.f64 (*.f64 (sin.f64 re) 4) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) 3) (pow.f64 (*.f64 (sin.f64 re) 4) 3)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))) (-.f64 (*.f64 (*.f64 (sin.f64 re) 4) (*.f64 (sin.f64 re) 4)) (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (sin.f64 re) 4)))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) 4) (*.f64 (sin.f64 re) 4))) (-.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (sin.f64 re) 4)))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 64)) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (-.f64 16 (*.f64 (exp.f64 im) 2))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) -16)) (fma.f64 1/2 (exp.f64 im) -4))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 64) (sin.f64 re)) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (-.f64 16 (*.f64 (exp.f64 im) 2))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) -16) (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) -4))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 4)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 4) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 4) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)) (*.f64 (sin.f64 re) 4))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re) (*.f64 (sin.f64 re) 4))

simplify107.0ms (1.3%)

Algorithm
egg-herbie
Rules
880×associate-*r*
832×log-prod
804×associate-*l*
572×fma-def
462×sqr-pow
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04178407
111308035
246987739
Stop Event
node limit
Counts
249 → 234
Calls
Call 1
Inputs
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
1
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
re
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(/.f64 1 (pow.f64 re 3))
(+.f64 (*.f64 1/2 (/.f64 1 re)) (/.f64 1 (pow.f64 re 3)))
(+.f64 (*.f64 17/120 re) (+.f64 (*.f64 1/2 (/.f64 1 re)) (/.f64 1 (pow.f64 re 3))))
(+.f64 (*.f64 457/15120 (pow.f64 re 3)) (+.f64 (*.f64 17/120 re) (+.f64 (*.f64 1/2 (/.f64 1 re)) (/.f64 1 (pow.f64 re 3)))))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 4 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 4 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 4 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 4 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 4 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 4 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 9/2 (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 im 3) (sin.f64 re))) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re)))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (sin.f64 re))
(+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re)) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))) 1)
(pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3) (pow.f64 (sin.f64 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 (*.f64 1/720 (pow.f64 im 6)) (sin.f64 re)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))))) 1)
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)
(+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) 1) 1)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (pow.f64 im 2) 1))) 1)
(*.f64 1 (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 1)
(*.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) 2) (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(*.f64 (sqrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) (sqrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 3) 1) (+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/2 (pow.f64 im 2))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/2 (pow.f64 im 2))) 1) (-.f64 (*.f64 1/2 (pow.f64 im 2)) 1))
(pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (pow.f64 im 2) 1))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(exp.f64 (log1p.f64 (*.f64 1/2 (pow.f64 im 2))))
(exp.f64 (*.f64 (log1p.f64 (*.f64 1/2 (pow.f64 im 2))) 1))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4)))) 1)
(pow.f64 (*.f64 1/24 (pow.f64 im 4)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) 3)
(pow.f64 (pow.f64 (*.f64 1/24 (pow.f64 im 4)) 3) 1/3)
(pow.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 8) 1/576))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))))
(cbrt.f64 (pow.f64 (*.f64 1/24 (pow.f64 im 4)) 3))
(expm1.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 (*.f64 1/2 re) (pow.f64 im 2)) (*.f64 (*.f64 1/2 re) 2))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 re)) (*.f64 2 (*.f64 1/2 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))) 1)
(pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) re) (fma.f64 im im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 re) 3) (pow.f64 (fma.f64 im im 2) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 re) -3))) 1)
(*.f64 1 (pow.f64 (sin.f64 re) -3))
(*.f64 (pow.f64 (sin.f64 re) -3) 1)
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 re) -3)) (cbrt.f64 (pow.f64 (sin.f64 re) -6)))
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 re) -6)) (cbrt.f64 (pow.f64 (sin.f64 re) -3)))
(*.f64 (pow.f64 (sin.f64 re) -3/2) (pow.f64 (sin.f64 re) -3/2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) -3) (pow.f64 (cbrt.f64 (sin.f64 re)) -3))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 re)) -3) (pow.f64 (sqrt.f64 (sin.f64 re)) -3))
(sqrt.f64 (pow.f64 (sin.f64 re) -6))
(log.f64 (exp.f64 (pow.f64 (sin.f64 re) -3)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 re) -3))))
(cbrt.f64 (pow.f64 (pow.f64 (sin.f64 re) -3) 3))
(expm1.f64 (log1p.f64 (pow.f64 (sin.f64 re) -3)))
(exp.f64 (*.f64 -3 (log.f64 (sin.f64 re))))
(exp.f64 (*.f64 (*.f64 -3 (log.f64 (sin.f64 re))) 1))
(log1p.f64 (expm1.f64 (pow.f64 (sin.f64 re) -3)))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (sin.f64 re) 4))
(+.f64 (*.f64 (sin.f64 re) 4) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))))
(+.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) 1) (*.f64 (*.f64 (sin.f64 re) 4) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) 3) (pow.f64 (*.f64 (sin.f64 re) 4) 3)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))) (-.f64 (*.f64 (*.f64 (sin.f64 re) 4) (*.f64 (sin.f64 re) 4)) (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (sin.f64 re) 4)))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) 4) (*.f64 (sin.f64 re) 4))) (-.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (sin.f64 re) 4)))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 64)) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (-.f64 16 (*.f64 (exp.f64 im) 2))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) -16)) (fma.f64 1/2 (exp.f64 im) -4))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 64) (sin.f64 re)) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (-.f64 16 (*.f64 (exp.f64 im) 2))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) -16) (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) -4))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 4)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 4) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 4) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)) (*.f64 (sin.f64 re) 4))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re) (*.f64 (sin.f64 re) 4))
Outputs
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1)))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (pow.f64 im 2) 1)) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (pow.f64 im 2) 1)) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.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) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (pow.f64 im 2) 1)) (fma.f64 -1/5040 (*.f64 (pow.f64 re 7) (fma.f64 1/2 (pow.f64 im 2) 1)) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/2 (pow.f64 im 2) 1)) (*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1)))))
(+.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 (+.f64 re (*.f64 1/120 (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 re (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 re (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 re (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (+.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) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (fma.f64 -1/5040 (*.f64 (pow.f64 re 7) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 re (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))))))
(+.f64 (*.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (+.f64 re (*.f64 1/120 (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
1
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(*.f64 1/2 (pow.f64 im 2))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(*.f64 1/2 (pow.f64 im 2))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) 1)
re
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) re)
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) re)
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(/.f64 1 (pow.f64 re 3))
(+.f64 (*.f64 1/2 (/.f64 1 re)) (/.f64 1 (pow.f64 re 3)))
(+.f64 (/.f64 1 (pow.f64 re 3)) (/.f64 1/2 re))
(+.f64 (*.f64 17/120 re) (+.f64 (*.f64 1/2 (/.f64 1 re)) (/.f64 1 (pow.f64 re 3))))
(fma.f64 17/120 re (+.f64 (/.f64 1 (pow.f64 re 3)) (/.f64 1/2 re)))
(+.f64 (/.f64 1 (pow.f64 re 3)) (fma.f64 re 17/120 (/.f64 1/2 re)))
(+.f64 (*.f64 457/15120 (pow.f64 re 3)) (+.f64 (*.f64 17/120 re) (+.f64 (*.f64 1/2 (/.f64 1 re)) (/.f64 1 (pow.f64 re 3)))))
(fma.f64 457/15120 (pow.f64 re 3) (fma.f64 17/120 re (+.f64 (/.f64 1 (pow.f64 re 3)) (/.f64 1/2 re))))
(fma.f64 (pow.f64 re 3) 457/15120 (+.f64 (/.f64 1 (pow.f64 re 3)) (fma.f64 re 17/120 (/.f64 1/2 re))))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(/.f64 1 (pow.f64 (sin.f64 re) 3))
(*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 4 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (exp.f64 im) 4)) (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)))
(*.f64 (fma.f64 1/2 (exp.f64 im) 4) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 4 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 4 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (exp.f64 im) 4)) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/2 (exp.f64 im) 4)) (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (exp.f64 im) 4)) (*.f64 (fma.f64 1/2 (exp.f64 im) 4) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 4) (+.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) (+.f64 4 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 4 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 4 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (exp.f64 im) 4)) (fma.f64 -1/5040 (*.f64 (pow.f64 re 7) (fma.f64 1/2 (exp.f64 im) 4)) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/2 (exp.f64 im) 4)) (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)))))
(+.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 4) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (fma.f64 1/2 (exp.f64 im) 4) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 4) (+.f64 (+.f64 re (*.f64 1/120 (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 9/2 (sin.f64 re))
(*.f64 (sin.f64 re) 9/2)
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re)))
(fma.f64 1/2 (*.f64 (sin.f64 re) im) (*.f64 (sin.f64 re) 9/2))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 1/2 im)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(fma.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2)) (fma.f64 1/2 (*.f64 (sin.f64 re) im) (*.f64 (sin.f64 re) 9/2)))
(fma.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 1/4 (*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 1/2 im))))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 im 3) (sin.f64 re))) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re)))))
(fma.f64 1/12 (*.f64 (sin.f64 re) (pow.f64 im 3)) (fma.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2)) (fma.f64 1/2 (*.f64 (sin.f64 re) im) (*.f64 (sin.f64 re) 9/2))))
(+.f64 (*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 1/2 im))) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/12 (pow.f64 im 3)) (*.f64 (pow.f64 im 2) 1/4))))
(*.f64 (sin.f64 re) (+.f64 (+.f64 9/2 (*.f64 1/2 im)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 im) 1/4))))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re)) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))) 1)
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)) 1)
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))) 3)
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(pow.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)) 3) 1/3)
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))) 2)
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)) 2))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)) 3))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3) (pow.f64 (sin.f64 re) 3)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(exp.f64 (log.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 (*.f64 1/720 (pow.f64 im 6)) (sin.f64 re)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))))) 1)
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) 1)
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))) 3)
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) 3) 1/3)
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))) 2)
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) 2))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) 3))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) 3)))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) 3) (pow.f64 (sin.f64 re) 3)))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))) 1))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)
(fma.f64 1/2 (pow.f64 im 2) 1)
(+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) 1) 1)
(fma.f64 1/2 (pow.f64 im 2) 1)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (pow.f64 im 2) 1))) 1)
(fma.f64 1/2 (pow.f64 im 2) 1)
(*.f64 1 (fma.f64 1/2 (pow.f64 im 2) 1))
(fma.f64 1/2 (pow.f64 im 2) 1)
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 1)
(fma.f64 1/2 (pow.f64 im 2) 1)
(*.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) 2))
(fma.f64 1/2 (pow.f64 im 2) 1)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) 2) (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(*.f64 (sqrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) (sqrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 3) 1) (+.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/2 (pow.f64 im 2))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))
(/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 3)) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (-.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) 1) (+.f64 (fma.f64 1/4 (pow.f64 im 4) 1) (*.f64 (pow.f64 im 2) -1/2)))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/2 (pow.f64 im 2))) 1) (-.f64 (*.f64 1/2 (pow.f64 im 2)) 1))
(/.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) -1) (fma.f64 1/2 (pow.f64 im 2) -1))
(/.f64 (fma.f64 1/4 (pow.f64 im 4) -1) (fma.f64 1/2 (pow.f64 im 2) -1))
(/.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 1)
(pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 1)
(fma.f64 1/2 (pow.f64 im 2) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) 3)
(fma.f64 1/2 (pow.f64 im 2) 1)
(pow.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3) 1/3)
(fma.f64 1/2 (pow.f64 im 2) 1)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (pow.f64 im 2) 1)) 2)
(fma.f64 1/2 (pow.f64 im 2) 1)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 2))
(fma.f64 1/2 (pow.f64 im 2) 1)
(log.f64 (exp.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (pow.f64 im 2) 1))))
(fma.f64 1/2 (pow.f64 im 2) 1)
(cbrt.f64 (pow.f64 (fma.f64 1/2 (pow.f64 im 2) 1) 3))
(fma.f64 1/2 (pow.f64 im 2) 1)
(expm1.f64 (log1p.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(exp.f64 (log1p.f64 (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 1/2 (pow.f64 im 2) 1)
(exp.f64 (*.f64 (log1p.f64 (*.f64 1/2 (pow.f64 im 2))) 1))
(fma.f64 1/2 (pow.f64 im 2) 1)
(log1p.f64 (expm1.f64 (fma.f64 1/2 (pow.f64 im 2) 1)))
(fma.f64 1/2 (pow.f64 im 2) 1)
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4)))) 1)
(*.f64 1/24 (pow.f64 im 4))
(pow.f64 (*.f64 1/24 (pow.f64 im 4)) 1)
(*.f64 1/24 (pow.f64 im 4))
(pow.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) 3)
(*.f64 1/24 (pow.f64 im 4))
(pow.f64 (pow.f64 (*.f64 1/24 (pow.f64 im 4)) 3) 1/3)
(*.f64 1/24 (pow.f64 im 4))
(pow.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) 2)
(*.f64 1/24 (pow.f64 im 4))
(sqrt.f64 (*.f64 (pow.f64 im 8) 1/576))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) 1/24))
(*.f64 1/24 (pow.f64 im 4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 1/24 (pow.f64 im 4))
(cbrt.f64 (pow.f64 (*.f64 1/24 (pow.f64 im 4)) 3))
(*.f64 1/24 (pow.f64 im 4))
(expm1.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/24 (pow.f64 im 4))
(exp.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/24 (pow.f64 im 4))
(exp.f64 (*.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))) 1))
(*.f64 1/24 (pow.f64 im 4))
(log1p.f64 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 (*.f64 1/2 re) (pow.f64 im 2)) (*.f64 (*.f64 1/2 re) 2))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 re)) (*.f64 2 (*.f64 1/2 re)))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))) 1)
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 1)
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 3)
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 3) 1/3)
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 2)
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 2))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) re) (fma.f64 im im 2)))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 3))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 re) 3)))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 re) 3) (pow.f64 (fma.f64 im im 2) 3)))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 1))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 re) -3))) 1)
(pow.f64 (sin.f64 re) -3)
(*.f64 1 (pow.f64 (sin.f64 re) -3))
(pow.f64 (sin.f64 re) -3)
(*.f64 (pow.f64 (sin.f64 re) -3) 1)
(pow.f64 (sin.f64 re) -3)
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 re) -3)) (cbrt.f64 (pow.f64 (sin.f64 re) -6)))
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 re) -6)) (cbrt.f64 (pow.f64 (sin.f64 re) -3)))
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 re) -3)) (cbrt.f64 (pow.f64 (sin.f64 re) -6)))
(*.f64 (pow.f64 (sin.f64 re) -3/2) (pow.f64 (sin.f64 re) -3/2))
(pow.f64 (sin.f64 re) -3)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) -3) (pow.f64 (cbrt.f64 (sin.f64 re)) -3))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 re)) -3) (pow.f64 (sqrt.f64 (sin.f64 re)) -3))
(pow.f64 (sqrt.f64 (sin.f64 re)) -6)
(sqrt.f64 (pow.f64 (sin.f64 re) -6))
(pow.f64 (sin.f64 re) -3)
(log.f64 (exp.f64 (pow.f64 (sin.f64 re) -3)))
(pow.f64 (sin.f64 re) -3)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 re) -3))))
(pow.f64 (sin.f64 re) -3)
(cbrt.f64 (pow.f64 (pow.f64 (sin.f64 re) -3) 3))
(pow.f64 (sin.f64 re) -3)
(expm1.f64 (log1p.f64 (pow.f64 (sin.f64 re) -3)))
(pow.f64 (sin.f64 re) -3)
(exp.f64 (*.f64 -3 (log.f64 (sin.f64 re))))
(pow.f64 (sin.f64 re) -3)
(exp.f64 (*.f64 (*.f64 -3 (log.f64 (sin.f64 re))) 1))
(pow.f64 (sin.f64 re) -3)
(log1p.f64 (expm1.f64 (pow.f64 (sin.f64 re) -3)))
(pow.f64 (sin.f64 re) -3)
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (sin.f64 re) 4))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(+.f64 (*.f64 (sin.f64 re) 4) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(+.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) 1) (*.f64 (*.f64 (sin.f64 re) 4) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)))) 1)
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) 3) (pow.f64 (*.f64 (sin.f64 re) 4) 3)) (+.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))) (-.f64 (*.f64 (*.f64 (sin.f64 re) 4) (*.f64 (sin.f64 re) 4)) (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (sin.f64 re) 4)))))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)) (*.f64 (pow.f64 (sin.f64 re) 3) 64)) (+.f64 (*.f64 1/4 (*.f64 (*.f64 (sin.f64 re) (exp.f64 im)) (*.f64 (sin.f64 re) (exp.f64 im)))) (*.f64 (*.f64 (sin.f64 re) 4) (-.f64 (*.f64 (sin.f64 re) 4) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 re) 3) 64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3))) (fma.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (sin.f64 re) (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 4 (*.f64 (sin.f64 re) (-.f64 4 (*.f64 1/2 (exp.f64 im))))))))
(/.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 64)) (+.f64 (*.f64 (sin.f64 re) (*.f64 16 (sin.f64 re))) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) -4)))))
(/.f64 (-.f64 (*.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) 4) (*.f64 (sin.f64 re) 4))) (-.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (sin.f64 re) 4)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) (-.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (sin.f64 re) 4))) (-.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (sin.f64 re) 4)))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) (/.f64 (*.f64 (sin.f64 re) (-.f64 (*.f64 1/2 (exp.f64 im)) 4)) (*.f64 (sin.f64 re) (-.f64 (*.f64 1/2 (exp.f64 im)) 4))))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) 1)
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 64)) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (-.f64 16 (*.f64 (exp.f64 im) 2))))
(/.f64 (sin.f64 re) (/.f64 (fma.f64 (pow.f64 (exp.f64 im) 2) 1/4 (-.f64 16 (*.f64 2 (exp.f64 im)))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 64)))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 16) (*.f64 (exp.f64 im) -2))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 64))
(*.f64 (/.f64 (sin.f64 re) (+.f64 16 (*.f64 (exp.f64 im) (+.f64 -2 (*.f64 (exp.f64 im) 1/4))))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 64))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) -16)) (fma.f64 1/2 (exp.f64 im) -4))
(/.f64 (sin.f64 re) (/.f64 (fma.f64 1/2 (exp.f64 im) -4) (fma.f64 (pow.f64 (exp.f64 im) 2) 1/4 -16)))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) -4)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -16))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 64) (sin.f64 re)) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (-.f64 16 (*.f64 (exp.f64 im) 2))))
(/.f64 (sin.f64 re) (/.f64 (fma.f64 (pow.f64 (exp.f64 im) 2) 1/4 (-.f64 16 (*.f64 2 (exp.f64 im)))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 64)))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 16) (*.f64 (exp.f64 im) -2))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 64))
(*.f64 (/.f64 (sin.f64 re) (+.f64 16 (*.f64 (exp.f64 im) (+.f64 -2 (*.f64 (exp.f64 im) 1/4))))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 64))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) -16) (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) -4))
(/.f64 (sin.f64 re) (/.f64 (fma.f64 1/2 (exp.f64 im) -4) (fma.f64 (pow.f64 (exp.f64 im) 2) 1/4 -16)))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) -4)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -16))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) 1)
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))) 3)
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) 3) 1/3)
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))) 2)
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) 2))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 4)) (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4)) 3))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 4) 3)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 4) 3) (pow.f64 (sin.f64 re) 3)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(fma.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)) (*.f64 (sin.f64 re) 4))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re) (*.f64 (sin.f64 re) 4))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 4))

eval127.0ms (1.5%)

Compiler

Compiled 5237 to 3712 computations (29.1% saved)

prune63.0ms (0.7%)

Pruning

17 alts after pruning (12 fresh and 5 done)

PrunedKeptTotal
New2259234
Fresh134
Picked415
Done246
Total23217249
Accuracy
100.0%
Counts
249 → 17
Alt Table
Click to see full alt table
StatusAccuracyProgram
17.6%
(/.f64 1 (pow.f64 re 3))
4.5%
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
87.9%
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))
49.2%
(*.f64 (fma.f64 im im 2) (*.f64 1/2 re))
27.1%
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
25.4%
(*.f64 (*.f64 1/2 (pow.f64 im 2)) re)
77.5%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
100.0%
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
33.2%
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
11.1%
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 1/2 im)))
55.6%
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
10.4%
(*.f64 (sin.f64 re) 9/2)
41.2%
(*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im))))
54.0%
(sin.f64 re)
53.9%
(expm1.f64 (log1p.f64 (sin.f64 re)))
27.6%
re
17.6%
(/.f64 1 (pow.f64 re 3))
4.5%
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
87.9%
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))
49.2%
(*.f64 (fma.f64 im im 2) (*.f64 1/2 re))
27.1%
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
25.4%
(*.f64 (*.f64 1/2 (pow.f64 im 2)) re)
77.5%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
100.0%
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
33.2%
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
11.1%
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 1/2 im)))
55.6%
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
10.4%
(*.f64 (sin.f64 re) 9/2)
41.2%
(*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im))))
54.0%
(sin.f64 re)
53.9%
(expm1.f64 (log1p.f64 (sin.f64 re)))
27.6%
re
Compiler

Compiled 558 to 440 computations (21.1% saved)

localize465.0ms (5.5%)

Localize:

Found 9 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 im (+.f64 (*.f64 1/4 im) 1/2))
94.6%
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
100.0%
(*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im))))
77.8%
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
99.7%
(*.f64 (sin.f64 re) 9/2)
99.8%
(*.f64 1/24 (pow.f64 im 4))
99.7%
(fma.f64 1/2 (pow.f64 im 2) 1)
98.0%
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
94.7%
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re))
Compiler

Compiled 153 to 99 computations (35.3% saved)

series18.0ms (0.2%)

Counts
6 → 88
Calls

27 calls:

TimeVariablePointExpression
4.0ms
re
@inf
(*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im))))
3.0ms
im
@inf
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
1.0ms
re
@inf
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
1.0ms
re
@inf
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
1.0ms
re
@0
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))

rewrite144.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
796×expm1-udef
796×log1p-udef
466×associate-*r*
401×log1p-expm1-u
292×associate-*l*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
031153
1467145
26421145
Stop Event
node limit
Counts
6 → 137
Calls
Call 1
Inputs
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (sin.f64 re) 9/2)
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
(*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
(*.f64 im (+.f64 (*.f64 1/4 im) 1/2))
Outputs
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24))) 1)
(pow.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24) 1)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)) 3)
(pow.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)) 2)
(sqrt.f64 (*.f64 (*.f64 (pow.f64 im 8) 1/576) (pow.f64 (sin.f64 re) 2)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/24) (pow.f64 im 4)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 1/24 (pow.f64 im 4)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/24 (pow.f64 im 4)) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)))
(exp.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)) 1))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 9/2))) 1)
(pow.f64 (*.f64 (sin.f64 re) 9/2) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) 9/2)) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) 9/2) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) 9/2)) 2)
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 9/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) 9/2))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) 9/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) 9/2)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) 9/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 9/2)) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) 9/2)))
(+.f64 -2 (*.f64 (cos.f64 re) 2))
(+.f64 -2 (*.f64 (*.f64 (cos.f64 re) 2) 1))
(+.f64 (*.f64 (cos.f64 re) 2) -2)
(*.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 1)
(*.f64 1 (+.f64 -2 (*.f64 (cos.f64 re) 2)))
(*.f64 (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) (pow.f64 (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 2))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 2) (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(*.f64 (sqrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) (sqrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(*.f64 (-.f64 -8 (*.f64 (pow.f64 (cos.f64 re) 3) -8)) (/.f64 1 (+.f64 4 (+.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2)) (*.f64 4 (cos.f64 re))))))
(*.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2))) (/.f64 1 (+.f64 -2 (*.f64 -2 (cos.f64 re)))))
(/.f64 1 (/.f64 (+.f64 4 (+.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2)) (*.f64 4 (cos.f64 re)))) (-.f64 -8 (*.f64 (pow.f64 (cos.f64 re) 3) -8))))
(/.f64 1 (/.f64 (+.f64 -2 (*.f64 -2 (cos.f64 re))) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2)))))
(/.f64 (-.f64 -8 (*.f64 (pow.f64 (cos.f64 re) 3) -8)) (+.f64 4 (+.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2)) (*.f64 4 (cos.f64 re)))))
(/.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2))) (+.f64 -2 (*.f64 -2 (cos.f64 re))))
(/.f64 (neg.f64 (-.f64 -8 (*.f64 (pow.f64 (cos.f64 re) 3) -8))) (neg.f64 (+.f64 4 (+.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2)) (*.f64 4 (cos.f64 re))))))
(/.f64 (neg.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2)))) (neg.f64 (+.f64 -2 (*.f64 -2 (cos.f64 re)))))
(/.f64 (+.f64 -8 (pow.f64 (*.f64 (cos.f64 re) 2) 3)) (+.f64 4 (-.f64 (*.f64 (*.f64 (cos.f64 re) 2) (*.f64 (cos.f64 re) 2)) (*.f64 -2 (*.f64 (cos.f64 re) 2)))))
(/.f64 (-.f64 4 (*.f64 (*.f64 (cos.f64 re) 2) (*.f64 (cos.f64 re) 2))) (-.f64 -2 (*.f64 (cos.f64 re) 2)))
(pow.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 1)
(pow.f64 (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 3)
(pow.f64 (pow.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 3) 1/3)
(pow.f64 (sqrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 2)
(sqrt.f64 (pow.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 2))
(log.f64 (exp.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)))))
(cbrt.f64 (pow.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 3))
(expm1.f64 (log1p.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(exp.f64 (log.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(exp.f64 (*.f64 (log.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 1))
(log1p.f64 (expm1.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(+.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) (*.f64 re 4))
(+.f64 (*.f64 re 4) (*.f64 (exp.f64 im) (*.f64 1/2 re)))
(+.f64 (*.f64 (*.f64 re 4) 1) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 re 4) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) 3)) (+.f64 (*.f64 (*.f64 re 4) (*.f64 re 4)) (-.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) (*.f64 (exp.f64 im) (*.f64 1/2 re))) (*.f64 (*.f64 re 4) (*.f64 (exp.f64 im) (*.f64 1/2 re))))))
(/.f64 (-.f64 (*.f64 (*.f64 re 4) (*.f64 re 4)) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) (*.f64 (exp.f64 im) (*.f64 1/2 re)))) (-.f64 (*.f64 re 4) (*.f64 (exp.f64 im) (*.f64 1/2 re))))
(/.f64 (*.f64 re (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 64)) (+.f64 16 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 2 (exp.f64 im)))))
(/.f64 (*.f64 re (-.f64 16 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (+.f64 4 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 64) re) (+.f64 16 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 2 (exp.f64 im)))))
(/.f64 (*.f64 (-.f64 16 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) re) (+.f64 4 (*.f64 -1/2 (exp.f64 im))))
(pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))) 3)
(pow.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))) 2)
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)) 2))
(log.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (exp.f64 im) 4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)))))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)) 3))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 4) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 4) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))))
(exp.f64 (log.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))))
(fma.f64 re 4 (*.f64 (exp.f64 im) (*.f64 1/2 re)))
(fma.f64 4 re (*.f64 (exp.f64 im) (*.f64 1/2 re)))
(+.f64 (*.f64 (sin.f64 re) 9/2) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(+.f64 (*.f64 (sin.f64 re) 9/2) (*.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) 1))
(+.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) (*.f64 (sin.f64 re) 9/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) 9/2) 3) (pow.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) 3)) (+.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4) (-.f64 (*.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) 9/2) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re)))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4) (*.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))) (-.f64 (*.f64 (sin.f64 re) 9/2) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re)))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 729/8)) (+.f64 81/4 (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 9/2))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 81/4 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (-.f64 9/2 (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 729/8) (sin.f64 re)) (+.f64 81/4 (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 9/2))))
(/.f64 (*.f64 (-.f64 81/4 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (sin.f64 re)) (-.f64 9/2 (*.f64 im (fma.f64 im 1/4 1/2))))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 9/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 9/2) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))))
(fma.f64 (sin.f64 re) 9/2 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(fma.f64 9/2 (sin.f64 re) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(fma.f64 1 (*.f64 (sin.f64 re) 9/2) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4)) (cbrt.f64 (*.f64 (sin.f64 re) 9/2)) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) 9/2)) (sqrt.f64 (*.f64 (sin.f64 re) 9/2)) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2))
(+.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2)))
(+.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) 1) (*.f64 (*.f64 im 1/2) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 1/4 (pow.f64 im 2)) 3) (pow.f64 (*.f64 im 1/2) 3)) (+.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2)))))
(/.f64 (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (*.f64 1/4 (pow.f64 im 2))) (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2)))
(/.f64 (*.f64 im (+.f64 (*.f64 (pow.f64 im 3) 1/64) 1/8)) (+.f64 (pow.f64 (*.f64 im 1/4) 2) (-.f64 1/4 (*.f64 im 1/8))))
(/.f64 (*.f64 im (+.f64 (pow.f64 (*.f64 im 1/4) 2) -1/4)) (fma.f64 im 1/4 -1/2))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/64) 1/8) im) (+.f64 (pow.f64 (*.f64 im 1/4) 2) (-.f64 1/4 (*.f64 im 1/8))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im 1/4) 2) -1/4) im) (fma.f64 im 1/4 -1/2))
(pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))
(log.f64 (pow.f64 (exp.f64 im) (fma.f64 im 1/4 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(fma.f64 im (*.f64 im 1/4) (*.f64 im 1/2))
(fma.f64 (*.f64 im 1/4) im (*.f64 im 1/2))

simplify122.0ms (1.4%)

Algorithm
egg-herbie
Rules
866×associate-*r*
850×associate-*l*
770×fma-def
768×times-frac
748×fma-neg
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04688580
113437523
253287497
Stop Event
node limit
Counts
225 → 258
Calls
Call 1
Inputs
(*.f64 1/24 (*.f64 (pow.f64 im 4) re))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/24 (*.f64 (pow.f64 im 4) re)))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/2880 (*.f64 (pow.f64 im 4) (pow.f64 re 5))) (*.f64 1/24 (*.f64 (pow.f64 im 4) re))))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/120960 (*.f64 (pow.f64 im 4) (pow.f64 re 7))) (+.f64 (*.f64 1/2880 (*.f64 (pow.f64 im 4) (pow.f64 re 5))) (*.f64 1/24 (*.f64 (pow.f64 im 4) re)))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 9/2 re)
(+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 9/2 re))
(+.f64 (*.f64 -3/4 (pow.f64 re 3)) (+.f64 (*.f64 3/80 (pow.f64 re 5)) (*.f64 9/2 re)))
(+.f64 (*.f64 -3/4 (pow.f64 re 3)) (+.f64 (*.f64 -1/1120 (pow.f64 re 7)) (+.f64 (*.f64 3/80 (pow.f64 re 5)) (*.f64 9/2 re))))
(*.f64 9/2 (sin.f64 re))
(*.f64 9/2 (sin.f64 re))
(*.f64 9/2 (sin.f64 re))
(*.f64 9/2 (sin.f64 re))
(*.f64 9/2 (sin.f64 re))
(*.f64 9/2 (sin.f64 re))
(*.f64 9/2 (sin.f64 re))
(*.f64 9/2 (sin.f64 re))
(*.f64 -1 (pow.f64 re 2))
(+.f64 (*.f64 -1 (pow.f64 re 2)) (*.f64 1/12 (pow.f64 re 4)))
(+.f64 (*.f64 -1 (pow.f64 re 2)) (+.f64 (*.f64 -1/360 (pow.f64 re 6)) (*.f64 1/12 (pow.f64 re 4))))
(+.f64 (*.f64 -1 (pow.f64 re 2)) (+.f64 (*.f64 -1/360 (pow.f64 re 6)) (+.f64 (*.f64 1/20160 (pow.f64 re 8)) (*.f64 1/12 (pow.f64 re 4)))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(*.f64 9/2 re)
(+.f64 (*.f64 1/2 (*.f64 im re)) (*.f64 9/2 re))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 (*.f64 im re)) (*.f64 9/2 re)))
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 im 3) re)) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 (*.f64 im re)) (*.f64 9/2 re))))
(*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 9/2 (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/2 (*.f64 im (sin.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/2 (*.f64 im (sin.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(*.f64 1/2 im)
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(*.f64 1/4 (pow.f64 im 2))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(*.f64 1/4 (pow.f64 im 2))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24))) 1)
(pow.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24) 1)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)) 3)
(pow.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)) 2)
(sqrt.f64 (*.f64 (*.f64 (pow.f64 im 8) 1/576) (pow.f64 (sin.f64 re) 2)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/24) (pow.f64 im 4)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 1/24 (pow.f64 im 4)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/24 (pow.f64 im 4)) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)))
(exp.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)) 1))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 9/2))) 1)
(pow.f64 (*.f64 (sin.f64 re) 9/2) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) 9/2)) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) 9/2) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) 9/2)) 2)
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 9/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) 9/2))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) 9/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) 9/2)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) 9/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 9/2)) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) 9/2)))
(+.f64 -2 (*.f64 (cos.f64 re) 2))
(+.f64 -2 (*.f64 (*.f64 (cos.f64 re) 2) 1))
(+.f64 (*.f64 (cos.f64 re) 2) -2)
(*.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 1)
(*.f64 1 (+.f64 -2 (*.f64 (cos.f64 re) 2)))
(*.f64 (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) (pow.f64 (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 2))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 2) (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(*.f64 (sqrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) (sqrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(*.f64 (-.f64 -8 (*.f64 (pow.f64 (cos.f64 re) 3) -8)) (/.f64 1 (+.f64 4 (+.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2)) (*.f64 4 (cos.f64 re))))))
(*.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2))) (/.f64 1 (+.f64 -2 (*.f64 -2 (cos.f64 re)))))
(/.f64 1 (/.f64 (+.f64 4 (+.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2)) (*.f64 4 (cos.f64 re)))) (-.f64 -8 (*.f64 (pow.f64 (cos.f64 re) 3) -8))))
(/.f64 1 (/.f64 (+.f64 -2 (*.f64 -2 (cos.f64 re))) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2)))))
(/.f64 (-.f64 -8 (*.f64 (pow.f64 (cos.f64 re) 3) -8)) (+.f64 4 (+.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2)) (*.f64 4 (cos.f64 re)))))
(/.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2))) (+.f64 -2 (*.f64 -2 (cos.f64 re))))
(/.f64 (neg.f64 (-.f64 -8 (*.f64 (pow.f64 (cos.f64 re) 3) -8))) (neg.f64 (+.f64 4 (+.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2)) (*.f64 4 (cos.f64 re))))))
(/.f64 (neg.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2)))) (neg.f64 (+.f64 -2 (*.f64 -2 (cos.f64 re)))))
(/.f64 (+.f64 -8 (pow.f64 (*.f64 (cos.f64 re) 2) 3)) (+.f64 4 (-.f64 (*.f64 (*.f64 (cos.f64 re) 2) (*.f64 (cos.f64 re) 2)) (*.f64 -2 (*.f64 (cos.f64 re) 2)))))
(/.f64 (-.f64 4 (*.f64 (*.f64 (cos.f64 re) 2) (*.f64 (cos.f64 re) 2))) (-.f64 -2 (*.f64 (cos.f64 re) 2)))
(pow.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 1)
(pow.f64 (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 3)
(pow.f64 (pow.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 3) 1/3)
(pow.f64 (sqrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 2)
(sqrt.f64 (pow.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 2))
(log.f64 (exp.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)))))
(cbrt.f64 (pow.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 3))
(expm1.f64 (log1p.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(exp.f64 (log.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(exp.f64 (*.f64 (log.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 1))
(log1p.f64 (expm1.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(+.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) (*.f64 re 4))
(+.f64 (*.f64 re 4) (*.f64 (exp.f64 im) (*.f64 1/2 re)))
(+.f64 (*.f64 (*.f64 re 4) 1) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 re 4) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) 3)) (+.f64 (*.f64 (*.f64 re 4) (*.f64 re 4)) (-.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) (*.f64 (exp.f64 im) (*.f64 1/2 re))) (*.f64 (*.f64 re 4) (*.f64 (exp.f64 im) (*.f64 1/2 re))))))
(/.f64 (-.f64 (*.f64 (*.f64 re 4) (*.f64 re 4)) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) (*.f64 (exp.f64 im) (*.f64 1/2 re)))) (-.f64 (*.f64 re 4) (*.f64 (exp.f64 im) (*.f64 1/2 re))))
(/.f64 (*.f64 re (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 64)) (+.f64 16 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 2 (exp.f64 im)))))
(/.f64 (*.f64 re (-.f64 16 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (+.f64 4 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 64) re) (+.f64 16 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 2 (exp.f64 im)))))
(/.f64 (*.f64 (-.f64 16 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) re) (+.f64 4 (*.f64 -1/2 (exp.f64 im))))
(pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))) 3)
(pow.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))) 2)
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)) 2))
(log.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (exp.f64 im) 4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)))))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)) 3))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 4) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 4) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))))
(exp.f64 (log.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))))
(fma.f64 re 4 (*.f64 (exp.f64 im) (*.f64 1/2 re)))
(fma.f64 4 re (*.f64 (exp.f64 im) (*.f64 1/2 re)))
(+.f64 (*.f64 (sin.f64 re) 9/2) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(+.f64 (*.f64 (sin.f64 re) 9/2) (*.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) 1))
(+.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) (*.f64 (sin.f64 re) 9/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) 9/2) 3) (pow.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) 3)) (+.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4) (-.f64 (*.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) 9/2) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re)))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4) (*.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))) (-.f64 (*.f64 (sin.f64 re) 9/2) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re)))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 729/8)) (+.f64 81/4 (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 9/2))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 81/4 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (-.f64 9/2 (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 729/8) (sin.f64 re)) (+.f64 81/4 (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 9/2))))
(/.f64 (*.f64 (-.f64 81/4 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (sin.f64 re)) (-.f64 9/2 (*.f64 im (fma.f64 im 1/4 1/2))))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 9/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 9/2) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))))
(fma.f64 (sin.f64 re) 9/2 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(fma.f64 9/2 (sin.f64 re) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(fma.f64 1 (*.f64 (sin.f64 re) 9/2) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4)) (cbrt.f64 (*.f64 (sin.f64 re) 9/2)) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) 9/2)) (sqrt.f64 (*.f64 (sin.f64 re) 9/2)) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2))
(+.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2)))
(+.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) 1) (*.f64 (*.f64 im 1/2) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 1/4 (pow.f64 im 2)) 3) (pow.f64 (*.f64 im 1/2) 3)) (+.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2)))))
(/.f64 (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (*.f64 1/4 (pow.f64 im 2))) (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2)))
(/.f64 (*.f64 im (+.f64 (*.f64 (pow.f64 im 3) 1/64) 1/8)) (+.f64 (pow.f64 (*.f64 im 1/4) 2) (-.f64 1/4 (*.f64 im 1/8))))
(/.f64 (*.f64 im (+.f64 (pow.f64 (*.f64 im 1/4) 2) -1/4)) (fma.f64 im 1/4 -1/2))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/64) 1/8) im) (+.f64 (pow.f64 (*.f64 im 1/4) 2) (-.f64 1/4 (*.f64 im 1/8))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im 1/4) 2) -1/4) im) (fma.f64 im 1/4 -1/2))
(pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))
(log.f64 (pow.f64 (exp.f64 im) (fma.f64 im 1/4 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(fma.f64 im (*.f64 im 1/4) (*.f64 im 1/2))
(fma.f64 (*.f64 im 1/4) im (*.f64 im 1/2))
Outputs
(*.f64 1/24 (*.f64 (pow.f64 im 4) re))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) re)
(*.f64 re (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/24 (*.f64 (pow.f64 im 4) re)))
(fma.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) re))
(fma.f64 1/24 (*.f64 (pow.f64 im 4) re) (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 4) -1/144)))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/2880 (*.f64 (pow.f64 im 4) (pow.f64 re 5))) (*.f64 1/24 (*.f64 (pow.f64 im 4) re))))
(fma.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/2880 (*.f64 (pow.f64 im 4) (pow.f64 re 5)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) re)))
(fma.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/24 (*.f64 (pow.f64 im 4) re) (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 re 5) 1/2880))))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/120960 (*.f64 (pow.f64 im 4) (pow.f64 re 7))) (+.f64 (*.f64 1/2880 (*.f64 (pow.f64 im 4) (pow.f64 re 5))) (*.f64 1/24 (*.f64 (pow.f64 im 4) re)))))
(fma.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/120960 (*.f64 (pow.f64 im 4) (pow.f64 re 7)) (fma.f64 1/2880 (*.f64 (pow.f64 im 4) (pow.f64 re 5)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) re))))
(fma.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/120960 (*.f64 (pow.f64 im 4) (pow.f64 re 7)) (fma.f64 1/24 (*.f64 (pow.f64 im 4) re) (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 re 5) 1/2880)))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 9/2 re)
(*.f64 re 9/2)
(+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 9/2 re))
(fma.f64 -3/4 (pow.f64 re 3) (*.f64 re 9/2))
(fma.f64 re 9/2 (*.f64 (pow.f64 re 3) -3/4))
(+.f64 (*.f64 -3/4 (pow.f64 re 3)) (+.f64 (*.f64 3/80 (pow.f64 re 5)) (*.f64 9/2 re)))
(fma.f64 -3/4 (pow.f64 re 3) (fma.f64 3/80 (pow.f64 re 5) (*.f64 re 9/2)))
(fma.f64 (pow.f64 re 3) -3/4 (fma.f64 re 9/2 (*.f64 (pow.f64 re 5) 3/80)))
(+.f64 (*.f64 -3/4 (pow.f64 re 3)) (+.f64 (*.f64 -1/1120 (pow.f64 re 7)) (+.f64 (*.f64 3/80 (pow.f64 re 5)) (*.f64 9/2 re))))
(fma.f64 -3/4 (pow.f64 re 3) (fma.f64 -1/1120 (pow.f64 re 7) (fma.f64 3/80 (pow.f64 re 5) (*.f64 re 9/2))))
(fma.f64 (pow.f64 re 3) -3/4 (fma.f64 (pow.f64 re 7) -1/1120 (fma.f64 re 9/2 (*.f64 (pow.f64 re 5) 3/80))))
(*.f64 9/2 (sin.f64 re))
(*.f64 (sin.f64 re) 9/2)
(*.f64 9/2 (sin.f64 re))
(*.f64 (sin.f64 re) 9/2)
(*.f64 9/2 (sin.f64 re))
(*.f64 (sin.f64 re) 9/2)
(*.f64 9/2 (sin.f64 re))
(*.f64 (sin.f64 re) 9/2)
(*.f64 9/2 (sin.f64 re))
(*.f64 (sin.f64 re) 9/2)
(*.f64 9/2 (sin.f64 re))
(*.f64 (sin.f64 re) 9/2)
(*.f64 9/2 (sin.f64 re))
(*.f64 (sin.f64 re) 9/2)
(*.f64 9/2 (sin.f64 re))
(*.f64 (sin.f64 re) 9/2)
(*.f64 -1 (pow.f64 re 2))
(neg.f64 (pow.f64 re 2))
(+.f64 (*.f64 -1 (pow.f64 re 2)) (*.f64 1/12 (pow.f64 re 4)))
(fma.f64 -1 (pow.f64 re 2) (*.f64 1/12 (pow.f64 re 4)))
(-.f64 (*.f64 1/12 (pow.f64 re 4)) (pow.f64 re 2))
(+.f64 (*.f64 -1 (pow.f64 re 2)) (+.f64 (*.f64 -1/360 (pow.f64 re 6)) (*.f64 1/12 (pow.f64 re 4))))
(fma.f64 -1 (pow.f64 re 2) (fma.f64 -1/360 (pow.f64 re 6) (*.f64 1/12 (pow.f64 re 4))))
(-.f64 (fma.f64 1/12 (pow.f64 re 4) (*.f64 -1/360 (pow.f64 re 6))) (pow.f64 re 2))
(+.f64 (*.f64 -1 (pow.f64 re 2)) (+.f64 (*.f64 -1/360 (pow.f64 re 6)) (+.f64 (*.f64 1/20160 (pow.f64 re 8)) (*.f64 1/12 (pow.f64 re 4)))))
(fma.f64 -1 (pow.f64 re 2) (fma.f64 -1/360 (pow.f64 re 6) (fma.f64 1/20160 (pow.f64 re 8) (*.f64 1/12 (pow.f64 re 4)))))
(-.f64 (fma.f64 -1/360 (pow.f64 re 6) (fma.f64 1/12 (pow.f64 re 4) (*.f64 1/20160 (pow.f64 re 8)))) (pow.f64 re 2))
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 -1 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 9/2 re)
(*.f64 re 9/2)
(+.f64 (*.f64 1/2 (*.f64 im re)) (*.f64 9/2 re))
(fma.f64 1/2 (*.f64 im re) (*.f64 re 9/2))
(*.f64 re (+.f64 (*.f64 im 1/2) 9/2))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 (*.f64 im re)) (*.f64 9/2 re)))
(fma.f64 1/4 (*.f64 re (pow.f64 im 2)) (fma.f64 1/2 (*.f64 im re) (*.f64 re 9/2)))
(*.f64 re (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 im 3) re)) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 (*.f64 im re)) (*.f64 9/2 re))))
(fma.f64 1/12 (*.f64 re (pow.f64 im 3)) (fma.f64 1/4 (*.f64 re (pow.f64 im 2)) (fma.f64 1/2 (*.f64 im re) (*.f64 re 9/2))))
(fma.f64 1/12 (*.f64 re (pow.f64 im 3)) (*.f64 re (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)))
(*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(fma.f64 1/4 (*.f64 re (pow.f64 im 2)) (fma.f64 1/2 (*.f64 im re) (*.f64 re 9/2)))
(*.f64 re (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) (*.f64 re (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)))
(*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 9/2) (+.f64 (*.f64 (pow.f64 re 3) -1/6) re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) (*.f64 re (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 9/2) (+.f64 re (*.f64 (pow.f64 re 5) 1/120))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) (fma.f64 -1/5040 (*.f64 (pow.f64 re 7) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) (*.f64 re (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)))))
(+.f64 (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 9/2) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (*.f64 (pow.f64 re 5) 1/120))) (*.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 9/2) (+.f64 (*.f64 (pow.f64 re 3) -1/6) re)))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(*.f64 9/2 (sin.f64 re))
(*.f64 (sin.f64 re) 9/2)
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re)))
(fma.f64 1/2 (*.f64 im (sin.f64 re)) (*.f64 (sin.f64 re) 9/2))
(*.f64 (sin.f64 re) (+.f64 (*.f64 im 1/2) 9/2))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/4 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/4 (pow.f64 im 2)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/2 (*.f64 im (sin.f64 re))))
(fma.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2)) (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 im (*.f64 (sin.f64 re) (fma.f64 im 1/4 1/2)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/4 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/4 (pow.f64 im 2)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/2 (*.f64 im (sin.f64 re))))
(fma.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2)) (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 im (*.f64 (sin.f64 re) (fma.f64 im 1/4 1/2)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 9/2 (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(*.f64 1/2 im)
(*.f64 im 1/2)
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(*.f64 1/4 (pow.f64 im 2))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(*.f64 1/4 (pow.f64 im 2))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24))) 1)
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(pow.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24) 1)
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)) 3)
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(pow.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24) 3) 1/3)
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(pow.f64 (sqrt.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)) 2)
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(sqrt.f64 (*.f64 (*.f64 (pow.f64 im 8) 1/576) (pow.f64 (sin.f64 re) 2)))
(sqrt.f64 (*.f64 (pow.f64 im 8) (*.f64 1/576 (pow.f64 (sin.f64 re) 2))))
(fabs.f64 (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/24) (pow.f64 im 4)) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24))))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24) 3))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 1/24 (pow.f64 im 4)) 3)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/24 (pow.f64 im 4)) 3) (pow.f64 (sin.f64 re) 3)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(exp.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)) 1))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/24)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 9/2))) 1)
(*.f64 (sin.f64 re) 9/2)
(pow.f64 (*.f64 (sin.f64 re) 9/2) 1)
(*.f64 (sin.f64 re) 9/2)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) 9/2)) 3)
(*.f64 (sin.f64 re) 9/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) 9/2) 3) 1/3)
(*.f64 (sin.f64 re) 9/2)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) 9/2)) 2)
(*.f64 (sin.f64 re) 9/2)
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4))
(fabs.f64 (*.f64 (sin.f64 re) 9/2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 9/2))
(*.f64 (sin.f64 re) 9/2)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) 9/2))))
(*.f64 (sin.f64 re) 9/2)
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) 9/2) 3))
(*.f64 (sin.f64 re) 9/2)
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) 9/2)))
(*.f64 (sin.f64 re) 9/2)
(exp.f64 (log.f64 (*.f64 (sin.f64 re) 9/2)))
(*.f64 (sin.f64 re) 9/2)
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 9/2)) 1))
(*.f64 (sin.f64 re) 9/2)
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) 9/2)))
(*.f64 (sin.f64 re) 9/2)
(+.f64 -2 (*.f64 (cos.f64 re) 2))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(+.f64 -2 (*.f64 (*.f64 (cos.f64 re) 2) 1))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(+.f64 (*.f64 (cos.f64 re) 2) -2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 1)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 1 (+.f64 -2 (*.f64 (cos.f64 re) 2)))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) (pow.f64 (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 2))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 (pow.f64 (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 2) (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 (sqrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) (sqrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(*.f64 (-.f64 -8 (*.f64 (pow.f64 (cos.f64 re) 3) -8)) (/.f64 1 (+.f64 4 (+.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2)) (*.f64 4 (cos.f64 re))))))
(/.f64 (*.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 re) 3))) 1) (+.f64 4 (*.f64 4 (+.f64 (pow.f64 (cos.f64 re) 2) (cos.f64 re)))))
(/.f64 (fma.f64 (pow.f64 (cos.f64 re) 3) 8 -8) (fma.f64 4 (+.f64 (cos.f64 re) (pow.f64 (cos.f64 re) 2)) 4))
(*.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2))) (/.f64 1 (+.f64 -2 (*.f64 -2 (cos.f64 re)))))
(/.f64 1 (/.f64 (+.f64 -2 (*.f64 -2 (cos.f64 re))) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2)))))
(/.f64 (+.f64 4 (*.f64 (pow.f64 (cos.f64 re) 2) -4)) (fma.f64 -2 (cos.f64 re) -2))
(/.f64 1 (/.f64 (+.f64 4 (+.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2)) (*.f64 4 (cos.f64 re)))) (-.f64 -8 (*.f64 (pow.f64 (cos.f64 re) 3) -8))))
(/.f64 (*.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 re) 3))) 1) (+.f64 4 (*.f64 4 (+.f64 (pow.f64 (cos.f64 re) 2) (cos.f64 re)))))
(/.f64 (fma.f64 (pow.f64 (cos.f64 re) 3) 8 -8) (fma.f64 4 (+.f64 (cos.f64 re) (pow.f64 (cos.f64 re) 2)) 4))
(/.f64 1 (/.f64 (+.f64 -2 (*.f64 -2 (cos.f64 re))) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2)))))
(/.f64 (+.f64 4 (*.f64 (pow.f64 (cos.f64 re) 2) -4)) (fma.f64 -2 (cos.f64 re) -2))
(/.f64 (-.f64 -8 (*.f64 (pow.f64 (cos.f64 re) 3) -8)) (+.f64 4 (+.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2)) (*.f64 4 (cos.f64 re)))))
(/.f64 (*.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 re) 3))) 1) (+.f64 4 (*.f64 4 (+.f64 (pow.f64 (cos.f64 re) 2) (cos.f64 re)))))
(/.f64 (fma.f64 (pow.f64 (cos.f64 re) 3) 8 -8) (fma.f64 4 (+.f64 (cos.f64 re) (pow.f64 (cos.f64 re) 2)) 4))
(/.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2))) (+.f64 -2 (*.f64 -2 (cos.f64 re))))
(/.f64 1 (/.f64 (+.f64 -2 (*.f64 -2 (cos.f64 re))) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2)))))
(/.f64 (+.f64 4 (*.f64 (pow.f64 (cos.f64 re) 2) -4)) (fma.f64 -2 (cos.f64 re) -2))
(/.f64 (neg.f64 (-.f64 -8 (*.f64 (pow.f64 (cos.f64 re) 3) -8))) (neg.f64 (+.f64 4 (+.f64 (*.f64 4 (pow.f64 (cos.f64 re) 2)) (*.f64 4 (cos.f64 re))))))
(/.f64 (neg.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 re) 3)))) (neg.f64 (+.f64 4 (*.f64 4 (+.f64 (pow.f64 (cos.f64 re) 2) (cos.f64 re))))))
(*.f64 1 (/.f64 (fma.f64 (pow.f64 (cos.f64 re) 3) 8 -8) (fma.f64 4 (+.f64 (cos.f64 re) (pow.f64 (cos.f64 re) 2)) 4)))
(/.f64 (-.f64 8 (*.f64 8 (pow.f64 (cos.f64 re) 3))) (fma.f64 -4 (+.f64 (cos.f64 re) (pow.f64 (cos.f64 re) 2)) -4))
(/.f64 (neg.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2)))) (neg.f64 (+.f64 -2 (*.f64 -2 (cos.f64 re)))))
(/.f64 (neg.f64 (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2)))) (+.f64 2 (neg.f64 (*.f64 -2 (cos.f64 re)))))
(/.f64 (-.f64 -4 (*.f64 (pow.f64 (cos.f64 re) 2) -4)) (fma.f64 2 (cos.f64 re) 2))
(/.f64 (+.f64 -8 (pow.f64 (*.f64 (cos.f64 re) 2) 3)) (+.f64 4 (-.f64 (*.f64 (*.f64 (cos.f64 re) 2) (*.f64 (cos.f64 re) 2)) (*.f64 -2 (*.f64 (cos.f64 re) 2)))))
(/.f64 (*.f64 (-.f64 -8 (*.f64 -8 (pow.f64 (cos.f64 re) 3))) 1) (+.f64 4 (*.f64 4 (+.f64 (pow.f64 (cos.f64 re) 2) (cos.f64 re)))))
(/.f64 (fma.f64 (pow.f64 (cos.f64 re) 3) 8 -8) (fma.f64 4 (+.f64 (cos.f64 re) (pow.f64 (cos.f64 re) 2)) 4))
(/.f64 (-.f64 4 (*.f64 (*.f64 (cos.f64 re) 2) (*.f64 (cos.f64 re) 2))) (-.f64 -2 (*.f64 (cos.f64 re) 2)))
(/.f64 1 (/.f64 (+.f64 -2 (*.f64 -2 (cos.f64 re))) (-.f64 4 (*.f64 4 (pow.f64 (cos.f64 re) 2)))))
(/.f64 (+.f64 4 (*.f64 (pow.f64 (cos.f64 re) 2) -4)) (fma.f64 -2 (cos.f64 re) -2))
(pow.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 1)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(pow.f64 (cbrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 3)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(pow.f64 (pow.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 3) 1/3)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(pow.f64 (sqrt.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 2)
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(sqrt.f64 (pow.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 2))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(log.f64 (exp.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(log.f64 (+.f64 1 (expm1.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(cbrt.f64 (pow.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2)) 3))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(expm1.f64 (log1p.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(exp.f64 (log.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(exp.f64 (*.f64 (log.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))) 1))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(log1p.f64 (expm1.f64 (+.f64 -2 (*.f64 (cos.f64 re) 2))))
(neg.f64 (+.f64 2 (*.f64 -2 (cos.f64 re))))
(fma.f64 2 (cos.f64 re) -2)
(+.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) (*.f64 re 4))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(+.f64 (*.f64 re 4) (*.f64 (exp.f64 im) (*.f64 1/2 re)))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(+.f64 (*.f64 (*.f64 re 4) 1) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) 1))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)))) 1)
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(/.f64 (+.f64 (pow.f64 (*.f64 re 4) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) 3)) (+.f64 (*.f64 (*.f64 re 4) (*.f64 re 4)) (-.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) (*.f64 (exp.f64 im) (*.f64 1/2 re))) (*.f64 (*.f64 re 4) (*.f64 (exp.f64 im) (*.f64 1/2 re))))))
(/.f64 (+.f64 (*.f64 (pow.f64 re 3) 64) (pow.f64 (*.f64 (exp.f64 im) (*.f64 re 1/2)) 3)) (+.f64 (*.f64 (pow.f64 re 2) 16) (*.f64 (*.f64 (exp.f64 im) (*.f64 re 1/2)) (-.f64 (*.f64 (exp.f64 im) (*.f64 re 1/2)) (*.f64 4 re)))))
(/.f64 (fma.f64 (pow.f64 re 3) 64 (pow.f64 (*.f64 1/2 (*.f64 re (exp.f64 im))) 3)) (fma.f64 (pow.f64 re 2) 16 (*.f64 (*.f64 1/2 (*.f64 re (exp.f64 im))) (*.f64 re (-.f64 (*.f64 1/2 (exp.f64 im)) 4)))))
(/.f64 (fma.f64 (pow.f64 re 3) 64 (*.f64 1/8 (pow.f64 (*.f64 re (exp.f64 im)) 3))) (fma.f64 (pow.f64 re 2) 16 (*.f64 (*.f64 1/2 (*.f64 re (exp.f64 im))) (*.f64 re (fma.f64 1/2 (exp.f64 im) -4)))))
(/.f64 (-.f64 (*.f64 (*.f64 re 4) (*.f64 re 4)) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 re)) (*.f64 (exp.f64 im) (*.f64 1/2 re)))) (-.f64 (*.f64 re 4) (*.f64 (exp.f64 im) (*.f64 1/2 re))))
(/.f64 (-.f64 (*.f64 (pow.f64 re 2) 16) (*.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (*.f64 re 1/2) (*.f64 re 1/2)))) (-.f64 (*.f64 4 re) (*.f64 (exp.f64 im) (*.f64 re 1/2))))
(/.f64 (-.f64 (*.f64 (pow.f64 re 2) 16) (*.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (pow.f64 re 2) 1/4))) (*.f64 re (-.f64 4 (*.f64 1/2 (exp.f64 im)))))
(/.f64 (*.f64 re (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 64)) (+.f64 16 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 2 (exp.f64 im)))))
(/.f64 re (/.f64 (+.f64 16 (+.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 -2 (exp.f64 im)))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 64)))
(*.f64 (/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 64) (+.f64 16 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) (*.f64 -2 (exp.f64 im))))) re)
(/.f64 (*.f64 re (-.f64 16 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (+.f64 4 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (+.f64 16 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (/.f64 (+.f64 4 (*.f64 (exp.f64 im) -1/2)) re))
(*.f64 (/.f64 re (fma.f64 (exp.f64 im) -1/2 4)) (+.f64 16 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 64) re) (+.f64 16 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 2 (exp.f64 im)))))
(/.f64 re (/.f64 (+.f64 16 (+.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 -2 (exp.f64 im)))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 64)))
(*.f64 (/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 64) (+.f64 16 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) (*.f64 -2 (exp.f64 im))))) re)
(/.f64 (*.f64 (-.f64 16 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) re) (+.f64 4 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (+.f64 16 (*.f64 -1/4 (pow.f64 (exp.f64 im) 2))) (/.f64 (+.f64 4 (*.f64 (exp.f64 im) -1/2)) re))
(*.f64 (/.f64 re (fma.f64 (exp.f64 im) -1/2 4)) (+.f64 16 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))
(pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)) 1)
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))) 3)
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(pow.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)) 3) 1/3)
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))) 2)
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)) 2))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(log.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (exp.f64 im) 4)))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)))))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4)) 3))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 4) 3)))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 4) 3) (pow.f64 re 3)))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(exp.f64 (log.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))) 1))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 4))))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(fma.f64 re 4 (*.f64 (exp.f64 im) (*.f64 1/2 re)))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(fma.f64 4 re (*.f64 (exp.f64 im) (*.f64 1/2 re)))
(fma.f64 (exp.f64 im) (*.f64 re 1/2) (*.f64 4 re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 4))
(+.f64 (*.f64 (sin.f64 re) 9/2) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(+.f64 (*.f64 (sin.f64 re) 9/2) (*.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) 1))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(+.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) (*.f64 (sin.f64 re) 9/2))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)))) 1)
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) 9/2) 3) (pow.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) 3)) (+.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4) (-.f64 (*.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) 9/2) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re)))))))
(/.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 re) 3) 729/8) (pow.f64 (*.f64 (*.f64 im (sin.f64 re)) (fma.f64 im 1/4 1/2)) 3)) (fma.f64 (pow.f64 (sin.f64 re) 2) 81/4 (*.f64 (*.f64 (*.f64 im (sin.f64 re)) (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 (*.f64 im (sin.f64 re)) (fma.f64 im 1/4 1/2)) (*.f64 (sin.f64 re) 9/2)))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 re) 3) 729/8 (pow.f64 (*.f64 im (*.f64 (sin.f64 re) (fma.f64 im 1/4 1/2))) 3)) (fma.f64 (pow.f64 (sin.f64 re) 2) 81/4 (*.f64 (*.f64 im (sin.f64 re)) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) -9/2))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4) (*.f64 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))) (-.f64 (*.f64 (sin.f64 re) 9/2) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4) (*.f64 (*.f64 (*.f64 im (sin.f64 re)) (fma.f64 im 1/4 1/2)) (*.f64 (*.f64 im (sin.f64 re)) (fma.f64 im 1/4 1/2)))) (-.f64 (*.f64 (sin.f64 re) 9/2) (*.f64 (*.f64 im (sin.f64 re)) (fma.f64 im 1/4 1/2))))
(/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4) (*.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2) (pow.f64 (sin.f64 re) 2))) (*.f64 (sin.f64 re) (-.f64 9/2 (*.f64 im (fma.f64 im 1/4 1/2)))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 729/8)) (+.f64 81/4 (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 9/2))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 81/4 (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (fma.f64 im (fma.f64 im 1/4 1/2) -9/2))) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 729/8)))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 im (*.f64 (fma.f64 im 1/4 1/2) (fma.f64 im (fma.f64 im 1/4 1/2) -9/2)) 81/4)) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 729/8))
(/.f64 (*.f64 (sin.f64 re) (-.f64 81/4 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))) (-.f64 9/2 (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (-.f64 81/4 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (/.f64 (-.f64 9/2 (*.f64 im (fma.f64 im 1/4 1/2))) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (-.f64 9/2 (*.f64 im (fma.f64 im 1/4 1/2)))) (-.f64 81/4 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 729/8) (sin.f64 re)) (+.f64 81/4 (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (-.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 9/2))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 81/4 (*.f64 (*.f64 im (fma.f64 im 1/4 1/2)) (fma.f64 im (fma.f64 im 1/4 1/2) -9/2))) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 729/8)))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 im (*.f64 (fma.f64 im 1/4 1/2) (fma.f64 im (fma.f64 im 1/4 1/2) -9/2)) 81/4)) (+.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 729/8))
(/.f64 (*.f64 (-.f64 81/4 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (sin.f64 re)) (-.f64 9/2 (*.f64 im (fma.f64 im 1/4 1/2))))
(/.f64 (-.f64 81/4 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)) (/.f64 (-.f64 9/2 (*.f64 im (fma.f64 im 1/4 1/2))) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (-.f64 9/2 (*.f64 im (fma.f64 im 1/4 1/2)))) (-.f64 81/4 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2)))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) 1)
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))) 3)
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) 3) 1/3)
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))) 2)
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) 2))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2)) 3))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 9/2) 3)))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (fma.f64 im 1/4 1/2) 9/2) 3) (pow.f64 (sin.f64 re) 3)))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))) 1))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(fma.f64 (sin.f64 re) 9/2 (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(fma.f64 9/2 (sin.f64 re) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(fma.f64 1 (*.f64 (sin.f64 re) 9/2) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4)) (cbrt.f64 (*.f64 (sin.f64 re) 9/2)) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4)) (cbrt.f64 (*.f64 (sin.f64 re) 9/2)) (*.f64 (*.f64 im (sin.f64 re)) (fma.f64 im 1/4 1/2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 81/4)) (cbrt.f64 (*.f64 (sin.f64 re) 9/2)) (*.f64 im (*.f64 (sin.f64 re) (fma.f64 im 1/4 1/2))))
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) 9/2)) (sqrt.f64 (*.f64 (sin.f64 re) 9/2)) (*.f64 (fma.f64 im 1/4 1/2) (*.f64 im (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 im (fma.f64 im 1/4 1/2) 9/2))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 im 1/2) (*.f64 1/4 (pow.f64 im 2)))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(+.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) 1) (*.f64 (*.f64 im 1/2) 1))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2)))) 1)
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(/.f64 (+.f64 (pow.f64 (*.f64 1/4 (pow.f64 im 2)) 3) (pow.f64 (*.f64 im 1/2) 3)) (+.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2)))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/4 (pow.f64 im 2)) 3) (pow.f64 (*.f64 im 1/2) 3)) (+.f64 (*.f64 1/16 (pow.f64 im 4)) (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (*.f64 (pow.f64 im 2) (*.f64 im 1/2))))))
(/.f64 (fma.f64 (pow.f64 im 3) 1/8 (*.f64 1/64 (pow.f64 (pow.f64 im 2) 3))) (-.f64 (fma.f64 1/16 (pow.f64 im 4) (*.f64 1/4 (pow.f64 im 2))) (*.f64 (pow.f64 im 3) 1/8)))
(/.f64 (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/4 (pow.f64 im 2))) (*.f64 1/4 (pow.f64 im 2))) (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2)))
(/.f64 (+.f64 (*.f64 1/16 (pow.f64 im 4)) (*.f64 -1/4 (pow.f64 im 2))) (-.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 im 1/2)))
(/.f64 (fma.f64 1/16 (pow.f64 im 4) (*.f64 (pow.f64 im 2) -1/4)) (fma.f64 1/4 (pow.f64 im 2) (*.f64 im -1/2)))
(/.f64 (*.f64 (pow.f64 im 2) (fma.f64 (pow.f64 im 2) 1/16 -1/4)) (fma.f64 1/4 (pow.f64 im 2) (*.f64 im -1/2)))
(/.f64 (*.f64 im (+.f64 (*.f64 (pow.f64 im 3) 1/64) 1/8)) (+.f64 (pow.f64 (*.f64 im 1/4) 2) (-.f64 1/4 (*.f64 im 1/8))))
(/.f64 (*.f64 im (fma.f64 (pow.f64 im 3) 1/64 1/8)) (+.f64 (pow.f64 (*.f64 im 1/4) 2) (-.f64 1/4 (*.f64 im 1/8))))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 3) 1/64 1/8) (+.f64 1/4 (+.f64 (*.f64 im -1/8) (*.f64 (pow.f64 im 2) 1/16)))) im)
(/.f64 (*.f64 im (+.f64 (pow.f64 (*.f64 im 1/4) 2) -1/4)) (fma.f64 im 1/4 -1/2))
(/.f64 im (/.f64 (fma.f64 im 1/4 -1/2) (+.f64 (pow.f64 (*.f64 im 1/4) 2) -1/4)))
(*.f64 (/.f64 im (fma.f64 im 1/4 -1/2)) (+.f64 (*.f64 (pow.f64 im 2) 1/16) -1/4))
(*.f64 (/.f64 im (fma.f64 im 1/4 -1/2)) (fma.f64 (pow.f64 im 2) 1/16 -1/4))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/64) 1/8) im) (+.f64 (pow.f64 (*.f64 im 1/4) 2) (-.f64 1/4 (*.f64 im 1/8))))
(/.f64 (*.f64 im (fma.f64 (pow.f64 im 3) 1/64 1/8)) (+.f64 (pow.f64 (*.f64 im 1/4) 2) (-.f64 1/4 (*.f64 im 1/8))))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 3) 1/64 1/8) (+.f64 1/4 (+.f64 (*.f64 im -1/8) (*.f64 (pow.f64 im 2) 1/16)))) im)
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im 1/4) 2) -1/4) im) (fma.f64 im 1/4 -1/2))
(/.f64 im (/.f64 (fma.f64 im 1/4 -1/2) (+.f64 (pow.f64 (*.f64 im 1/4) 2) -1/4)))
(*.f64 (/.f64 im (fma.f64 im 1/4 -1/2)) (+.f64 (*.f64 (pow.f64 im 2) 1/16) -1/4))
(*.f64 (/.f64 im (fma.f64 im 1/4 -1/2)) (fma.f64 (pow.f64 im 2) 1/16 -1/4))
(pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 1)
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(pow.f64 (cbrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 3)
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(pow.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3) 1/3)
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(pow.f64 (sqrt.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 2)
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(sqrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 2))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(log.f64 (pow.f64 (exp.f64 im) (fma.f64 im 1/4 1/2)))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2)))))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(cbrt.f64 (pow.f64 (*.f64 im (fma.f64 im 1/4 1/2)) 3))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(expm1.f64 (log1p.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(exp.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 im (fma.f64 im 1/4 1/2))) 1))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(log1p.f64 (expm1.f64 (*.f64 im (fma.f64 im 1/4 1/2))))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(fma.f64 im (*.f64 im 1/4) (*.f64 im 1/2))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))
(fma.f64 (*.f64 im 1/4) im (*.f64 im 1/2))
(fma.f64 im 1/2 (*.f64 1/4 (pow.f64 im 2)))
(*.f64 im (fma.f64 im 1/4 1/2))

eval185.0ms (2.2%)

Compiler

Compiled 6437 to 4579 computations (28.9% saved)

prune91.0ms (1.1%)

Pruning

22 alts after pruning (14 fresh and 8 done)

PrunedKeptTotal
New3318339
Fresh167
Picked235
Done055
Total33422356
Accuracy
100.0%
Counts
356 → 22
Alt Table
Click to see full alt table
StatusAccuracyProgram
17.6%
(/.f64 1 (pow.f64 re 3))
87.9%
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re)))
7.2%
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
13.3%
(+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 9/2 re))
49.2%
(*.f64 (fma.f64 im im 2) (*.f64 1/2 re))
27.1%
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
25.4%
(*.f64 (*.f64 1/2 (pow.f64 im 2)) re)
77.5%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
11.1%
(*.f64 (sin.f64 re) (+.f64 (*.f64 im 1/2) 9/2))
100.0%
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
33.2%
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
55.6%
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
10.4%
(*.f64 (sin.f64 re) 9/2)
13.5%
(*.f64 re (+.f64 (*.f64 im 1/2) 9/2))
28.1%
(*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
41.2%
(*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im))))
6.7%
(*.f64 re 9/2)
54.0%
(sin.f64 re)
10.9%
(neg.f64 (pow.f64 re 2))
53.9%
(expm1.f64 (log1p.f64 (sin.f64 re)))
27.6%
re
Compiler

Compiled 549 to 385 computations (29.9% saved)

regimes168.0ms (2%)

Counts
35 → 1
Calls
Call 1
Inputs
re
(*.f64 re 9/2)
(*.f64 1/2 (*.f64 re 2))
(*.f64 re (+.f64 (*.f64 im 1/2) 9/2))
(*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(sin.f64 re)
(neg.f64 (pow.f64 re 2))
(*.f64 2 (sin.f64 re))
(*.f64 (sin.f64 re) 9/2)
(/.f64 1 (pow.f64 re 3))
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) re)
(*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 1/2 im)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 im 1/2) 9/2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 re))
(+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 9/2 re))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
(cbrt.f64 (sin.f64 re))
(pow.f64 (sin.f64 re) -3)
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 8)))
(expm1.f64 (log1p.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.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)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re)))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))
(+.f64 (*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (sin.f64 re)))
Outputs
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
Calls

6 calls:

58.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
29.0ms
(sin.f64 re)
24.0ms
(*.f64 1/2 (sin.f64 re))
22.0ms
re
21.0ms
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 354 to 232 computations (34.5% saved)

regimes106.0ms (1.3%)

Counts
30 → 1
Calls
Call 1
Inputs
re
(*.f64 re 9/2)
(*.f64 1/2 (*.f64 re 2))
(*.f64 re (+.f64 (*.f64 im 1/2) 9/2))
(*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(sin.f64 re)
(neg.f64 (pow.f64 re 2))
(*.f64 2 (sin.f64 re))
(*.f64 (sin.f64 re) 9/2)
(/.f64 1 (pow.f64 re 3))
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) re)
(*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 1/2 im)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 im 1/2) 9/2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 re))
(+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 9/2 re))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
(cbrt.f64 (sin.f64 re))
(pow.f64 (sin.f64 re) -3)
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 8)))
(expm1.f64 (log1p.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(*.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)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Calls

6 calls:

21.0ms
re
19.0ms
(sin.f64 re)
19.0ms
im
17.0ms
(*.f64 1/2 (sin.f64 re))
13.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 269 to 178 computations (33.8% saved)

regimes86.0ms (1%)

Counts
28 → 1
Calls
Call 1
Inputs
re
(*.f64 re 9/2)
(*.f64 1/2 (*.f64 re 2))
(*.f64 re (+.f64 (*.f64 im 1/2) 9/2))
(*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))
(sin.f64 re)
(neg.f64 (pow.f64 re 2))
(*.f64 2 (sin.f64 re))
(*.f64 (sin.f64 re) 9/2)
(/.f64 1 (pow.f64 re 3))
(-.f64 -2 (*.f64 -2 (cos.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) re)
(*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 1/2 im)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 im 1/2) 9/2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 re))
(+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 9/2 re))
(*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
(cbrt.f64 (sin.f64 re))
(pow.f64 (sin.f64 re) -3)
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 8)))
(expm1.f64 (log1p.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
Outputs
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
Calls

4 calls:

25.0ms
im
19.0ms
re
19.0ms
(sin.f64 re)
17.0ms
(*.f64 1/2 (sin.f64 re))
Results
AccuracySegmentsBranch
98.7%1re
98.7%1im
98.7%1(*.f64 1/2 (sin.f64 re))
98.7%1(sin.f64 re)
Compiler

Compiled 223 to 149 computations (33.2% saved)

regimes223.0ms (2.6%)

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

4 calls:

73.0ms
(sin.f64 re)
71.0ms
(*.f64 1/2 (sin.f64 re))
42.0ms
re
30.0ms
im
Results
AccuracySegmentsBranch
99.6%2im
87.4%3re
89.2%5(*.f64 1/2 (sin.f64 re))
89.2%5(sin.f64 re)
Compiler

Compiled 215 to 145 computations (32.6% saved)

regimes96.0ms (1.1%)

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

1 calls:

90.0ms
im
Results
AccuracySegmentsBranch
99.2%2im
Compiler

Compiled 168 to 115 computations (31.5% saved)

regimes67.0ms (0.8%)

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

1 calls:

62.0ms
im
Results
AccuracySegmentsBranch
95.4%5im
Compiler

Compiled 159 to 110 computations (30.8% saved)

regimes110.0ms (1.3%)

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

1 calls:

105.0ms
im
Results
AccuracySegmentsBranch
95.4%5im
Compiler

Compiled 151 to 105 computations (30.5% saved)

regimes46.0ms (0.5%)

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

1 calls:

40.0ms
im
Results
AccuracySegmentsBranch
90.3%4im
Compiler

Compiled 105 to 73 computations (30.5% saved)

regimes24.0ms (0.3%)

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

1 calls:

20.0ms
im
Results
AccuracySegmentsBranch
88.7%2im
Compiler

Compiled 96 to 66 computations (31.3% saved)

regimes82.0ms (1%)

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

3 calls:

31.0ms
(sin.f64 re)
26.0ms
im
23.0ms
re
Results
AccuracySegmentsBranch
57.1%3(sin.f64 re)
57.1%3re
79.7%3im
Compiler

Compiled 71 to 50 computations (29.6% saved)

regimes25.0ms (0.3%)

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

1 calls:

22.0ms
im
Results
AccuracySegmentsBranch
79.7%3im
Compiler

Compiled 57 to 40 computations (29.8% saved)

regimes16.0ms (0.2%)

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

1 calls:

14.0ms
im
Results
AccuracySegmentsBranch
75.6%2im
Compiler

Compiled 46 to 31 computations (32.6% saved)

regimes29.0ms (0.3%)

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

2 calls:

16.0ms
re
11.0ms
im
Results
AccuracySegmentsBranch
38.6%3re
49.1%2im
Compiler

Compiled 35 to 25 computations (28.6% saved)

regimes22.0ms (0.3%)

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

2 calls:

13.0ms
re
8.0ms
im
Results
AccuracySegmentsBranch
34.3%3re
34.5%2im
Compiler

Compiled 24 to 17 computations (29.2% saved)

regimes11.0ms (0.1%)

Accuracy

Total -13.4b remaining (-29%)

Threshold costs -13.4b (-29%)

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

2 calls:

6.0ms
re
4.0ms
im
Results
AccuracySegmentsBranch
27.6%1re
27.6%1im
Compiler

Compiled 17 to 12 computations (29.4% saved)

bsearch36.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
36.0ms
0.10574430632498373
122.20747518773663
Results
19.0ms40×body1024valid
12.0ms80×body256valid
2.0msbody512valid
Compiler

Compiled 211 to 167 computations (20.9% saved)

bsearch39.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
39.0ms
0.10574430632498373
122.20747518773663
Results
19.0ms42×body1024valid
15.0ms74×body256valid
3.0ms12×body512valid
Compiler

Compiled 155 to 127 computations (18.1% saved)

bsearch130.0ms (1.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
36.0ms
2.094263994489078e+150
1.6149265482299758e+154
39.0ms
6.225197040497931e+105
4.217861286466546e+110
14.0ms
9.000803033519046e+66
1.595700920713349e+67
40.0ms
122.20747518773663
5139531.194319545
Results
57.0ms137×body1024infinite
28.0ms198×body256infinite
13.0ms59×body256valid
12.0ms30×body1024valid
8.0ms33×body512infinite
5.0msbody512valid
Compiler

Compiled 622 to 510 computations (18% saved)

bsearch241.0ms (2.8%)

Algorithm
binary-search
Stop Event
predicate-same
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
95.0ms
1.6149265482299758e+154
1.4438275351039747e+164
43.0ms
6.225197040497931e+105
4.217861286466546e+110
14.0ms
9.000803033519046e+66
1.595700920713349e+67
89.0ms
122.20747518773663
5139531.194319545
Results
111.0ms231×body256infinite
65.0ms56×body256valid
34.0ms106×body1024infinite
12.0ms30×body1024valid
7.0ms31×body512infinite
3.0ms10×body512valid
Compiler

Compiled 654 to 534 computations (18.3% saved)

bsearch88.0ms (1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
34.0ms
6.225197040497931e+105
4.217861286466546e+110
14.0ms
9.000803033519046e+66
1.595700920713349e+67
40.0ms
122.20747518773663
5139531.194319545
Results
29.0ms82×body1024infinite
20.0ms140×body256infinite
18.0ms29×body1024valid
9.0ms60×body256valid
4.0ms18×body512infinite
2.0msbody512valid
Compiler

Compiled 446 to 366 computations (17.9% saved)

bsearch32.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
32.0ms
122.20747518773663
5139531.194319545
Results
11.0ms72×body256valid
8.0ms21×body1024valid
7.0ms22×body256infinite
3.0msbody1024infinite
1.0msbody512infinite
1.0msbody512valid
Compiler

Compiled 147 to 119 computations (19% saved)

bsearch77.0ms (0.9%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
29.0ms
1.2790611456113376e+138
7.88428056556938e+139
48.0ms
122.20747518773663
5139531.194319545
Results
22.0ms46×body256valid
22.0ms62×body1024infinite
19.0ms100×body256infinite
5.0ms19×body512infinite
4.0ms10×body1024valid
1.0msbody512valid
Compiler

Compiled 249 to 208 computations (16.5% saved)

bsearch122.0ms (1.4%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
91.0ms
1.2790611456113376e+138
7.88428056556938e+139
30.0ms
122.20747518773663
5139531.194319545
Results
17.0ms48×body1024infinite
12.0ms82×body256infinite
10.0ms24×body1024valid
9.0ms60×body256valid
5.0ms20×body512infinite
2.0msbody512valid
Compiler

Compiled 277 to 229 computations (17.3% saved)

bsearch24.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
23.0ms
867490202695738100.0
1.083983214775153e+19
Results
13.0ms33×body1024infinite
8.0ms59×body256infinite
1.0msbody512infinite
Compiler

Compiled 133 to 105 computations (21.1% saved)

bsearch79.0ms (0.9%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
79.0ms
122.20747518773663
5139531.194319545
Results
57.0ms20×body1024valid
10.0ms68×body256valid
4.0msbody1024infinite
3.0ms21×body256infinite
2.0msbody512valid
1.0msbody512infinite
Compiler

Compiled 163 to 127 computations (22.1% saved)

bsearch32.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
32.0ms
122.20747518773663
5139531.194319545
Results
10.0ms24×body1024valid
8.0ms53×body256valid
6.0ms14×body1024infinite
4.0ms25×body256infinite
2.0msbody512valid
1.0msbody512infinite
Compiler

Compiled 131 to 103 computations (21.4% saved)

simplify25.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01071102
11461102
21481102
31491102
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (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) 1/2))
(if (<=.f64 im 3039929748475085/1125899906842624) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2)) (*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im 3602879701896397/2251799813685248) (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im 125) (sin.f64 re) (if (<=.f64 im 15499999999999999807248908482079906803750326892224135638178324283392) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))) (if (<=.f64 im 6299999999999999534638446086733236568993559080822703173824757376522280999639711345122670582149495526522880) (+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 9/2 re)) (if (<=.f64 im 13199999999999999773196063550815192655340841269168371305534464478777571651222204465790151517816444445650545021209011632002935604597533337723926189038370816) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))) (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))))))
(if (<=.f64 im 125) (sin.f64 re) (if (<=.f64 im 15499999999999999807248908482079906803750326892224135638178324283392) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))) (if (<=.f64 im 6299999999999999534638446086733236568993559080822703173824757376522280999639711345122670582149495526522880) (+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 9/2 re)) (if (<=.f64 im 30000000000000002596992077999149708074442698044161351712025842344079018434533586713598801385355171954378807122849480270384655259681852620392002712747638784) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))) (*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))))))
(if (<=.f64 im 125) (sin.f64 re) (if (<=.f64 im 15499999999999999807248908482079906803750326892224135638178324283392) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))) (if (<=.f64 im 6299999999999999534638446086733236568993559080822703173824757376522280999639711345122670582149495526522880) (+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 9/2 re)) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))))))
(if (<=.f64 im 125) (sin.f64 re) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im 800) (sin.f64 re) (if (<=.f64 im 8199999999999999608244843621231794895778195011377776074796287131040506171921266289055019551836018958819175499516159124153705598177175928832) (/.f64 1 (pow.f64 re 3)) (*.f64 (*.f64 1/2 (pow.f64 im 2)) re)))
(if (<=.f64 im 500) (sin.f64 re) (if (<=.f64 im 2100000000000000068967281227330344765872726389355184560575858195143368714487454790642402762818227566636293960047077114715161830331844132864) (/.f64 1 (pow.f64 re 3)) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))))
(if (<=.f64 im 900000000000000000) (sin.f64 re) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
(if (<=.f64 im 125) re (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
(if (<=.f64 im 600) re (*.f64 re (+.f64 (*.f64 im 1/2) 9/2)))
re
Outputs
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) (*.f64 1/2 (/.f64 1 (exp.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 (sin.f64 re) 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 1/2))
(if (<=.f64 im 3039929748475085/1125899906842624) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2)) (*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im 3039929748475085/1125899906842624) (*.f64 (*.f64 (sin.f64 re) 1/2) (fma.f64 im im 2)) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) 4)))
(if (<=.f64 im 3602879701896397/2251799813685248) (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 4 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im 3602879701896397/2251799813685248) (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (exp.f64 im)) 4)))
(if (<=.f64 im 125) (sin.f64 re) (if (<=.f64 im 15499999999999999807248908482079906803750326892224135638178324283392) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))) (if (<=.f64 im 6299999999999999534638446086733236568993559080822703173824757376522280999639711345122670582149495526522880) (+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 9/2 re)) (if (<=.f64 im 13199999999999999773196063550815192655340841269168371305534464478777571651222204465790151517816444445650545021209011632002935604597533337723926189038370816) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))) (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))))))
(if (<=.f64 im 125) (sin.f64 re) (if (<=.f64 im 15499999999999999807248908482079906803750326892224135638178324283392) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) 4)) (if (<=.f64 im 6299999999999999534638446086733236568993559080822703173824757376522280999639711345122670582149495526522880) (+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 re 9/2)) (if (<=.f64 im 13199999999999999773196063550815192655340841269168371305534464478777571651222204465790151517816444445650545021209011632002935604597533337723926189038370816) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) 4)) (*.f64 (*.f64 (sin.f64 re) 1/2) (pow.f64 im 2))))))
(if (<=.f64 im 125) (sin.f64 re) (if (<=.f64 im 15499999999999999807248908482079906803750326892224135638178324283392) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))) (if (<=.f64 im 6299999999999999534638446086733236568993559080822703173824757376522280999639711345122670582149495526522880) (+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 9/2 re)) (if (<=.f64 im 30000000000000002596992077999149708074442698044161351712025842344079018434533586713598801385355171954378807122849480270384655259681852620392002712747638784) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))) (*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))))))
(if (<=.f64 im 125) (sin.f64 re) (if (<=.f64 im 15499999999999999807248908482079906803750326892224135638178324283392) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) 4)) (if (<=.f64 im 6299999999999999534638446086733236568993559080822703173824757376522280999639711345122670582149495526522880) (+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 re 9/2)) (if (<=.f64 im 30000000000000002596992077999149708074442698044161351712025842344079018434533586713598801385355171954378807122849480270384655259681852620392002712747638784) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) 4)) (*.f64 (sin.f64 re) (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))))))
(if (<=.f64 im 125) (sin.f64 re) (if (<=.f64 im 15499999999999999807248908482079906803750326892224135638178324283392) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))) (if (<=.f64 im 6299999999999999534638446086733236568993559080822703173824757376522280999639711345122670582149495526522880) (+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 9/2 re)) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))))))
(if (<=.f64 im 125) (sin.f64 re) (if (or (<=.f64 im 15499999999999999807248908482079906803750326892224135638178324283392) (not (<=.f64 im 6299999999999999534638446086733236568993559080822703173824757376522280999639711345122670582149495526522880))) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) 4)) (+.f64 (*.f64 -3/4 (pow.f64 re 3)) (*.f64 re 9/2))))
(if (<=.f64 im 125) (sin.f64 re) (*.f64 re (+.f64 4 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im 125) (sin.f64 re) (*.f64 re (+.f64 (*.f64 1/2 (exp.f64 im)) 4)))
(if (<=.f64 im 800) (sin.f64 re) (if (<=.f64 im 8199999999999999608244843621231794895778195011377776074796287131040506171921266289055019551836018958819175499516159124153705598177175928832) (/.f64 1 (pow.f64 re 3)) (*.f64 (*.f64 1/2 (pow.f64 im 2)) re)))
(if (<=.f64 im 800) (sin.f64 re) (if (<=.f64 im 8199999999999999608244843621231794895778195011377776074796287131040506171921266289055019551836018958819175499516159124153705598177175928832) (/.f64 1 (pow.f64 re 3)) (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(if (<=.f64 im 500) (sin.f64 re) (if (<=.f64 im 2100000000000000068967281227330344765872726389355184560575858195143368714487454790642402762818227566636293960047077114715161830331844132864) (/.f64 1 (pow.f64 re 3)) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im)))))))
(if (<=.f64 im 500) (sin.f64 re) (if (<=.f64 im 2100000000000000068967281227330344765872726389355184560575858195143368714487454790642402762818227566636293960047077114715161830331844132864) (/.f64 1 (pow.f64 re 3)) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))))
(if (<=.f64 im 900000000000000000) (sin.f64 re) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
(if (<=.f64 im 900000000000000000) (sin.f64 re) (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 im 1/4))))))
(if (<=.f64 im 125) re (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 1/4 im))))))
(if (<=.f64 im 125) re (*.f64 re (+.f64 9/2 (*.f64 im (+.f64 1/2 (*.f64 im 1/4))))))
(if (<=.f64 im 600) re (*.f64 re (+.f64 (*.f64 im 1/2) 9/2)))
(if (<=.f64 im 600) re (*.f64 re (+.f64 9/2 (*.f64 1/2 im))))
re
Compiler

Compiled 346 to 254 computations (26.6% saved)

soundness1.3s (15.3%)

Rules
1674×fma-def
1674×fma-def
1666×fma-def
1388×fma-def
1388×fma-def
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
034224
197224
2259220
3527212
41154210
53089210
65254210
77984210
034224
197224
2259220
3527212
41154210
53089210
65254210
77984210
01514180
14753815
215223601
363713601
01492863
14182381
213812205
364782190
025102
1336102
25639102
04688580
113437523
253287497
04178407
111308035
246987739
025102
1336102
25639102
04178407
111308035
246987739
04178407
111308035
246987739
01492863
14182381
213812205
364782190
Stop Event
node limit
node limit
node limit
unsound
node limit
node limit
unsound
node limit
node limit
node limit
node limit
Compiler

Compiled 872 to 560 computations (35.8% saved)

end0.0ms (0%)

preprocess247.0ms (2.9%)

Remove

(abs im)

Compiler

Compiled 696 to 460 computations (33.9% saved)

Profiling

Loading profile data...