math.sin on complex, real part

Time bar (total: 6.1s)

analyze0.0ms (0%)

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

Compiled 15 to 12 computations (20% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const1281
ival-add1281
ival-exp1282
ival-mult1282
ival-sin1281
ival-sub1281

sample1.5s (24.8%)

Results
777.0ms4167×body256valid
729.0ms4089×body256infinite
Mixed Sampling
Click to see full mixed sampling table
opprecx
const2568256
ival-add2568256
ival-exp25616512
ival-mult25616512
ival-sin2568256
ival-sub2568256
Bogosity

preprocess183.0ms (3%)

Algorithm
egg-herbie
Rules
2266×fma-def
1538×div-sub
1052×times-frac
902×distribute-lft-neg-in
784×distribute-rgt-neg-in
Problems
256×No Errors
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
036316
1111308
2394308
31005298
42232294
55131294
67600294
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))))
(neg.f64 (*.f64 (*.f64 1/2 (sin.f64 (neg.f64 re))) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))))
(neg.f64 (*.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 (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 (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 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) -1/2))
(*.f64 (sin.f64 re) (*.f64 -1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(neg.f64 (*.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 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(neg.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 (neg.f64 im))) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (neg.f64 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) -1/2))
(*.f64 (sin.f64 re) (*.f64 -1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.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)

(negabs re)

Compiler

Compiled 55 to 36 computations (34.5% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const5121
const256256
const20481
const10241
ival-add5122
ival-add256512
ival-add20482
ival-add10242
ival-exp5124
ival-exp2561024
ival-exp20484
ival-exp10244
ival-mult5123
ival-mult256768
ival-mult20483
ival-mult10243
ival-sin5121
ival-sin256256
ival-sin20481
ival-sin10241
ival-sub5124
ival-sub2561024
ival-sub20484
ival-sub10244

eval1.0ms (0%)

Compiler

Compiled 24 to 15 computations (37.5% 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)

localize90.0ms (1.5%)

Localize:

Found 4 expressions with local error:

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

Compiled 66 to 26 computations (60.6% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const5121
const256256
const20481
const10241
ival-add5121
ival-add256256
ival-add20481
ival-add10241
ival-div5123
ival-div256768
ival-div20483
ival-div10243
ival-exp5122
ival-exp256512
ival-exp20482
ival-exp10242
ival-fma5122
ival-fma256512
ival-fma20482
ival-fma10242
ival-mult5124
ival-mult2561024
ival-mult20484
ival-mult10244
ival-neg5121
ival-neg256256
ival-neg20481
ival-neg10241
ival-sin5121
ival-sin256256
ival-sin20481
ival-sin10241

series13.0ms (0.2%)

Counts
4 → 56
Calls

18 calls:

TimeVariablePointExpression
2.0ms
im
@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
re
@0
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (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
re
@inf
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))

rewrite81.0ms (1.3%)

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
020140
1270140
24365140
Stop Event
unsound
Counts
4 → 75
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))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 1/2 (sin.f64 re))
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)))
(+.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)))
(+.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)))

simplify79.0ms (1.3%)

