math.sin on complex, real part

Time bar (total: 9.9s)

analyze0.0ms (0%)

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

Compiled 15 to 12 computations (20% saved)

sample1.9s (19.6%)

Results
553.0ms1061×body1024valid
376.0ms2564×body256valid
374.0ms1036×body1024infinite
359.0ms2538×body256infinite
133.0ms507×body512valid
129.0ms549×body512infinite
1.0msbody2048valid
Bogosity

preprocess94.0ms (1%)

Algorithm
egg-herbie
Rules
1388×fma-def
1228×distribute-lft-neg-in
1086×fma-neg
802×times-frac
794×distribute-rgt-neg-in
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
031144
194144
2254140
3526134
41151132
53093132
65261132
77961132
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 (neg.f64 re))) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 (neg.f64 im))) (exp.f64 (neg.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (-.f64 0 re)) (exp.f64 re)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 (neg.f64 re))) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 1/2 (*.f64 (neg.f64 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (neg.f64 (sin.f64 re))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) -1/2))
(*.f64 (sin.f64 re) (*.f64 -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 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (-.f64 0 re)) (exp.f64 re)))
(*.f64 1/2 (*.f64 (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 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)))
(*.f64 (sin.f64 im) (fma.f64 1/2 (exp.f64 re) (/.f64 1/2 (exp.f64 re))))
Symmetry

(abs im)

Compiler

Compiled 16 to 13 computations (18.8% saved)

simplify85.0ms (0.9%)

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

Useful iterations: 3 (0.0ms)

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

eval1.0ms (0%)

Compiler

Compiled 47 to 25 computations (46.8% saved)

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 26 to 20 computations (23.1% saved)

localize67.0ms (0.7%)

Local Accuracy

Found 2 expressions with local accuracy:

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

Compiled 36 to 14 computations (61.1% saved)

series6.0ms (0.1%)

Counts
2 → 36
Calls

9 calls:

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

rewrite35.0ms (0.4%)

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

Useful iterations: 0 (0.0ms)

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

simplify67.0ms (0.7%)

Algorithm
egg-herbie
Rules
1156×fma-neg
1104×div-sub
842×fma-def
762×associate-*r*
658×associate-*l*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01141482
13251390
210251390
351771390
Stop Event
node limit
Counts
68 → 67
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6)))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) -2))) 1)
(/.f64 (*.f64 (sin.f64 re) -2) -2)
(/.f64 (*.f64 (sin.f64 re) -2) 1)
(/.f64 (*.f64 (sin.f64 re) -2) (+.f64 (*.f64 (sin.f64 re) -2) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))))
(/.f64 (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) -2) 1)
(pow.f64 (*.f64 (sin.f64 re) -2) 3)
(pow.f64 (*.f64 (sin.f64 re) -2) 1/3)
(sqrt.f64 (*.f64 (sin.f64 re) -2))
(fabs.f64 (*.f64 (sin.f64 re) -2))
(log.f64 (pow.f64 1 (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) -2))))
(cbrt.f64 (*.f64 (sin.f64 re) -2))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) -2)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) -2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) -2)) 1))
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) -2)) -2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) -2)))
(fma.f64 1 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(fma.f64 (*.f64 (sin.f64 re) -2) 1 (*.f64 (sin.f64 re) -2))
-2
0
1/512
1/64
1/16
1/8
1/4
1/2
2
Outputs
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/2 re) (*.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/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (fma.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 1/240 (pow.f64 re 5)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/2 re) (*.f64 1/240 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))
(fma.f64 -1/10080 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 7)) (fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (fma.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 1/240 (pow.f64 re 5)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/2 re) (*.f64 1/240 (pow.f64 re 5)))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/10080 (pow.f64 re 7)) (*.f64 -1/12 (pow.f64 re 3)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (sin.f64 re))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (*.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 im 4))))
(+.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(+.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 6) 1/720)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
2
(sin.f64 re)
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6)))))
(+.f64 (+.f64 2 (*.f64 im im)) (fma.f64 1/12 (pow.f64 im 4) (*.f64 (pow.f64 im 6) 1/360)))
(+.f64 2 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 (*.f64 (pow.f64 im 6) 1/360))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (sin.f64 re) (sin.f64 re))
(sin.f64 re)
(+.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) -2))) 1)
(sin.f64 re)
(/.f64 (*.f64 (sin.f64 re) -2) -2)
(sin.f64 re)
(/.f64 (*.f64 (sin.f64 re) -2) 1)
(sin.f64 re)
(/.f64 (*.f64 (sin.f64 re) -2) (+.f64 (*.f64 (sin.f64 re) -2) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))))
(sin.f64 re)
(/.f64 (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)))
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) -2) 1)
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) -2) 3)
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) -2) 1/3)
(sin.f64 re)
(sqrt.f64 (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(fabs.f64 (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(log.f64 (pow.f64 1 (sin.f64 re)))
(sin.f64 re)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) -2))))
(sin.f64 re)
(cbrt.f64 (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) -2)))
(sin.f64 re)
(exp.f64 (log.f64 (*.f64 (sin.f64 re) -2)))
(sin.f64 re)
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) -2)) 1))
(sin.f64 re)
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) -2)) -2))
(sin.f64 re)
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) -2)))
(sin.f64 re)
(fma.f64 1 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(fma.f64 (*.f64 (sin.f64 re) -2) 1 (*.f64 (sin.f64 re) -2))
(sin.f64 re)
-2
(sin.f64 re)
0
(sin.f64 re)
1/512
1/64
1/16
1/8
(sin.f64 re)
1/4
(sin.f64 re)
1/2
(sin.f64 re)
2
(sin.f64 re)

eval17.0ms (0.2%)

Compiler

Compiled 914 to 485 computations (46.9% saved)

prune20.0ms (0.2%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New61667
Fresh000
Picked011
Done000
Total61768
Accurracy
99.6%
Counts
68 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
9.4%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
72.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
87.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
72.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
69.6%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
47.8%
(sin.f64 re)
9.4%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
72.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
87.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
72.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
69.6%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
47.8%
(sin.f64 re)
Compiler

Compiled 294 to 220 computations (25.2% saved)

localize248.0ms (2.5%)

Local Accuracy

Found 7 expressions with local accuracy:

NewAccuracyProgram
100.0%
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
99.6%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
99.7%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
93.7%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
100.0%
(+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12))
99.9%
(*.f64 (pow.f64 im 4) 1/12)
97.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
Compiler

Compiled 132 to 64 computations (51.5% saved)

series39.0ms (0.4%)

Counts
7 → 116
Calls

30 calls:

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

rewrite51.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
598×add-sqr-sqrt
580×pow1
576×*-un-lft-identity
564×add-exp-log
562×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

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

simplify126.0ms (1.3%)

Algorithm
egg-herbie
Rules
1516×fma-def
1110×distribute-lft-in
1066×distribute-rgt-in
852×fma-neg
756×associate-*r*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02344671
15254439
213793953
364713953
Stop Event
node limit
Counts
241 → 218
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) re))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) re)))
(+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) re))))
(+.f64 (*.f64 -1/10080 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 7))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) re)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(*.f64 1/12 (pow.f64 im 4))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(*.f64 1/12 (pow.f64 im 4))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re)) (*.f64 -1/12 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)))))
(+.f64 (*.f64 -1/10080 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(/.f64 1/4 (pow.f64 re 2))
(+.f64 1/12 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))))
(+.f64 1/12 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2))))
(+.f64 1/12 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (+.f64 (*.f64 1/60 (pow.f64 re 2)) (*.f64 1/378 (pow.f64 re 4)))))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
re
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6)))))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352))
(+.f64 (*.f64 (sin.f64 re) 1/5159780352) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) 1/5159780352) (*.f64 (sin.f64 re) 1/5159780352))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 1/5159780352))) -512)
(/.f64 (*.f64 (sin.f64 re) 1/5159780352) 1/5159780352)
(/.f64 (*.f64 (sin.f64 re) 1/5159780352) (+.f64 (sin.f64 re) (-.f64 (*.f64 (sin.f64 re) 1/5159780352) (*.f64 (sin.f64 re) 1/5159780352))))
(/.f64 (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352)) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352)))
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) 1/3)
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(fabs.f64 (*.f64 (sin.f64 re) 1/5159780352))
(log.f64 (pow.f64 (exp.f64 1/5159780352) (sin.f64 re)))
(log.f64 (+.f64 -512 (expm1.f64 (*.f64 (sin.f64 re) 1/5159780352))))
(cbrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) 1/5159780352)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) 1/5159780352)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 1/5159780352)) -512))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) 1/5159780352)))
(fma.f64 (sin.f64 re) (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352))
(fma.f64 (sin.f64 re) -512 (*.f64 (sin.f64 re) 1/5159780352))
(fma.f64 -512 (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352))
1/5159780352
1/2985984
1/20736
1/1728
1/144
1/12
13/12
1/5159780352
1/2985984
1/20736
1/1728
1/144
1/12
13/12
(+.f64 (sin.f64 re) (sin.f64 re))
(-.f64 -512 (*.f64 -512 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -512)
(/.f64 (sin.f64 re) -512)
(/.f64 (sin.f64 re) (+.f64 (sin.f64 re) (-.f64 (sin.f64 re) (sin.f64 re))))
(/.f64 -512 (sin.f64 re))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -512)
(/.f64 (-.f64 (sin.f64 re) (sin.f64 re)) (-.f64 (sin.f64 re) (sin.f64 re)))
(pow.f64 (sin.f64 re) -512)
(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 -512 (expm1.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(exp.f64 (log.f64 (sin.f64 re)))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(fma.f64 (sin.f64 re) -512 (sin.f64 re))
(fma.f64 -512 (sin.f64 re) (sin.f64 re))
(+.f64 (sin.f64 re) (sin.f64 re))
(-.f64 -512 (*.f64 -512 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -512)
(*.f64 (sin.f64 re) (sin.f64 re))
(*.f64 (sin.f64 re) -512)
(*.f64 -512 (sin.f64 re))
(/.f64 (sin.f64 re) -512)
(/.f64 (sin.f64 re) (+.f64 (sin.f64 re) (-.f64 (sin.f64 re) (sin.f64 re))))
(/.f64 -512 (sin.f64 re))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -512)
(/.f64 (-.f64 (sin.f64 re) (sin.f64 re)) (-.f64 (sin.f64 re) (sin.f64 re)))
(sqrt.f64 (sin.f64 re))
(fabs.f64 (sin.f64 re))
(log.f64 (exp.f64 (sin.f64 re)))
(log.f64 (+.f64 -512 (expm1.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(exp.f64 (log.f64 (sin.f64 re)))
(log1p.f64 (expm1.f64 (sin.f64 re)))
(fma.f64 (sin.f64 re) -512 (sin.f64 re))
(fma.f64 -512 (sin.f64 re) (sin.f64 re))
(+.f64 re re)
(-.f64 (exp.f64 (log1p.f64 re)) -512)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
(/.f64 (-.f64 re re) (-.f64 re re))
(pow.f64 re -512)
(pow.f64 re 1/3)
(sqrt.f64 re)
(fabs.f64 re)
(log.f64 (exp.f64 re))
(log.f64 (+.f64 -512 (expm1.f64 re)))
(cbrt.f64 re)
(expm1.f64 (log1p.f64 re))
(exp.f64 (log.f64 re))
(exp.f64 (*.f64 (log.f64 re) -512))
(log1p.f64 (expm1.f64 re))
(fma.f64 -512 re re)
(fma.f64 re -512 re)
-512
-8
-4
-2
-1
-1/2
0
1/512
1/64
1/16
1/8
1/4
1/2
1
3/2
2
3
4
5
6
8
9
16
27
64
256
512
4096
262144
Outputs
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 re (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (*.f64 1/2 re))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) re)))
(fma.f64 -1/12 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))))
(fma.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))) (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 (pow.f64 re 3) -1/12)))
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) re))))
(fma.f64 1/240 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 5)) (fma.f64 -1/12 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))))
(fma.f64 1/240 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 5)) (fma.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))) (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 (pow.f64 re 3) -1/12))))
(fma.f64 -1/12 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (pow.f64 re 3)) (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 (*.f64 1/2 re) (*.f64 1/240 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/10080 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 7))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) re)))))
(fma.f64 -1/10080 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 7)) (fma.f64 1/240 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 5)) (fma.f64 -1/12 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))))))
(fma.f64 -1/10080 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 7)) (fma.f64 1/240 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 5)) (fma.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))) (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (*.f64 (pow.f64 re 3) -1/12)))))
(+.f64 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3)))) (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 -1/10080 (pow.f64 re 7)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(fma.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)) (*.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re))))
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(fma.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)) (*.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re))))
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (sin.f64 re)))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(*.f64 1/12 (pow.f64 im 4))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(*.f64 1/12 (pow.f64 im 4))
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 re))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re)) (*.f64 -1/12 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))))
(fma.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))) (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 im im)))))
(fma.f64 1/2 (*.f64 re (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (*.f64 (pow.f64 re 3) -1/12)))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)))))
(fma.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))) (fma.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 im im))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (*.f64 im im))))))
(fma.f64 1/2 (*.f64 re (fma.f64 im im 2)) (fma.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 im im 2)) (*.f64 (pow.f64 re 5) (*.f64 1/240 (fma.f64 im im 2)))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 im im 2)) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 1/240 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/10080 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))))))
(fma.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 2 (*.f64 im im))) (fma.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))) (fma.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (*.f64 im im))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (*.f64 im im)))))))
(fma.f64 -1/10080 (*.f64 (pow.f64 re 7) (fma.f64 im im 2)) (fma.f64 1/2 (*.f64 re (fma.f64 im im 2)) (fma.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 im im 2)) (*.f64 (pow.f64 re 5) (*.f64 1/240 (fma.f64 im im 2))))))
(+.f64 (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3)))) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 -1/10080 (pow.f64 re 7)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re)))
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re)))
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(+.f64 1/12 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))))
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(+.f64 1/12 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(+.f64 1/12 (fma.f64 (*.f64 re re) 1/60 (/.f64 (/.f64 1/4 re) re)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
(+.f64 1/12 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (+.f64 (*.f64 1/60 (pow.f64 re 2)) (*.f64 1/378 (pow.f64 re 4)))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 1/60 (*.f64 re re) (*.f64 1/378 (pow.f64 re 4)))))
(+.f64 (+.f64 1/12 (/.f64 (/.f64 1/4 re) re)) (fma.f64 1/378 (pow.f64 re 4) (*.f64 (*.f64 1/60 re) re)))
(+.f64 (fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re))) (fma.f64 1/378 (pow.f64 re 4) 1/12))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
re
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 re))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 re (+.f64 1 (*.f64 1/2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (*.f64 1/2 re))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(fma.f64 1/24 (*.f64 (pow.f64 im 4) re) (fma.f64 1/720 (*.f64 re (pow.f64 im 6)) (+.f64 re (*.f64 1/2 (*.f64 (*.f64 im im) re)))))
(fma.f64 1/24 (*.f64 (pow.f64 im 4) re) (fma.f64 1/720 (*.f64 re (pow.f64 im 6)) (fma.f64 1/2 (*.f64 im (*.f64 im re)) re)))
(fma.f64 re (*.f64 1/720 (pow.f64 im 6)) (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (*.f64 1/2 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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) 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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) 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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) 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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) 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 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6)))))
(+.f64 2 (+.f64 (*.f64 im im) (fma.f64 1/12 (pow.f64 im 4) (*.f64 (pow.f64 im 6) 1/360))))
(+.f64 (fma.f64 im im 2) (fma.f64 1/12 (pow.f64 im 4) (*.f64 (pow.f64 im 6) 1/360)))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 (pow.f64 im 6) 1/360 (*.f64 im im))))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352))
(fma.f64 (sin.f64 re) 1/5159780352 (sin.f64 re))
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(+.f64 (*.f64 (sin.f64 re) 1/5159780352) (sin.f64 re))
(fma.f64 (sin.f64 re) 1/5159780352 (sin.f64 re))
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(+.f64 (*.f64 (sin.f64 re) 1/5159780352) (*.f64 (sin.f64 re) 1/5159780352))
(*.f64 (sin.f64 re) 1/2579890176)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 1/5159780352))) -512)
(+.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 1/5159780352))) 512)
(/.f64 (*.f64 (sin.f64 re) 1/5159780352) 1/5159780352)
(sin.f64 re)
(/.f64 (*.f64 (sin.f64 re) 1/5159780352) (+.f64 (sin.f64 re) (-.f64 (*.f64 (sin.f64 re) 1/5159780352) (*.f64 (sin.f64 re) 1/5159780352))))
(/.f64 (*.f64 (sin.f64 re) 1/5159780352) (+.f64 (sin.f64 re) 0))
(*.f64 (/.f64 (sin.f64 re) (sin.f64 re)) 1/5159780352)
1/5159780352
(/.f64 (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352)) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352)))
1
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 73651532436445428098818655865528114694107218730166129960353043628366716242278403901337450600270017144964118912384922467617333908026653437203847794375364293665491204417255737422691077233211780842298254748119762897728859353913005374777193725365755971516176488315830506986535400394363123421903029158587191787691686609700229771653793320498966091999627805330849795630674429195197836526893184065502184119708581323943442987842789846554275431918232581298453541403708918264371778921957751950371791590412951782659708369648771304660540100514107370682112643437954654945347472777223965755333452161963280889277693493724570780337687714366064129682491828605355294070823617465627307492686462872597371059373343775865561244945115406802197104838635721640703576673673671111771474554772417869011555606662336891031962824712544843681532680928659344967752201466721705675762818636079563734952384622926816322735026130467153905013961429594281012183777340383074468145173253762163952409249737357497968255868730494877930161802819769341532009687526725083751130144717838189385932097110102570533726684460531252641463605918779481336844430192072039399798393399519288092349344920363540193886961736891286967040011363999665661597873475790716002499818483936559921014922009697000854646093810852836188325574693249210095444297281727389452673071084013677729910108256415946030583226122466896325489218386357779396644783993693863239451010014788082731949502610122271423020409971551784850206477025394629132042811557706509332413597375426674507811619580281123096415469794268575929326241905330436436410494576245543442013619454936248475017439154765595239321580744815796609159033930932512345403399468101900742632220200291091071118434228522635214663116947208488401604047551476501156140052635949272209963610837232213421527126655195865015219963144937090000870652423185465536968941956455756507762505965203484658804599271766380122793692727550804460519827615338094985933923881833740865194356429831211326618670738068685903773381920670131380800594415476395333778820568375192533202335923241473561159617555436057228674945001446898644924975422324153706621808149152748323578544332332519168415632478141699545111051794442821238635510073460627155094403436982694321313214801607432590649361280999547917778231832951440536369448945515000460748434119613350569744059208663754792456436367176921970925682735396682470085506478116084259891794273595591681086300417357525392010202224805368527120160550953351352673719029700138160301432212324285112929391747247754969777061372872428017067243861354291256221427080574620143885356421552276892307865506548503137378157930354382696254729097369769646351243119030813624341065402384360120995930299738520914081665952989957514296736127673357629806259973877783560050591966359834849695664993348385744703196146825439875223763498561969737550986980089381658319195033619787968695649010999531438008444221495329001898110184800919116341355774054894293189389447309601390044231368670228769950283533501585152970041647315736615251063413352760336692774400912615717114449810121465475997198993893568221292207081575288346999205513647269120874590495308174266013642100964022100120913379454308257490325096402753766521193263206171378044662422072575475399058483262201205125243328686166894649039376146452271663758713637495451663895045175971248337689396908566111455613925815642500797361175986327564254047386701435636502100944373975755171885309229021632036380799805685604577927585552192139475858853776143178229660141814854761695972863440759651571751800033198572933315246605498330448506945816943431264736253739343616107962806953800673001705502367147401142548084272355649855174770425103059576792933279150748106570025837620301551383514493051810461335764837352447734166406641702773391010389184349131533171911616645523604852567509362077325984605918249877108470816812449533831950151115612509626924323082751936116290239265924819928422093970960278732294841412078853431219777141992837841353838497300604001800122822217367641359928223954577905304552589711614296619685935228951354035364124892280606746271675306355410837002674190914082702428009506282653262707624302337657753113762574417233480841205337801384802615564199108534305971602086272107922222247571245139918679272508380134934083152108197932713590745521329348107216451430291796890455008356539419318533467356687732965260215655993119953718184817135560479757240169172970226422055971942996965279489975573619057116994919676621868268223266743057576563378293299711819941022381474523225930552368902040382394626429233983547350822442332319590988946788298060039099711028733781466254887994350909632565892427537133810314415606826409836774243538052235538349337454517908440333962147395133709338872737257083336622151557612956544257897031403732484396171795793376003083115787739261017258474484010650803356363238229653593031609985245477460542954596565227918435787278598262114109219152596811398275068278931073999914546249633922819967198669798538953534472626917915043747049050384162590981452438296053557137257961877405696 (pow.f64 (sin.f64 re) -512))
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) 1/3)
(cbrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(fabs.f64 (*.f64 (sin.f64 re) 1/5159780352))
(*.f64 1/5159780352 (fabs.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) 1/5159780352)
(log.f64 (pow.f64 (exp.f64 1/5159780352) (sin.f64 re)))
(fabs.f64 (*.f64 (sin.f64 re) 1/5159780352))
(*.f64 1/5159780352 (fabs.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) 1/5159780352)
(log.f64 (+.f64 -512 (expm1.f64 (*.f64 (sin.f64 re) 1/5159780352))))
(cbrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) 1/5159780352)))
(fabs.f64 (*.f64 (sin.f64 re) 1/5159780352))
(*.f64 1/5159780352 (fabs.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) 1/5159780352)
(exp.f64 (log.f64 (*.f64 (sin.f64 re) 1/5159780352)))
(fabs.f64 (*.f64 (sin.f64 re) 1/5159780352))
(*.f64 1/5159780352 (fabs.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) 1/5159780352)
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 1/5159780352)) -512))
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 73651532436445428098818655865528114694107218730166129960353043628366716242278403901337450600270017144964118912384922467617333908026653437203847794375364293665491204417255737422691077233211780842298254748119762897728859353913005374777193725365755971516176488315830506986535400394363123421903029158587191787691686609700229771653793320498966091999627805330849795630674429195197836526893184065502184119708581323943442987842789846554275431918232581298453541403708918264371778921957751950371791590412951782659708369648771304660540100514107370682112643437954654945347472777223965755333452161963280889277693493724570780337687714366064129682491828605355294070823617465627307492686462872597371059373343775865561244945115406802197104838635721640703576673673671111771474554772417869011555606662336891031962824712544843681532680928659344967752201466721705675762818636079563734952384622926816322735026130467153905013961429594281012183777340383074468145173253762163952409249737357497968255868730494877930161802819769341532009687526725083751130144717838189385932097110102570533726684460531252641463605918779481336844430192072039399798393399519288092349344920363540193886961736891286967040011363999665661597873475790716002499818483936559921014922009697000854646093810852836188325574693249210095444297281727389452673071084013677729910108256415946030583226122466896325489218386357779396644783993693863239451010014788082731949502610122271423020409971551784850206477025394629132042811557706509332413597375426674507811619580281123096415469794268575929326241905330436436410494576245543442013619454936248475017439154765595239321580744815796609159033930932512345403399468101900742632220200291091071118434228522635214663116947208488401604047551476501156140052635949272209963610837232213421527126655195865015219963144937090000870652423185465536968941956455756507762505965203484658804599271766380122793692727550804460519827615338094985933923881833740865194356429831211326618670738068685903773381920670131380800594415476395333778820568375192533202335923241473561159617555436057228674945001446898644924975422324153706621808149152748323578544332332519168415632478141699545111051794442821238635510073460627155094403436982694321313214801607432590649361280999547917778231832951440536369448945515000460748434119613350569744059208663754792456436367176921970925682735396682470085506478116084259891794273595591681086300417357525392010202224805368527120160550953351352673719029700138160301432212324285112929391747247754969777061372872428017067243861354291256221427080574620143885356421552276892307865506548503137378157930354382696254729097369769646351243119030813624341065402384360120995930299738520914081665952989957514296736127673357629806259973877783560050591966359834849695664993348385744703196146825439875223763498561969737550986980089381658319195033619787968695649010999531438008444221495329001898110184800919116341355774054894293189389447309601390044231368670228769950283533501585152970041647315736615251063413352760336692774400912615717114449810121465475997198993893568221292207081575288346999205513647269120874590495308174266013642100964022100120913379454308257490325096402753766521193263206171378044662422072575475399058483262201205125243328686166894649039376146452271663758713637495451663895045175971248337689396908566111455613925815642500797361175986327564254047386701435636502100944373975755171885309229021632036380799805685604577927585552192139475858853776143178229660141814854761695972863440759651571751800033198572933315246605498330448506945816943431264736253739343616107962806953800673001705502367147401142548084272355649855174770425103059576792933279150748106570025837620301551383514493051810461335764837352447734166406641702773391010389184349131533171911616645523604852567509362077325984605918249877108470816812449533831950151115612509626924323082751936116290239265924819928422093970960278732294841412078853431219777141992837841353838497300604001800122822217367641359928223954577905304552589711614296619685935228951354035364124892280606746271675306355410837002674190914082702428009506282653262707624302337657753113762574417233480841205337801384802615564199108534305971602086272107922222247571245139918679272508380134934083152108197932713590745521329348107216451430291796890455008356539419318533467356687732965260215655993119953718184817135560479757240169172970226422055971942996965279489975573619057116994919676621868268223266743057576563378293299711819941022381474523225930552368902040382394626429233983547350822442332319590988946788298060039099711028733781466254887994350909632565892427537133810314415606826409836774243538052235538349337454517908440333962147395133709338872737257083336622151557612956544257897031403732484396171795793376003083115787739261017258474484010650803356363238229653593031609985245477460542954596565227918435787278598262114109219152596811398275068278931073999914546249633922819967198669798538953534472626917915043747049050384162590981452438296053557137257961877405696 (pow.f64 (sin.f64 re) -512))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) 1/5159780352)))
(fabs.f64 (*.f64 (sin.f64 re) 1/5159780352))
(*.f64 1/5159780352 (fabs.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) 1/5159780352)
(fma.f64 (sin.f64 re) (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352))
(+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) 1/5159780352))
(*.f64 (sin.f64 re) (+.f64 (sin.f64 re) 1/5159780352))
(fma.f64 (sin.f64 re) -512 (*.f64 (sin.f64 re) 1/5159780352))
(*.f64 (sin.f64 re) -2641807540223/5159780352)
(fma.f64 -512 (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352))
(fma.f64 (sin.f64 re) -512 (*.f64 (sin.f64 re) 1/5159780352))
(*.f64 (sin.f64 re) -2641807540223/5159780352)
1/5159780352
(/.f64 (*.f64 (sin.f64 re) 1/5159780352) (+.f64 (sin.f64 re) 0))
(*.f64 (/.f64 (sin.f64 re) (sin.f64 re)) 1/5159780352)
1/2985984
1/20736
1/1728
1/144
1/12
13/12
1/5159780352
(/.f64 (*.f64 (sin.f64 re) 1/5159780352) (+.f64 (sin.f64 re) 0))
(*.f64 (/.f64 (sin.f64 re) (sin.f64 re)) 1/5159780352)
1/2985984
1/20736
1/1728
1/144
1/12
13/12
(+.f64 (sin.f64 re) (sin.f64 re))
(*.f64 2 (sin.f64 re))
(-.f64 -512 (*.f64 -512 (cos.f64 re)))
(+.f64 -512 (*.f64 (cos.f64 re) 512))
(fma.f64 (cos.f64 re) 512 -512)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -512)
(+.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 512)
(/.f64 (sin.f64 re) -512)
(/.f64 (sin.f64 re) (+.f64 (sin.f64 re) (-.f64 (sin.f64 re) (sin.f64 re))))
1
(/.f64 -512 (sin.f64 re))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -512)
(/.f64 (-.f64 (cos.f64 0) (cos.f64 re)) -512)
(-.f64 -1/512 (/.f64 (cos.f64 re) -512))
(/.f64 (-.f64 (sin.f64 re) (sin.f64 re)) (-.f64 (sin.f64 re) (sin.f64 re)))
1
(pow.f64 (sin.f64 re) -512)
(pow.f64 (sin.f64 re) 1/3)
(cbrt.f64 (sin.f64 re))
(sqrt.f64 (sin.f64 re))
(fabs.f64 (sin.f64 re))
(sin.f64 re)
(log.f64 (exp.f64 (sin.f64 re)))
(sin.f64 re)
(log.f64 (+.f64 -512 (expm1.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(sin.f64 re)
(exp.f64 (log.f64 (sin.f64 re)))
(sin.f64 re)
(log1p.f64 (expm1.f64 (sin.f64 re)))
(sin.f64 re)
(fma.f64 (sin.f64 re) -512 (sin.f64 re))
(*.f64 -511 (sin.f64 re))
(*.f64 (sin.f64 re) -511)
(fma.f64 -512 (sin.f64 re) (sin.f64 re))
(fma.f64 (sin.f64 re) -512 (sin.f64 re))
(*.f64 -511 (sin.f64 re))
(*.f64 (sin.f64 re) -511)
(+.f64 (sin.f64 re) (sin.f64 re))
(*.f64 2 (sin.f64 re))
(-.f64 -512 (*.f64 -512 (cos.f64 re)))
(+.f64 -512 (*.f64 (cos.f64 re) 512))
(fma.f64 (cos.f64 re) 512 -512)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -512)
(+.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 512)
(*.f64 (sin.f64 re) (sin.f64 re))
(pow.f64 (sin.f64 re) 2)
(*.f64 (sin.f64 re) -512)
(*.f64 -512 (sin.f64 re))
(*.f64 (sin.f64 re) -512)
(/.f64 (sin.f64 re) -512)
(/.f64 (sin.f64 re) (+.f64 (sin.f64 re) (-.f64 (sin.f64 re) (sin.f64 re))))
1
(/.f64 -512 (sin.f64 re))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -512)
(/.f64 (-.f64 (cos.f64 0) (cos.f64 re)) -512)
(-.f64 -1/512 (/.f64 (cos.f64 re) -512))
(/.f64 (-.f64 (sin.f64 re) (sin.f64 re)) (-.f64 (sin.f64 re) (sin.f64 re)))
1
(sqrt.f64 (sin.f64 re))
(fabs.f64 (sin.f64 re))
(sin.f64 re)
(log.f64 (exp.f64 (sin.f64 re)))
(sin.f64 re)
(log.f64 (+.f64 -512 (expm1.f64 (sin.f64 re))))
(cbrt.f64 (sin.f64 re))
(sin.f64 re)
(expm1.f64 (log1p.f64 (sin.f64 re)))
(sin.f64 re)
(exp.f64 (log.f64 (sin.f64 re)))
(sin.f64 re)
(log1p.f64 (expm1.f64 (sin.f64 re)))
(sin.f64 re)
(fma.f64 (sin.f64 re) -512 (sin.f64 re))
(*.f64 -511 (sin.f64 re))
(*.f64 (sin.f64 re) -511)
(fma.f64 -512 (sin.f64 re) (sin.f64 re))
(fma.f64 (sin.f64 re) -512 (sin.f64 re))
(*.f64 -511 (sin.f64 re))
(*.f64 (sin.f64 re) -511)
(+.f64 re re)
(-.f64 (exp.f64 (log1p.f64 re)) -512)
(+.f64 (exp.f64 (log1p.f64 re)) 512)
(/.f64 re -512)
(/.f64 re (+.f64 re (-.f64 re re)))
1
(/.f64 (-.f64 re re) (-.f64 re re))
1
(pow.f64 re -512)
(pow.f64 re 1/3)
(cbrt.f64 re)
(sqrt.f64 re)
(fabs.f64 re)
re
(log.f64 (exp.f64 re))
re
(log.f64 (+.f64 -512 (expm1.f64 re)))
(cbrt.f64 re)
(expm1.f64 (log1p.f64 re))
re
(exp.f64 (log.f64 re))
re
(exp.f64 (*.f64 (log.f64 re) -512))
(pow.f64 re -512)
(log1p.f64 (expm1.f64 re))
re
(fma.f64 -512 re re)
(*.f64 -511 re)
(*.f64 re -511)
(fma.f64 re -512 re)
(fma.f64 -512 re re)
(*.f64 -511 re)
(*.f64 re -511)
-512
-8
-4
-2
-1
-1/2
0
1/512
1/64
1/16
1/8
1/4
1/2
1
3/2
2
3
4
5
6
8
9
16
27
64
256
512
4096
262144

eval56.0ms (0.6%)

Compiler

Compiled 2453 to 1591 computations (35.1% saved)

prune80.0ms (0.8%)

Pruning

33 alts after pruning (28 fresh and 5 done)

PrunedKeptTotal
New19127218
Fresh011
Picked145
Done011
Total19233225
Accurracy
99.6%
Counts
225 → 33
Alt Table
Click to see full alt table
StatusAccuracyProgram
46.9%
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
23.9%
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
16.2%
(pow.f64 (sin.f64 re) -512)
12.5%
(pow.f64 re -512)
7.9%
(/.f64 (/.f64 1/4 re) re)
2.7%
(/.f64 re -512)
7.9%
(/.f64 1/4 (*.f64 re re))
12.9%
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
72.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
7.4%
(+.f64 re re)
9.3%
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
12.9%
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
50.0%
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
42.2%
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
87.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
40.5%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
45.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
72.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
69.6%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
6.3%
(*.f64 (*.f64 1/2 re) 262144)
6.0%
(*.f64 (*.f64 1/2 re) 1/512)
33.4%
(*.f64 (sin.f64 re) 5159780353/5159780352)
2.6%
(*.f64 re -511)
22.3%
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
53.1%
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
42.2%
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
47.8%
(sin.f64 re)
45.7%
(log1p.f64 (expm1.f64 re))
4.0%
(cbrt.f64 re)
29.0%
re
4.3%
1
3.4%
1/5159780352
46.9%
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
23.9%
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
16.2%
(pow.f64 (sin.f64 re) -512)
12.5%
(pow.f64 re -512)
7.9%
(/.f64 (/.f64 1/4 re) re)
2.7%
(/.f64 re -512)
7.9%
(/.f64 1/4 (*.f64 re re))
12.9%
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
72.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
7.4%
(+.f64 re re)
9.3%
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
12.9%
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
50.0%
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
42.2%
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
87.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
40.5%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
45.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
72.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
69.6%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
6.3%
(*.f64 (*.f64 1/2 re) 262144)
6.0%
(*.f64 (*.f64 1/2 re) 1/512)
33.4%
(*.f64 (sin.f64 re) 5159780353/5159780352)
2.6%
(*.f64 re -511)
22.3%
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
53.1%
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
42.2%
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
47.8%
(sin.f64 re)
45.7%
(log1p.f64 (expm1.f64 re))
4.0%
(cbrt.f64 re)
29.0%
re
4.3%
1
3.4%
1/5159780352
Compiler

Compiled 1028 to 774 computations (24.7% saved)

localize438.0ms (4.4%)

Local Accuracy

Found 4 expressions with local accuracy:

NewAccuracyProgram
99.2%
(log1p.f64 (expm1.f64 re))
99.7%
(*.f64 (sin.f64 re) 5159780353/5159780352)
99.9%
(/.f64 (/.f64 1/4 re) re)
93.7%
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
Compiler

Compiled 63 to 29 computations (54% saved)

series5.0ms (0%)

Counts
4 → 60
Calls

15 calls:

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

rewrite129.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
1562×log-prod
922×pow-prod-down
728×pow-prod-up
636×pow-exp
564×expm1-udef
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01748
133348
2397648
Stop Event
node limit
Counts
4 → 116
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(log1p.f64 (expm1.f64 re))
Outputs
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) 1)
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4) 1/2)
(pow.f64 (*.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))))
(cbrt.f64 (*.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re))))) 2))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(+.f64 0 (*.f64 1/4 (pow.f64 re -2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2)))) (cbrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2)))) 1)
(*.f64 1/4 (pow.f64 re -2))
(*.f64 1/4 (/.f64 (/.f64 1 re) re))
(*.f64 (/.f64 1/4 re) (/.f64 1 re))
(*.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(*.f64 1 (*.f64 1/4 (pow.f64 re -2)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 re)) 2) (*.f64 (cbrt.f64 (/.f64 1/4 re)) (/.f64 1 re)))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (pow.f64 (/.f64 1/2 re) 4)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 1/2 re) 4)) (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) (*.f64 (sqrt.f64 (/.f64 1/4 re)) (/.f64 1 re)))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(*.f64 (/.f64 -1/4 re) (/.f64 1 (neg.f64 re)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(*.f64 (/.f64 1/4 (cbrt.f64 (*.f64 re re))) (/.f64 (/.f64 1 re) (cbrt.f64 re)))
(*.f64 (/.f64 1/4 (sqrt.f64 re)) (/.f64 (/.f64 1 re) (sqrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 re re))) (/.f64 (/.f64 1/4 re) (cbrt.f64 re)))
(*.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (/.f64 1/4 re) (sqrt.f64 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 re)) 2) 1) (/.f64 (cbrt.f64 (/.f64 1/4 re)) re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 re)) 2) (cbrt.f64 (*.f64 re re))) (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 re)) 2) (sqrt.f64 re)) (/.f64 (cbrt.f64 (/.f64 1/4 re)) (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 1/4 re)) 1) (/.f64 (sqrt.f64 (/.f64 1/4 re)) re))
(*.f64 (/.f64 (sqrt.f64 (/.f64 1/4 re)) (cbrt.f64 (*.f64 re re))) (/.f64 (sqrt.f64 (/.f64 1/4 re)) (cbrt.f64 re)))
(pow.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) 3)
(pow.f64 (pow.f64 (/.f64 1/2 re) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3) 1/3)
(pow.f64 (/.f64 1/2 re) 2)
(pow.f64 (*.f64 re (*.f64 re 4)) -1)
(pow.f64 (/.f64 (*.f64 re re) 1/4) -1)
(pow.f64 (/.f64 (*.f64 re (*.f64 re 4)) 1) -1)
(neg.f64 (/.f64 (/.f64 1/4 re) (neg.f64 re)))
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(log.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/4 (pow.f64 re -2)))))
(cbrt.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 1/4 re) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2))))
(exp.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))) 1))
(exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2)))) 3))
(exp.f64 (*.f64 (*.f64 3 (*.f64 2 (log.f64 (/.f64 1/2 re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 re)) 2))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 re 4))) -1))
(log1p.f64 (expm1.f64 (*.f64 1/4 (pow.f64 re -2))))
(+.f64 0 (*.f64 (sin.f64 re) 5159780353/5159780352))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352)) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))) 1)
(pow.f64 (*.f64 (sin.f64 re) 5159780353/5159780352) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)) 3)
(pow.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 26623333291204804609/26623333280885243904) 1/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) 5159780353/5159780352) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)) 2)
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 26623333291204804609/26623333280885243904))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) 5159780353/5159780352) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))) 2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)))
(+.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 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 re)) 1)
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 re) 2))) (log.f64 (-.f64 1 (expm1.f64 re))))
(*.f64 re 1)
(*.f64 1 re)
(*.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 re re)))
(*.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 re))
(*.f64 (sqrt.f64 re) (sqrt.f64 re))
(pow.f64 re 1)
(pow.f64 (cbrt.f64 re) 3)
(pow.f64 (*.f64 re re) 1/2)
(pow.f64 (pow.f64 re 3) 1/3)
(pow.f64 (sqrt.f64 re) 2)
(sqrt.f64 (*.f64 re re))
(log.f64 (exp.f64 re))
(cbrt.f64 (pow.f64 re 3))
re
(expm1.f64 (log1p.f64 re))
(exp.f64 (log.f64 re))
(exp.f64 (*.f64 (log.f64 re) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 re) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 re)) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 re)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 re)) 2))