Algorithm
egg-herbie
Rules
1644×fma-def
1288×associate-*r*
1072×associate-*l*
1000×distribute-lft-in
720×associate-+r+
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01434216
14553822
214633432
362293432
Stop Event
node limit
Counts
131 → 109
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)))))
(*.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)))))
(*.f64 1/2 re)
(+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re))
(+.f64 (*.f64 -1/12 (pow.f64 re 3)) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re)))
(+.f64 (*.f64 -1/12 (pow.f64 re 3)) (+.f64 (*.f64 -1/10080 (pow.f64 re 7)) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 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)))
(+.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)))
(+.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)))
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 1/2 (fma.f64 -1/2 im (*.f64 (pow.f64 im 2) (+.f64 1/4 (*.f64 im -1/12)))))
(+.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 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 1/2 re (fma.f64 -1/12 (pow.f64 re 3) (*.f64 (pow.f64 re 5) 1/240))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 1/2 re (fma.f64 (pow.f64 re 5) 1/240 (*.f64 -1/12 (pow.f64 re 3)))))
(+.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 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 -1/12 (pow.f64 re 3) (fma.f64 1/2 re (fma.f64 (pow.f64 re 5) 1/240 (*.f64 (pow.f64 re 7) -1/10080)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 -1/12 (pow.f64 re 3) (fma.f64 (pow.f64 re 5) 1/240 (fma.f64 1/2 re (*.f64 (pow.f64 re 7) -1/10080)))))
(*.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 (+.f64 (*.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) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (+.f64 (*.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) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re)))
(fma.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/720 (pow.f64 im 6) 1)))
(*.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))
(*.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 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 1/2 re (fma.f64 -1/12 (pow.f64 re 3) (*.f64 (pow.f64 re 5) 1/240))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 1/2 re (fma.f64 (pow.f64 re 5) 1/240 (*.f64 -1/12 (pow.f64 re 3)))))
(+.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 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 -1/12 (pow.f64 re 3) (fma.f64 1/2 re (fma.f64 (pow.f64 re 5) 1/240 (*.f64 (pow.f64 re 7) -1/10080)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 -1/12 (pow.f64 re 3) (fma.f64 (pow.f64 re 5) 1/240 (fma.f64 1/2 re (*.f64 (pow.f64 re 7) -1/10080)))))
(*.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 (+.f64 (*.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) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (+.f64 (*.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) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re)))
(fma.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/720 (pow.f64 im 6) 1)))
(*.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))
(*.f64 1/2 re)
(+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re))
(fma.f64 -1/12 (pow.f64 re 3) (*.f64 1/2 re))
(fma.f64 1/2 re (*.f64 -1/12 (pow.f64 re 3)))
(+.f64 (*.f64 -1/12 (pow.f64 re 3)) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re)))
(fma.f64 -1/12 (pow.f64 re 3) (fma.f64 1/240 (pow.f64 re 5) (*.f64 1/2 re)))
(fma.f64 -1/12 (pow.f64 re 3) (fma.f64 (pow.f64 re 5) 1/240 (*.f64 1/2 re)))
(fma.f64 1/2 re (fma.f64 -1/12 (pow.f64 re 3) (*.f64 (pow.f64 re 5) 1/240)))
(fma.f64 1/2 re (fma.f64 (pow.f64 re 5) 1/240 (*.f64 -1/12 (pow.f64 re 3))))
(+.f64 (*.f64 -1/12 (pow.f64 re 3)) (+.f64 (*.f64 -1/10080 (pow.f64 re 7)) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re))))
(fma.f64 -1/12 (pow.f64 re 3) (fma.f64 -1/10080 (pow.f64 re 7) (fma.f64 1/240 (pow.f64 re 5) (*.f64 1/2 re))))
(fma.f64 -1/12 (pow.f64 re 3) (fma.f64 (pow.f64 re 7) -1/10080 (fma.f64 (pow.f64 re 5) 1/240 (*.f64 1/2 re))))
(fma.f64 -1/12 (pow.f64 re 3) (fma.f64 1/2 re (fma.f64 (pow.f64 re 5) 1/240 (*.f64 (pow.f64 re 7) -1/10080))))
(fma.f64 -1/12 (pow.f64 re 3) (fma.f64 (pow.f64 re 5) 1/240 (fma.f64 1/2 re (*.f64 (pow.f64 re 7) -1/10080))))
-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)))))
(/.f64 (*.f64 -1/2 (sin.f64 re)) (fma.f64 -1/2 (sin.f64 re) 0))
(/.f64 (sin.f64 re) (*.f64 1 (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))))
(/.f64 (*.f64 -1/2 (sin.f64 re)) (fma.f64 -1/2 (sin.f64 re) 0))
(/.f64 (sin.f64 re) (*.f64 1 (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)))
(*.f64 (sin.f64 re) (*.f64 -1/2 (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
(+.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)))))
(/.f64 (*.f64 -1/2 (sin.f64 re)) (fma.f64 -1/2 (sin.f64 re) 0))
(/.f64 (sin.f64 re) (*.f64 1 (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))))
(/.f64 (*.f64 -1/2 (sin.f64 re)) (fma.f64 -1/2 (sin.f64 re) 0))
(/.f64 (sin.f64 re) (*.f64 1 (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)))
(*.f64 (sin.f64 re) (*.f64 -1/2 (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
(+.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)))))
(/.f64 (*.f64 -1/2 (sin.f64 re)) (fma.f64 -1/2 (sin.f64 re) 0))
(/.f64 (sin.f64 re) (*.f64 1 (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))))
(/.f64 (*.f64 -1/2 (sin.f64 re)) (fma.f64 -1/2 (sin.f64 re) 0))
(/.f64 (sin.f64 re) (*.f64 1 (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)))
(*.f64 (sin.f64 re) (*.f64 -1/2 (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

eval33.0ms (0.5%)

Compiler

Compiled 1665 to 1000 computations (39.9% saved)

prune27.0ms (0.4%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1027109
Fresh000
Picked112
Done000
Total1038111
Accuracy
100.0%
Counts
111 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.5%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
78.5%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
66.5%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
57.1%
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
11.1%
(*.f64 2 (sin.f64 re))
53.1%
(sin.f64 re)
5.1%
1
78.5%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
78.5%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
66.5%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
57.1%
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
11.1%
(*.f64 2 (sin.f64 re))
53.1%
(sin.f64 re)
5.1%
1
Compiler

Compiled 260 to 202 computations (22.3% saved)

localize150.0ms (2.5%)

Localize:

Found 4 expressions with local error:

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

Compiled 109 to 57 computations (47.7% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const256256
ival-add2561024
ival-exp256512
ival-mult2563328
ival-neg256256
ival-pow2562048
ival-sin256256

series13.0ms (0.2%)

Counts
4 → 59
Calls

24 calls:

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

rewrite35.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
368×associate-*r*
240×associate-*l*
170×log1p-expm1-u
170×expm1-log1p-u
167×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025109
1370109
26448109
Stop Event
unsound
Counts
4 → 114
Calls
Call 1
Inputs
(*.f64 (pow.f64 im 2) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re))
Outputs
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (sin.f64 re) (neg.f64 (sin.f64 re)))
(+.f64 (sin.f64 re) (fma.f64 (neg.f64 (sin.f64 re)) -1 (sin.f64 re)))
(+.f64 (sin.f64 re) (fma.f64 (neg.f64 (sin.f64 re)) (sin.f64 re) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (neg.f64 (sin.f64 re)) -1))
(+.f64 (sin.f64 re) (*.f64 (neg.f64 (sin.f64 re)) (sin.f64 re)))
(-.f64 -1 (*.f64 -1 (cos.f64 re)))
(-.f64 (sin.f64 re) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -1)
(/.f64 -1 (sin.f64 re))
(/.f64 (sin.f64 re) -1)
(/.f64 (sin.f64 re) (sin.f64 re))
(/.f64 (neg.f64 (sin.f64 re)) (neg.f64 (sin.f64 re)))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -1)
(pow.f64 (sin.f64 re) -1)
(pow.f64 (sin.f64 re) 1/3)
(sqrt.f64 (sin.f64 re))
(fabs.f64 (sin.f64 re))
(log.f64 (exp.f64 (sin.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (sin.f64 re))))
(log.f64 (/.f64 (exp.f64 (sin.f64 re)) (exp.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(hypot.f64 (sin.f64 re) (sin.f64 re))
(exp.f64 (log.f64 (sin.f64 re)))
(exp.f64 (*.f64 (log.f64 (sin.f64 re)) -1))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(fma.f64 -1 (sin.f64 re) (sin.f64 re))
(fma.f64 -1 (sin.f64 re) (neg.f64 (sin.f64 re)))
(fma.f64 (sin.f64 re) -1 (sin.f64 re))
(fma.f64 (sin.f64 re) (sin.f64 re) (sin.f64 re))
(fma.f64 (sin.f64 re) (sin.f64 re) (neg.f64 (sin.f64 re)))
(-.f64 -1 (*.f64 -1 (cos.f64 re)))
(-.f64 (sin.f64 re) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -1)
(*.f64 -1 (sin.f64 re))
(*.f64 (sin.f64 re) -1)
(*.f64 (sin.f64 re) (sin.f64 re))
(/.f64 -1 (sin.f64 re))
(/.f64 (sin.f64 re) -1)
(/.f64 (sin.f64 re) (sin.f64 re))
(/.f64 (neg.f64 (sin.f64 re)) (neg.f64 (sin.f64 re)))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -1)
(pow.f64 (sin.f64 re) -1)
(pow.f64 (sin.f64 re) 1/3)
(sqrt.f64 (sin.f64 re))
(fabs.f64 (sin.f64 re))
(log.f64 (exp.f64 (sin.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (sin.f64 re))))
(log.f64 (/.f64 (exp.f64 (sin.f64 re)) (exp.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(hypot.f64 (sin.f64 re) (sin.f64 re))
(exp.f64 (log.f64 (sin.f64 re)))
(exp.f64 (*.f64 (log.f64 (sin.f64 re)) -1))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(fma.f64 -1 (sin.f64 re) (sin.f64 re))
(fma.f64 -1 (sin.f64 re) (neg.f64 (sin.f64 re)))
(fma.f64 (sin.f64 re) -1 (sin.f64 re))
(fma.f64 (sin.f64 re) (sin.f64 re) (sin.f64 re))
(fma.f64 (sin.f64 re) (sin.f64 re) (neg.f64 (sin.f64 re)))
(+.f64 re re)
(-.f64 (exp.f64 (log1p.f64 re)) -1)
(/.f64 re -1)
(/.f64 re (+.f64 re (-.f64 re re)))
(/.f64 (-.f64 re re) (-.f64 re re))
(pow.f64 re -1)
(pow.f64 re 1/3)
(sqrt.f64 re)
(fabs.f64 re)
(log.f64 (exp.f64 re))
(log.f64 (+.f64 -1 (expm1.f64 re)))
(cbrt.f64 re)
re
(expm1.f64 (log1p.f64 re))
(exp.f64 (log.f64 re))
(exp.f64 (*.f64 (log.f64 re) -1))
(log1p.f64 (expm1.f64 re))
(fma.f64 -1 re re)
(fma.f64 re -1 re)
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (sin.f64 re) (neg.f64 (sin.f64 re)))
(+.f64 (sin.f64 re) (fma.f64 (neg.f64 (sin.f64 re)) -1 (sin.f64 re)))
(+.f64 (sin.f64 re) (fma.f64 (neg.f64 (sin.f64 re)) (sin.f64 re) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (neg.f64 (sin.f64 re)) -1))
(+.f64 (sin.f64 re) (*.f64 (neg.f64 (sin.f64 re)) (sin.f64 re)))
(-.f64 -1 (*.f64 -1 (cos.f64 re)))
(-.f64 (sin.f64 re) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -1)
(/.f64 -1 (sin.f64 re))
(/.f64 (sin.f64 re) -1)
(/.f64 (sin.f64 re) (sin.f64 re))
(/.f64 (neg.f64 (sin.f64 re)) (neg.f64 (sin.f64 re)))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -1)
(pow.f64 (sin.f64 re) -1)
(pow.f64 (sin.f64 re) 1/3)
(sqrt.f64 (sin.f64 re))
(fabs.f64 (sin.f64 re))
(log.f64 (exp.f64 (sin.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (sin.f64 re))))
(log.f64 (/.f64 (exp.f64 (sin.f64 re)) (exp.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(hypot.f64 (sin.f64 re) (sin.f64 re))
(exp.f64 (log.f64 (sin.f64 re)))
(exp.f64 (*.f64 (log.f64 (sin.f64 re)) -1))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(fma.f64 -1 (sin.f64 re) (sin.f64 re))
(fma.f64 -1 (sin.f64 re) (neg.f64 (sin.f64 re)))
(fma.f64 (sin.f64 re) -1 (sin.f64 re))
(fma.f64 (sin.f64 re) (sin.f64 re) (sin.f64 re))
(fma.f64 (sin.f64 re) (sin.f64 re) (neg.f64 (sin.f64 re)))

simplify81.0ms (1.3%)

Algorithm
egg-herbie
Rules
1664×fma-def
1200×distribute-lft-out
1174×associate-*r*
994×associate-*l*
696×associate-+r+
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01814258
14543865
212643562
359473518
Stop Event
node limit
Counts
173 → 136
Calls
Call 1
Inputs
(*.f64 (pow.f64 im 2) re)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (*.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 im 2) (pow.f64 re 7))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 (pow.f64 im 2) re))))
(*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)))
(+.f64 (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 1/240 (pow.f64 im 2))))))
(+.f64 (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 1/240 (pow.f64 im 2)))) (*.f64 (pow.f64 re 7) (-.f64 (*.f64 -1/10080 (pow.f64 im 2)) 1/5040)))))
(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 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
re
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re))))
(+.f64 re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(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 (sin.f64 re) (sin.f64 re))
(+.f64 (sin.f64 re) (neg.f64 (sin.f64 re)))
(+.f64 (sin.f64 re) (fma.f64 (neg.f64 (sin.f64 re)) -1 (sin.f64 re)))
(+.f64 (sin.f64 re) (fma.f64 (neg.f64 (sin.f64 re)) (sin.f64 re) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (neg.f64 (sin.f64 re)) -1))
(+.f64 (sin.f64 re) (*.f64 (neg.f64 (sin.f64 re)) (sin.f64 re)))
(-.f64 -1 (*.f64 -1 (cos.f64 re)))
(-.f64 (sin.f64 re) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -1)
(/.f64 -1 (sin.f64 re))
(/.f64 (sin.f64 re) -1)
(/.f64 (sin.f64 re) (sin.f64 re))
(/.f64 (neg.f64 (sin.f64 re)) (neg.f64 (sin.f64 re)))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -1)
(pow.f64 (sin.f64 re) -1)
(pow.f64 (sin.f64 re) 1/3)
(sqrt.f64 (sin.f64 re))
(fabs.f64 (sin.f64 re))
(log.f64 (exp.f64 (sin.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (sin.f64 re))))
(log.f64 (/.f64 (exp.f64 (sin.f64 re)) (exp.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(hypot.f64 (sin.f64 re) (sin.f64 re))
(exp.f64 (log.f64 (sin.f64 re)))
(exp.f64 (*.f64 (log.f64 (sin.f64 re)) -1))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(fma.f64 -1 (sin.f64 re) (sin.f64 re))
(fma.f64 -1 (sin.f64 re) (neg.f64 (sin.f64 re)))
(fma.f64 (sin.f64 re) -1 (sin.f64 re))
(fma.f64 (sin.f64 re) (sin.f64 re) (sin.f64 re))
(fma.f64 (sin.f64 re) (sin.f64 re) (neg.f64 (sin.f64 re)))
(-.f64 -1 (*.f64 -1 (cos.f64 re)))
(-.f64 (sin.f64 re) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -1)
(*.f64 -1 (sin.f64 re))
(*.f64 (sin.f64 re) -1)
(*.f64 (sin.f64 re) (sin.f64 re))
(/.f64 -1 (sin.f64 re))
(/.f64 (sin.f64 re) -1)
(/.f64 (sin.f64 re) (sin.f64 re))
(/.f64 (neg.f64 (sin.f64 re)) (neg.f64 (sin.f64 re)))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -1)
(pow.f64 (sin.f64 re) -1)
(pow.f64 (sin.f64 re) 1/3)
(sqrt.f64 (sin.f64 re))
(fabs.f64 (sin.f64 re))
(log.f64 (exp.f64 (sin.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (sin.f64 re))))
(log.f64 (/.f64 (exp.f64 (sin.f64 re)) (exp.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(hypot.f64 (sin.f64 re) (sin.f64 re))
(exp.f64 (log.f64 (sin.f64 re)))
(exp.f64 (*.f64 (log.f64 (sin.f64 re)) -1))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(fma.f64 -1 (sin.f64 re) (sin.f64 re))
(fma.f64 -1 (sin.f64 re) (neg.f64 (sin.f64 re)))
(fma.f64 (sin.f64 re) -1 (sin.f64 re))
(fma.f64 (sin.f64 re) (sin.f64 re) (sin.f64 re))
(fma.f64 (sin.f64 re) (sin.f64 re) (neg.f64 (sin.f64 re)))
(+.f64 re re)
(-.f64 (exp.f64 (log1p.f64 re)) -1)
(/.f64 re -1)
(/.f64 re (+.f64 re (-.f64 re re)))
(/.f64 (-.f64 re re) (-.f64 re re))
(pow.f64 re -1)
(pow.f64 re 1/3)
(sqrt.f64 re)
(fabs.f64 re)
(log.f64 (exp.f64 re))
(log.f64 (+.f64 -1 (expm1.f64 re)))
(cbrt.f64 re)
(expm1.f64 (log1p.f64 re))
(exp.f64 (log.f64 re))
(exp.f64 (*.f64 (log.f64 re) -1))
(log1p.f64 (expm1.f64 re))
(fma.f64 -1 re re)
(fma.f64 re -1 re)
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (sin.f64 re) (neg.f64 (sin.f64 re)))
(+.f64 (sin.f64 re) (fma.f64 (neg.f64 (sin.f64 re)) -1 (sin.f64 re)))
(+.f64 (sin.f64 re) (fma.f64 (neg.f64 (sin.f64 re)) (sin.f64 re) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (neg.f64 (sin.f64 re)) -1))
(+.f64 (sin.f64 re) (*.f64 (neg.f64 (sin.f64 re)) (sin.f64 re)))
(-.f64 -1 (*.f64 -1 (cos.f64 re)))
(-.f64 (sin.f64 re) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -1)
(/.f64 -1 (sin.f64 re))
(/.f64 (sin.f64 re) -1)
(/.f64 (sin.f64 re) (sin.f64 re))
(/.f64 (neg.f64 (sin.f64 re)) (neg.f64 (sin.f64 re)))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -1)
(pow.f64 (sin.f64 re) -1)
(pow.f64 (sin.f64 re) 1/3)
(sqrt.f64 (sin.f64 re))
(fabs.f64 (sin.f64 re))
(log.f64 (exp.f64 (sin.f64 re)))
(log.f64 (+.f64 -1 (expm1.f64 (sin.f64 re))))
(log.f64 (/.f64 (exp.f64 (sin.f64 re)) (exp.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(hypot.f64 (sin.f64 re) (sin.f64 re))
(exp.f64 (log.f64 (sin.f64 re)))
(exp.f64 (*.f64 (log.f64 (sin.f64 re)) -1))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(fma.f64 -1 (sin.f64 re) (sin.f64 re))
(fma.f64 -1 (sin.f64 re) (neg.f64 (sin.f64 re)))
(fma.f64 (sin.f64 re) -1 (sin.f64 re))
(fma.f64 (sin.f64 re) (sin.f64 re) (sin.f64 re))
(fma.f64 (sin.f64 re) (sin.f64 re) (neg.f64 (sin.f64 re)))
Outputs
(*.f64 (pow.f64 im 2) re)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (*.f64 (pow.f64 im 2) re))
(fma.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3)) (*.f64 (pow.f64 im 2) re))
(fma.f64 (pow.f64 im 2) re (*.f64 (pow.f64 im 2) (*.f64 -1/6 (pow.f64 re 3))))
(*.f64 (pow.f64 im 2) (fma.f64 -1/6 (pow.f64 re 3) re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 (pow.f64 im 2) re)))
(fma.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3)) (fma.f64 1/120 (*.f64 (pow.f64 im 2) (pow.f64 re 5)) (*.f64 (pow.f64 im 2) re)))
(fma.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3)) (fma.f64 (pow.f64 im 2) re (*.f64 (pow.f64 im 2) (*.f64 1/120 (pow.f64 re 5)))))
(fma.f64 (pow.f64 im 2) re (*.f64 (pow.f64 im 2) (fma.f64 -1/6 (pow.f64 re 3) (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (fma.f64 1/120 (pow.f64 re 5) re)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 im 2) (pow.f64 re 7))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 (pow.f64 im 2) re))))
(fma.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3)) (fma.f64 -1/5040 (*.f64 (pow.f64 im 2) (pow.f64 re 7)) (fma.f64 1/120 (*.f64 (pow.f64 im 2) (pow.f64 re 5)) (*.f64 (pow.f64 im 2) re))))
(fma.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3)) (fma.f64 -1/5040 (*.f64 (pow.f64 im 2) (pow.f64 re 7)) (fma.f64 (pow.f64 im 2) re (*.f64 (pow.f64 im 2) (*.f64 1/120 (pow.f64 re 5))))))
(+.f64 (*.f64 (pow.f64 im 2) (fma.f64 1/120 (pow.f64 re 5) re)) (*.f64 (pow.f64 im 2) (fma.f64 -1/6 (pow.f64 re 3) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (pow.f64 im 2) (+.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 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 re (+.f64 1 (*.f64 (pow.f64 im 2) 1/2)))
(*.f64 re (fma.f64 (pow.f64 im 2) 1/2 1))
(+.f64 (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)))
(fma.f64 re (+.f64 1 (*.f64 (pow.f64 im 2) 1/2)) (*.f64 (pow.f64 re 3) (fma.f64 -1/12 (pow.f64 im 2) -1/6)))
(fma.f64 re (fma.f64 (pow.f64 im 2) 1/2 1) (*.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 2) -1/12 -1/6)))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (fma.f64 -1/6 (pow.f64 re 3) re))
(+.f64 (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 1/240 (pow.f64 im 2))))))
(fma.f64 re (+.f64 1 (*.f64 (pow.f64 im 2) 1/2)) (fma.f64 (pow.f64 re 3) (fma.f64 -1/12 (pow.f64 im 2) -1/6) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (pow.f64 im 2) 1/240)))))
(fma.f64 re (fma.f64 (pow.f64 im 2) 1/2 1) (fma.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 2) -1/12 -1/6) (*.f64 (pow.f64 re 5) (fma.f64 (pow.f64 im 2) 1/240 1/120))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (+.f64 re (fma.f64 -1/6 (pow.f64 re 3) (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (fma.f64 1/120 (pow.f64 re 5) re)))
(+.f64 (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 1/240 (pow.f64 im 2)))) (*.f64 (pow.f64 re 7) (-.f64 (*.f64 -1/10080 (pow.f64 im 2)) 1/5040)))))
(fma.f64 re (+.f64 1 (*.f64 (pow.f64 im 2) 1/2)) (fma.f64 (pow.f64 re 3) (fma.f64 -1/12 (pow.f64 im 2) -1/6) (fma.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (pow.f64 im 2) 1/240)) (*.f64 (pow.f64 re 7) (fma.f64 -1/10080 (pow.f64 im 2) -1/5040)))))
(fma.f64 re (fma.f64 (pow.f64 im 2) 1/2 1) (fma.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 2) -1/12 -1/6) (fma.f64 (pow.f64 re 5) (fma.f64 (pow.f64 im 2) 1/240 1/120) (*.f64 (pow.f64 re 7) (fma.f64 (pow.f64 im 2) -1/10080 -1/5040)))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (+.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 (fma.f64 (pow.f64 im 2) 1/2 1) (+.f64 (fma.f64 -1/6 (pow.f64 re 3) re) (fma.f64 -1/5040 (pow.f64 re 7) (*.f64 1/120 (pow.f64 re 5)))))
(sin.f64 re)
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
re
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 re (+.f64 1 (*.f64 (pow.f64 im 2) 1/2)))
(*.f64 re (fma.f64 (pow.f64 im 2) 1/2 1))
(+.f64 re (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re))))
(+.f64 re (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (*.f64 (*.f64 (pow.f64 im 2) re) 1/2)))
(+.f64 re (*.f64 re (+.f64 (*.f64 (pow.f64 im 2) 1/2) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 re (fma.f64 1/24 (pow.f64 im 4) (*.f64 (pow.f64 im 2) 1/2)) re)
(fma.f64 re (fma.f64 (pow.f64 im 2) 1/2 (*.f64 1/24 (pow.f64 im 4))) re)
(+.f64 re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
(+.f64 re (fma.f64 1/720 (*.f64 re (pow.f64 im 6)) (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (*.f64 (*.f64 (pow.f64 im 2) re) 1/2))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 re (fma.f64 (pow.f64 im 2) 1/2 1)))
(*.f64 re (+.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (fma.f64 (pow.f64 im 2) 1/2 1)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.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 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
(*.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 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
(*.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 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 re (+.f64 1 (*.f64 (pow.f64 im 2) 1/2)))
(*.f64 re (fma.f64 (pow.f64 im 2) 1/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 re (+.f64 1 (*.f64 (pow.f64 im 2) 1/2)) (*.f64 (pow.f64 re 3) (fma.f64 -1/12 (pow.f64 im 2) -1/6)))
(fma.f64 re (fma.f64 (pow.f64 im 2) 1/2 1) (*.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 2) -1/12 -1/6)))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (fma.f64 -1/6 (pow.f64 re 3) re))
(+.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 re (+.f64 1 (*.f64 (pow.f64 im 2) 1/2)) (fma.f64 (pow.f64 re 3) (fma.f64 -1/12 (pow.f64 im 2) -1/6) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (pow.f64 im 2) 1/240)))))
(fma.f64 re (fma.f64 (pow.f64 im 2) 1/2 1) (fma.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 2) -1/12 -1/6) (*.f64 (pow.f64 re 5) (fma.f64 (pow.f64 im 2) 1/240 1/120))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (+.f64 re (fma.f64 -1/6 (pow.f64 re 3) (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (+.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 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 re (+.f64 1 (*.f64 (pow.f64 im 2) 1/2)) (fma.f64 (pow.f64 re 3) (fma.f64 -1/12 (pow.f64 im 2) -1/6) (fma.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (pow.f64 im 2) 1/240)) (*.f64 (pow.f64 re 7) (fma.f64 -1/10080 (pow.f64 im 2) -1/5040)))))
(fma.f64 re (fma.f64 (pow.f64 im 2) 1/2 1) (fma.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 2) -1/12 -1/6) (fma.f64 (pow.f64 re 5) (fma.f64 (pow.f64 im 2) 1/240 1/120) (*.f64 (pow.f64 re 7) (fma.f64 (pow.f64 im 2) -1/10080 -1/5040)))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (+.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 (fma.f64 (pow.f64 im 2) 1/2 1) (+.f64 (fma.f64 -1/6 (pow.f64 re 3) re) (fma.f64 -1/5040 (pow.f64 re 7) (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 2) 1/2 1) (sin.f64 re))
(+.f64 (sin.f64 re) (sin.f64 re))
(*.f64 2 (sin.f64 re))
(+.f64 (sin.f64 re) (neg.f64 (sin.f64 re)))
0
(+.f64 (sin.f64 re) (fma.f64 (neg.f64 (sin.f64 re)) -1 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 2 (sin.f64 re)))
(*.f64 3 (sin.f64 re))
(+.f64 (sin.f64 re) (fma.f64 (neg.f64 (sin.f64 re)) (sin.f64 re) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (neg.f64 (sin.f64 re)) 1) (sin.f64 re)))
(*.f64 (+.f64 (fma.f64 (sin.f64 re) -1 1) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (neg.f64 (sin.f64 re)) 2))
(*.f64 (sin.f64 re) (-.f64 2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (neg.f64 (sin.f64 re)) -1))
(*.f64 2 (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 (neg.f64 (sin.f64 re)) (sin.f64 re)))
(*.f64 (+.f64 (neg.f64 (sin.f64 re)) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (sin.f64 re) -1 1))
(*.f64 (sin.f64 re) (-.f64 1 (sin.f64 re)))
(-.f64 -1 (*.f64 -1 (cos.f64 re)))
(-.f64 -1 (neg.f64 (cos.f64 re)))
(+.f64 -1 (cos.f64 re))
(-.f64 (sin.f64 re) (sin.f64 re))
0
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -1)
(+.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 1)
(+.f64 1 (exp.f64 (log1p.f64 (sin.f64 re))))
(/.f64 -1 (sin.f64 re))
(/.f64 (sin.f64 re) -1)
(neg.f64 (sin.f64 re))
(/.f64 (sin.f64 re) (sin.f64 re))
1
(/.f64 (neg.f64 (sin.f64 re)) (neg.f64 (sin.f64 re)))
1
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -1)
(-.f64 -1 (neg.f64 (cos.f64 re)))
(+.f64 -1 (cos.f64 re))
(pow.f64 (sin.f64 re) -1)
(/.f64 1 (sin.f64 re))
(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 -1 (expm1.f64 (sin.f64 re))))
(log.f64 (/.f64 (exp.f64 (sin.f64 re)) (exp.f64 (sin.f64 re))))
0
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(sin.f64 re)
(hypot.f64 (sin.f64 re) (sin.f64 re))
(exp.f64 (log.f64 (sin.f64 re)))
(sin.f64 re)
(exp.f64 (*.f64 (log.f64 (sin.f64 re)) -1))
(/.f64 1 (sin.f64 re))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(sin.f64 re)
(fma.f64 -1 (sin.f64 re) (sin.f64 re))
0
(fma.f64 -1 (sin.f64 re) (neg.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) -2)
(fma.f64 (sin.f64 re) -1 (sin.f64 re))
0
(fma.f64 (sin.f64 re) (sin.f64 re) (sin.f64 re))
(*.f64 (+.f64 (sin.f64 re) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (sin.f64 re)))
(fma.f64 (sin.f64 re) (sin.f64 re) (neg.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (sin.f64 re) -1))
(-.f64 -1 (*.f64 -1 (cos.f64 re)))
(-.f64 -1 (neg.f64 (cos.f64 re)))
(+.f64 -1 (cos.f64 re))
(-.f64 (sin.f64 re) (sin.f64 re))
0
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -1)
(+.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 1)
(+.f64 1 (exp.f64 (log1p.f64 (sin.f64 re))))
(*.f64 -1 (sin.f64 re))
(/.f64 (sin.f64 re) -1)
(neg.f64 (sin.f64 re))
(*.f64 (sin.f64 re) -1)
(/.f64 (sin.f64 re) -1)
(neg.f64 (sin.f64 re))
(*.f64 (sin.f64 re) (sin.f64 re))
(/.f64 -1 (sin.f64 re))
(/.f64 (sin.f64 re) -1)
(neg.f64 (sin.f64 re))
(/.f64 (sin.f64 re) (sin.f64 re))
1
(/.f64 (neg.f64 (sin.f64 re)) (neg.f64 (sin.f64 re)))
1
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -1)
(-.f64 -1 (neg.f64 (cos.f64 re)))
(+.f64 -1 (cos.f64 re))
(pow.f64 (sin.f64 re) -1)
(/.f64 1 (sin.f64 re))
(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 -1 (expm1.f64 (sin.f64 re))))
(log.f64 (/.f64 (exp.f64 (sin.f64 re)) (exp.f64 (sin.f64 re))))
0
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(sin.f64 re)
(hypot.f64 (sin.f64 re) (sin.f64 re))
(exp.f64 (log.f64 (sin.f64 re)))
(sin.f64 re)
(exp.f64 (*.f64 (log.f64 (sin.f64 re)) -1))
(/.f64 1 (sin.f64 re))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(sin.f64 re)
(fma.f64 -1 (sin.f64 re) (sin.f64 re))
0
(fma.f64 -1 (sin.f64 re) (neg.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) -2)
(fma.f64 (sin.f64 re) -1 (sin.f64 re))
0
(fma.f64 (sin.f64 re) (sin.f64 re) (sin.f64 re))
(*.f64 (+.f64 (sin.f64 re) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (sin.f64 re)))
(fma.f64 (sin.f64 re) (sin.f64 re) (neg.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (sin.f64 re) -1))
(+.f64 re re)
(*.f64 2 re)
(-.f64 (exp.f64 (log1p.f64 re)) -1)
(+.f64 (exp.f64 (log1p.f64 re)) 1)
(+.f64 1 (exp.f64 (log1p.f64 re)))
(/.f64 re -1)
(/.f64 re (+.f64 re (-.f64 re re)))
1
(/.f64 (-.f64 re re) (-.f64 re re))
1
(pow.f64 re -1)
(/.f64 1 re)
(pow.f64 re 1/3)
(cbrt.f64 re)
(sqrt.f64 re)
(fabs.f64 re)
(log.f64 (exp.f64 re))
re
(log.f64 (+.f64 -1 (expm1.f64 re)))
(cbrt.f64 re)
(expm1.f64 (log1p.f64 re))
re
(exp.f64 (log.f64 re))
re
(exp.f64 (*.f64 (log.f64 re) -1))
(/.f64 1 re)
(log1p.f64 (expm1.f64 re))
re
(fma.f64 -1 re re)
0
(fma.f64 re -1 re)
0
(+.f64 (sin.f64 re) (sin.f64 re))
(*.f64 2 (sin.f64 re))
(+.f64 (sin.f64 re) (neg.f64 (sin.f64 re)))
0
(+.f64 (sin.f64 re) (fma.f64 (neg.f64 (sin.f64 re)) -1 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 2 (sin.f64 re)))
(*.f64 3 (sin.f64 re))
(+.f64 (sin.f64 re) (fma.f64 (neg.f64 (sin.f64 re)) (sin.f64 re) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (neg.f64 (sin.f64 re)) 1) (sin.f64 re)))
(*.f64 (+.f64 (fma.f64 (sin.f64 re) -1 1) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (neg.f64 (sin.f64 re)) 2))
(*.f64 (sin.f64 re) (-.f64 2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (neg.f64 (sin.f64 re)) -1))
(*.f64 2 (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 (neg.f64 (sin.f64 re)) (sin.f64 re)))
(*.f64 (+.f64 (neg.f64 (sin.f64 re)) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (sin.f64 re) -1 1))
(*.f64 (sin.f64 re) (-.f64 1 (sin.f64 re)))
(-.f64 -1 (*.f64 -1 (cos.f64 re)))
(-.f64 -1 (neg.f64 (cos.f64 re)))
(+.f64 -1 (cos.f64 re))
(-.f64 (sin.f64 re) (sin.f64 re))
0
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -1)
(+.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 1)
(+.f64 1 (exp.f64 (log1p.f64 (sin.f64 re))))
(/.f64 -1 (sin.f64 re))
(/.f64 (sin.f64 re) -1)
(neg.f64 (sin.f64 re))
(/.f64 (sin.f64 re) (sin.f64 re))
1
(/.f64 (neg.f64 (sin.f64 re)) (neg.f64 (sin.f64 re)))
1
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -1)
(-.f64 -1 (neg.f64 (cos.f64 re)))
(+.f64 -1 (cos.f64 re))
(pow.f64 (sin.f64 re) -1)
(/.f64 1 (sin.f64 re))
(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 -1 (expm1.f64 (sin.f64 re))))
(log.f64 (/.f64 (exp.f64 (sin.f64 re)) (exp.f64 (sin.f64 re))))
0
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(sin.f64 re)
(hypot.f64 (sin.f64 re) (sin.f64 re))
(exp.f64 (log.f64 (sin.f64 re)))
(sin.f64 re)
(exp.f64 (*.f64 (log.f64 (sin.f64 re)) -1))
(/.f64 1 (sin.f64 re))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(sin.f64 re)
(fma.f64 -1 (sin.f64 re) (sin.f64 re))
0
(fma.f64 -1 (sin.f64 re) (neg.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) -2)
(fma.f64 (sin.f64 re) -1 (sin.f64 re))
0
(fma.f64 (sin.f64 re) (sin.f64 re) (sin.f64 re))
(*.f64 (+.f64 (sin.f64 re) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (sin.f64 re)))
(fma.f64 (sin.f64 re) (sin.f64 re) (neg.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (sin.f64 re) -1))