simplify84.0ms (0.9%)

Algorithm
egg-herbie
Rules
1506×associate-*r/
1070×distribute-lft-in
968×distribute-rgt-in
408×log-prod
370×sqr-pow
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03323060
17732934
227682786
Stop Event
node limit
Counts
176 → 168
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(*.f64 5159780353/5159780352 re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (+.f64 (*.f64 5159780353/619173642240 (pow.f64 re 5)) (*.f64 5159780353/5159780352 re)))
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (+.f64 (*.f64 -737111479/3715041853440 (pow.f64 re 7)) (+.f64 (*.f64 5159780353/619173642240 (pow.f64 re 5)) (*.f64 5159780353/5159780352 re))))
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 5159780353/5159780352 (sin.f64 re))
re
re
re
re
re
re
re
re
re
re
re
re
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) 1)
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4) 1/2)
(pow.f64 (*.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))))
(cbrt.f64 (*.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re))))) 2))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(+.f64 0 (*.f64 1/4 (pow.f64 re -2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2)))) (cbrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2)))) 1)
(*.f64 1/4 (pow.f64 re -2))
(*.f64 1/4 (/.f64 (/.f64 1 re) re))
(*.f64 (/.f64 1/4 re) (/.f64 1 re))
(*.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(*.f64 1 (*.f64 1/4 (pow.f64 re -2)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 re)) 2) (*.f64 (cbrt.f64 (/.f64 1/4 re)) (/.f64 1 re)))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (pow.f64 (/.f64 1/2 re) 4)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 1/2 re) 4)) (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) (*.f64 (sqrt.f64 (/.f64 1/4 re)) (/.f64 1 re)))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(*.f64 (/.f64 -1/4 re) (/.f64 1 (neg.f64 re)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(*.f64 (/.f64 1/4 (cbrt.f64 (*.f64 re re))) (/.f64 (/.f64 1 re) (cbrt.f64 re)))
(*.f64 (/.f64 1/4 (sqrt.f64 re)) (/.f64 (/.f64 1 re) (sqrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 re re))) (/.f64 (/.f64 1/4 re) (cbrt.f64 re)))
(*.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (/.f64 1/4 re) (sqrt.f64 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 re)) 2) 1) (/.f64 (cbrt.f64 (/.f64 1/4 re)) re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 re)) 2) (cbrt.f64 (*.f64 re re))) (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 re)) 2) (sqrt.f64 re)) (/.f64 (cbrt.f64 (/.f64 1/4 re)) (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 1/4 re)) 1) (/.f64 (sqrt.f64 (/.f64 1/4 re)) re))
(*.f64 (/.f64 (sqrt.f64 (/.f64 1/4 re)) (cbrt.f64 (*.f64 re re))) (/.f64 (sqrt.f64 (/.f64 1/4 re)) (cbrt.f64 re)))
(pow.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) 3)
(pow.f64 (pow.f64 (/.f64 1/2 re) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3) 1/3)
(pow.f64 (/.f64 1/2 re) 2)
(pow.f64 (*.f64 re (*.f64 re 4)) -1)
(pow.f64 (/.f64 (*.f64 re re) 1/4) -1)
(pow.f64 (/.f64 (*.f64 re (*.f64 re 4)) 1) -1)
(neg.f64 (/.f64 (/.f64 1/4 re) (neg.f64 re)))
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(log.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/4 (pow.f64 re -2)))))
(cbrt.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 1/4 re) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2))))
(exp.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))) 1))
(exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2)))) 3))
(exp.f64 (*.f64 (*.f64 3 (*.f64 2 (log.f64 (/.f64 1/2 re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 re)) 2))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 re 4))) -1))
(log1p.f64 (expm1.f64 (*.f64 1/4 (pow.f64 re -2))))
(+.f64 0 (*.f64 (sin.f64 re) 5159780353/5159780352))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352)) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))) 1)
(pow.f64 (*.f64 (sin.f64 re) 5159780353/5159780352) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)) 3)
(pow.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 26623333291204804609/26623333280885243904) 1/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) 5159780353/5159780352) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)) 2)
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 26623333291204804609/26623333280885243904))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) 5159780353/5159780352) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))) 2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)))
(+.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 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 re)) 1)
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 re) 2))) (log.f64 (-.f64 1 (expm1.f64 re))))
(*.f64 re 1)
(*.f64 1 re)
(*.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 re re)))
(*.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 re))
(*.f64 (sqrt.f64 re) (sqrt.f64 re))
(pow.f64 re 1)
(pow.f64 (cbrt.f64 re) 3)
(pow.f64 (*.f64 re re) 1/2)
(pow.f64 (pow.f64 re 3) 1/3)
(pow.f64 (sqrt.f64 re) 2)
(sqrt.f64 (*.f64 re re))
(log.f64 (exp.f64 re))
(cbrt.f64 (pow.f64 re 3))
(expm1.f64 (log1p.f64 re))
(exp.f64 (log.f64 re))
(exp.f64 (*.f64 (log.f64 re) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 re) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 re)) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 re)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 re)) 2))
Outputs
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (*.f64 im im))))
(*.f64 (*.f64 im im) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (*.f64 im im) (pow.f64 re 5)) (*.f64 1/2 (*.f64 re (*.f64 im im)))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (*.f64 (*.f64 im im) (+.f64 (*.f64 1/2 re) (*.f64 1/240 (pow.f64 re 5)))))
(*.f64 (*.f64 im im) (+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/240 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (*.f64 im im) (pow.f64 re 5)) (fma.f64 -1/10080 (*.f64 (*.f64 im im) (pow.f64 re 7)) (*.f64 1/2 (*.f64 re (*.f64 im im))))))
(+.f64 (*.f64 (*.f64 im im) (+.f64 (*.f64 1/2 re) (*.f64 -1/10080 (pow.f64 re 7)))) (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/240 (pow.f64 re 5)))))
(*.f64 (*.f64 im im) (+.f64 (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 -1/10080 (pow.f64 re 7))) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 5159780353/5159780352 re)
(*.f64 re 5159780353/5159780352)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(fma.f64 -5159780353/30958682112 (pow.f64 re 3) (*.f64 re 5159780353/5159780352))
(fma.f64 re 5159780353/5159780352 (*.f64 (pow.f64 re 3) -5159780353/30958682112))
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (+.f64 (*.f64 5159780353/619173642240 (pow.f64 re 5)) (*.f64 5159780353/5159780352 re)))
(fma.f64 -5159780353/30958682112 (pow.f64 re 3) (fma.f64 5159780353/619173642240 (pow.f64 re 5) (*.f64 re 5159780353/5159780352)))
(fma.f64 (pow.f64 re 3) -5159780353/30958682112 (fma.f64 re 5159780353/5159780352 (*.f64 (pow.f64 re 5) 5159780353/619173642240)))
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (+.f64 (*.f64 -737111479/3715041853440 (pow.f64 re 7)) (+.f64 (*.f64 5159780353/619173642240 (pow.f64 re 5)) (*.f64 5159780353/5159780352 re))))
(fma.f64 -5159780353/30958682112 (pow.f64 re 3) (fma.f64 -737111479/3715041853440 (pow.f64 re 7) (fma.f64 5159780353/619173642240 (pow.f64 re 5) (*.f64 re 5159780353/5159780352))))
(fma.f64 (pow.f64 re 3) -5159780353/30958682112 (fma.f64 (pow.f64 re 7) -737111479/3715041853440 (fma.f64 re 5159780353/5159780352 (*.f64 (pow.f64 re 5) 5159780353/619173642240))))
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 5159780353/5159780352 (sin.f64 re))
(*.f64 (sin.f64 re) 5159780353/5159780352)
re
re
re
re
re
re
re
re
re
re
re
re
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) 1)
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1)
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) 3)
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4) 1/2)
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(pow.f64 (*.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)) 1/3)
(cbrt.f64 (*.f64 (pow.f64 im 6) (*.f64 1/8 (pow.f64 (sin.f64 re) 3))))
(cbrt.f64 (*.f64 (pow.f64 im 6) (*.f64 (pow.f64 (sin.f64 re) 3) 1/8)))
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 2)
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(cbrt.f64 (*.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(cbrt.f64 (*.f64 (pow.f64 im 6) (*.f64 1/8 (pow.f64 (sin.f64 re) 3))))
(cbrt.f64 (*.f64 (pow.f64 im 6) (*.f64 (pow.f64 (sin.f64 re) 3) 1/8)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) 1))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) 1) 1))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) 3))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) 1/3))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re))))) 2))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(+.f64 0 (*.f64 1/4 (pow.f64 re -2)))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2)))) (cbrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2))))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2))) (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2))))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2)))) 1)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (/.f64 (/.f64 1 re) re))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (/.f64 1/4 re) (/.f64 1 re))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 1 (*.f64 1/4 (pow.f64 re -2)))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 re)) 2) (*.f64 (cbrt.f64 (/.f64 1/4 re)) (/.f64 1 re)))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (pow.f64 (/.f64 1/2 re) 4)))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (*.f64 (pow.f64 re -4) 1/16)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 1/2 re) 4)) (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (pow.f64 (/.f64 1/2 re) 4)))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (*.f64 (pow.f64 re -4) 1/16)))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) (*.f64 (sqrt.f64 (/.f64 1/4 re)) (/.f64 1 re)))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (/.f64 -1/4 re) (/.f64 1 (neg.f64 re)))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (/.f64 1/4 (cbrt.f64 (*.f64 re re))) (/.f64 (/.f64 1 re) (cbrt.f64 re)))
(/.f64 (/.f64 (/.f64 1/4 re) (cbrt.f64 re)) (cbrt.f64 (*.f64 re re)))
(/.f64 (/.f64 1/4 (cbrt.f64 (*.f64 re re))) (*.f64 re (cbrt.f64 re)))
(*.f64 (/.f64 1/4 (sqrt.f64 re)) (/.f64 (/.f64 1 re) (sqrt.f64 re)))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 re re))) (/.f64 (/.f64 1/4 re) (cbrt.f64 re)))
(*.f64 (/.f64 1/4 (cbrt.f64 (*.f64 re re))) (/.f64 (/.f64 1 re) (cbrt.f64 re)))
(/.f64 (/.f64 (/.f64 1/4 re) (cbrt.f64 re)) (cbrt.f64 (*.f64 re re)))
(/.f64 (/.f64 1/4 (cbrt.f64 (*.f64 re re))) (*.f64 re (cbrt.f64 re)))
(*.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (/.f64 1/4 re) (sqrt.f64 re)))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 re)) 2) 1) (/.f64 (cbrt.f64 (/.f64 1/4 re)) re))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 re)) 2) (cbrt.f64 (*.f64 re re))) (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 re)) 2) (cbrt.f64 (*.f64 re re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 1/4 re)) 2) (sqrt.f64 re)) (/.f64 (cbrt.f64 (/.f64 1/4 re)) (sqrt.f64 re)))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (/.f64 (sqrt.f64 (/.f64 1/4 re)) 1) (/.f64 (sqrt.f64 (/.f64 1/4 re)) re))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (/.f64 (sqrt.f64 (/.f64 1/4 re)) (cbrt.f64 (*.f64 re re))) (/.f64 (sqrt.f64 (/.f64 1/4 re)) (cbrt.f64 re)))
(*.f64 (/.f64 1/4 (cbrt.f64 (*.f64 re re))) (/.f64 (/.f64 1 re) (cbrt.f64 re)))
(/.f64 (/.f64 (/.f64 1/4 re) (cbrt.f64 re)) (cbrt.f64 (*.f64 re re)))
(/.f64 (/.f64 1/4 (cbrt.f64 (*.f64 re re))) (*.f64 re (cbrt.f64 re)))
(pow.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(pow.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) 3)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(pow.f64 (pow.f64 (/.f64 1/2 re) 4) 1/2)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(pow.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3) 1/3)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(pow.f64 (/.f64 1/2 re) 2)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(pow.f64 (*.f64 re (*.f64 re 4)) -1)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(pow.f64 (/.f64 (*.f64 re re) 1/4) -1)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(pow.f64 (/.f64 (*.f64 re (*.f64 re 4)) 1) -1)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(neg.f64 (/.f64 (/.f64 1/4 re) (neg.f64 re)))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(log.f64 (exp.f64 (*.f64 1/4 (pow.f64 re -2))))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/4 (pow.f64 re -2)))))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(cbrt.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 1/4 re) 3) (pow.f64 re 3)))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(expm1.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2))))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(exp.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))) 1))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))) 1) 1))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2)))) 3))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(exp.f64 (*.f64 (*.f64 3 (*.f64 2 (log.f64 (/.f64 1/2 re)))) 1/3))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 re)) 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 re 4))) -1))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(log1p.f64 (expm1.f64 (*.f64 1/4 (pow.f64 re -2))))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(+.f64 0 (*.f64 (sin.f64 re) 5159780353/5159780352))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352)) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))) 1)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(pow.f64 (*.f64 (sin.f64 re) 5159780353/5159780352) 1)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)) 3)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(pow.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 26623333291204804609/26623333280885243904) 1/2)
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 26623333291204804609/26623333280885243904))
(fabs.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) 5159780353/5159780352) 3) 1/3)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)) 2)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 26623333291204804609/26623333280885243904))
(fabs.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 5159780353/5159780352))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) 5159780353/5159780352) 3))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(exp.f64 (log.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)) 1))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)) 1) 1))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))) 3))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))) 1/3))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) 5159780353/5159780352))) 2))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) 5159780353/5159780352)))
(*.f64 (sin.f64 re) 5159780353/5159780352)
(+.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))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 re))))
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re)))))
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log1p.f64 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re))))
(-.f64 (exp.f64 (log1p.f64 re)) 1)
re
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 re) 2))) (log.f64 (-.f64 1 (expm1.f64 re))))
(-.f64 (log1p.f64 (neg.f64 (pow.f64 (expm1.f64 re) 2))) (log1p.f64 (neg.f64 (expm1.f64 re))))
(*.f64 re 1)
re
(*.f64 1 re)
re
(*.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 re re)))
(*.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 re))
(*.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 re))
(*.f64 (sqrt.f64 re) (sqrt.f64 re))
re
(pow.f64 re 1)
re
(pow.f64 (cbrt.f64 re) 3)
re
(pow.f64 (*.f64 re re) 1/2)
re
(pow.f64 (pow.f64 re 3) 1/3)
re
(pow.f64 (sqrt.f64 re) 2)
re
(sqrt.f64 (*.f64 re re))
re
(log.f64 (exp.f64 re))
re
(cbrt.f64 (pow.f64 re 3))
re
(expm1.f64 (log1p.f64 re))
re
(exp.f64 (log.f64 re))
re
(exp.f64 (*.f64 (log.f64 re) 1))
re
(exp.f64 (*.f64 (*.f64 (log.f64 re) 1) 1))
re
(exp.f64 (*.f64 (log.f64 (cbrt.f64 re)) 3))
re
(exp.f64 (*.f64 (*.f64 3 (log.f64 re)) 1/3))
re
(exp.f64 (*.f64 (log.f64 (sqrt.f64 re)) 2))
re