eval44.0ms (0.7%)

Compiler

Compiled 1846 to 1196 computations (35.2% saved)

prune36.0ms (0.6%)

Pruning

15 alts after pruning (10 fresh and 5 done)

PrunedKeptTotal
New1288136
Fresh022
Picked145
Done011
Total12915144
Accuracy
100.0%
Counts
144 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
2.7%
(/.f64 re -1)
3.7%
(/.f64 1 re)
78.5%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
52.8%
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
7.4%
(+.f64 re re)
29.1%
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
78.5%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
66.5%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
57.1%
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
53.1%
(sin.f64 re)
41.6%
(log1p.f64 (expm1.f64 re))
3.7%
(exp.f64 (*.f64 (log.f64 re) -1))
30.4%
re
5.1%
1
2.7%
(/.f64 re -1)
3.7%
(/.f64 1 re)
78.5%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
52.8%
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
7.4%
(+.f64 re re)
29.1%
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
78.5%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
66.5%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
57.1%
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
53.1%
(sin.f64 re)
41.6%
(log1p.f64 (expm1.f64 re))
3.7%
(exp.f64 (*.f64 (log.f64 re) -1))
30.4%
re
5.1%
1
Compiler

Compiled 352 to 272 computations (22.7% saved)

localize450.0ms (7.4%)