eval43.0ms (0.4%)

Compiler

Compiled 1911 to 1238 computations (35.2% saved)

prune69.0ms (0.7%)

Pruning

34 alts after pruning (24 fresh and 10 done)

PrunedKeptTotal
New1653168
Fresh22123
Picked055
Done055
Total16734201
Accurracy
99.6%
Counts
201 → 34
Alt Table
Click to see full alt table
StatusAccuracyProgram
46.9%
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
23.9%
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
12.5%
(pow.f64 re -512)
7.9%
(/.f64 (/.f64 1/4 re) re)
2.7%
(/.f64 re -512)
7.9%
(/.f64 1/4 (*.f64 re re))
25.4%
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
72.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
7.4%
(+.f64 re re)
9.3%
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
12.9%
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
50.0%
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
42.2%
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
7.9%
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
87.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
40.5%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
45.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
72.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
69.6%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
6.3%
(*.f64 (*.f64 1/2 re) 262144)
6.0%
(*.f64 (*.f64 1/2 re) 1/512)
33.4%
(*.f64 (sin.f64 re) 5159780353/5159780352)
20.7%
(*.f64 re 5159780353/5159780352)
2.6%
(*.f64 re -511)
22.3%
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
53.1%
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
42.2%
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
47.8%
(sin.f64 re)
45.7%
(log1p.f64 (expm1.f64 re))
4.0%
(cbrt.f64 re)
29.0%
re
4.3%
1
3.4%
1/5159780352
46.9%
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
23.9%
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
12.5%
(pow.f64 re -512)
7.9%
(/.f64 (/.f64 1/4 re) re)
2.7%
(/.f64 re -512)
7.9%
(/.f64 1/4 (*.f64 re re))
25.4%
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
72.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
7.4%
(+.f64 re re)
9.3%
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
12.9%
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
50.0%
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
42.2%
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
7.9%
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
87.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
40.5%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
45.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
72.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
69.6%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
6.3%
(*.f64 (*.f64 1/2 re) 262144)
6.0%
(*.f64 (*.f64 1/2 re) 1/512)
33.4%
(*.f64 (sin.f64 re) 5159780353/5159780352)
20.7%
(*.f64 re 5159780353/5159780352)
2.6%
(*.f64 re -511)
22.3%
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
53.1%
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
42.2%
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
47.8%
(sin.f64 re)
45.7%
(log1p.f64 (expm1.f64 re))
4.0%
(cbrt.f64 re)
29.0%
re
4.3%
1
3.4%
1/5159780352
Compiler

Compiled 976 to 742 computations (24% saved)

localize147.0ms (1.5%)

Local Accuracy

Found 5 expressions with local accuracy:

NewAccuracyProgram
100.0%
(+.f64 (+.f64 2 (*.f64 im im)) 1/144)
93.2%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
99.2%
(/.f64 1/4 (*.f64 re re))
99.4%
(*.f64 re 5159780353/5159780352)
93.7%
(*.f64 re (+.f64 2 (*.f64 im im)))
Compiler

Compiled 89 to 45 computations (49.4% saved)

series7.0ms (0.1%)

Counts
5 → 84
Calls

21 calls:

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