Localize:

Found 4 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 (sin.f64 re) 1/2)
94.0%
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
99.2%
(log1p.f64 (expm1.f64 re))
100.0%
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
Compiler

Compiled 60 to 31 computations (48.3% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const8192111
const512120
const4096111
const256256
const2048112
const1024118
ival-add8192111
ival-add512120
ival-add4096111
ival-add256256
ival-add2048112
ival-add1024118
ival-div8192111
ival-div512120
ival-div4096111
ival-div256256
ival-div2048112
ival-div1024118
ival-exp8192111
ival-exp512120
ival-exp4096111
ival-exp256256
ival-exp2048112
ival-exp1024118
ival-expm18192111
ival-expm1512120
ival-expm14096111
ival-expm1256256
ival-expm12048112
ival-expm11024118
ival-fma8192222
ival-fma512240
ival-fma4096222
ival-fma256512
ival-fma2048224
ival-fma1024236
ival-log1p8192111
ival-log1p512120
ival-log1p4096111
ival-log1p256256
ival-log1p2048112
ival-log1p1024118
ival-mult8192444
ival-mult512480
ival-mult4096444
ival-mult2561024
ival-mult2048448
ival-mult1024472
ival-pow8192222
ival-pow512240
ival-pow4096222
ival-pow256512
ival-pow2048224
ival-pow1024236
ival-sin8192111
ival-sin512120
ival-sin4096111
ival-sin256256
ival-sin2048112
ival-sin1024118

series4.0ms (0.1%)

Counts
4 → 72
Calls

18 calls:

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

rewrite77.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
1022×log-prod
849×log1p-expm1-u
848×expm1-log1p-u
722×pow-prod-down
512×pow-prod-up
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02076
120876
2236176
Stop Event
node limit
Counts
4 → 94
Calls
Call 1
Inputs
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(log1p.f64 (expm1.f64 re))
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
(*.f64 (sin.f64 re) 1/2)
Outputs
(+.f64 0 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) 2))
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re)) (*.f64 2 (sin.f64 re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))) 1)
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))) 2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)) (*.f64 (sin.f64 re) 2))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re) (*.f64 2 (sin.f64 re)))
(+.f64 0 re)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 re)) (cbrt.f64 (exp.f64 re)))) (log.f64 (cbrt.f64 (exp.f64 re))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 re))) (log.f64 (sqrt.f64 (exp.f64 re))))
(-.f64 (exp.f64 (log1p.f64 re)) 1)
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re)))))
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 re) 2))) (log.f64 (-.f64 1 (expm1.f64 re))))
(*.f64 re 1)
(*.f64 re (log.f64 (exp.f64 1)))
(*.f64 1 re)
(*.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2))
(*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re))
(*.f64 (sqrt.f64 re) (sqrt.f64 re))
(pow.f64 re 1)
(pow.f64 (cbrt.f64 re) 3)
(pow.f64 (pow.f64 re 2) 1/2)
(pow.f64 (pow.f64 re 3) 1/3)
(pow.f64 (sqrt.f64 re) 2)
(sqrt.f64 (pow.f64 re 2))
(log.f64 (exp.f64 re))
(cbrt.f64 (pow.f64 re 3))
re
(expm1.f64 (log1p.f64 re))
(exp.f64 (log.f64 re))
(exp.f64 (*.f64 (log.f64 re) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 re) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 re)) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 re)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 re)) 2))
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))) 1)
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2)))) 2))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(+.f64 0 (*.f64 (sin.f64 re) 1/2))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2)) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 1/2))) 1)
(pow.f64 (*.f64 (sin.f64 re) 1/2) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) 1/2)) 3)
(pow.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) 1/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) 1/2) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) 2)
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) 1/2))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) 1/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) 1/2)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) 1/2))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) 1/2))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) 1/2)))

simplify96.0ms (1.6%)

Algorithm
egg-herbie
Rules
1216×log-prod
876×associate-+r+
778×associate-+l+
608×sqr-pow
410×prod-exp
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02954321
16864121
225403853
358023853
Stop Event
node limit
Counts
166 → 166
Calls
Call 1
Inputs
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 5/2 (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/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 5/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 5/2 (sin.f64 re)))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
re
re
re
re
re
re
re
re
re
re
re
re
(*.f64 1/2 (*.f64 (pow.f64 im 2) (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 1/2 (*.f64 (pow.f64 im 2) (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 1/2 (*.f64 (pow.f64 im 2) (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 1/2 (*.f64 (pow.f64 im 2) (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 1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 im 2) (pow.f64 re 7))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (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 1/2 (*.f64 (pow.f64 im 2) (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 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 re)
(+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re))
(+.f64 (*.f64 -1/12 (pow.f64 re 3)) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re)))
(+.f64 (*.f64 -1/12 (pow.f64 re 3)) (+.f64 (*.f64 -1/10080 (pow.f64 re 7)) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re))))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(+.f64 0 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) 2))
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re)) (*.f64 2 (sin.f64 re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))) 1)
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))) 2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)) (*.f64 (sin.f64 re) 2))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re) (*.f64 2 (sin.f64 re)))
(+.f64 0 re)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 re)) (cbrt.f64 (exp.f64 re)))) (log.f64 (cbrt.f64 (exp.f64 re))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 re))) (log.f64 (sqrt.f64 (exp.f64 re))))
(-.f64 (exp.f64 (log1p.f64 re)) 1)
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re)))))
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 re) 2))) (log.f64 (-.f64 1 (expm1.f64 re))))
(*.f64 re 1)
(*.f64 re (log.f64 (exp.f64 1)))
(*.f64 1 re)
(*.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2))
(*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re))
(*.f64 (sqrt.f64 re) (sqrt.f64 re))
(pow.f64 re 1)
(pow.f64 (cbrt.f64 re) 3)
(pow.f64 (pow.f64 re 2) 1/2)
(pow.f64 (pow.f64 re 3) 1/3)
(pow.f64 (sqrt.f64 re) 2)
(sqrt.f64 (pow.f64 re 2))
(log.f64 (exp.f64 re))
(cbrt.f64 (pow.f64 re 3))
(expm1.f64 (log1p.f64 re))
(exp.f64 (log.f64 re))
(exp.f64 (*.f64 (log.f64 re) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 re) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 re)) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 re)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 re)) 2))
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))) 1)
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2)))) 2))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(+.f64 0 (*.f64 (sin.f64 re) 1/2))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2)) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 1/2))) 1)
(pow.f64 (*.f64 (sin.f64 re) 1/2) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) 1/2)) 3)
(pow.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) 1/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) 1/2) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) 2)
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) 1/2))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) 1/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) 1/2)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) 1/2))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) 1/2))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) 1/2)))
Outputs
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) 2) (pow.f64 re 3)) (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) 2) (pow.f64 re 3)) (fma.f64 1/120 (*.f64 (fma.f64 1/2 (exp.f64 im) 2) (pow.f64 re 5)) (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) 2) (pow.f64 re 3)) (*.f64 (fma.f64 1/2 (exp.f64 im) 2) (+.f64 (*.f64 1/120 (pow.f64 re 5)) re)))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (+.f64 re (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) 2) (pow.f64 re 3)) (fma.f64 -1/5040 (*.f64 (fma.f64 1/2 (exp.f64 im) 2) (pow.f64 re 7)) (fma.f64 1/120 (*.f64 (fma.f64 1/2 (exp.f64 im) 2) (pow.f64 re 5)) (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)))))
(+.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 2) (+.f64 (*.f64 1/120 (pow.f64 re 5)) re)) (*.f64 (fma.f64 1/2 (exp.f64 im) 2) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (+.f64 (+.f64 re (*.f64 1/120 (pow.f64 re 5))) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 5/2 (sin.f64 re))
(*.f64 (sin.f64 re) 5/2)
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(fma.f64 1/2 (*.f64 im (sin.f64 re)) (*.f64 (sin.f64 re) 5/2))
(*.f64 (sin.f64 re) (+.f64 5/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 5/2 (sin.f64 re))))
(fma.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2)) (fma.f64 1/2 (*.f64 im (sin.f64 re)) (*.f64 (sin.f64 re) 5/2)))
(fma.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2)) (*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 1/2 im))))
(*.f64 (sin.f64 re) (+.f64 5/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 5/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 im (sin.f64 re)) (*.f64 (sin.f64 re) 5/2))))
(+.f64 (*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 1/2 im))) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/12 (pow.f64 im 3)) (*.f64 1/4 (pow.f64 im 2)))))
(*.f64 (sin.f64 re) (+.f64 (+.f64 5/2 (*.f64 1/2 im)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 im) 1/4))))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
re
re
re
re
re
re
re
re
re
re
re
re
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2)) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 (*.f64 (pow.f64 im 2) -1/12) (pow.f64 re 3) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (pow.f64 im 2) (fma.f64 re 1/2 (*.f64 (pow.f64 re 3) -1/12)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (pow.f64 im 2) re))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2)) (fma.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2)) (fma.f64 1/2 (*.f64 re (pow.f64 im 2)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/240))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2)) (*.f64 (pow.f64 im 2) (fma.f64 (pow.f64 re 5) 1/240 (*.f64 re 1/2))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 im 2) (pow.f64 re 7))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2)) (fma.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2)) (fma.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2)) (fma.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2)) (fma.f64 1/2 (*.f64 re (pow.f64 im 2)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/240)))))
(+.f64 (*.f64 (pow.f64 im 2) (fma.f64 re 1/2 (*.f64 (pow.f64 re 3) -1/12))) (*.f64 (pow.f64 im 2) (fma.f64 (pow.f64 re 7) -1/10080 (*.f64 (pow.f64 re 5) 1/240))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 re)
(*.f64 re 1/2)
(+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re))
(fma.f64 -1/12 (pow.f64 re 3) (*.f64 re 1/2))
(fma.f64 re 1/2 (*.f64 (pow.f64 re 3) -1/12))
(+.f64 (*.f64 -1/12 (pow.f64 re 3)) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re)))
(fma.f64 -1/12 (pow.f64 re 3) (fma.f64 1/240 (pow.f64 re 5) (*.f64 re 1/2)))
(fma.f64 (pow.f64 re 3) -1/12 (fma.f64 (pow.f64 re 5) 1/240 (*.f64 re 1/2)))
(+.f64 (*.f64 -1/12 (pow.f64 re 3)) (+.f64 (*.f64 -1/10080 (pow.f64 re 7)) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re))))
(fma.f64 -1/12 (pow.f64 re 3) (fma.f64 -1/10080 (pow.f64 re 7) (fma.f64 1/240 (pow.f64 re 5) (*.f64 re 1/2))))
(fma.f64 (pow.f64 re 3) -1/12 (fma.f64 (pow.f64 re 7) -1/10080 (fma.f64 (pow.f64 re 5) 1/240 (*.f64 re 1/2))))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (sin.f64 re))
(+.f64 0 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) 2))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re)) (*.f64 2 (sin.f64 re)))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))) 1)
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 1)
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 3)
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 2) 1/2)
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3) 1/3)
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 2)
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 2))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 1))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 1) 1))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))) 3))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3)) 1/3))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))) 2))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(fma.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)) (*.f64 (sin.f64 re) 2))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re) (*.f64 2 (sin.f64 re)))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (sin.f64 re))
(+.f64 0 re)
re
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 re)) (cbrt.f64 (exp.f64 re)))) (log.f64 (cbrt.f64 (exp.f64 re))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 re)))) (log.f64 (cbrt.f64 (exp.f64 re))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 re))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 re))) (log.f64 (sqrt.f64 (exp.f64 re))))
re
(-.f64 (exp.f64 (log1p.f64 re)) 1)
re
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re)))))
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log1p.f64 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re))))
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log1p.f64 (*.f64 (expm1.f64 re) (+.f64 (expm1.f64 re) -1))))
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 re) 2))) (log.f64 (-.f64 1 (expm1.f64 re))))
(-.f64 (log1p.f64 (neg.f64 (pow.f64 (expm1.f64 re) 2))) (log1p.f64 (neg.f64 (expm1.f64 re))))
(*.f64 re 1)
re
(*.f64 re (log.f64 (exp.f64 1)))
re
(*.f64 1 re)
re
(*.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2))
re
(*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re))
re
(*.f64 (sqrt.f64 re) (sqrt.f64 re))
re
(pow.f64 re 1)
re
(pow.f64 (cbrt.f64 re) 3)
re
(pow.f64 (pow.f64 re 2) 1/2)
re
(pow.f64 (pow.f64 re 3) 1/3)
re
(pow.f64 (sqrt.f64 re) 2)
re
(sqrt.f64 (pow.f64 re 2))
re
(log.f64 (exp.f64 re))
re
(cbrt.f64 (pow.f64 re 3))
re
(expm1.f64 (log1p.f64 re))
re
(exp.f64 (log.f64 re))
re
(exp.f64 (*.f64 (log.f64 re) 1))
re
(exp.f64 (*.f64 (*.f64 (log.f64 re) 1) 1))
re
(exp.f64 (*.f64 (log.f64 (cbrt.f64 re)) 3))
re
(exp.f64 (*.f64 (*.f64 3 (log.f64 re)) 1/3))
re
(exp.f64 (*.f64 (log.f64 (sqrt.f64 re)) 2))
re
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2)))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (pow.f64 im 2))) (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (pow.f64 im 2))))) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (pow.f64 im 2)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (pow.f64 im 2))))) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (pow.f64 im 2)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (pow.f64 im 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2)))))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))) 1)
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 1)
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 3)
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 4) 1/2)
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 3) 1/3)
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 2)
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 4))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (pow.f64 im 2)))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 3))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 1))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 1) 1))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))) 3))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))) 1/3))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2)))) 2))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 0 (*.f64 (sin.f64 re) 1/2))
(*.f64 1/2 (sin.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2)) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (sin.f64 re)))) (cbrt.f64 (sqrt.f64 (exp.f64 (sin.f64 re)))))) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (sin.f64 re))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (sin.f64 re)))))) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (sin.f64 re))))))
(*.f64 3 (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2))))
(*.f64 1/2 (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 1/2))) 1)
(*.f64 1/2 (sin.f64 re))
(pow.f64 (*.f64 (sin.f64 re) 1/2) 1)
(*.f64 1/2 (sin.f64 re))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) 1/2)) 3)
(*.f64 1/2 (sin.f64 re))
(pow.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) 1/2)
(*.f64 1/2 (sin.f64 re))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) 1/2) 3) 1/3)
(*.f64 1/2 (sin.f64 re))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) 2)
(*.f64 1/2 (sin.f64 re))
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4))
(*.f64 1/2 (sin.f64 re))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2))
(*.f64 1/2 (sin.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) 1/2))))
(*.f64 1/2 (sin.f64 re))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) 1/2) 3))
(*.f64 1/2 (sin.f64 re))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) 1/2)))
(*.f64 1/2 (sin.f64 re))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)))
(*.f64 1/2 (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) 1))
(*.f64 1/2 (sin.f64 re))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) 1) 1))
(*.f64 1/2 (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) 1/2))) 3))
(*.f64 1/2 (sin.f64 re))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) 1/2))) 1/3))
(*.f64 1/2 (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 2))
(*.f64 1/2 (sin.f64 re))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) 1/2)))
(*.f64 1/2 (sin.f64 re))

eval51.0ms (0.8%)

Compiler

Compiled 2277 to 1526 computations (33% saved)

prune41.0ms (0.7%)

Pruning

17 alts after pruning (9 fresh and 8 done)

PrunedKeptTotal
New1615166
Fresh145
Picked235
Done055
Total16417181
Accuracy
100.0%
Counts
181 → 17
Alt Table
Click to see full alt table
StatusAccuracyProgram
2.7%
(/.f64 re -1)
3.7%
(/.f64 1 re)
78.5%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
52.8%
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
7.4%
(+.f64 re re)
29.1%
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
26.1%
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
78.5%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
66.5%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
35.2%
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
11.4%
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 1/2 im)))
57.1%
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
43.0%
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
53.1%
(sin.f64 re)
30.4%
re
5.1%
1
2.7%
(/.f64 re -1)
3.7%
(/.f64 1 re)
78.5%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
52.8%
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
7.4%
(+.f64 re re)
29.1%
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
26.1%
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
78.5%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
66.5%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
35.2%
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
11.4%
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 1/2 im)))
57.1%
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
43.0%
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
53.1%
(sin.f64 re)
30.4%
re
5.1%
1
Compiler

Compiled 440 to 342 computations (22.3% saved)

localize137.0ms (2.2%)

Localize:

Found 6 expressions with local error:

NewAccuracyProgram
99.8%
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 1/2 im)))
100.0%
(+.f64 2 (*.f64 1/2 (exp.f64 im)))
99.9%
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
87.5%
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
100.0%
(+.f64 2 (*.f64 1/2 (exp.f64 im)))
99.8%
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
Compiler

Compiled 98 to 58 computations (40.8% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const51214
const256256
const102411
ival-add51284
ival-add2561536
ival-add102466
ival-div51214
ival-div256256
ival-div102411
ival-exp51214
ival-exp256256
ival-exp102411
ival-mult512210
ival-mult2563840
ival-mult1024165
ival-pow51228
ival-pow256512
ival-pow102422
ival-sin51214
ival-sin256256
ival-sin102411

series9.0ms (0.1%)

Counts
6 → 60
Calls

30 calls:

TimeVariablePointExpression
0.0ms
re
@0
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
0.0ms
re
@inf
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
0.0ms
re
@0
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 1/2 im)))
0.0ms
re
@inf
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 1/2 im)))
0.0ms
im
@inf
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))

rewrite107.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
1606×prod-diff
650×log1p-expm1-u
552×expm1-udef
552×log1p-udef
374×associate-*r*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
023156
1333136
24576136
Stop Event
node limit
Counts
6 → 161
Calls
Call 1
Inputs
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(+.f64 2 (*.f64 1/2 (exp.f64 im)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(+.f64 2 (*.f64 1/2 (exp.f64 im)))
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 1/2 im)))
Outputs
(+.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) 2))
(+.f64 (*.f64 (*.f64 (sin.f64 re) 2) 1) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) 2) 3) (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) 2)) (-.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))) (*.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) 2)) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))) (-.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (sin.f64 re)) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (*.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(fma.f64 (sin.f64 re) 2 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))
(fma.f64 2 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 2))) 1)
(-.f64 (/.f64 4 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))) (/.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) 1)
(*.f64 1 (fma.f64 1/2 (exp.f64 im) 2))
(*.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2) (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (/.f64 1 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im)))))
(*.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (/.f64 1 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)))
(/.f64 1 (/.f64 (+.f64 2 (*.f64 -1/2 (exp.f64 im))) (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))))
(/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (-.f64 4 (exp.f64 im))))
(/.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)) (neg.f64 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im)))))
(/.f64 (neg.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (neg.f64 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) 4) (-.f64 (*.f64 1/2 (exp.f64 im)) 2))
(pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 2))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(exp.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 2)) 1))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(fma.f64 (exp.f64 im) 1/2 2)
(fma.f64 1 (*.f64 1/2 (exp.f64 im)) 2)
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(fma.f64 (sqrt.f64 (*.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)))) 1)
(pow.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 re 1/2))) 2)
(sqrt.f64 (*.f64 (*.f64 (pow.f64 re 2) 1/4) (pow.f64 im 4)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 re) 1/2) (pow.f64 im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 2) 3) (pow.f64 (*.f64 re 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 (pow.f64 im 2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))))
(+.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) (*.f64 re 2))
(+.f64 (*.f64 re 2) (*.f64 re (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (*.f64 re 2) 1) (*.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 re 2) 3) (pow.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) 3)) (+.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (-.f64 (*.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) (*.f64 re (*.f64 1/2 (exp.f64 im)))) (*.f64 (*.f64 re 2) (*.f64 re (*.f64 1/2 (exp.f64 im)))))))
(/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) (*.f64 re (*.f64 1/2 (exp.f64 im))))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 1/2 (exp.f64 im)))))
(/.f64 (*.f64 re (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (*.f64 re (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) re) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (*.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) re) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))) 3)
(pow.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))) 2)
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)) 2))
(log.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)))))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))))
(exp.f64 (log.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))))
(fma.f64 re 2 (*.f64 re (*.f64 1/2 (exp.f64 im))))
(fma.f64 2 re (*.f64 re (*.f64 1/2 (exp.f64 im))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 2))) 1)
(-.f64 (/.f64 4 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))) (/.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) 1)
(*.f64 1 (fma.f64 1/2 (exp.f64 im) 2))
(*.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2) (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (/.f64 1 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im)))))
(*.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (/.f64 1 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)))
(/.f64 1 (/.f64 (+.f64 2 (*.f64 -1/2 (exp.f64 im))) (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))))
(/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (-.f64 4 (exp.f64 im))))
(/.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)) (neg.f64 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im)))))
(/.f64 (neg.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (neg.f64 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) 4) (-.f64 (*.f64 1/2 (exp.f64 im)) 2))
(pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 2))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(exp.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 2)) 1))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(fma.f64 (exp.f64 im) 1/2 2)
(fma.f64 1 (*.f64 1/2 (exp.f64 im)) 2)
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(fma.f64 (sqrt.f64 (*.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(+.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) (*.f64 1/2 im)))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) (*.f64 (sin.f64 re) 5/2))
(+.f64 (*.f64 (*.f64 (sin.f64 re) 5/2) 1) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) 5/2) 3) (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) 5/2)) (-.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) (*.f64 (sin.f64 re) (*.f64 1/2 im))) (*.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) (*.f64 1/2 im))))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) 5/2)) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) (*.f64 (sin.f64 re) (*.f64 1/2 im)))) (-.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) (*.f64 1/2 im))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 3) 1/8) 125/8)) (+.f64 25/4 (-.f64 (*.f64 (pow.f64 im 2) 1/4) (*.f64 5/4 im))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 25/4 (*.f64 (pow.f64 im 2) 1/4))) (+.f64 5/2 (*.f64 -1/2 im)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/8) 125/8) (sin.f64 re)) (+.f64 25/4 (-.f64 (*.f64 (pow.f64 im 2) 1/4) (*.f64 5/4 im))))
(/.f64 (*.f64 (-.f64 25/4 (*.f64 (pow.f64 im 2) 1/4)) (sin.f64 re)) (+.f64 5/2 (*.f64 -1/2 im)))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/2 im 5/2)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 im 5/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 im 5/2) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))))
(fma.f64 (sin.f64 re) 5/2 (*.f64 (sin.f64 re) (*.f64 1/2 im)))
(fma.f64 5/2 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 im)))

simplify104.0ms (1.7%)