rewrite106.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1118×prod-diff
748×expm1-udef
738×log1p-udef
436×add-sqr-sqrt
418×pow1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02093
144377
2568977
Stop Event
node limit
Counts
5 → 124
Calls
Call 1
Inputs
(*.f64 re (+.f64 2 (*.f64 im im)))
(*.f64 re 5159780353/5159780352)
(/.f64 1/4 (*.f64 re re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
(+.f64 (+.f64 2 (*.f64 im im)) 1/144)
Outputs
(+.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))
(+.f64 (*.f64 re (*.f64 im im)) (*.f64 re 2))
(+.f64 (*.f64 (*.f64 re 2) 1) (*.f64 (*.f64 re (*.f64 im im)) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 im im 2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 re 2) 3) (pow.f64 (*.f64 re (*.f64 im im)) 3)) (+.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (-.f64 (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im))) (*.f64 (*.f64 re 2) (*.f64 re (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im))))
(/.f64 (*.f64 re (+.f64 8 (pow.f64 im 6))) (+.f64 4 (-.f64 (pow.f64 im 4) (*.f64 2 (*.f64 im im)))))
(/.f64 (*.f64 re (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))
(/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) re) (+.f64 4 (-.f64 (pow.f64 im 4) (*.f64 2 (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im)))
(pow.f64 (*.f64 re (fma.f64 im im 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 im im 2))) 3)
(pow.f64 (pow.f64 (*.f64 re (fma.f64 im im 2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 im im 2))) 2)
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 im im 2)) 2))
(log.f64 (pow.f64 (exp.f64 re) (fma.f64 im im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (fma.f64 im im 2)))))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 im im 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (fma.f64 im im 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 im im 2))))
(exp.f64 (log.f64 (*.f64 re (fma.f64 im im 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 im im 2))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 im im 2))))
(fma.f64 re 2 (*.f64 re (*.f64 im im)))
(fma.f64 2 re (*.f64 re (*.f64 im im)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re 5159780353/5159780352))) 1)
(pow.f64 (*.f64 re 5159780353/5159780352) 1)
(pow.f64 (cbrt.f64 (*.f64 re 5159780353/5159780352)) 3)
(pow.f64 (pow.f64 (*.f64 re 5159780353/5159780352) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re 5159780353/5159780352)) 2)
(sqrt.f64 (*.f64 (*.f64 re re) 26623333291204804609/26623333280885243904))
(log.f64 (pow.f64 (exp.f64 5159780353/5159780352) re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re 5159780353/5159780352))))
(cbrt.f64 (pow.f64 (*.f64 re 5159780353/5159780352) 3))
(expm1.f64 (log1p.f64 (*.f64 re 5159780353/5159780352)))
(exp.f64 (log.f64 (*.f64 re 5159780353/5159780352)))
(exp.f64 (*.f64 (log.f64 (*.f64 re 5159780353/5159780352)) 1))
(log1p.f64 (expm1.f64 (*.f64 re 5159780353/5159780352)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2)))) 1)
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(*.f64 1 (*.f64 1/4 (pow.f64 re -2)))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))))
(*.f64 (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))) (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(*.f64 -1/4 (/.f64 1 (*.f64 re (neg.f64 re))))
(*.f64 (pow.f64 re -2) 1/4)
(*.f64 (/.f64 1/4 re) (/.f64 1 re))
(pow.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) 3)
(pow.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3) 1/3)
(pow.f64 (/.f64 1/2 re) 2)
(pow.f64 (*.f64 (*.f64 re re) 4) -1)
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
(log.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/4 (pow.f64 re -2)))))
(cbrt.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3))
(expm1.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2))))
(exp.f64 (log.f64 (*.f64 1/4 (pow.f64 re -2))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/4 (pow.f64 re -2))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) 1/288))
(+.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 1/144)))
(+.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im 1/144) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) 1) (*.f64 (*.f64 (sin.f64 re) 1/288) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) 3) (pow.f64 (*.f64 (sin.f64 re) 1/288) 3)) (+.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))) (-.f64 (*.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) 1/288)) (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) 1/288)))))
(/.f64 (-.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) 1/288))) (-.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) 1/288)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736)) (+.f64 (*.f64 im im) 287/144))
(/.f64 (*.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (*.f64 1/2 (sin.f64 re))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (*.f64 1/2 (sin.f64 re))) (+.f64 (*.f64 im im) 287/144))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))) 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (+.f64 (*.f64 im im) 289/144)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (+.f64 (*.f64 im im) 289/144) 3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) 1/288))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2) (*.f64 (sin.f64 re) 1/288))
(-.f64 (exp.f64 (log1p.f64 (+.f64 (*.f64 im im) 289/144))) 1)
(-.f64 (/.f64 (pow.f64 (fma.f64 im im 2) 2) (+.f64 (*.f64 im im) 287/144)) (/.f64 1/20736 (+.f64 (*.f64 im im) 287/144)))
(*.f64 (+.f64 (*.f64 im im) 289/144) 1)
(*.f64 1 (+.f64 (*.f64 im im) 289/144))
(*.f64 (cbrt.f64 (+.f64 (*.f64 im im) 289/144)) (cbrt.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 2)))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 2)) (cbrt.f64 (+.f64 (*.f64 im im) 289/144)))
(*.f64 (sqrt.f64 (+.f64 (*.f64 im im) 289/144)) (sqrt.f64 (+.f64 (*.f64 im im) 289/144)))
(*.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144)))))
(*.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (/.f64 1 (+.f64 (*.f64 im im) 287/144)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))) (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 1 (/.f64 (+.f64 (*.f64 im im) 287/144) (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736)))
(/.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (+.f64 1/20736 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (+.f64 (*.f64 im im) 287/144))
(/.f64 (neg.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3))) (neg.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736)) (neg.f64 (+.f64 (*.f64 im im) 287/144)))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 im im 1/144) 3)) (+.f64 4 (-.f64 (*.f64 (fma.f64 im im 1/144) (fma.f64 im im 1/144)) (*.f64 2 (fma.f64 im im 1/144)))))
(/.f64 (-.f64 4 (*.f64 (fma.f64 im im 1/144) (fma.f64 im im 1/144))) (-.f64 2 (fma.f64 im im 1/144)))
(/.f64 (-.f64 1/20736 (pow.f64 (fma.f64 im im 2) 2)) (-.f64 1/144 (fma.f64 im im 2)))
(pow.f64 (+.f64 (*.f64 im im) 289/144) 1)
(pow.f64 (cbrt.f64 (+.f64 (*.f64 im im) 289/144)) 3)
(pow.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 3) 1/3)
(pow.f64 (sqrt.f64 (+.f64 (*.f64 im im) 289/144)) 2)
(sqrt.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 2))
(log.f64 (exp.f64 (+.f64 (*.f64 im im) 289/144)))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 (*.f64 im im) 289/144))))
(cbrt.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 3))
(expm1.f64 (log1p.f64 (+.f64 (*.f64 im im) 289/144)))
(exp.f64 (log.f64 (+.f64 (*.f64 im im) 289/144)))
(exp.f64 (*.f64 (log.f64 (+.f64 (*.f64 im im) 289/144)) 1))
(log1p.f64 (expm1.f64 (+.f64 (*.f64 im im) 289/144)))
(fma.f64 1 (fma.f64 im im 2) 1/144)
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 im im 2) 2)) (cbrt.f64 (fma.f64 im im 2)) 1/144)
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (fma.f64 im im 2)) 1/144)

simplify83.0ms (0.8%)

Algorithm
egg-herbie
Rules
1012×times-frac
686×log-prod
650×associate-*r*
586×associate-*l*
424×cancel-sign-sub-inv
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03574694
19774478
238644306
Stop Event
node limit
Counts
208 → 204
Calls
Call 1
Inputs
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 2 re)
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(*.f64 re (pow.f64 im 2))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(*.f64 re (pow.f64 im 2))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(*.f64 5159780353/5159780352 re)
(*.f64 5159780353/5159780352 re)
(*.f64 5159780353/5159780352 re)
(*.f64 5159780353/5159780352 re)
(*.f64 5159780353/5159780352 re)
(*.f64 5159780353/5159780352 re)
(*.f64 5159780353/5159780352 re)
(*.f64 5159780353/5159780352 re)
(*.f64 5159780353/5159780352 re)
(*.f64 5159780353/5159780352 re)
(*.f64 5159780353/5159780352 re)
(*.f64 5159780353/5159780352 re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(*.f64 1/2 (*.f64 (+.f64 289/144 (pow.f64 im 2)) re))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 289/144 (pow.f64 im 2)) re)) (*.f64 -1/12 (*.f64 (+.f64 289/144 (pow.f64 im 2)) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 289/144 (pow.f64 im 2)) re)) (+.f64 (*.f64 1/240 (*.f64 (+.f64 289/144 (pow.f64 im 2)) (pow.f64 re 5))) (*.f64 -1/12 (*.f64 (+.f64 289/144 (pow.f64 im 2)) (pow.f64 re 3)))))
(+.f64 (*.f64 -1/10080 (*.f64 (+.f64 289/144 (pow.f64 im 2)) (pow.f64 re 7))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 289/144 (pow.f64 im 2)) re)) (+.f64 (*.f64 1/240 (*.f64 (+.f64 289/144 (pow.f64 im 2)) (pow.f64 re 5))) (*.f64 -1/12 (*.f64 (+.f64 289/144 (pow.f64 im 2)) (pow.f64 re 3))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 289/288 (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 289/288 (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 289/288 (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 289/288 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
289/144
(+.f64 289/144 (pow.f64 im 2))
(+.f64 289/144 (pow.f64 im 2))
(+.f64 289/144 (pow.f64 im 2))
(pow.f64 im 2)
(+.f64 289/144 (pow.f64 im 2))
(+.f64 289/144 (pow.f64 im 2))
(+.f64 289/144 (pow.f64 im 2))
(pow.f64 im 2)
(+.f64 289/144 (pow.f64 im 2))
(+.f64 289/144 (pow.f64 im 2))
(+.f64 289/144 (pow.f64 im 2))
(+.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))
(+.f64 (*.f64 re (*.f64 im im)) (*.f64 re 2))
(+.f64 (*.f64 (*.f64 re 2) 1) (*.f64 (*.f64 re (*.f64 im im)) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 im im 2)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 re 2) 3) (pow.f64 (*.f64 re (*.f64 im im)) 3)) (+.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (-.f64 (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im))) (*.f64 (*.f64 re 2) (*.f64 re (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im))))
(/.f64 (*.f64 re (+.f64 8 (pow.f64 im 6))) (+.f64 4 (-.f64 (pow.f64 im 4) (*.f64 2 (*.f64 im im)))))
(/.f64 (*.f64 re (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))
(/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) re) (+.f64 4 (-.f64 (pow.f64 im 4) (*.f64 2 (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im)))
(pow.f64 (*.f64 re (fma.f64 im im 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 im im 2))) 3)
(pow.f64 (pow.f64 (*.f64 re (fma.f64 im im 2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 im im 2))) 2)
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 im im 2)) 2))
(log.f64 (pow.f64 (exp.f64 re) (fma.f64 im im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (fma.f64 im im 2)))))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 im im 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (fma.f64 im im 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 im im 2))))
(exp.f64 (log.f64 (*.f64 re (fma.f64 im im 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 im im 2))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 im im 2))))
(fma.f64 re 2 (*.f64 re (*.f64 im im)))
(fma.f64 2 re (*.f64 re (*.f64 im im)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re 5159780353/5159780352))) 1)
(pow.f64 (*.f64 re 5159780353/5159780352) 1)
(pow.f64 (cbrt.f64 (*.f64 re 5159780353/5159780352)) 3)
(pow.f64 (pow.f64 (*.f64 re 5159780353/5159780352) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re 5159780353/5159780352)) 2)
(sqrt.f64 (*.f64 (*.f64 re re) 26623333291204804609/26623333280885243904))
(log.f64 (pow.f64 (exp.f64 5159780353/5159780352) re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re 5159780353/5159780352))))
(cbrt.f64 (pow.f64 (*.f64 re 5159780353/5159780352) 3))
(expm1.f64 (log1p.f64 (*.f64 re 5159780353/5159780352)))
(exp.f64 (log.f64 (*.f64 re 5159780353/5159780352)))
(exp.f64 (*.f64 (log.f64 (*.f64 re 5159780353/5159780352)) 1))
(log1p.f64 (expm1.f64 (*.f64 re 5159780353/5159780352)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2)))) 1)
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(*.f64 1 (*.f64 1/4 (pow.f64 re -2)))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))))
(*.f64 (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))) (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(*.f64 -1/4 (/.f64 1 (*.f64 re (neg.f64 re))))
(*.f64 (pow.f64 re -2) 1/4)
(*.f64 (/.f64 1/4 re) (/.f64 1 re))
(pow.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) 3)
(pow.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3) 1/3)
(pow.f64 (/.f64 1/2 re) 2)
(pow.f64 (*.f64 (*.f64 re re) 4) -1)
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
(log.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/4 (pow.f64 re -2)))))
(cbrt.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3))
(expm1.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2))))
(exp.f64 (log.f64 (*.f64 1/4 (pow.f64 re -2))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/4 (pow.f64 re -2))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) 1/288))
(+.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 1/144)))
(+.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im 1/144) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) 1) (*.f64 (*.f64 (sin.f64 re) 1/288) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) 3) (pow.f64 (*.f64 (sin.f64 re) 1/288) 3)) (+.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))) (-.f64 (*.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) 1/288)) (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) 1/288)))))
(/.f64 (-.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) 1/288))) (-.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) 1/288)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736)) (+.f64 (*.f64 im im) 287/144))
(/.f64 (*.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (*.f64 1/2 (sin.f64 re))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (*.f64 1/2 (sin.f64 re))) (+.f64 (*.f64 im im) 287/144))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))) 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (+.f64 (*.f64 im im) 289/144)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (+.f64 (*.f64 im im) 289/144) 3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) 1/288))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2) (*.f64 (sin.f64 re) 1/288))
(-.f64 (exp.f64 (log1p.f64 (+.f64 (*.f64 im im) 289/144))) 1)
(-.f64 (/.f64 (pow.f64 (fma.f64 im im 2) 2) (+.f64 (*.f64 im im) 287/144)) (/.f64 1/20736 (+.f64 (*.f64 im im) 287/144)))
(*.f64 (+.f64 (*.f64 im im) 289/144) 1)
(*.f64 1 (+.f64 (*.f64 im im) 289/144))
(*.f64 (cbrt.f64 (+.f64 (*.f64 im im) 289/144)) (cbrt.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 2)))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 2)) (cbrt.f64 (+.f64 (*.f64 im im) 289/144)))
(*.f64 (sqrt.f64 (+.f64 (*.f64 im im) 289/144)) (sqrt.f64 (+.f64 (*.f64 im im) 289/144)))
(*.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144)))))
(*.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (/.f64 1 (+.f64 (*.f64 im im) 287/144)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))) (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 1 (/.f64 (+.f64 (*.f64 im im) 287/144) (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736)))
(/.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (+.f64 1/20736 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (+.f64 (*.f64 im im) 287/144))
(/.f64 (neg.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3))) (neg.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736)) (neg.f64 (+.f64 (*.f64 im im) 287/144)))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 im im 1/144) 3)) (+.f64 4 (-.f64 (*.f64 (fma.f64 im im 1/144) (fma.f64 im im 1/144)) (*.f64 2 (fma.f64 im im 1/144)))))
(/.f64 (-.f64 4 (*.f64 (fma.f64 im im 1/144) (fma.f64 im im 1/144))) (-.f64 2 (fma.f64 im im 1/144)))
(/.f64 (-.f64 1/20736 (pow.f64 (fma.f64 im im 2) 2)) (-.f64 1/144 (fma.f64 im im 2)))
(pow.f64 (+.f64 (*.f64 im im) 289/144) 1)
(pow.f64 (cbrt.f64 (+.f64 (*.f64 im im) 289/144)) 3)
(pow.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 3) 1/3)
(pow.f64 (sqrt.f64 (+.f64 (*.f64 im im) 289/144)) 2)
(sqrt.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 2))
(log.f64 (exp.f64 (+.f64 (*.f64 im im) 289/144)))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 (*.f64 im im) 289/144))))
(cbrt.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 3))
(expm1.f64 (log1p.f64 (+.f64 (*.f64 im im) 289/144)))
(exp.f64 (log.f64 (+.f64 (*.f64 im im) 289/144)))
(exp.f64 (*.f64 (log.f64 (+.f64 (*.f64 im im) 289/144)) 1))
(log1p.f64 (expm1.f64 (+.f64 (*.f64 im im) 289/144)))
(fma.f64 1 (fma.f64 im im 2) 1/144)
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 im im 2) 2)) (cbrt.f64 (fma.f64 im im 2)) 1/144)
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (fma.f64 im im 2)) 1/144)
Outputs
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 re (fma.f64 im im 2))
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 re (fma.f64 im im 2))
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 re (fma.f64 im im 2))
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 re (fma.f64 im im 2))
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 re (fma.f64 im im 2))
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 re (fma.f64 im im 2))
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 re (fma.f64 im im 2))
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 re (fma.f64 im im 2))
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 re (fma.f64 im im 2))
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 re (fma.f64 im im 2))
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 re (fma.f64 im im 2))
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(*.f64 re (fma.f64 im im 2))
(*.f64 2 re)
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(*.f64 re (fma.f64 im im 2))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(*.f64 re (fma.f64 im im 2))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(*.f64 re (fma.f64 im im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(*.f64 re (fma.f64 im im 2))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(*.f64 re (fma.f64 im im 2))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(*.f64 re (fma.f64 im im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(*.f64 re (fma.f64 im im 2))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(*.f64 re (fma.f64 im im 2))
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(*.f64 re (fma.f64 im im 2))
(*.f64 5159780353/5159780352 re)
(*.f64 re 5159780353/5159780352)
(*.f64 5159780353/5159780352 re)
(*.f64 re 5159780353/5159780352)
(*.f64 5159780353/5159780352 re)
(*.f64 re 5159780353/5159780352)
(*.f64 5159780353/5159780352 re)
(*.f64 re 5159780353/5159780352)
(*.f64 5159780353/5159780352 re)
(*.f64 re 5159780353/5159780352)
(*.f64 5159780353/5159780352 re)
(*.f64 re 5159780353/5159780352)
(*.f64 5159780353/5159780352 re)
(*.f64 re 5159780353/5159780352)
(*.f64 5159780353/5159780352 re)
(*.f64 re 5159780353/5159780352)
(*.f64 5159780353/5159780352 re)
(*.f64 re 5159780353/5159780352)
(*.f64 5159780353/5159780352 re)
(*.f64 re 5159780353/5159780352)
(*.f64 5159780353/5159780352 re)
(*.f64 re 5159780353/5159780352)
(*.f64 5159780353/5159780352 re)
(*.f64 re 5159780353/5159780352)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 (+.f64 289/144 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 re (fma.f64 im im 289/144)))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 289/144 (pow.f64 im 2)) re)) (*.f64 -1/12 (*.f64 (+.f64 289/144 (pow.f64 im 2)) (pow.f64 re 3))))
(fma.f64 1/2 (*.f64 re (fma.f64 im im 289/144)) (*.f64 (*.f64 -1/12 (fma.f64 im im 289/144)) (pow.f64 re 3)))
(fma.f64 1/2 (*.f64 re (fma.f64 im im 289/144)) (*.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 im im 289/144))))
(*.f64 (fma.f64 im im 289/144) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 289/144 (pow.f64 im 2)) re)) (+.f64 (*.f64 1/240 (*.f64 (+.f64 289/144 (pow.f64 im 2)) (pow.f64 re 5))) (*.f64 -1/12 (*.f64 (+.f64 289/144 (pow.f64 im 2)) (pow.f64 re 3)))))
(fma.f64 1/2 (*.f64 re (fma.f64 im im 289/144)) (fma.f64 1/240 (*.f64 (pow.f64 re 5) (fma.f64 im im 289/144)) (*.f64 (*.f64 -1/12 (fma.f64 im im 289/144)) (pow.f64 re 3))))
(fma.f64 1/2 (*.f64 re (fma.f64 im im 289/144)) (fma.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 im im 289/144)) (*.f64 (*.f64 1/240 (pow.f64 re 5)) (fma.f64 im im 289/144))))
(fma.f64 1/2 (*.f64 re (fma.f64 im im 289/144)) (*.f64 (fma.f64 im im 289/144) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/240 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/10080 (*.f64 (+.f64 289/144 (pow.f64 im 2)) (pow.f64 re 7))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 289/144 (pow.f64 im 2)) re)) (+.f64 (*.f64 1/240 (*.f64 (+.f64 289/144 (pow.f64 im 2)) (pow.f64 re 5))) (*.f64 -1/12 (*.f64 (+.f64 289/144 (pow.f64 im 2)) (pow.f64 re 3))))))
(fma.f64 -1/10080 (*.f64 (pow.f64 re 7) (fma.f64 im im 289/144)) (fma.f64 1/2 (*.f64 re (fma.f64 im im 289/144)) (fma.f64 1/240 (*.f64 (pow.f64 re 5) (fma.f64 im im 289/144)) (*.f64 (*.f64 -1/12 (fma.f64 im im 289/144)) (pow.f64 re 3)))))
(fma.f64 -1/10080 (*.f64 (pow.f64 re 7) (fma.f64 im im 289/144)) (fma.f64 1/2 (*.f64 re (fma.f64 im im 289/144)) (fma.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 im im 289/144)) (*.f64 (*.f64 1/240 (pow.f64 re 5)) (fma.f64 im im 289/144)))))
(+.f64 (*.f64 (fma.f64 im im 289/144) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/240 (pow.f64 re 5)))) (*.f64 (fma.f64 im im 289/144) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 7) -1/10080))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 289/144 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 289/288 (sin.f64 re))
(*.f64 (sin.f64 re) 289/288)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 289/288 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 289/288 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 289/288 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
289/144
(+.f64 289/144 (pow.f64 im 2))
(fma.f64 im im 289/144)
(+.f64 289/144 (pow.f64 im 2))
(fma.f64 im im 289/144)
(+.f64 289/144 (pow.f64 im 2))
(fma.f64 im im 289/144)
(pow.f64 im 2)
(*.f64 im im)
(+.f64 289/144 (pow.f64 im 2))
(fma.f64 im im 289/144)
(+.f64 289/144 (pow.f64 im 2))
(fma.f64 im im 289/144)
(+.f64 289/144 (pow.f64 im 2))
(fma.f64 im im 289/144)
(pow.f64 im 2)
(*.f64 im im)
(+.f64 289/144 (pow.f64 im 2))
(fma.f64 im im 289/144)
(+.f64 289/144 (pow.f64 im 2))
(fma.f64 im im 289/144)
(+.f64 289/144 (pow.f64 im 2))
(fma.f64 im im 289/144)
(+.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))
(*.f64 re (fma.f64 im im 2))
(+.f64 (*.f64 re (*.f64 im im)) (*.f64 re 2))
(*.f64 re (fma.f64 im im 2))
(+.f64 (*.f64 (*.f64 re 2) 1) (*.f64 (*.f64 re (*.f64 im im)) 1))
(*.f64 re (fma.f64 im im 2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 im im 2)))) 1)
(*.f64 re (fma.f64 im im 2))
(/.f64 (+.f64 (pow.f64 (*.f64 re 2) 3) (pow.f64 (*.f64 re (*.f64 im im)) 3)) (+.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (-.f64 (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im))) (*.f64 (*.f64 re 2) (*.f64 re (*.f64 im im))))))
(/.f64 (+.f64 (*.f64 (pow.f64 re 3) 8) (pow.f64 (*.f64 re (*.f64 im im)) 3)) (+.f64 (*.f64 re (*.f64 re 4)) (*.f64 (*.f64 re (*.f64 im im)) (-.f64 (*.f64 re (*.f64 im im)) (*.f64 2 re)))))
(/.f64 (*.f64 (pow.f64 re 3) (+.f64 8 (pow.f64 im 6))) (fma.f64 re (*.f64 re 4) (*.f64 re (*.f64 (*.f64 im im) (*.f64 re (-.f64 (*.f64 im im) 2))))))
(/.f64 (*.f64 (pow.f64 re 3) (+.f64 8 (pow.f64 im 6))) (*.f64 re (+.f64 (*.f64 re 4) (*.f64 re (*.f64 (*.f64 im im) (fma.f64 im im -2))))))
(/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im))))
(/.f64 (-.f64 (*.f64 re (*.f64 re 4)) (*.f64 (*.f64 re re) (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im))))
(/.f64 (*.f64 (*.f64 re re) (-.f64 4 (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im))))
(/.f64 (*.f64 re (fma.f64 im im 2)) 1)
(/.f64 (*.f64 re (+.f64 8 (pow.f64 im 6))) (+.f64 4 (-.f64 (pow.f64 im 4) (*.f64 2 (*.f64 im im)))))
(/.f64 re (/.f64 (+.f64 4 (-.f64 (pow.f64 im 4) (*.f64 (*.f64 2 im) im))) (+.f64 8 (pow.f64 im 6))))
(/.f64 re (/.f64 (+.f64 4 (+.f64 (pow.f64 im 4) (*.f64 (*.f64 im im) -2))) (+.f64 8 (pow.f64 im 6))))
(*.f64 (/.f64 (+.f64 8 (pow.f64 im 6)) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))) re)
(/.f64 (*.f64 re (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))
(/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4))))
(*.f64 (/.f64 re (-.f64 2 (*.f64 im im))) (-.f64 4 (pow.f64 im 4)))
(/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) re) (+.f64 4 (-.f64 (pow.f64 im 4) (*.f64 2 (*.f64 im im)))))
(/.f64 re (/.f64 (+.f64 4 (-.f64 (pow.f64 im 4) (*.f64 (*.f64 2 im) im))) (+.f64 8 (pow.f64 im 6))))
(/.f64 re (/.f64 (+.f64 4 (+.f64 (pow.f64 im 4) (*.f64 (*.f64 im im) -2))) (+.f64 8 (pow.f64 im 6))))
(*.f64 (/.f64 (+.f64 8 (pow.f64 im 6)) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))) re)
(/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im)))
(/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4))))
(*.f64 (/.f64 re (-.f64 2 (*.f64 im im))) (-.f64 4 (pow.f64 im 4)))
(pow.f64 (*.f64 re (fma.f64 im im 2)) 1)
(*.f64 re (fma.f64 im im 2))
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 im im 2))) 3)
(*.f64 re (fma.f64 im im 2))
(pow.f64 (pow.f64 (*.f64 re (fma.f64 im im 2)) 3) 1/3)
(*.f64 re (fma.f64 im im 2))
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 im im 2))) 2)
(*.f64 re (fma.f64 im im 2))
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 im im 2)) 2))
(*.f64 re (fma.f64 im im 2))
(log.f64 (pow.f64 (exp.f64 re) (fma.f64 im im 2)))
(*.f64 re (fma.f64 im im 2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (fma.f64 im im 2)))))
(*.f64 re (fma.f64 im im 2))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 im im 2)) 3))
(*.f64 re (fma.f64 im im 2))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (fma.f64 im im 2) 3)))
(*.f64 re (fma.f64 im im 2))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 re 3)))
(*.f64 re (fma.f64 im im 2))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 im im 2))))
(*.f64 re (fma.f64 im im 2))
(exp.f64 (log.f64 (*.f64 re (fma.f64 im im 2))))
(*.f64 re (fma.f64 im im 2))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 im im 2))) 1))
(*.f64 re (fma.f64 im im 2))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 im im 2))))
(*.f64 re (fma.f64 im im 2))
(fma.f64 re 2 (*.f64 re (*.f64 im im)))
(*.f64 re (fma.f64 im im 2))
(fma.f64 2 re (*.f64 re (*.f64 im im)))
(*.f64 re (fma.f64 im im 2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re 5159780353/5159780352))) 1)
(*.f64 re 5159780353/5159780352)
(pow.f64 (*.f64 re 5159780353/5159780352) 1)
(*.f64 re 5159780353/5159780352)
(pow.f64 (cbrt.f64 (*.f64 re 5159780353/5159780352)) 3)
(*.f64 re 5159780353/5159780352)
(pow.f64 (pow.f64 (*.f64 re 5159780353/5159780352) 3) 1/3)
(*.f64 re 5159780353/5159780352)
(pow.f64 (sqrt.f64 (*.f64 re 5159780353/5159780352)) 2)
(*.f64 re 5159780353/5159780352)
(sqrt.f64 (*.f64 (*.f64 re re) 26623333291204804609/26623333280885243904))
(sqrt.f64 (*.f64 re (*.f64 re 26623333291204804609/26623333280885243904)))
(fabs.f64 (*.f64 re 5159780353/5159780352))
(log.f64 (pow.f64 (exp.f64 5159780353/5159780352) re))
(*.f64 re 5159780353/5159780352)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re 5159780353/5159780352))))
(*.f64 re 5159780353/5159780352)
(cbrt.f64 (pow.f64 (*.f64 re 5159780353/5159780352) 3))
(*.f64 re 5159780353/5159780352)
(expm1.f64 (log1p.f64 (*.f64 re 5159780353/5159780352)))
(*.f64 re 5159780353/5159780352)
(exp.f64 (log.f64 (*.f64 re 5159780353/5159780352)))
(*.f64 re 5159780353/5159780352)
(exp.f64 (*.f64 (log.f64 (*.f64 re 5159780353/5159780352)) 1))
(*.f64 re 5159780353/5159780352)
(log1p.f64 (expm1.f64 (*.f64 re 5159780353/5159780352)))
(*.f64 re 5159780353/5159780352)
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2)))) 1)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1 (*.f64 1/4 (pow.f64 re -2)))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))))
(*.f64 (cbrt.f64 (/.f64 (/.f64 1/4 re) re)) (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))))
(*.f64 (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))) (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))))
(*.f64 (cbrt.f64 (/.f64 (/.f64 1/4 re) re)) (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(*.f64 -1/4 (/.f64 1 (*.f64 re (neg.f64 re))))
(/.f64 -1/4 (*.f64 re (neg.f64 re)))
(*.f64 (pow.f64 re -2) 1/4)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (/.f64 1/4 re) (/.f64 1 re))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(pow.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(pow.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) 3)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(pow.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3) 1/3)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(pow.f64 (/.f64 1/2 re) 2)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(pow.f64 (*.f64 (*.f64 re re) 4) -1)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
(log.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/4 (pow.f64 re -2)))))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(cbrt.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(expm1.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2))))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(exp.f64 (log.f64 (*.f64 1/4 (pow.f64 re -2))))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(exp.f64 (*.f64 (log.f64 (*.f64 1/4 (pow.f64 re -2))) 1))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(log1p.f64 (expm1.f64 (*.f64 1/4 (pow.f64 re -2))))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 (/.f64 1/4 re) re)
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) 1/288))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) 1/288))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (fma.f64 im im 2)) 1/288))
(+.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) 1/288))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (fma.f64 im im 2)) 1/288))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 1/144)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(+.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im 1/144) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(+.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) 1) (*.f64 (*.f64 (sin.f64 re) 1/288) 1))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) 1/288))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (fma.f64 im im 2)) 1/288))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))))) 1)
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) 3) (pow.f64 (*.f64 (sin.f64 re) 1/288) 3)) (+.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))) (-.f64 (*.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) 1/288)) (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) 1/288)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) 3) (*.f64 (pow.f64 (sin.f64 re) 3) 1/23887872)) (+.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) 1/288) (-.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 re) 3) 1/23887872 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3)) (fma.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) (-.f64 1/288 (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))))))
(/.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (+.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) 1/8) 1/23887872)) (+.f64 (*.f64 (sin.f64 re) (*.f64 (sin.f64 re) 1/82944)) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) (*.f64 (sin.f64 re) (fma.f64 1/2 (fma.f64 im im 2) -1/288)))))
(/.f64 (-.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) 1/288))) (-.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) 1/288)))
(/.f64 (-.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) (sin.f64 re)) 1/82944)) (fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (neg.f64 (*.f64 (sin.f64 re) 1/288))))
(/.f64 (fma.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))) (*.f64 (*.f64 (sin.f64 re) (sin.f64 re)) -1/82944)) (*.f64 (sin.f64 re) (-.f64 (*.f64 1/2 (fma.f64 im im 2)) 1/288)))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (fma.f64 im im 2)) 1/288)) 1)
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))) (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984)))
(*.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (+.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 (fma.f64 im im 2) 1/144)))) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 -287/144 (*.f64 im im))))) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736)) (+.f64 (*.f64 im im) 287/144))
(/.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (fma.f64 im im 287/144) (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736)))
(*.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (fma.f64 im im 287/144)) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 287/144)) (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736))
(/.f64 (*.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (*.f64 1/2 (sin.f64 re))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))) (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984)))
(*.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (+.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 (fma.f64 im im 2) 1/144)))) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 -287/144 (*.f64 im im))))) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (*.f64 1/2 (sin.f64 re))) (+.f64 (*.f64 im im) 287/144))
(/.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (fma.f64 im im 287/144) (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736)))
(*.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (fma.f64 im im 287/144)) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 287/144)) (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))) 1)
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))) 3)
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))) 3) 1/3)
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))) 2)
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))) 2))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (+.f64 (*.f64 im im) 289/144)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144))) 3))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (+.f64 (*.f64 im im) 289/144) 3)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))) 1))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 289/144)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) 1/288))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (fma.f64 im im 2)) 1/288))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2) (*.f64 (sin.f64 re) 1/288))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) 1/288))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (fma.f64 im im 2)) 1/288))
(-.f64 (exp.f64 (log1p.f64 (+.f64 (*.f64 im im) 289/144))) 1)
(fma.f64 im im 289/144)
(-.f64 (/.f64 (pow.f64 (fma.f64 im im 2) 2) (+.f64 (*.f64 im im) 287/144)) (/.f64 1/20736 (+.f64 (*.f64 im im) 287/144)))
(-.f64 (/.f64 (pow.f64 (fma.f64 im im 2) 2) (fma.f64 im im 287/144)) (/.f64 1/20736 (fma.f64 im im 287/144)))
(+.f64 (/.f64 (pow.f64 (fma.f64 im im 2) 2) (fma.f64 im im 287/144)) (/.f64 -1/20736 (fma.f64 im im 287/144)))
(*.f64 (+.f64 (*.f64 im im) 289/144) 1)
(fma.f64 im im 289/144)
(*.f64 1 (+.f64 (*.f64 im im) 289/144))
(fma.f64 im im 289/144)
(*.f64 (cbrt.f64 (+.f64 (*.f64 im im) 289/144)) (cbrt.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 2)))
(*.f64 (cbrt.f64 (fma.f64 im im 289/144)) (cbrt.f64 (pow.f64 (fma.f64 im im 289/144) 2)))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 2)) (cbrt.f64 (+.f64 (*.f64 im im) 289/144)))
(*.f64 (cbrt.f64 (fma.f64 im im 289/144)) (cbrt.f64 (pow.f64 (fma.f64 im im 289/144) 2)))
(*.f64 (sqrt.f64 (+.f64 (*.f64 im im) 289/144)) (sqrt.f64 (+.f64 (*.f64 im im) 289/144)))
(fma.f64 im im 289/144)
(*.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144)))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))) (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (+.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 -287/144 (*.f64 im im)))))
(*.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (/.f64 1 (+.f64 (*.f64 im im) 287/144)))
(*.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (/.f64 1 (fma.f64 im im 287/144)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (fma.f64 im im 287/144))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))) (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))) (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (+.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 -287/144 (*.f64 im im)))))
(/.f64 1 (/.f64 (+.f64 (*.f64 im im) 287/144) (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736)))
(*.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (/.f64 1 (fma.f64 im im 287/144)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (fma.f64 im im 287/144))
(/.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))) (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (+.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 -287/144 (*.f64 im im)))))
(/.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (+.f64 1/20736 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (fma.f64 im im 2) 1/144))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))) (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (+.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 -287/144 (*.f64 im im)))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (+.f64 (*.f64 im im) 287/144))
(*.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (/.f64 1 (fma.f64 im im 287/144)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (fma.f64 im im 287/144))
(/.f64 (neg.f64 (+.f64 1/2985984 (pow.f64 (fma.f64 im im 2) 3))) (neg.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144)))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144))) (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (+.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 (fma.f64 im im 2) 1/144))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.f64 -287/144 (*.f64 im im)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736)) (neg.f64 (+.f64 (*.f64 im im) 287/144)))
(*.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (/.f64 1 (fma.f64 im im 287/144)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (fma.f64 im im 287/144))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 im im 1/144) 3)) (+.f64 4 (-.f64 (*.f64 (fma.f64 im im 1/144) (fma.f64 im im 1/144)) (*.f64 2 (fma.f64 im im 1/144)))))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 im im 1/144) 3)) (+.f64 4 (*.f64 (fma.f64 im im 1/144) (-.f64 (fma.f64 im im 1/144) 2))))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 im im 1/144) 3)) (fma.f64 (fma.f64 im im 1/144) (+.f64 (*.f64 im im) -287/144) 4))
(/.f64 (-.f64 4 (*.f64 (fma.f64 im im 1/144) (fma.f64 im im 1/144))) (-.f64 2 (fma.f64 im im 1/144)))
(/.f64 (-.f64 1/20736 (pow.f64 (fma.f64 im im 2) 2)) (-.f64 1/144 (fma.f64 im im 2)))
(*.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (/.f64 1 (fma.f64 im im 287/144)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) -1/20736) (fma.f64 im im 287/144))
(pow.f64 (+.f64 (*.f64 im im) 289/144) 1)
(fma.f64 im im 289/144)
(pow.f64 (cbrt.f64 (+.f64 (*.f64 im im) 289/144)) 3)
(fma.f64 im im 289/144)
(pow.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 3) 1/3)
(fma.f64 im im 289/144)
(pow.f64 (sqrt.f64 (+.f64 (*.f64 im im) 289/144)) 2)
(fma.f64 im im 289/144)
(sqrt.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 2))
(fma.f64 im im 289/144)
(log.f64 (exp.f64 (+.f64 (*.f64 im im) 289/144)))
(fma.f64 im im 289/144)
(log.f64 (+.f64 1 (expm1.f64 (+.f64 (*.f64 im im) 289/144))))
(fma.f64 im im 289/144)
(cbrt.f64 (pow.f64 (+.f64 (*.f64 im im) 289/144) 3))
(fma.f64 im im 289/144)
(expm1.f64 (log1p.f64 (+.f64 (*.f64 im im) 289/144)))
(fma.f64 im im 289/144)
(exp.f64 (log.f64 (+.f64 (*.f64 im im) 289/144)))
(fma.f64 im im 289/144)
(exp.f64 (*.f64 (log.f64 (+.f64 (*.f64 im im) 289/144)) 1))
(fma.f64 im im 289/144)
(log1p.f64 (expm1.f64 (+.f64 (*.f64 im im) 289/144)))
(fma.f64 im im 289/144)
(fma.f64 1 (fma.f64 im im 2) 1/144)
(fma.f64 im im 289/144)
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 im im 2) 2)) (cbrt.f64 (fma.f64 im im 2)) 1/144)
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (fma.f64 im im 2)) 1/144)
(fma.f64 im im 289/144)