Algorithm
egg-herbie
Rules
1972×times-frac
960×associate-*r*
872×associate-*l*
756×log-prod
726×fma-neg
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03907739
111327205
249827191
Stop Event
node limit
Counts
221 → 223
Calls
Call 1
Inputs
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))))))
(*.f64 5/2 (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/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 5/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 5/2 (sin.f64 re)))))
5/2
(+.f64 5/2 (*.f64 1/2 im))
(+.f64 5/2 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im)))
(+.f64 5/2 (+.f64 (*.f64 1/12 (pow.f64 im 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 5/2 re)
(+.f64 (*.f64 1/2 (*.f64 im re)) (*.f64 5/2 re))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 (*.f64 im re)) (*.f64 5/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 5/2 re))))
5/2
(+.f64 5/2 (*.f64 1/2 im))
(+.f64 5/2 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im)))
(+.f64 5/2 (+.f64 (*.f64 1/12 (pow.f64 im 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))))
(*.f64 re (+.f64 5/2 (*.f64 1/2 im)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 5/2 (*.f64 1/2 im)))) (*.f64 re (+.f64 5/2 (*.f64 1/2 im))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 5/2 (*.f64 1/2 im)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 5/2 (*.f64 1/2 im)))) (*.f64 re (+.f64 5/2 (*.f64 1/2 im)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 5/2 (*.f64 1/2 im)))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 5/2 (*.f64 1/2 im)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 5/2 (*.f64 1/2 im)))) (*.f64 re (+.f64 5/2 (*.f64 1/2 im))))))
(*.f64 5/2 (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 im (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 im (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(+.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) 2))
(+.f64 (*.f64 (*.f64 (sin.f64 re) 2) 1) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) 2) 3) (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) 2)) (-.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))) (*.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) 2)) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))) (-.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (sin.f64 re)) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (*.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(fma.f64 (sin.f64 re) 2 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))
(fma.f64 2 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 2))) 1)
(-.f64 (/.f64 4 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))) (/.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) 1)
(*.f64 1 (fma.f64 1/2 (exp.f64 im) 2))
(*.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2) (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (/.f64 1 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im)))))
(*.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (/.f64 1 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)))
(/.f64 1 (/.f64 (+.f64 2 (*.f64 -1/2 (exp.f64 im))) (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))))
(/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (-.f64 4 (exp.f64 im))))
(/.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)) (neg.f64 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im)))))
(/.f64 (neg.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (neg.f64 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) 4) (-.f64 (*.f64 1/2 (exp.f64 im)) 2))
(pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 2))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(exp.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 2)) 1))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(fma.f64 (exp.f64 im) 1/2 2)
(fma.f64 1 (*.f64 1/2 (exp.f64 im)) 2)
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(fma.f64 (sqrt.f64 (*.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)))) 1)
(pow.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 re 1/2))) 2)
(sqrt.f64 (*.f64 (*.f64 (pow.f64 re 2) 1/4) (pow.f64 im 4)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 re) 1/2) (pow.f64 im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 2) 3) (pow.f64 (*.f64 re 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 (pow.f64 im 2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))))
(+.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) (*.f64 re 2))
(+.f64 (*.f64 re 2) (*.f64 re (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (*.f64 re 2) 1) (*.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 re 2) 3) (pow.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) 3)) (+.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (-.f64 (*.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) (*.f64 re (*.f64 1/2 (exp.f64 im)))) (*.f64 (*.f64 re 2) (*.f64 re (*.f64 1/2 (exp.f64 im)))))))
(/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) (*.f64 re (*.f64 1/2 (exp.f64 im))))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 1/2 (exp.f64 im)))))
(/.f64 (*.f64 re (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (*.f64 re (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) re) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (*.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) re) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))) 3)
(pow.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))) 2)
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)) 2))
(log.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)))))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))))
(exp.f64 (log.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))))
(fma.f64 re 2 (*.f64 re (*.f64 1/2 (exp.f64 im))))
(fma.f64 2 re (*.f64 re (*.f64 1/2 (exp.f64 im))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 2))) 1)
(-.f64 (/.f64 4 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))) (/.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) 1)
(*.f64 1 (fma.f64 1/2 (exp.f64 im) 2))
(*.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2) (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (/.f64 1 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im)))))
(*.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (/.f64 1 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)))
(/.f64 1 (/.f64 (+.f64 2 (*.f64 -1/2 (exp.f64 im))) (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))))
(/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (-.f64 4 (exp.f64 im))))
(/.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)) (neg.f64 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im)))))
(/.f64 (neg.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (neg.f64 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) 4) (-.f64 (*.f64 1/2 (exp.f64 im)) 2))
(pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 2))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(exp.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 2)) 1))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(fma.f64 (exp.f64 im) 1/2 2)
(fma.f64 1 (*.f64 1/2 (exp.f64 im)) 2)
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(fma.f64 (sqrt.f64 (*.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(+.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) (*.f64 1/2 im)))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) (*.f64 (sin.f64 re) 5/2))
(+.f64 (*.f64 (*.f64 (sin.f64 re) 5/2) 1) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) 5/2) 3) (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) 5/2)) (-.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) (*.f64 (sin.f64 re) (*.f64 1/2 im))) (*.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) (*.f64 1/2 im))))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) 5/2)) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) (*.f64 (sin.f64 re) (*.f64 1/2 im)))) (-.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) (*.f64 1/2 im))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 3) 1/8) 125/8)) (+.f64 25/4 (-.f64 (*.f64 (pow.f64 im 2) 1/4) (*.f64 5/4 im))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 25/4 (*.f64 (pow.f64 im 2) 1/4))) (+.f64 5/2 (*.f64 -1/2 im)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/8) 125/8) (sin.f64 re)) (+.f64 25/4 (-.f64 (*.f64 (pow.f64 im 2) 1/4) (*.f64 5/4 im))))
(/.f64 (*.f64 (-.f64 25/4 (*.f64 (pow.f64 im 2) 1/4)) (sin.f64 re)) (+.f64 5/2 (*.f64 -1/2 im)))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/2 im 5/2)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 im 5/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 im 5/2) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))))
(fma.f64 (sin.f64 re) 5/2 (*.f64 (sin.f64 re) (*.f64 1/2 im)))
(fma.f64 5/2 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 im)))
Outputs
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (exp.f64 im) 2)) (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (exp.f64 im) 2)) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/2 (exp.f64 im) 2)) (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (exp.f64 im) 2)) (*.f64 (fma.f64 1/2 (exp.f64 im) 2) (+.f64 (*.f64 1/120 (pow.f64 re 5)) re)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (exp.f64 im) 2)) (fma.f64 -1/5040 (*.f64 (pow.f64 re 7) (fma.f64 1/2 (exp.f64 im) 2)) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/2 (exp.f64 im) 2)) (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)))))
(+.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) 2) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (fma.f64 1/2 (exp.f64 im) 2) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) re)))
(*.f64 5/2 (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re))))
(fma.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2)) (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (fma.f64 1/2 im 5/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 5/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)) (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))))
(+.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 3) (*.f64 1/4 (pow.f64 im 2)))))
5/2
(+.f64 5/2 (*.f64 1/2 im))
(fma.f64 1/2 im 5/2)
(+.f64 5/2 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im)))
(+.f64 5/2 (fma.f64 1/4 (pow.f64 im 2) (*.f64 1/2 im)))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (fma.f64 1/2 im 5/2))
(+.f64 5/2 (+.f64 (*.f64 1/12 (pow.f64 im 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))))
(+.f64 5/2 (fma.f64 1/12 (pow.f64 im 3) (fma.f64 1/4 (pow.f64 im 2) (*.f64 1/2 im))))
(+.f64 (fma.f64 1/12 (pow.f64 im 3) (*.f64 1/4 (pow.f64 im 2))) (fma.f64 1/2 im 5/2))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 5/2 re)
(*.f64 re 5/2)
(+.f64 (*.f64 1/2 (*.f64 im re)) (*.f64 5/2 re))
(*.f64 re (fma.f64 1/2 im 5/2))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 (*.f64 im re)) (*.f64 5/2 re)))
(fma.f64 1/4 (*.f64 re (pow.f64 im 2)) (*.f64 re (fma.f64 1/2 im 5/2)))
(*.f64 re (+.f64 (*.f64 1/4 (pow.f64 im 2)) (fma.f64 1/2 im 5/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 5/2 re))))
(fma.f64 1/12 (*.f64 re (pow.f64 im 3)) (fma.f64 1/4 (*.f64 re (pow.f64 im 2)) (*.f64 re (fma.f64 1/2 im 5/2))))
(+.f64 (*.f64 re (fma.f64 1/2 im 5/2)) (*.f64 re (fma.f64 1/12 (pow.f64 im 3) (*.f64 1/4 (pow.f64 im 2)))))
5/2
(+.f64 5/2 (*.f64 1/2 im))
(fma.f64 1/2 im 5/2)
(+.f64 5/2 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im)))
(+.f64 5/2 (fma.f64 1/4 (pow.f64 im 2) (*.f64 1/2 im)))
(+.f64 (*.f64 1/4 (pow.f64 im 2)) (fma.f64 1/2 im 5/2))
(+.f64 5/2 (+.f64 (*.f64 1/12 (pow.f64 im 3)) (+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 1/2 im))))
(+.f64 5/2 (fma.f64 1/12 (pow.f64 im 3) (fma.f64 1/4 (pow.f64 im 2) (*.f64 1/2 im))))
(+.f64 (fma.f64 1/12 (pow.f64 im 3) (*.f64 1/4 (pow.f64 im 2))) (fma.f64 1/2 im 5/2))
(*.f64 re (+.f64 5/2 (*.f64 1/2 im)))
(*.f64 re (fma.f64 1/2 im 5/2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 5/2 (*.f64 1/2 im)))) (*.f64 re (+.f64 5/2 (*.f64 1/2 im))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 im 5/2)) (*.f64 re (fma.f64 1/2 im 5/2)))
(*.f64 (fma.f64 1/2 im 5/2) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 5/2 (*.f64 1/2 im)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 5/2 (*.f64 1/2 im)))) (*.f64 re (+.f64 5/2 (*.f64 1/2 im)))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 im 5/2)) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/2 im 5/2)) (*.f64 re (fma.f64 1/2 im 5/2))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 im 5/2)) (*.f64 (fma.f64 1/2 im 5/2) (+.f64 (*.f64 1/120 (pow.f64 re 5)) re)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 5/2 (*.f64 1/2 im)))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 5/2 (*.f64 1/2 im)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 5/2 (*.f64 1/2 im)))) (*.f64 re (+.f64 5/2 (*.f64 1/2 im))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 im 5/2)) (fma.f64 -1/5040 (*.f64 (pow.f64 re 7) (fma.f64 1/2 im 5/2)) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/2 im 5/2)) (*.f64 re (fma.f64 1/2 im 5/2)))))
(+.f64 (*.f64 (fma.f64 1/2 im 5/2) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (fma.f64 1/2 im 5/2) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) re)))
(*.f64 5/2 (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(*.f64 1/2 (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 im))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(*.f64 1/2 (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 im))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(+.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(+.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) 2))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(+.f64 (*.f64 (*.f64 (sin.f64 re) 2) 1) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))) 1)
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) 2) 3) (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) 2)) (-.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))) (*.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))))))
(/.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 re) 3) 8) (pow.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (exp.f64 im)) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) (sin.f64 re)) 4) (*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (exp.f64 im)) (-.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (exp.f64 im)) (*.f64 2 (sin.f64 re))))))
(/.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)) (fma.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) -2)) (*.f64 (sin.f64 re) (*.f64 4 (sin.f64 re)))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) 2)) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))) (-.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) (*.f64 (sin.f64 re) (-.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 (sin.f64 re) (-.f64 2 (*.f64 1/2 (exp.f64 im)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4))) (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) -1/2 2)))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (fma.f64 (exp.f64 im) -1/2 2)) (/.f64 (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (sin.f64 re) (/.f64 (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im)) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (*.f64 (sin.f64 re) (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (/.f64 (+.f64 2 (*.f64 (exp.f64 im) -1/2)) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 (exp.f64 im) -1/2 2)) (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (sin.f64 re)) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (sin.f64 re) (/.f64 (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im)) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (*.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (/.f64 (+.f64 2 (*.f64 (exp.f64 im) -1/2)) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 (exp.f64 im) -1/2 2)) (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 1)
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 3)
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3) 1/3)
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 2)
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 2))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2)) 3))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3) (pow.f64 (sin.f64 re) 3)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(fma.f64 (sin.f64 re) 2 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(fma.f64 2 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) 2))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 2))) 1)
(fma.f64 1/2 (exp.f64 im) 2)
(-.f64 (/.f64 4 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))) (/.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 2))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) 1)
(fma.f64 1/2 (exp.f64 im) 2)
(*.f64 1 (fma.f64 1/2 (exp.f64 im) 2))
(fma.f64 1/2 (exp.f64 im) 2)
(*.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2))
(fma.f64 1/2 (exp.f64 im) 2)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2) (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(*.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (/.f64 1 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im)))))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8) (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im)))
(*.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (/.f64 1 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 2))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8) (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im)))
(/.f64 1 (/.f64 (+.f64 2 (*.f64 -1/2 (exp.f64 im))) (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))))
(/.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 2))
(/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8) (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im)))
(/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (-.f64 4 (exp.f64 im))))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8) (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im)))
(/.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 2))
(/.f64 (neg.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)) (neg.f64 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)) (+.f64 -4 (neg.f64 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im)))))
(*.f64 1 (/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8) (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im))))
(/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) -1/8 -8) (-.f64 -4 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) (neg.f64 (exp.f64 im)))))
(/.f64 (neg.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (neg.f64 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (neg.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (+.f64 -2 (neg.f64 (*.f64 (exp.f64 im) -1/2))))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -4) (fma.f64 1/2 (exp.f64 im) -2))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) 4) (-.f64 (*.f64 1/2 (exp.f64 im)) 2))
(/.f64 (neg.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (+.f64 -2 (neg.f64 (*.f64 (exp.f64 im) -1/2))))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -4) (fma.f64 1/2 (exp.f64 im) -2))
(pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 1)
(fma.f64 1/2 (exp.f64 im) 2)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 3)
(fma.f64 1/2 (exp.f64 im) 2)
(pow.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3) 1/3)
(fma.f64 1/2 (exp.f64 im) 2)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2)
(fma.f64 1/2 (exp.f64 im) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 2))
(fma.f64 1/2 (exp.f64 im) 2)
(log.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 2))))
(fma.f64 1/2 (exp.f64 im) 2)
(cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3))
(fma.f64 1/2 (exp.f64 im) 2)
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(exp.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 2)) 1))
(fma.f64 1/2 (exp.f64 im) 2)
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(fma.f64 1/2 (exp.f64 im) 2)
(fma.f64 (exp.f64 im) 1/2 2)
(fma.f64 1/2 (exp.f64 im) 2)
(fma.f64 1 (*.f64 1/2 (exp.f64 im)) 2)
(fma.f64 1/2 (exp.f64 im) 2)
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(fma.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(fma.f64 (sqrt.f64 (*.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(fma.f64 1/2 (exp.f64 im) 2)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)))) 1)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(pow.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)) 1)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))) 3)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)) 3) 1/3)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 re 1/2))) 2)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(sqrt.f64 (*.f64 (*.f64 (pow.f64 re 2) 1/4) (pow.f64 im 4)))
(sqrt.f64 (*.f64 (pow.f64 re 2) (*.f64 1/4 (pow.f64 im 4))))
(fabs.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))
(log.f64 (pow.f64 (pow.f64 (exp.f64 re) 1/2) (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)))))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)) 3))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 2) 3) (pow.f64 (*.f64 re 1/2) 3)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 (pow.f64 im 2) 3)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))) 1))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2))))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) (*.f64 re 2))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(+.f64 (*.f64 re 2) (*.f64 re (*.f64 1/2 (exp.f64 im))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(+.f64 (*.f64 (*.f64 re 2) 1) (*.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) 1))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)))) 1)
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(/.f64 (+.f64 (pow.f64 (*.f64 re 2) 3) (pow.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) 3)) (+.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (-.f64 (*.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) (*.f64 re (*.f64 1/2 (exp.f64 im)))) (*.f64 (*.f64 re 2) (*.f64 re (*.f64 1/2 (exp.f64 im)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 re 2) 3) (pow.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) 3)) (+.f64 (*.f64 (pow.f64 re 2) 4) (*.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) (-.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) (*.f64 re 2)))))
(/.f64 (*.f64 (pow.f64 re 3) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)) (fma.f64 (pow.f64 re 2) 4 (*.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) (*.f64 re (fma.f64 1/2 (exp.f64 im) -2)))))
(/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 1/2 (exp.f64 im))) (*.f64 re (*.f64 1/2 (exp.f64 im))))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 1/2 (exp.f64 im)))))
(/.f64 (*.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)) (*.f64 re (-.f64 2 (*.f64 1/2 (exp.f64 im))))) (*.f64 re (-.f64 2 (*.f64 1/2 (exp.f64 im)))))
(/.f64 (*.f64 (pow.f64 re 2) (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4))) (*.f64 re (fma.f64 (exp.f64 im) -1/2 2)))
(*.f64 (/.f64 (pow.f64 re 2) (fma.f64 (exp.f64 im) -1/2 2)) (/.f64 (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) re))
(/.f64 (*.f64 re (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (*.f64 re (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)) (+.f64 4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im))))
(/.f64 re (/.f64 (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im)) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (*.f64 re (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 re (/.f64 (+.f64 2 (*.f64 (exp.f64 im) -1/2)) (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))))
(*.f64 (/.f64 re (fma.f64 (exp.f64 im) -1/2 2)) (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) re) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 (*.f64 re (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)) (+.f64 4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im))))
(/.f64 re (/.f64 (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im)) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (*.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) re) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 re (/.f64 (+.f64 2 (*.f64 (exp.f64 im) -1/2)) (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))))
(*.f64 (/.f64 re (fma.f64 (exp.f64 im) -1/2 2)) (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))
(pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)) 1)
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))) 3)
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(pow.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)) 3) 1/3)
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))) 2)
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)) 2))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(log.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (exp.f64 im) 2)))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2)) 3))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3)))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3) (pow.f64 re 3)))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(exp.f64 (log.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))) 1))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 1/2 (exp.f64 im) 2))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(fma.f64 re 2 (*.f64 re (*.f64 1/2 (exp.f64 im))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(fma.f64 2 re (*.f64 re (*.f64 1/2 (exp.f64 im))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) 2))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 2))) 1)
(fma.f64 1/2 (exp.f64 im) 2)
(-.f64 (/.f64 4 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))) (/.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 2))
(*.f64 (fma.f64 1/2 (exp.f64 im) 2) 1)
(fma.f64 1/2 (exp.f64 im) 2)
(*.f64 1 (fma.f64 1/2 (exp.f64 im) 2))
(fma.f64 1/2 (exp.f64 im) 2)
(*.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2))
(fma.f64 1/2 (exp.f64 im) 2)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2) (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(*.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (/.f64 1 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im)))))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8) (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im)))
(*.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (/.f64 1 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 2))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8) (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im)))
(/.f64 1 (/.f64 (+.f64 2 (*.f64 -1/2 (exp.f64 im))) (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))))
(/.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 2))
(/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im))))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8) (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im)))
(/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (-.f64 4 (exp.f64 im))))
(/.f64 1 (/.f64 (+.f64 4 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im))) (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)))
(/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8) (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im)))
(/.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (+.f64 2 (*.f64 -1/2 (exp.f64 im))))
(/.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (+.f64 2 (*.f64 (exp.f64 im) -1/2)))
(/.f64 (+.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (fma.f64 (exp.f64 im) -1/2 2))
(/.f64 (neg.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 3) 1/8) 8)) (neg.f64 (+.f64 4 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (exp.f64 im)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8)) (+.f64 -4 (neg.f64 (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (exp.f64 im)))))
(*.f64 1 (/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) 1/8 8) (-.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) 4) (exp.f64 im))))
(/.f64 (fma.f64 (pow.f64 (exp.f64 im) 3) -1/8 -8) (-.f64 -4 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) (neg.f64 (exp.f64 im)))))
(/.f64 (neg.f64 (-.f64 4 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (neg.f64 (+.f64 2 (*.f64 -1/2 (exp.f64 im)))))
(/.f64 (neg.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (+.f64 -2 (neg.f64 (*.f64 (exp.f64 im) -1/2))))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -4) (fma.f64 1/2 (exp.f64 im) -2))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) 4) (-.f64 (*.f64 1/2 (exp.f64 im)) 2))
(/.f64 (neg.f64 (-.f64 4 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (+.f64 -2 (neg.f64 (*.f64 (exp.f64 im) -1/2))))
(/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -4) (fma.f64 1/2 (exp.f64 im) -2))
(pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 1)
(fma.f64 1/2 (exp.f64 im) 2)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 3)
(fma.f64 1/2 (exp.f64 im) 2)
(pow.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3) 1/3)
(fma.f64 1/2 (exp.f64 im) 2)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) 2)) 2)
(fma.f64 1/2 (exp.f64 im) 2)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 2))
(fma.f64 1/2 (exp.f64 im) 2)
(log.f64 (exp.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 2))))
(fma.f64 1/2 (exp.f64 im) 2)
(cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) 2) 3))
(fma.f64 1/2 (exp.f64 im) 2)
(expm1.f64 (log1p.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(exp.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (exp.f64 im) 2)) 1))
(fma.f64 1/2 (exp.f64 im) 2)
(log1p.f64 (expm1.f64 (fma.f64 1/2 (exp.f64 im) 2)))
(fma.f64 1/2 (exp.f64 im) 2)
(fma.f64 1/2 (exp.f64 im) 2)
(fma.f64 (exp.f64 im) 1/2 2)
(fma.f64 1/2 (exp.f64 im) 2)
(fma.f64 1 (*.f64 1/2 (exp.f64 im)) 2)
(fma.f64 1/2 (exp.f64 im) 2)
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(fma.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (cbrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(fma.f64 (sqrt.f64 (*.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))) 2)
(fma.f64 1/2 (exp.f64 im) 2)
(+.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) (*.f64 1/2 im)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) (*.f64 (sin.f64 re) 5/2))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(+.f64 (*.f64 (*.f64 (sin.f64 re) 5/2) 1) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)))) 1)
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) 5/2) 3) (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) 5/2)) (-.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) (*.f64 (sin.f64 re) (*.f64 1/2 im))) (*.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) (*.f64 1/2 im))))))
(/.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 re) 3) 125/8) (pow.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) (sin.f64 re)) 25/4) (*.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (-.f64 (*.f64 1/2 (*.f64 im (sin.f64 re))) (*.f64 5/2 (sin.f64 re))))))
(/.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (fma.f64 (pow.f64 im 3) 1/8 125/8)) (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) (*.f64 (sin.f64 re) (-.f64 (*.f64 1/2 im) 5/2)) (*.f64 (sin.f64 re) (*.f64 25/4 (sin.f64 re)))))
(/.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (fma.f64 (pow.f64 im 3) 1/8 125/8)) (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) (*.f64 (sin.f64 re) (fma.f64 1/2 im -5/2)) (*.f64 (sin.f64 re) (*.f64 25/4 (sin.f64 re)))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) 5/2)) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 im)) (*.f64 (sin.f64 re) (*.f64 1/2 im)))) (-.f64 (*.f64 (sin.f64 re) 5/2) (*.f64 (sin.f64 re) (*.f64 1/2 im))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) (*.f64 (sin.f64 re) (-.f64 5/2 (*.f64 1/2 im)))) (*.f64 (sin.f64 re) (-.f64 5/2 (*.f64 1/2 im))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (+.f64 25/4 (*.f64 (pow.f64 im 2) -1/4))) (*.f64 (sin.f64 re) (fma.f64 im -1/2 5/2)))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (sin.f64 re)) (/.f64 (+.f64 25/4 (*.f64 (pow.f64 im 2) -1/4)) (fma.f64 im -1/2 5/2)))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 3) 1/8) 125/8)) (+.f64 25/4 (-.f64 (*.f64 (pow.f64 im 2) 1/4) (*.f64 5/4 im))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 25/4 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 -5/4 im))) (fma.f64 (pow.f64 im 3) 1/8 125/8)))
(*.f64 (/.f64 (sin.f64 re) (+.f64 25/4 (fma.f64 1/4 (pow.f64 im 2) (*.f64 im -5/4)))) (fma.f64 (pow.f64 im 3) 1/8 125/8))
(*.f64 (/.f64 (sin.f64 re) (-.f64 (*.f64 1/4 (pow.f64 im 2)) (fma.f64 im 5/4 -25/4))) (fma.f64 (pow.f64 im 3) 1/8 125/8))
(/.f64 (*.f64 (sin.f64 re) (-.f64 25/4 (*.f64 (pow.f64 im 2) 1/4))) (+.f64 5/2 (*.f64 -1/2 im)))
(/.f64 (sin.f64 re) (/.f64 (+.f64 5/2 (*.f64 im -1/2)) (-.f64 25/4 (*.f64 1/4 (pow.f64 im 2)))))
(/.f64 (sin.f64 re) (/.f64 (fma.f64 im -1/2 5/2) (+.f64 25/4 (*.f64 (pow.f64 im 2) -1/4))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 3) 1/8) 125/8) (sin.f64 re)) (+.f64 25/4 (-.f64 (*.f64 (pow.f64 im 2) 1/4) (*.f64 5/4 im))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 25/4 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 -5/4 im))) (fma.f64 (pow.f64 im 3) 1/8 125/8)))
(*.f64 (/.f64 (sin.f64 re) (+.f64 25/4 (fma.f64 1/4 (pow.f64 im 2) (*.f64 im -5/4)))) (fma.f64 (pow.f64 im 3) 1/8 125/8))
(*.f64 (/.f64 (sin.f64 re) (-.f64 (*.f64 1/4 (pow.f64 im 2)) (fma.f64 im 5/4 -25/4))) (fma.f64 (pow.f64 im 3) 1/8 125/8))
(/.f64 (*.f64 (-.f64 25/4 (*.f64 (pow.f64 im 2) 1/4)) (sin.f64 re)) (+.f64 5/2 (*.f64 -1/2 im)))
(/.f64 (sin.f64 re) (/.f64 (+.f64 5/2 (*.f64 im -1/2)) (-.f64 25/4 (*.f64 1/4 (pow.f64 im 2)))))
(/.f64 (sin.f64 re) (/.f64 (fma.f64 im -1/2 5/2) (+.f64 25/4 (*.f64 (pow.f64 im 2) -1/4))))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) 1)
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))) 3)
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) 3) 1/3)
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))) 2)
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) 2))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 1/2 im 5/2)) (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)))))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2)) 3))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 im 5/2) 3)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 im 5/2) 3) (pow.f64 (sin.f64 re) 3)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(fma.f64 (sin.f64 re) 5/2 (*.f64 (sin.f64 re) (*.f64 1/2 im)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))
(fma.f64 5/2 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 im)))
(*.f64 (sin.f64 re) (fma.f64 1/2 im 5/2))

eval94.0ms (1.5%)

Compiler

Compiled 4452 to 2995 computations (32.7% saved)

prune49.0ms (0.8%)

Pruning

19 alts after pruning (8 fresh and 11 done)

PrunedKeptTotal
New2724276
Fresh044
Picked145
Done178
Total27419293
Accuracy
100.0%
Counts
293 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
2.7%
(/.f64 re -1)
3.7%
(/.f64 1 re)
10.7%
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 5/2 (*.f64 1/2 im)))) (*.f64 re (+.f64 5/2 (*.f64 1/2 im))))
78.5%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
52.8%
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
29.1%
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
26.1%
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
78.5%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
66.5%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
35.2%
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
57.1%
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
5.1%
(*.f64 (sin.f64 re) (*.f64 1/2 im))
13.5%
(*.f64 re (+.f64 5/2 (*.f64 1/2 im)))
43.0%
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
7.2%
(*.f64 re 5/2)
53.1%
(sin.f64 re)
30.4%
re
5.1%
1
Compiler

Compiled 374 to 259 computations (30.7% saved)

regimes131.0ms (2.1%)

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

6 calls:

39.0ms
(+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
26.0ms
(*.f64 1/2 (sin.f64 re))
20.0ms
re
14.0ms
im
14.0ms
(sin.f64 re)
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 235 to 150 computations (36.2% saved)

regimes79.0ms (1.3%)

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

19.0ms
im
13.0ms
(sin.f64 re)
13.0ms
(*.f64 1/2 (sin.f64 re))
13.0ms
re
9.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 224 to 145 computations (35.3% saved)

regimes146.0ms (2.4%)

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

3 calls:

68.0ms
im
41.0ms
re
32.0ms
(sin.f64 re)
Results
AccuracySegmentsBranch
92.1%3re
99.8%2im
90.3%3(sin.f64 re)
Compiler

Compiled 161 to 106 computations (34.2% saved)

regimes57.0ms (0.9%)

Counts
21 → 2
Calls
Call 1
Inputs
1
re
(*.f64 re 5/2)
(+.f64 re re)
(/.f64 1 re)
(/.f64 re -1)
(*.f64 re (+.f64 5/2 (*.f64 1/2 im)))
(sin.f64 re)
(*.f64 2 (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 im))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 1/2 im)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 5/2 (*.f64 1/2 im)))) (*.f64 re (+.f64 5/2 (*.f64 1/2 im))))
(log1p.f64 (expm1.f64 re))
(exp.f64 (*.f64 (log.f64 re) -1))
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Outputs
(sin.f64 re)
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im))))
Calls