eval68.0ms (0.7%)

Compiler

Compiled 3213 to 2132 computations (33.6% saved)

prune58.0ms (0.6%)

Pruning

38 alts after pruning (24 fresh and 14 done)

PrunedKeptTotal
New1968204
Fresh31619
Picked145
Done01010
Total20038238
Accurracy
99.6%
Counts
238 → 38
Alt Table
Click to see full alt table
StatusAccuracyProgram
23.9%
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
12.5%
(pow.f64 re -512)
7.9%
(/.f64 (/.f64 1/4 re) re)
2.7%
(/.f64 re -512)
7.9%
(/.f64 1/4 (*.f64 re re))
25.4%
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
72.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
7.4%
(+.f64 re re)
9.3%
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
12.9%
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
31.4%
(*.f64 (fma.f64 im im 289/144) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
42.2%
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
87.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
45.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
72.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
69.6%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
6.3%
(*.f64 (*.f64 1/2 re) 262144)
6.0%
(*.f64 (*.f64 1/2 re) 1/512)
33.4%
(*.f64 (sin.f64 re) 5159780353/5159780352)
34.6%
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
20.7%
(*.f64 re 5159780353/5159780352)
2.6%
(*.f64 re -511)
22.3%
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
18.5%
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
42.4%
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
24.2%
(*.f64 1/2 (/.f64 (*.f64 (*.f64 re re) (-.f64 4 (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im)))))
41.0%
(*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4)))))
53.1%
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
27.8%
(*.f64 1/2 (*.f64 re (*.f64 im im)))
21.6%
(*.f64 1/2 (*.f64 im (*.f64 im re)))
42.2%
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
47.8%
(sin.f64 re)
45.7%
(log1p.f64 (expm1.f64 re))
4.0%
(cbrt.f64 re)
29.0%
re
4.3%
1
3.4%
1/5159780352
Compiler

Compiled 759 to 502 computations (33.9% saved)

regimes141.0ms (1.4%)

Counts
46 → 1
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
(*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4)))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
(*.f64 1/2 (/.f64 (*.f64 (*.f64 re re) (-.f64 4 (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im)))))
(log1p.f64 (expm1.f64 re))
(pow.f64 (sin.f64 re) -512)
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(*.f64 (fma.f64 im im 289/144) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Calls

6 calls:

44.0ms
re
23.0ms
(*.f64 1/2 (sin.f64 re))
23.0ms
(sin.f64 re)
22.0ms
im
13.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
99.6%1re
99.6%1im
99.6%1(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
99.6%1(*.f64 1/2 (sin.f64 re))
99.6%1(sin.f64 re)
99.6%1(+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
Compiler

Compiled 419 to 254 computations (39.4% saved)

regimes249.0ms (2.5%)

Counts
44 → 3
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
(*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4)))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
(*.f64 1/2 (/.f64 (*.f64 (*.f64 re re) (-.f64 4 (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im)))))
(log1p.f64 (expm1.f64 re))
(pow.f64 (sin.f64 re) -512)
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(*.f64 (fma.f64 im im 289/144) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
Calls

4 calls:

62.0ms
im
59.0ms
(*.f64 1/2 (sin.f64 re))
58.0ms
(sin.f64 re)
58.0ms
re
Results
AccuracySegmentsBranch
91.5%3re
96.4%3im
91.4%3(*.f64 1/2 (sin.f64 re))
91.4%3(sin.f64 re)
Compiler

Compiled 373 to 225 computations (39.7% saved)

regimes70.0ms (0.7%)

Counts
43 → 3
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
(*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4)))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
(*.f64 1/2 (/.f64 (*.f64 (*.f64 re re) (-.f64 4 (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im)))))
(log1p.f64 (expm1.f64 re))
(pow.f64 (sin.f64 re) -512)
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(*.f64 (fma.f64 im im 289/144) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
Outputs
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
Calls

1 calls:

59.0ms
im
Results
AccuracySegmentsBranch
96.3%3im
Compiler

Compiled 344 to 205 computations (40.4% saved)

regimes67.0ms (0.7%)

Counts
40 → 3
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
(*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4)))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
(*.f64 1/2 (/.f64 (*.f64 (*.f64 re re) (-.f64 4 (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im)))))
(log1p.f64 (expm1.f64 re))
(pow.f64 (sin.f64 re) -512)
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
Calls

1 calls:

58.0ms
im
Results
AccuracySegmentsBranch
96.3%3im
Compiler

Compiled 305 to 181 computations (40.7% saved)

regimes65.0ms (0.7%)

Counts
39 → 3
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
(*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4)))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
(*.f64 1/2 (/.f64 (*.f64 (*.f64 re re) (-.f64 4 (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im)))))
(log1p.f64 (expm1.f64 re))
(pow.f64 (sin.f64 re) -512)
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
Calls

1 calls:

54.0ms
im
Results
AccuracySegmentsBranch
92.4%3im
Compiler

Compiled 295 to 174 computations (41% saved)

regimes347.0ms (3.5%)

Counts
37 → 4
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
(*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4)))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
(*.f64 1/2 (/.f64 (*.f64 (*.f64 re re) (-.f64 4 (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im)))))
(log1p.f64 (expm1.f64 re))
(pow.f64 (sin.f64 re) -512)
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
Calls

4 calls:

93.0ms
(sin.f64 re)
89.0ms
(*.f64 1/2 (sin.f64 re))
84.0ms
re
72.0ms
im
Results
AccuracySegmentsBranch
77.6%5(*.f64 1/2 (sin.f64 re))
77.6%5(sin.f64 re)
76.5%5re
90.0%4im
Compiler

Compiled 292 to 174 computations (40.4% saved)

regimes152.0ms (1.5%)

Counts
36 → 4
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
(*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4)))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
(*.f64 1/2 (/.f64 (*.f64 (*.f64 re re) (-.f64 4 (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im)))))
(log1p.f64 (expm1.f64 re))
(pow.f64 (sin.f64 re) -512)
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(log1p.f64 (expm1.f64 re))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
Calls

1 calls:

143.0ms
im
Results
AccuracySegmentsBranch
88.9%4im
Compiler

Compiled 273 to 160 computations (41.4% saved)

regimes155.0ms (1.6%)

Counts
33 → 4
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
(*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4)))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
(*.f64 1/2 (/.f64 (*.f64 (*.f64 re re) (-.f64 4 (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im)))))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 1/2 (/.f64 (*.f64 (*.f64 re re) (-.f64 4 (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im)))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
Calls

1 calls:

148.0ms
im
Results
AccuracySegmentsBranch
88.5%4im
Compiler

Compiled 260 to 152 computations (41.5% saved)

regimes53.0ms (0.5%)

Counts
32 → 3
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
(*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4)))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
Calls

1 calls:

46.0ms
im
Results
AccuracySegmentsBranch
86.3%3im
Compiler

Compiled 241 to 141 computations (41.5% saved)

regimes88.0ms (0.9%)

Counts
31 → 4
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
(*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4)))))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
(*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
Calls

1 calls:

81.0ms
im
Results
AccuracySegmentsBranch
87.4%4im
Compiler

Compiled 226 to 131 computations (42% saved)

regimes74.0ms (0.7%)

Counts
30 → 4
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
Calls

1 calls:

67.0ms
im
Results
AccuracySegmentsBranch
79.6%4im
Compiler

Compiled 211 to 121 computations (42.7% saved)

regimes62.0ms (0.6%)

Counts
29 → 4
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/20736))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
Calls

1 calls:

55.0ms
im
Results
AccuracySegmentsBranch
79.6%4im
Compiler

Compiled 199 to 114 computations (42.7% saved)

regimes132.0ms (1.3%)

Counts
26 → 4
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(fma.f64 (*.f64 1/2 (*.f64 im re)) im re)
(+.f64 (*.f64 -5159780353/30958682112 (pow.f64 re 3)) (*.f64 5159780353/5159780352 re))
Outputs
(sin.f64 re)
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re))))
Calls

2 calls:

78.0ms
im
47.0ms
(sin.f64 re)
Results
AccuracySegmentsBranch
62.1%4(sin.f64 re)
75.9%4im
Compiler

Compiled 169 to 98 computations (42% saved)

regimes40.0ms (0.4%)

Counts
22 → 3
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
(sin.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
Outputs
(sin.f64 re)
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
Calls

1 calls:

35.0ms
im
Results
AccuracySegmentsBranch
74.2%3im
Compiler

Compiled 132 to 76 computations (42.4% saved)

regimes43.0ms (0.4%)

Counts
19 → 1
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 re 2) (*.f64 re 2)) (*.f64 (*.f64 re (*.f64 im im)) (*.f64 re (*.f64 im im)))) (-.f64 (*.f64 re 2) (*.f64 re (*.f64 im im)))))
(cbrt.f64 re)
Outputs
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
Calls

2 calls:

28.0ms
im
11.0ms
re
Results
AccuracySegmentsBranch
53.1%1re
55.6%3im
Compiler

Compiled 126 to 73 computations (42.1% saved)

regimes138.0ms (1.4%)

Counts
15 → 2
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 (/.f64 1 re) (/.f64 1/4 re))
(+.f64 1/12 (/.f64 (/.f64 1/4 re) re))
Outputs
re
(*.f64 1/2 (*.f64 re (*.f64 im im)))
Calls

2 calls:

101.0ms
re
34.0ms
im
Results
AccuracySegmentsBranch
52.9%2im
42.6%3re
Compiler

Compiled 71 to 47 computations (33.8% saved)

regimes18.0ms (0.2%)

Counts
12 → 2
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 1/2 (*.f64 im (*.f64 im re)))
Outputs
re
(*.f64 1/2 (*.f64 im (*.f64 im re)))
Calls

1 calls:

16.0ms
im
Results
AccuracySegmentsBranch
46.6%2im
Compiler

Compiled 47 to 31 computations (34% saved)

regimes25.0ms (0.3%)

Counts
11 → 2
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
Outputs
re
(/.f64 1/4 (*.f64 re re))
Calls

2 calls:

14.0ms
im
9.0ms
re
Results
AccuracySegmentsBranch
29.0%1re
34.1%2im
Compiler

Compiled 43 to 29 computations (32.6% saved)

regimes17.0ms (0.2%)

Counts
9 → 1
Calls
Call 1
Inputs
1/5159780352
1
re
(*.f64 re -511)
(*.f64 re 5159780353/5159780352)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 262144)
Outputs
re
Calls

2 calls:

9.0ms
re
6.0ms
im
Results
AccuracySegmentsBranch
29.0%1re
29.0%1im
Compiler

Compiled 33 to 23 computations (30.3% saved)

regimes7.0ms (0.1%)

Counts
2 → 1
Calls
Call 1
Inputs
1/5159780352
1
Outputs
1
Calls

2 calls:

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

Compiled 10 to 8 computations (20% saved)

regimes11.0ms (0.1%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
1/5159780352
Outputs
1/5159780352
Calls

2 calls:

7.0ms
re
3.0ms
im
Results
AccuracySegmentsBranch
3.4%1im
3.4%1re
Compiler

Compiled 9 to 7 computations (22.2% saved)

bsearch58.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
31.0ms
3.305401276116089e+75
1.4665493990179494e+80
27.0ms
0.02542503206009485
0.2173668512301448
Results
16.0ms37×body1024infinite
12.0ms20×body1024valid
11.0ms78×body256infinite
10.0ms64×body256valid
3.0ms13×body512infinite
3.0ms11×body512valid
1.0msbody2048valid
Compiler

Compiled 403 to 317 computations (21.3% saved)

bsearch88.0ms (0.9%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
41.0ms
3.305401276116089e+75
1.4665493990179494e+80
47.0ms
0.02542503206009485
0.2173668512301448
Results
32.0ms16×body1024valid
16.0ms17×body512infinite
15.0ms87×body256infinite
10.0ms69×body256valid
8.0ms24×body1024infinite
3.0ms10×body512valid
1.0msbody2048valid
Compiler

Compiled 373 to 281 computations (24.7% saved)

bsearch34.0ms (0.3%)

Algorithm
binary-search
Stop Event
predicate-same
narrow-enough
Steps
TimeLeftRight
10.0ms
3.305401276116089e+75
1.4665493990179494e+80
23.0ms
0.02542503206009485
0.2173668512301448
Results
12.0ms68×body256valid
8.0ms19×body1024valid
4.0ms29×body256infinite
3.0ms10×body1024infinite
2.0msbody512valid
2.0msbody512infinite
Compiler

Compiled 247 to 192 computations (22.3% saved)

bsearch55.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
21.0ms
5.476780091950193e+74
3.305401276116089e+75
32.0ms
114781.1906707814
3613710.276972881
Results
22.0ms51×body1024infinite
18.0ms123×body256infinite
8.0ms34×body512infinite
Compiler

Compiled 293 to 243 computations (17.1% saved)

bsearch79.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
29.0ms
1.4807118677055516e+153
1.5715209273676796e+157
21.0ms
9.76105128965641e+68
1.2198256942457435e+70
28.0ms
114781.1906707814
3613710.276972881
Results
35.0ms224×body256infinite
28.0ms77×body1024infinite
10.0ms35×body512infinite
Compiler

Compiled 583 to 465 computations (20.2% saved)

bsearch91.0ms (0.9%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
31.0ms
1.4807118677055516e+153
1.5715209273676796e+157
32.0ms
9.298366714237185e+32
8.395442417399141e+41
28.0ms
114781.1906707814
3613710.276972881
Results
42.0ms254×body256infinite
31.0ms82×body1024infinite
12.0ms48×body512infinite
Compiler

Compiled 616 to 483 computations (21.6% saved)

bsearch158.0ms (1.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
28.0ms
1.4807118677055516e+153
1.5715209273676796e+157
101.0ms
9.298366714237185e+32
8.395442417399141e+41
30.0ms
114781.1906707814
3613710.276972881
Results
107.0ms254×body256infinite
29.0ms82×body1024infinite
16.0ms48×body512infinite
Compiler

Compiled 872 to 659 computations (24.4% saved)

bsearch57.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
28.0ms
1.4807118677055516e+153
1.5715209273676796e+157
29.0ms
114781.1906707814
3613710.276972881
Results
25.0ms156×body256infinite
20.0ms49×body1024infinite
8.0ms35×body512infinite
Compiler

Compiled 484 to 375 computations (22.5% saved)

bsearch97.0ms (1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
29.0ms
1.4807118677055516e+153
1.5715209273676796e+157
17.0ms
1.4665493990179494e+80
3.7104586846959305e+80
30.0ms
114781.1906707814
3613710.276972881
Results
32.0ms214×body256infinite
30.0ms71×body1024infinite
8.0ms35×body512infinite
Compiler

Compiled 628 to 479 computations (23.7% saved)

bsearch80.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
29.0ms
1.4807118677055516e+153
1.5715209273676796e+157
19.0ms
1.4665493990179494e+80
3.7104586846959305e+80
31.0ms
114781.1906707814
3613710.276972881
Results
33.0ms77×body1024infinite
32.0ms205×body256infinite
9.0ms38×body512infinite
Compiler

Compiled 550 to 414 computations (24.7% saved)

bsearch83.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
31.0ms
1.4807118677055516e+153
1.5715209273676796e+157
18.0ms
1.4665493990179494e+80
3.7104586846959305e+80
34.0ms
114781.1906707814
3613710.276972881
Results
32.0ms209×body256infinite
28.0ms76×body1024infinite
17.0ms35×body512infinite
Compiler

Compiled 562 to 414 computations (26.3% saved)

bsearch60.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
11.0ms
3.5708462881216036e+215
5.198105285554891e+215
19.0ms
1.4665493990179494e+80
3.7104586846959305e+80
30.0ms
114781.1906707814
3613710.276972881
Results
26.0ms62×body1024infinite
24.0ms154×body256infinite
6.0ms24×body512infinite
Compiler

Compiled 375 to 271 computations (27.7% saved)

bsearch46.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
17.0ms
1.4665493990179494e+80
3.7104586846959305e+80
29.0ms
114781.1906707814
3613710.276972881
Results
19.0ms127×body256infinite
17.0ms38×body1024infinite
7.0ms27×body512infinite
Compiler

Compiled 306 to 220 computations (28.1% saved)

bsearch30.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
30.0ms
0.47301508057921826
12.942927547321046
Results
14.0ms75×body256valid
12.0ms26×body1024valid
3.0ms11×body512valid
Compiler

Compiled 117 to 85 computations (27.4% saved)

bsearch30.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
30.0ms
0.47301508057921826
12.942927547321046
Results
13.0ms29×body1024valid
11.0ms73×body256valid
4.0ms10×body512valid
Compiler

Compiled 117 to 85 computations (27.4% saved)

bsearch27.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
27.0ms
3613710.276972881
44622689.35287586
Results
10.0ms62×body256infinite
10.0ms25×body1024infinite
2.0msbody512infinite
Compiler

Compiled 91 to 69 computations (24.2% saved)

simplify40.0ms (0.4%)

Algorithm
egg-herbie
Rules
64×*-commutative
24×+-commutative
10×sub-neg
neg-mul-1
neg-sub0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01431771
11951771
22041771
32091771
42111771
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 im 3422735716801577/18014398509481984) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12))) (if (<=.f64 im 114999999999999997377225245734177625043124954484653241178190190737365693104128) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(if (<=.f64 im 3242591731706757/72057594037927936) (+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im 114999999999999997377225245734177625043124954484653241178190190737365693104128) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(if (<=.f64 im 3602879701896397/72057594037927936) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 49999999999999999139130636277292928373873822357007948776987560108905577054208) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 3299999999999999978535258967999119334598838307068101874769644830409210462208) (pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 11199999999999999279856546607238575054626766237731862283064831557763072) (pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 800000000000000004960069160326226555961344) (log1p.f64 (expm1.f64 re)) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 5999999999999999940486453133276365193216) (*.f64 1/2 (/.f64 (*.f64 (*.f64 re re) (-.f64 4 (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im))))) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 3250000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 149999999999999993457896567777726746186226871542399193716254503645915184980033536) (+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12)) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4))))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 189999999999999998734155097088932991697089216198401133300262064654766651262107648) (+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12)) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 289999999999999985596728503227651930994738156920797902536507117039617503389548544) (+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 120000) (sin.f64 re) (if (<=.f64 im 289999999999999985596728503227651930994738156920797902536507117039617503389548544) (+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))) (if (<=.f64 im 379999999999999968336760944965036527946106692374758945044016222427409926400164191616251814829937685330827819568797800514025209665338719221636125483585001424445668853689310610717515991758396209118616950947033041076224) (*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im)))) (*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re)))))))
(if (<=.f64 im 115000) (sin.f64 re) (if (<=.f64 im 289999999999999985596728503227651930994738156920797902536507117039617503389548544) (+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))) (*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(if (<=.f64 im 799388933858263/562949953421312) re (*.f64 1/2 (*.f64 re (*.f64 im im))))
(if (<=.f64 im 799388933858263/562949953421312) re (*.f64 1/2 (*.f64 im (*.f64 im re))))
(if (<=.f64 im 3700000) re (/.f64 1/4 (*.f64 re re)))
re
1
1/5159780352
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 im 3422735716801577/18014398509481984) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12))) (if (<=.f64 im 114999999999999997377225245734177625043124954484653241178190190737365693104128) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(if (<=.f64 im 3422735716801577/18014398509481984) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12))) (if (<=.f64 im 114999999999999997377225245734177625043124954484653241178190190737365693104128) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(if (<=.f64 im 3242591731706757/72057594037927936) (+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im 114999999999999997377225245734177625043124954484653241178190190737365693104128) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(if (<=.f64 im 3242591731706757/72057594037927936) (+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im 114999999999999997377225245734177625043124954484653241178190190737365693104128) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(if (<=.f64 im 3602879701896397/72057594037927936) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 49999999999999999139130636277292928373873822357007948776987560108905577054208) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(if (<=.f64 im 3602879701896397/72057594037927936) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 49999999999999999139130636277292928373873822357007948776987560108905577054208) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 3299999999999999978535258967999119334598838307068101874769644830409210462208) (pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 3299999999999999978535258967999119334598838307068101874769644830409210462208) (pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 11199999999999999279856546607238575054626766237731862283064831557763072) (pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 11199999999999999279856546607238575054626766237731862283064831557763072) (pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (/.f64 (*.f64 re (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 800000000000000004960069160326226555961344) (log1p.f64 (expm1.f64 re)) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 800000000000000004960069160326226555961344) (log1p.f64 (expm1.f64 re)) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (/.f64 (*.f64 re (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 5999999999999999940486453133276365193216) (*.f64 1/2 (/.f64 (*.f64 (*.f64 re re) (-.f64 4 (pow.f64 im 4))) (*.f64 re (-.f64 2 (*.f64 im im))))) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 5999999999999999940486453133276365193216) (*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) (*.f64 re re)) (*.f64 re (-.f64 2 (*.f64 im im))))) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (/.f64 (*.f64 re (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 3250000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) re) (-.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))))
(if (or (<=.f64 im 3250000) (not (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (*.f64 1/2 (/.f64 (*.f64 re (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 149999999999999993457896567777726746186226871542399193716254503645915184980033536) (+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12)) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (/.f64 re (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4))))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 189999999999999998734155097088932991697089216198401133300262064654766651262107648) (+.f64 (/.f64 1/4 (*.f64 re re)) (fma.f64 re (*.f64 re 1/60) 1/12)) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 115000) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 289999999999999985596728503227651930994738156920797902536507117039617503389548544) (+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))))))
(if (<=.f64 im 120000) (sin.f64 re) (if (<=.f64 im 289999999999999985596728503227651930994738156920797902536507117039617503389548544) (+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))) (if (<=.f64 im 379999999999999968336760944965036527946106692374758945044016222427409926400164191616251814829937685330827819568797800514025209665338719221636125483585001424445668853689310610717515991758396209118616950947033041076224) (*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im)))) (*.f64 im (*.f64 1/2 (*.f64 im (sin.f64 re)))))))
(if (<=.f64 im 120000) (sin.f64 re) (if (<=.f64 im 289999999999999985596728503227651930994738156920797902536507117039617503389548544) (+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))) (if (<=.f64 im 379999999999999968336760944965036527946106692374758945044016222427409926400164191616251814829937685330827819568797800514025209665338719221636125483585001424445668853689310610717515991758396209118616950947033041076224) (*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im)))) (*.f64 im (*.f64 1/2 (*.f64 (sin.f64 re) im))))))
(if (<=.f64 im 115000) (sin.f64 re) (if (<=.f64 im 289999999999999985596728503227651930994738156920797902536507117039617503389548544) (+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))) (*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))))
(*.f64 1/2 (*.f64 re (+.f64 2 (*.f64 im im))))
(if (<=.f64 im 799388933858263/562949953421312) re (*.f64 1/2 (*.f64 re (*.f64 im im))))
(if (<=.f64 im 799388933858263/562949953421312) re (*.f64 1/2 (*.f64 im (*.f64 im re))))
(if (<=.f64 im 799388933858263/562949953421312) re (*.f64 1/2 (*.f64 im (*.f64 re im))))
(if (<=.f64 im 3700000) re (/.f64 1/4 (*.f64 re re)))
re
1
1/5159780352
Compiler

Compiled 691 to 470 computations (32% saved)

soundness2.3s (23.7%)

Rules
1568×unswap-sqr
1516×fma-def
1516×fma-def
1516×fma-def
1516×fma-def
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01435
13035
27435
314133
418933
525633
643833
7110433
8315833
9354033
10403133
11567033
12665033
01141482
13251390
210251390
351771390
027165
1604165
02344671
15254439
213793953
364713953
027165
1604165
02344671
15254439
213793953
364713953
01141482
13251390
210251390
351771390
01354
127354
2427754
02344671
15254439
213793953
364713953
01141482
13251390
210251390
351771390
02344671
15254439
213793953
364713953
03574694
19774478
238644306
03574694
19774478
238644306
02344671
15254439
213793953
364713953
02344671
15254439
213793953
364713953
02344671
15254439
213793953
364713953
02093
144377
2568977
03574694
19774478
238644306
02093
144377
2568977
02093
144377
2568977
03574694
19774478
238644306
027165
1604165
027165
1604165
02344671
15254439
213793953
364713953
01141482
13251390
210251390
351771390
Stop Event
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
unsound
node limit
node limit
node limit
node limit
node limit
node limit
node limit
Compiler

Compiled 1123 to 675 computations (39.9% saved)

end1.0ms (0%)

preprocess290.0ms (2.9%)

Remove

(abs im)

Compiler

Compiled 1356 to 812 computations (40.1% saved)

Profiling

Loading profile data...