1 calls:

52.0ms
im
Results
AccuracySegmentsBranch
99.5%2im
Compiler

Compiled 136 to 90 computations (33.8% saved)

regimes70.0ms (1.2%)

Counts
19 → 3
Calls
Call 1
Inputs
1
re
(*.f64 re 5/2)
(+.f64 re re)
(/.f64 1 re)
(/.f64 re -1)
(*.f64 re (+.f64 5/2 (*.f64 1/2 im)))
(sin.f64 re)
(*.f64 2 (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 im))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 1/2 im)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 5/2 (*.f64 1/2 im)))) (*.f64 re (+.f64 5/2 (*.f64 1/2 im))))
(log1p.f64 (expm1.f64 re))
(exp.f64 (*.f64 (log.f64 re) -1))
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
Outputs
(sin.f64 re)
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))
Calls

1 calls:

66.0ms
im
Results
AccuracySegmentsBranch
93.6%3im
Compiler

Compiled 117 to 79 computations (32.5% saved)

regimes31.0ms (0.5%)

Counts
18 → 3
Calls
Call 1
Inputs
1
re
(*.f64 re 5/2)
(+.f64 re re)
(/.f64 1 re)
(/.f64 re -1)
(*.f64 re (+.f64 5/2 (*.f64 1/2 im)))
(sin.f64 re)
(*.f64 2 (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 im))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 1/2 im)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 5/2 (*.f64 1/2 im)))) (*.f64 re (+.f64 5/2 (*.f64 1/2 im))))
(log1p.f64 (expm1.f64 re))
(exp.f64 (*.f64 (log.f64 re) -1))
Outputs
(sin.f64 re)
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))
Calls

1 calls:

26.0ms
im
Results
AccuracySegmentsBranch
93.6%3im
Compiler

Compiled 109 to 74 computations (32.1% saved)

regimes50.0ms (0.8%)

Counts
14 → 2
Calls
Call 1
Inputs
1
re
(*.f64 re 5/2)
(+.f64 re re)
(/.f64 1 re)
(/.f64 re -1)
(*.f64 re (+.f64 5/2 (*.f64 1/2 im)))
(sin.f64 re)
(*.f64 2 (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 im))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 1/2 im)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
Outputs
(sin.f64 re)
(*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im))))
Calls

2 calls:

30.0ms
re
15.0ms
im
Results
AccuracySegmentsBranch
67.7%4re
88.9%2im
Compiler

Compiled 73 to 47 computations (35.6% saved)

regimes80.0ms (1.3%)

Counts
11 → 2
Calls
Call 1
Inputs
1
re
(*.f64 re 5/2)
(+.f64 re re)
(/.f64 1 re)
(/.f64 re -1)
(*.f64 re (+.f64 5/2 (*.f64 1/2 im)))
(sin.f64 re)
(*.f64 2 (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 im))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
Outputs
(sin.f64 re)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
Calls

2 calls:

59.0ms
(sin.f64 re)
19.0ms
im
Results
AccuracySegmentsBranch
57.1%4(sin.f64 re)
75.5%2im
Compiler

Compiled 49 to 31 computations (36.7% saved)

regimes20.0ms (0.3%)

Counts
10 → 2
Calls
Call 1
Inputs
1
re
(*.f64 re 5/2)
(+.f64 re re)
(/.f64 1 re)
(/.f64 re -1)
(*.f64 re (+.f64 5/2 (*.f64 1/2 im)))
(sin.f64 re)
(*.f64 2 (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 im))
Outputs
(sin.f64 re)
(*.f64 re (+.f64 5/2 (*.f64 1/2 im)))
Calls

2 calls:

12.0ms
im
6.0ms
re
Results
AccuracySegmentsBranch
53.1%1re
59.4%2im
Compiler

Compiled 41 to 25 computations (39% saved)

regimes33.0ms (0.5%)

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

2 calls:

10.0ms
re
9.0ms
im
Results
AccuracySegmentsBranch
36.3%2re
36.6%2im
Compiler

Compiled 29 to 19 computations (34.5% saved)

regimes11.0ms (0.2%)

Counts
6 → 1
Calls
Call 1
Inputs
1
re
(*.f64 re 5/2)
(+.f64 re re)
(/.f64 1 re)
(/.f64 re -1)
Outputs
re
Calls

2 calls:

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

Compiled 22 to 14 computations (36.4% saved)

regimes6.0ms (0.1%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

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

2 calls:

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

Compiled 9 to 7 computations (22.2% saved)

bsearch29.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
29.0ms
0.015081679829513594
10132736.778385324
Results
26.0ms144×body256valid
Compiler

Compiled 244 to 204 computations (16.4% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const256144
ival-add256144
ival-exp256288
ival-mult256288
ival-sin256144
ival-sub256144

bsearch111.0ms (1.8%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
111.0ms
0.015081679829513594
10132736.778385324
Results
109.0ms144×body256valid
Compiler

Compiled 172 to 141 computations (18% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const256144
ival-add256144
ival-exp256288
ival-mult256288
ival-sin256144
ival-sub256144

bsearch54.0ms (0.9%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
25.0ms
5.771724979563192e+152
2.104931188738237e+154
29.0ms
0.015081679829513594
10132736.778385324
Results
27.0ms144×body256valid
23.0ms112×body256infinite
Compiler

Compiled 317 to 258 computations (18.6% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const256256
ival-add256256
ival-exp256512
ival-mult256512
ival-sin256256
ival-sub256256

bsearch69.0ms (1.1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
41.0ms
2.3680295588132074e+154
5.465603297152914e+154
28.0ms
0.015081679829513594
10132736.778385324
Results
40.0ms80×body256infinite
26.0ms144×body256valid
Compiler

Compiled 293 to 237 computations (19.1% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const256224
ival-add256224
ival-exp256448
ival-mult256448
ival-sin256224
ival-sub256224

bsearch29.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
29.0ms
0.015081679829513594
10132736.778385324
Results
27.0ms144×body256valid
Compiler

Compiled 163 to 132 computations (19% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const256144
ival-add256144
ival-exp256288
ival-mult256288
ival-sin256144
ival-sub256144

bsearch21.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
21.0ms
3.4831080958259214e+32
1.9644084102077705e+34
Results
19.0ms112×body256infinite
Compiler

Compiled 124 to 99 computations (20.2% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const256112
ival-add256112
ival-exp256224
ival-mult256224
ival-sin256112
ival-sub256112

bsearch22.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
21.0ms
3.4831080958259214e+32
1.9644084102077705e+34
Results
20.0ms112×body256infinite
Compiler

Compiled 124 to 99 computations (20.2% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const256112
ival-add256112
ival-exp256224
ival-mult256224
ival-sin256112
ival-sub256112

bsearch30.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
30.0ms
0.015081679829513594
10132736.778385324
Results
18.0ms88×body256valid
10.0ms56×body256infinite
Compiler

Compiled 145 to 114 computations (21.4% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecx
const256144
ival-add256144
ival-exp256288
ival-mult256288
ival-sin256144
ival-sub256144

simplify12.0ms (0.2%)

Algorithm
egg-herbie
Rules
34×*-commutative
14×+-commutative
sub-neg
1-exp
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
075599
1102599
2104599
3105599
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.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 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 im 2589569785738035/1125899906842624) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re)) (*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im 5854679515581645/4503599627370496) (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im 2476979795053773/562949953421312) (sin.f64 re) (if (<=.f64 im 13199999999999999773196063550815192655340841269168371305534464478777571651222204465790151517816444445650545021209011632002935604597533337723926189038370816) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))) (*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))))
(if (<=.f64 im 3152519739159347/562949953421312) (sin.f64 re) (if (<=.f64 im 26500000000000001202394816837153440112746600332278117351033989166343048815743921120916149049155174113539146926539333908649239696321339382235102030298349568) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))) (*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))))
(if (<=.f64 im 3152519739159347/562949953421312) (sin.f64 re) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im 599999999999999996168176207396864) (sin.f64 re) (*.f64 (pow.f64 im 2) (*.f64 re 1/2)))
(if (<=.f64 im 1649999999999999881376093513449472) (sin.f64 re) (*.f64 re (+.f64 5/2 (*.f64 1/2 im))))
(if (<=.f64 im 410) re (*.f64 re (+.f64 5/2 (*.f64 1/2 im))))
re
1
Outputs
(*.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 (neg.f64 im)) (exp.f64 im)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (sin.f64 re) 1/2))
(if (<=.f64 im 2589569785738035/1125899906842624) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re)) (*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im 2589569785738035/1125899906842624) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) (*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im 5854679515581645/4503599627370496) (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 2 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im 2476979795053773/562949953421312) (sin.f64 re) (if (<=.f64 im 13199999999999999773196063550815192655340841269168371305534464478777571651222204465790151517816444445650545021209011632002935604597533337723926189038370816) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))) (*.f64 (pow.f64 im 2) (*.f64 (sin.f64 re) 1/2))))
(if (<=.f64 im 3152519739159347/562949953421312) (sin.f64 re) (if (<=.f64 im 26500000000000001202394816837153440112746600332278117351033989166343048815743921120916149049155174113539146926539333908649239696321339382235102030298349568) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))) (*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 im (+.f64 (*.f64 1/4 im) 1/2))))))
(if (<=.f64 im 3152519739159347/562949953421312) (sin.f64 re) (if (<=.f64 im 26500000000000001202394816837153440112746600332278117351033989166343048815743921120916149049155174113539146926539333908649239696321339382235102030298349568) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))) (*.f64 (sin.f64 re) (+.f64 5/2 (*.f64 im (+.f64 1/2 (*.f64 im 1/4)))))))
(if (<=.f64 im 3152519739159347/562949953421312) (sin.f64 re) (*.f64 re (+.f64 2 (*.f64 1/2 (exp.f64 im)))))
(if (<=.f64 im 599999999999999996168176207396864) (sin.f64 re) (*.f64 (pow.f64 im 2) (*.f64 re 1/2)))
(if (<=.f64 im 1649999999999999881376093513449472) (sin.f64 re) (*.f64 re (+.f64 5/2 (*.f64 1/2 im))))
(if (<=.f64 im 410) re (*.f64 re (+.f64 5/2 (*.f64 1/2 im))))
re
1
Compiler

Compiled 194 to 142 computations (26.8% saved)

soundness1.3s (20.8%)

Rules
2266×fma-def
2266×fma-def
1664×fma-def
1644×fma-def
1644×fma-def
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
036316
1111308
2394308
31005298
42232294
55131294
67600294
020140
1270140
24365140
01434216
14553822
214633432
362293432
036316
1111308
2394308
31005298
42232294
55131294
67600294
020140
1270140
24365140
01814258
14543865
212643562
359473518
02954321
16864121
225403853
358023853
02954321
16864121
225403853
358023853
01434216
14553822
214633432
362293432
Stop Event
node limit
node limit
node limit
node limit
unsound
node limit
node limit
unsound
node limit
Compiler

Compiled 654 to 407 computations (37.8% saved)

end0.0ms (0%)

preprocess151.0ms (2.5%)

Remove

(negabs re)

(abs im)

Compiler

Compiled 632 to 414 computations (34.5% saved)

Profiling

Loading profile data...